PLCnext API Documentation 23.6.0.37
StoredNotification.hpp
1
2//
3// Copyright PHOENIX CONTACT Electronics GmbH
4//
6#pragma once
8#include <vector>
9#include "Arp/System/Rsc/Services/IRscSerializable.hpp"
10#include "Arp/System/Rsc/Services/RscReader.hpp"
11#include "Arp/System/Rsc/Services/RscString.hxx"
12#include "Arp/System/Rsc/Services/RscWriter.hpp"
13
14// DO NOT MODIFY THIS FILE, THIS FILE IS AUTOGENERATED
15
16namespace Arp { namespace Services { namespace NotificationLogger { namespace Services
17{
18
19using namespace Arp;
20using namespace Arp::System::Rsc::Services;
21
26{
27public:
32
38
43
48
53
58
62 std::vector<RscString<512>> Payload;
63
67 std::vector<RscString<512>> PayloadXml;
68
69 void Serialize(RscWriter& writer)const override
70 {
71 writer.Write(this->Id);
72 writer.Write(this->Archive);
73 writer.Write(this->NotificationName);
74 writer.Write(this->SenderName);
75 writer.Write(this->TimeStamp);
76 writer.Write(this->Severity);
77 writer.WriteArray(this->Payload);
78 writer.WriteArray(this->PayloadXml);
79 }
80
81 void Deserialize(RscReader& reader)override
82 {
83 reader.Read(this->Id);
84 reader.Read(this->Archive);
85 reader.Read(this->NotificationName);
86 reader.Read(this->SenderName);
87 reader.Read(this->TimeStamp);
88 reader.Read(this->Severity);
89 reader.ReadArray(this->Payload);
90 reader.ReadArray(this->PayloadXml);
91 }
92
93 static constexpr size_t GetFieldCount(void)
94 {
95 return 8;
96 }
97};
98
99}}}} // end of namespace Arp::Services::NotificationLogger::Services
Data structure for notifications from the NotificationLogger
Definition: StoredNotification.hpp:26
std::vector< RscString< 512 > > PayloadXml
Payload as XML
Definition: StoredNotification.hpp:67
RscString< 512 > NotificationName
Name of the notification
Definition: StoredNotification.hpp:42
RscString< 512 > SenderName
Nme of the sender
Definition: StoredNotification.hpp:47
RscString< 512 > Severity
Severity
Definition: StoredNotification.hpp:57
std::vector< RscString< 512 > > Payload
Formatted payload
Definition: StoredNotification.hpp:62
RscString< 512 > Archive
name of the archive the notification was retreived from. If the same notification was stored in multi...
Definition: StoredNotification.hpp:37
uint64 Id
Id of the notification
Definition: StoredNotification.hpp:31
RscString< 512 > TimeStamp
timestamp when the notification was sent
Definition: StoredNotification.hpp:52
void Deserialize(RscReader &reader) override
Deserializes the datatype. All fields of the datatype have to be deserialized in use of RscReader.
Definition: StoredNotification.hpp:81
void Serialize(RscWriter &writer) const override
Serializes the datatype. All fields of the datatype have to be serialized in use of RscWriter.
Definition: StoredNotification.hpp:69
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::uint64_t uint64
The Arp unsigned integer type of 8 byte size.
Definition: PrimitiveTypes.hpp:40
Namespace for classes and interfaces for the Remote Service Call implementation
Root namespace for the PLCnext API