PLCnext API Documentation  22.9.0.33
NodeIdentityInfo.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/RscString.hxx"
11 #include "Arp/System/Rsc/Services/RscWriter.hpp"
12 
13 // DO NOT MODIFY THIS FILE, THIS FILE IS AUTOGENERATED
14 
15 namespace Arp { namespace Io { namespace ProfinetStack { namespace Controller { namespace Services
16 {
17 
18 using namespace Arp;
19 using namespace Arp::System::Rsc::Services;
20 
25 {
26 public:
30  uint32 ModuleIdentNumber = 0;
31 
35  uint32 SubmoduleIdentNumber = 0;
36 
41 
46 
51 
56 
57  void Serialize(RscWriter& writer)const override
58  {
59  writer.Write(this->ModuleIdentNumber);
60  writer.Write(this->SubmoduleIdentNumber);
61  writer.Write(this->ModuleName);
62  writer.Write(this->ModuleInfo);
63  writer.Write(this->SubmoduleName);
64  writer.Write(this->SubmoduleInfo);
65  }
66 
67  void Deserialize(RscReader& reader)override
68  {
69  reader.Read(this->ModuleIdentNumber);
70  reader.Read(this->SubmoduleIdentNumber);
71  reader.Read(this->ModuleName);
72  reader.Read(this->ModuleInfo);
73  reader.Read(this->SubmoduleName);
74  reader.Read(this->SubmoduleInfo);
75  }
76 
77  static constexpr size_t GetFieldCount(void)
78  {
79  return 6;
80  }
81 };
82 
83 }}}}} // end of namespace Arp::Io::ProfinetStack::Controller::Services
Contains the ident numbers and names the corresponding module and submodule of a node.
Definition: NodeIdentityInfo.hpp:25
RscString< 512 > ModuleName
Text name of the module type
Definition: NodeIdentityInfo.hpp:40
RscString< 512 > SubmoduleName
Text name of the SubmoduleName
Definition: NodeIdentityInfo.hpp:50
RscString< 512 > SubmoduleInfo
Info text of the SubmoduleName
Definition: NodeIdentityInfo.hpp:55
void Deserialize(RscReader &reader) override
Deserializes the datatype. All fields of the datatype have to be deserialized in use of RscReader.
Definition: NodeIdentityInfo.hpp:67
void Serialize(RscWriter &writer) const override
Serializes the datatype. All fields of the datatype have to be serialized in use of RscWriter.
Definition: NodeIdentityInfo.hpp:57
RscString< 512 > ModuleInfo
Info text of the module type
Definition: NodeIdentityInfo.hpp:45
Marshalls structure or class data types. Serialize and Deserialize have to marshal fields in the same...
Definition: IRscSerializable.hpp:19
Reads data from Rsc
Definition: RscReader.hpp:26
T Read(void)
Reads an element of T from Rsc. With data tagging enabled RscType of T is validated.
Definition: RscReader.hpp:165
Writes data to Rsc.
Definition: RscWriter.hpp:31
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:177
std::uint32_t uint32
The Arp unsigned integer type of 4 byte size.
Definition: PrimitiveTypes.hpp:35
Namespace for classes and interfaces for the Remote Service Call implementation
Definition: IRscReadEnumerator.hxx:10
Root namespace for the PLCnext API