PLCnext API Documentation  21.0.0.35466
PdiParam.hpp
1 //
3 // Copyright PHOENIX CONTACT Electronics GmbH
4 //
6 #pragma once
7 #include "Arp/System/Core/Arp.h"
8 #include "Arp/System/Rsc/Services/IRscSerializable.hpp"
9 #include "Arp/System/Rsc/Services/RscReader.hpp"
10 #include "Arp/System/Rsc/Services/RscWriter.hpp"
11 
12 // DO NOT MODIFY THIS FILE, THIS FILE IS AUTOGENERATED
13 
14 namespace Arp { namespace Io { namespace Axioline { namespace Services
15 {
16 
17 using namespace Arp;
18 using namespace Arp::System::Rsc::Services;
19 
23 struct PdiParam : public IRscSerializable
24 {
28  uint16 Slot = 0;
29 
33  uint8 Subslot = 0;
34 
38  uint16 Index = 0;
39 
43  uint8 Subindex = 0;
44 
45  void Serialize(RscWriter& writer)const override
46  {
47  writer.Write(this->Slot);
48  writer.Write(this->Subslot);
49  writer.Write(this->Index);
50  writer.Write(this->Subindex);
51  }
52 
53  void Deserialize(RscReader& reader)override
54  {
55  reader.Read(this->Slot);
56  reader.Read(this->Subslot);
57  reader.Read(this->Index);
58  reader.Read(this->Subindex);
59  }
60 
61  static size_t GetFieldCount(void)
62  {
63  return 4;
64  }
65 };
66 
67 }}}} // end of namespace Arp::Io::Axioline::Services
void Write(const T &value)
Writes an element of T from Rsc. Datatag and format is determined deducted by type of T...
Definition: RscWriter.hpp:173
Reads data from Rsc
Definition: RscReader.hpp:23
Contains all parameter to address an object on a module
Definition: PdiParam.hpp:23
void Deserialize(RscReader &reader) override
Deserializes the datatype. All fields of the datatype have to be deserialized in use of RscReader...
Definition: PdiParam.hpp:53
Writes data to Rsc.
Definition: RscWriter.hpp:32
Namespace for classes and interfaces for the Remote Service Call implementation
Definition: IRscReadEnumerator.hxx:9
T Read(void)
Reads an element of T from Rsc. With data tagging enabled RscType of T is validated.
Definition: RscReader.hpp:160
void Serialize(RscWriter &writer) const override
Serializes the datatype. All fields of the datatype have to be serialized in use of RscWriter...
Definition: PdiParam.hpp:45
Marshalls structure or class data types. Serialize and Deserialize have to marshal fields in the same...
Definition: IRscSerializable.hpp:18
std::uint8_t uint8
The Arp unsigned integer type of 1 byte size.
Definition: PrimitiveTypes.hpp:27
Root namespace for the PLCnext API
std::uint16_t uint16
The Arp unsigned integer type of 2 byte size.
Definition: PrimitiveTypes.hpp:31