9 #include "Arp/System/Rsc/Services/IRscSerializable.hpp"
10 #include "Arp/System/Rsc/Services/RscReader.hpp"
11 #include "Arp/System/Rsc/Services/RscWriter.hpp"
15 namespace Arp {
namespace Io {
namespace Profibus {
namespace Services
45 boolean StationExists =
false;
50 boolean IsStationReady =
false;
55 boolean HasConfigurationError =
false;
60 boolean HasExtendedDiagnosis =
false;
65 boolean NotSupported =
false;
70 boolean IsValidResponse =
false;
75 boolean HasParameterError =
false;
80 boolean HasMasterLock =
false;
85 boolean RequiresParameterization =
false;
91 boolean HasStaticDiagnosis =
false;
96 boolean WatchdogEnabled =
false;
101 boolean IsFreezed =
false;
106 boolean IsSynced =
false;
111 boolean IsSlaveEnabled =
false;
120 writer.
Write(this->StationAddress);
121 writer.
Write(this->MasterAddress);
122 writer.
Write(this->Id);
123 writer.
Write(this->StationExists);
124 writer.
Write(this->IsStationReady);
125 writer.
Write(this->HasConfigurationError);
126 writer.
Write(this->HasExtendedDiagnosis);
127 writer.
Write(this->NotSupported);
128 writer.
Write(this->IsValidResponse);
129 writer.
Write(this->HasParameterError);
130 writer.
Write(this->HasMasterLock);
131 writer.
Write(this->RequiresParameterization);
132 writer.
Write(this->HasStaticDiagnosis);
133 writer.
Write(this->WatchdogEnabled);
134 writer.
Write(this->IsFreezed);
135 writer.
Write(this->IsSynced);
136 writer.
Write(this->IsSlaveEnabled);
137 writer.
WriteArray(this->ExtendedDiagnosisData);
142 reader.
Read(this->StationAddress);
143 reader.
Read(this->MasterAddress);
144 reader.
Read(this->Id);
145 reader.
Read(this->StationExists);
146 reader.
Read(this->IsStationReady);
147 reader.
Read(this->HasConfigurationError);
148 reader.
Read(this->HasExtendedDiagnosis);
149 reader.
Read(this->NotSupported);
150 reader.
Read(this->IsValidResponse);
151 reader.
Read(this->HasParameterError);
152 reader.
Read(this->HasMasterLock);
153 reader.
Read(this->RequiresParameterization);
154 reader.
Read(this->HasStaticDiagnosis);
155 reader.
Read(this->WatchdogEnabled);
156 reader.
Read(this->IsFreezed);
157 reader.
Read(this->IsSynced);
158 reader.
Read(this->IsSlaveEnabled);
159 reader.
ReadArray(this->ExtendedDiagnosisData);
162 static constexpr
size_t GetFieldCount(
void)
Delivers diagnostic information of a slave
Definition: StationDiagnosisItem.hpp:25
void Serialize(RscWriter &writer) const override
Serializes the datatype. All fields of the datatype have to be serialized in use of RscWriter.
Definition: StationDiagnosisItem.hpp:118
std::vector< uint8 > ExtendedDiagnosisData
Contains extended diagnosis data if 'ExtendedDiagnosis' is set
Definition: StationDiagnosisItem.hpp:116
void Deserialize(RscReader &reader) override
Deserializes the datatype. All fields of the datatype have to be deserialized in use of RscReader.
Definition: StationDiagnosisItem.hpp:140
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
void ReadArray(std::vector< T > &result)
Reads an array from Rsc. The read data is stored as std::vector.
Definition: RscReader.hpp:187
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
void WriteArray(const std::vector< T > &values)
Writes an array to Rsc. The data to write has to be stored in a std::vector.
Definition: RscWriter.hpp:203
std::uint8_t uint8
The Arp unsigned integer type of 1 byte size.
Definition: PrimitiveTypes.hpp:27
std::uint16_t uint16
The Arp unsigned integer type of 2 byte size.
Definition: PrimitiveTypes.hpp:31
Namespace for classes and interfaces for the Remote Service Call implementation
Definition: IRscReadEnumerator.hxx:10
Root namespace for the PLCnext API