10 #include "Arp/System/Nm/SpecializedPayload.hpp"
14 namespace Arp {
namespace System {
namespace NmPayload {
namespace Io {
namespace ProfinetStack
25 using ArgumentsType = std::tuple<const char*, const char*, uint16, uint16, uint32, uint32, uint16, bool, bool, bool, bool, const char*>;
27 using SpecializedPayload::SpecializedPayload;
49 bool isChannelDiagnosis,
bool isManufacturerSpecificDiagnosis,
50 bool isSubmoduleDiagnosisState,
bool isArDiagnosisState,
const String& alarmText);
92 size_t indexAlarmType = this->AddField<String>();
93 size_t indexDeviceName = this->AddField<String>();
94 size_t indexSlotNumber = this->AddField<uint16>();
95 size_t indexSubslotNumber = this->AddField<uint16>();
96 size_t indexModuleNumber = this->AddField<uint32>();
97 size_t indexSubModuleNumber = this->AddField<uint32>();
98 size_t indexSequenceNumber = this->AddField<uint16>();
99 size_t indexIsChannelDiagnosis = this->AddField<bool>();
100 size_t indexIsManufacturerSpecificDiagnosis = this->AddField<bool>();
101 size_t indexIsSubmoduleDiagnosisState = this->AddField<bool>();
102 size_t indexIsArDiagnosisState = this->AddField<bool>();
103 size_t indexAlarmText = this->AddField<String>();
Payload class for a Profinet alarm
Definition: AlarmPayload.hpp:22
uint32 GetSubModuleNumber() const
Returns the sub module number
String GetAlarmType() const
Returns the alarm type
AlarmPayload(const ArgumentsType &args)
Creates a payload object
uint16 GetSlotNumber() const
Returns the slot number
String GetAlarmText() const
Returns the alarm text if available
bool GetIsChannelDiagnosis() const
Returns true if alarm is a channel diagnosis
String GetDeviceName() const
Returns the Profinet device name
uint16 GetSubslotNumber() const
Returns the sub slot number
AlarmPayload(const String &alarmType, const String &deviceName, uint16 slotNumber, uint16 subslotNumber, uint32 moduleNumber, uint32 subModuleNumber, uint16 sequenceNumber, bool isChannelDiagnosis, bool isManufacturerSpecificDiagnosis, bool isSubmoduleDiagnosisState, bool isArDiagnosisState, const String &alarmText)
Creates a payload object
uint16 GetSequenceNumber() const
Returns the sequence number
std::tuple< const char *, const char *, uint16, uint16, uint32, uint32, uint16, bool, bool, bool, bool, const char * > ArgumentsType
ArgumentsType to be used with NonBlockingNotificationRegistration3
Definition: AlarmPayload.hpp:25
bool GetIsArDiagnosisState() const
Return s true if alarm is diagnostic information of the application reference
uint32 GetModuleNumber() const
Returns the module number
bool GetIsManufacturerSpecificDiagnosis() const
Return s true if alarm is manufacturer specific diagnosis
bool GetIsSubmoduleDiagnosisState() const
Return s true if alarm is submodule diagnosis
Base class for custom Payload classes
Definition: SpecializedPayload.hpp:43
std::uint32_t uint32
The Arp unsigned integer type of 4 byte size.
Definition: PrimitiveTypes.hpp:35
std::uint16_t uint16
The Arp unsigned integer type of 2 byte size.
Definition: PrimitiveTypes.hpp:31
@ System
System components used by the System, Device, Plc or Io domains.
Root namespace for the PLCnext API