PLCnext API Documentation 24.0.0.71
AckConfPayload.hpp
1
2//
3// Copyright PHOENIX CONTACT Electronics GmbH
4//
6#pragma once
7
9#include "Arp/System/Nm/SpecializedPayload.hpp"
10#include "Arp/System/Rsc/Services/RscVariant.hxx"
11#include "Arp/System/NmPayload/Alarms/AlarmState.hpp"
12#include <tuple>
13
14namespace Arp { namespace System { namespace NmPayload { namespace Alarms { namespace Internal
15{
16using namespace Arp::System::Nm;
17using namespace Arp::System::Rsc::Services;
18
19class AckConfPayload : public SpecializedPayload<AckConfPayload>
20{
21public: // construction/destruction
23 using ArgumentsType = std::tuple<const char*, const char*, const char*, const char*>;
24 explicit AckConfPayload(const ArgumentsType& args);
25
26 AckConfPayload(const String& alarmId, const String& comment, const String& language, const String& user);
27 explicit AckConfPayload(const Notification& notification);
28
29public: // operators
30public: // static operations
31public: // setter/getter operations
32 const String GetAlarmId() const;
33 const String GetComment() const;
34 const String GetLanguage() const;
35 const String GetUser() const;
36
37public: // operations
38protected: // operations
39private: // static methods
40private: // methods
41
42private: // fields
43 size_t indexAlarmId = this->AddField<String>();
44 size_t indexComment = this->AddField<String>();
45 size_t indexLanguage = this->AddField<String>();
46 size_t indexUser = this->AddField<String>();
47
48private: // static fields
49};
50
51}}}}} // namespace Arp::System::NmPayload::Alarms::Internal
52
std::tuple< const char *, const char *, const char *, const char * > ArgumentsType
ArgumentsType to be used with NonBlockingNotificationRegistration3
Definition: AckConfPayload.hpp:23
Contains meta data and paylod of a Notification
Definition: Notification.hpp:22
Base class for custom Payload classes
Definition: SpecializedPayload.hpp:44
@ System
System components used by the System, Device, Plc or Io domains.
Namespace for the NotificationManager
Definition: Future.hpp:16
Namespace for classes and interfaces for the Remote Service Call implementation
Root namespace for the PLCnext API