10#include "Arp/System/Nm/IPayload.hpp"
11#include "Arp/System/Nm/Notification.hpp"
14namespace Arp {
namespace System {
namespace Nm
22 using ValueType = RawPayloadType::value_type;
23 using FieldType = Arp::Base::Rsc::Commons::RscType;
26 using FieldInfos = std::vector<FieldType>;
38 const String GetName()
const override;
40 const String ToString()
const override;
42 bool IsReadOnly()
const;
43 size_t GetFieldCount()
const;
44 const ValueType& GetFieldValue(
size_t fieldIndex)
const;
45 FieldType GetFieldType(
size_t fieldIndex)
const;
46 size_t GetFieldIndexFormatString()
const;
47 size_t AddField(FieldType type);
48 void SetFieldValue(
size_t fieldIndex,
const ValueType& value);
51 void InitializeFields();
52 bool HasAssociatedNotification()
const;
53 bool CanFieldBeAdded()
const;
54 const String FormatValue(
const String& formatString,
const ValueType& value)
const;
62 size_t FieldIndexFormatString = 0;
This class represents the Arp String. The implementation is based on std::string.
Definition: String.hpp:39
Generic access to a IPayload
Definition: GenericPayload.hpp:20
Interface for Paylo objects
Definition: IPayload.hpp:19
Contains meta data and paylod of a Notification
Definition: Notification.hpp:20
std::vector< Arp::Base::Rsc::Commons::RscVariant< RawPayloadTypeLength > > RawPayloadType
type for the internally transferred payloads
Definition: NotificationManagerTypes.hpp:32
Root namespace for the PLCnext API