9#include "Arp/System/Nm/SpecializedPayload.hpp"
10#include "Arp/Base/Rsc/Commons/RscVariant.hxx"
11#include "Arp/System/NmPayload/Alarms/AlarmState.hpp"
14namespace Arp {
namespace System {
namespace NmPayload {
namespace Alarms {
namespace Internal
17using namespace Arp::Base::Rsc::Commons;
23 using ArgumentsType = std::tuple<const char*, const char*, const char*, bool, bool, bool, bool, int16, bool, const char*, const char*, const char*>;
27 AlarmPayload(
const String& alarmId,
const String& alarmType,
const String& message,
const bool activeState,
const bool ackedState,
const bool confirmedState,
const bool suppressedState,
const int16 severity,
const bool isRetain,
const String& comment,
const String& language,
const String& user);
37 String GetAlarmType()
const;
39 bool GetActiveState()
const;
40 DateTime GetActiveStateChanged()
const;
41 bool GetAckedState()
const;
42 DateTime GetAckedStateChanged()
const;
43 bool GetConfirmedState()
const;
44 DateTime GetConfirmedStateChanged()
const;
45 bool GetSuppressedState()
const;
46 DateTime GetSuppressedStateChanged()
const;
47 int16 GetSeverity()
const;
49 bool GetRetain()
const;
52 String GetUserParameterName(
int index)
const;
55 String GetLanguage()
const;
64 size_t indexAlarmId = this->AddField<String>();
65 size_t indexAlarmType = this->AddField<String>();
66 size_t indexMessage = this->AddField<String>();
67 size_t indexActiveState = this->AddField<bool>();
68 size_t indexAckedState = this->AddField<bool>();
69 size_t indexConfirmedState = this->AddField<bool>();
70 size_t indexSuppressedState = this->AddField<bool>();
71 size_t indexSeverity = this->AddField<short>();
72 size_t indexIsRetain = this->AddField<bool>();
73 size_t indexActiveStateChanged = this->AddField<DateTime>();
74 size_t indexAckedStateChanged = this->AddField<DateTime>();
75 size_t indexConfirmedStateChanged = this->AddField<DateTime>();
76 size_t indexSuppressedStateChanged = this->AddField<DateTime>();
77 size_t indexIsRetainChanged = this->AddField<DateTime>();
78 size_t indexAlarmChanged = this->AddField<DateTime>();
80 size_t indexUserParamCount = this->AddField<int16>();
81 size_t indexUserParamName0 = this->AddField<String>();
82 size_t indexUserParamName1 = this->AddField<String>();
83 size_t indexUserParamName2 = this->AddField<String>();
84 size_t indexUserParamName3 = this->AddField<String>();
85 size_t indexUserParamName4 = this->AddField<String>();
86 size_t indexUserParamName5 = this->AddField<String>();
87 size_t indexUserParamName6 = this->AddField<String>();
88 size_t indexUserParamName7 = this->AddField<String>();
89 size_t indexUserParamName8 = this->AddField<String>();
90 size_t indexUserParamName9 = this->AddField<String>();
91 size_t indexUserParamValue0 = this->AddField<RscVariant<512>>();
92 size_t indexUserParamValue1 = this->AddField<RscVariant<512>>();
93 size_t indexUserParamValue2 = this->AddField<RscVariant<512>>();
94 size_t indexUserParamValue3 = this->AddField<RscVariant<512>>();
95 size_t indexUserParamValue4 = this->AddField<RscVariant<512>>();
96 size_t indexUserParamValue5 = this->AddField<RscVariant<512>>();
97 size_t indexUserParamValue6 = this->AddField<RscVariant<512>>();
98 size_t indexUserParamValue7 = this->AddField<RscVariant<512>>();
99 size_t indexUserParamValue8 = this->AddField<RscVariant<512>>();
100 size_t indexUserParamValue9 = this->AddField<RscVariant<512>>();
103 size_t indexComment = this->AddField<String>();
104 size_t indexLanguage = this->AddField<String>();
105 size_t indexUser = this->AddField<String>();
This class contains date and time informations.
Definition: DateTime.hpp:27
This class represents the Arp String. The implementation is based on std::string.
Definition: String.hpp:39
State with sub states of an alarm.
Definition: AlarmState.hpp:12
Definition: AlarmPayload.hpp:20
std::tuple< const char *, const char *, const char *, bool, bool, bool, bool, int16, bool, const char *, const char *, const char * > ArgumentsType
ArgumentsType to be used with NonBlockingNotificationRegistration3
Definition: AlarmPayload.hpp:23
Contains meta data and paylod of a Notification
Definition: Notification.hpp:20
Base class for custom Payload classes
Definition: SpecializedPayload.hpp:44
std::int16_t int16
The Arp integer type of 2 byte size.
Definition: PrimitiveTypes.hpp:31
Namespace for the NotificationManager
Root namespace for the PLCnext API