PLCnext API Documentation 25.0.2.69
PciDeviceStatePayload.hpp
1
2//
3// Copyright Phoenix Contact GmbH & Co. KG
4//
6
7#pragma once
8
9
10#include "Arp/System/Core/Arp.h"
11#include "Arp/System/Nm/SpecializedPayload.hpp"
12#include "Arp/System/NmPayload/Device/PciDeviceState.hpp"
13
14
15namespace Arp { namespace System { namespace NmPayload { namespace Device
16{
17
18
21class ARP_CXX_SYMBOL_EXPORT PciDeviceStatePayload : public Arp::System::Nm::SpecializedPayload<PciDeviceStatePayload>
22{
23public:
25 using ArgumentsType = PciDeviceState;
27 explicit PciDeviceStatePayload(PciDeviceState state);
28 PciDeviceState GetState() const;
29
30private:
31 // Do not change the order of the field initialization!
32 const size_t indexState = this->AddField<PciDeviceState>();
33};
34
35
36}}}} // namespace Arp::System::NmPayload::Device
Payload class for the status of PCI extension devices
Definition: PciDeviceStatePayload.hpp:22
PciDeviceState ArgumentsType
ArgumentsType to be used with NonBlockingNotificationRegistration3
Definition: PciDeviceStatePayload.hpp:25
Base class for custom Payload classes
Definition: SpecializedPayload.hpp:44
SpecializedPayload(const Notification &notification)
Creates a view on a Notification object
Definition: SpecializedPayload.hpp:211
Root namespace for the PLCnext API