PLCnext API Documentation 23.6.0.37
DiagnosisItem.hpp
1
2//
3// Copyright PHOENIX CONTACT Electronics GmbH
4//
6#pragma once
8#include <vector>
9#include "Arp/Io/ProfinetStack/Controller/Services/DiagnosisSource.hpp"
10#include "Arp/Io/ProfinetStack/Controller/Services/StandardDiagnosisInformation.hpp"
11#include "Arp/Io/ProfinetStack/Controller/Services/UsiDiagnosisInformation.hpp"
12#include "Arp/System/Rsc/Services/IRscSerializable.hpp"
13#include "Arp/System/Rsc/Services/RscReader.hpp"
14#include "Arp/System/Rsc/Services/RscWriter.hpp"
15
16// DO NOT MODIFY THIS FILE, THIS FILE IS AUTOGENERATED
17
18namespace Arp { namespace Io { namespace ProfinetStack { namespace Controller { namespace Services
19{
20
21using namespace Arp;
22using namespace Arp::System::Rsc::Services;
23
28{
29public:
34
39 std::vector<StandardDiagnosisInformation> StandardDiagnoses;
40
44 std::vector<UsiDiagnosisInformation> USIDiagnoses;
45
46 void Serialize(RscWriter& writer)const override
47 {
48 writer.Write(this->Source);
49 writer.WriteArray(this->StandardDiagnoses);
50 writer.WriteArray(this->USIDiagnoses);
51 }
52
53 void Deserialize(RscReader& reader)override
54 {
55 reader.Read(this->Source);
56 reader.ReadArray(this->StandardDiagnoses);
57 reader.ReadArray(this->USIDiagnoses);
58 }
59
60 static constexpr size_t GetFieldCount(void)
61 {
62 return 3;
63 }
64};
65
66}}}}} // end of namespace Arp::Io::ProfinetStack::Controller::Services
Contains diagnosis source and corresponding diagnoses. Result of Arp.Io.ProfinetStack....
Definition: DiagnosisItem.hpp:28
std::vector< UsiDiagnosisInformation > USIDiagnoses
Contains all diagnosis of Arp.Io.ProfinetStack.Controller.Services.DiagnosisItem.Source,...
Definition: DiagnosisItem.hpp:44
DiagnosisSource Source
Contains the source of the diagnosis
Definition: DiagnosisItem.hpp:33
void Serialize(RscWriter &writer) const override
Serializes the datatype. All fields of the datatype have to be serialized in use of RscWriter.
Definition: DiagnosisItem.hpp:46
void Deserialize(RscReader &reader) override
Deserializes the datatype. All fields of the datatype have to be deserialized in use of RscReader.
Definition: DiagnosisItem.hpp:53
std::vector< StandardDiagnosisInformation > StandardDiagnoses
Contains all diagnosis of Arp.Io.ProfinetStack.Controller.Services.DiagnosisItem.Source,...
Definition: DiagnosisItem.hpp:39
Contains the information where a diagnosis is located on the device according to "Guideline for PROFI...
Definition: DiagnosisSource.hpp:25
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
Namespace for classes and interfaces for the Remote Service Call implementation
Root namespace for the PLCnext API