PLCnext API Documentation  21.0.0.35466
StoredNotification.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 #include <vector>
13 
14 // DO NOT MODIFY THIS FILE, THIS FILE IS AUTOGENERATED
15 
16 namespace Arp { namespace Services { namespace NotificationLogger { namespace Services
17 {
18 
19 using namespace Arp;
20 using namespace Arp::System::Rsc::Services;
21 
26 {
30  uint64 Id = 0;
31 
37 
42 
47 
52 
57 
61  std::vector<RscString<512>> Payload;
62 
66  std::vector<RscString<512>> PayloadXml;
67 
68  void Serialize(RscWriter& writer)const override
69  {
70  writer.Write(this->Id);
71  writer.Write(this->Archive);
72  writer.Write(this->NotificationName);
73  writer.Write(this->SenderName);
74  writer.Write(this->TimeStamp);
75  writer.Write(this->Severity);
76  writer.WriteArray(this->Payload);
77  writer.WriteArray(this->PayloadXml);
78  }
79 
80  void Deserialize(RscReader& reader)override
81  {
82  reader.Read(this->Id);
83  reader.Read(this->Archive);
84  reader.Read(this->NotificationName);
85  reader.Read(this->SenderName);
86  reader.Read(this->TimeStamp);
87  reader.Read(this->Severity);
88  reader.ReadArray(this->Payload);
89  reader.ReadArray(this->PayloadXml);
90  }
91 
92  static size_t GetFieldCount(void)
93  {
94  return 8;
95  }
96 };
97 
98 }}}} // end of namespace Arp::Services::NotificationLogger::Services
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:173
Reads data from Rsc
Definition: RscReader.hpp:23
RscString< 512 > Severity
Severity
Definition: StoredNotification.hpp:56
Writes data to Rsc.
Definition: RscWriter.hpp:32
Namespace for classes and interfaces for the Remote Service Call implementation
Definition: IRscReadEnumerator.hxx:9
std::vector< RscString< 512 > > PayloadXml
Payload as XML
Definition: StoredNotification.hpp:66
void Deserialize(RscReader &reader) override
Deserializes the datatype. All fields of the datatype have to be deserialized in use of RscReader...
Definition: StoredNotification.hpp:80
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:199
T Read(void)
Reads an element of T from Rsc. With data tagging enabled RscType of T is validated.
Definition: RscReader.hpp:160
RscString< 512 > Archive
name of the archive the notification was retreived from. If the same notification was stored in multi...
Definition: StoredNotification.hpp:36
Marshalls structure or class data types. Serialize and Deserialize have to marshal fields in the same...
Definition: IRscSerializable.hpp:18
RscString< 512 > SenderName
Nme of the sender
Definition: StoredNotification.hpp:46
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:68
Root namespace for the PLCnext API
RscString< 512 > TimeStamp
timestamp when the notification was sent
Definition: StoredNotification.hpp:51
std::uint64_t uint64
The Arp unsigned integer type of 8 byte size.
Definition: PrimitiveTypes.hpp:39
void ReadArray(std::vector< T > &result)
Reads an array from Rsc. The read data is stored as std::vector.
Definition: RscReader.hpp:182
Data structure for notifications from the NotificationLogger
Definition: StoredNotification.hpp:25
RscString< 512 > NotificationName
Name of the notification
Definition: StoredNotification.hpp:41
std::vector< RscString< 512 > > Payload
Formatted payload
Definition: StoredNotification.hpp:61