9#include "Arp/Io/ProfinetStack/Controller/Services/Submodule.hpp"
10#include "Arp/System/Rsc/Services/IRscSerializable.hpp"
11#include "Arp/System/Rsc/Services/RscReader.hpp"
12#include "Arp/System/Rsc/Services/RscWriter.hpp"
16namespace Arp {
namespace Io {
namespace ProfinetStack {
namespace Controller {
namespace Services
45 writer.
Write(this->Slot);
46 writer.
Write(this->IdentNumber);
52 reader.
Read(this->Slot);
53 reader.
Read(this->IdentNumber);
57 static constexpr size_t GetFieldCount(
void)
Module data
Definition: Module.hpp:26
void Deserialize(RscReader &reader) override
Deserializes the datatype. All fields of the datatype have to be deserialized in use of RscReader.
Definition: Module.hpp:50
uint16 Slot
Slot number
Definition: Module.hpp:31
uint32 IdentNumber
Module IdentNumber
Definition: Module.hpp:36
void Serialize(RscWriter &writer) const override
Serializes the datatype. All fields of the datatype have to be serialized in use of RscWriter.
Definition: Module.hpp:43
std::vector< Submodule > Submodules
Configured submodules
Definition: Module.hpp:41
Marshalls structure or class data types. Serialize and Deserialize have to marshal fields in the same...
Definition: IRscSerializable.hpp:20
Reads data from Rsc
Definition: RscReader.hpp:27
void ReadArray(std::vector< T > &result)
Reads an array from Rsc. The read data is stored as std::vector.
Definition: RscReader.hpp:188
T Read(void)
Reads an element of T from Rsc. With data tagging enabled RscType of T is validated.
Definition: RscReader.hpp:166
Writes data to Rsc.
Definition: RscWriter.hpp:32
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:178
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:204
std::uint32_t uint32
The Arp unsigned integer type of 4 byte size.
Definition: PrimitiveTypes.hpp:36
std::uint16_t uint16
The Arp unsigned integer type of 2 byte size.
Definition: PrimitiveTypes.hpp:32
Namespace for classes and interfaces for the Remote Service Call implementation
Root namespace for the PLCnext API