PLCnext API Documentation 24.0.0.71
NetworkConfigurationChangedPayload.hpp
1
2//
3// Copyright PHOENIX CONTACT Electronics GmbH
4//
6
7#pragma once
8
9
10#include "Arp/System/Core/Arp.h"
11#include "Arp/System/Nm/SpecializedPayload.hpp"
12#include <tuple>
13
14
15namespace Arp { namespace System { namespace NmPayload { namespace Device
16{
17
18
21class ARP_CXX_SYMBOL_EXPORT NetworkConfigurationChangedPayload
22 : public Arp::System::Nm::SpecializedPayload<NetworkConfigurationChangedPayload>
23{
24public:
26 using ArgumentsType = std::tuple<uint32, const char*, const char*, bool>;
27
28
29 using SpecializedPayload::SpecializedPayload;
30
33
40 uint32 deviceId, const String& parameter, const String& value, bool successful);
41
44
47
50 ARP_DEPRECATED("Use GetValue()")
51 String GetValued() const;
52
54 String GetValue() const;
55
56private:
57 static String GetFormatString(bool successful);
58
59private:
60 // Do not change the order of the field initialization!
61 size_t indexDeviceId = this->AddField<uint32>();
62 size_t indexChangedParameter = this->AddField<String>();
63 size_t indexValue = this->AddField<String>();
64};
65
66
67}}}} // namespace Arp::System::NmPayload::Device
Payload class for changes of the network configuration
Definition: NetworkConfigurationChangedPayload.hpp:23
NetworkConfigurationChangedPayload(uint32 deviceId, const String &parameter, const String &value, bool successful)
Creates a payload object
NetworkConfigurationChangedPayload(const ArgumentsType &args)
Creates a payload object
std::tuple< uint32, const char *, const char *, bool > ArgumentsType
ArgumentsType to be used with NonBlockingNotificationRegistration3
Definition: NetworkConfigurationChangedPayload.hpp:26
String GetChangedParameter() const
Returns the name of the changed parameter
uint32 GetDeviceId() const
Returns the id of the affected device
Base class for custom Payload classes
Definition: SpecializedPayload.hpp:44
std::uint32_t uint32
The Arp unsigned integer type of 4 byte size.
Definition: PrimitiveTypes.hpp:36
@ System
System components used by the System, Device, Plc or Io domains.
Root namespace for the PLCnext API
class ARP_DEPRECATED("Use Arp::Enum<T> instead.") EnumStrings
Deprecated! The class implements an adapter for enums to define the string literals of the enum entri...
Definition: EnumStrings.hxx:38