PLCnext API Documentation 23.0.2.9
INonBlockingNotificationSending.hpp
1
2//
3// Copyright PHOENIX CONTACT Electronics GmbH
4//
6
7#pragma once
8
9
10#include "Arp/System/Nm/Future.hpp"
11#include "Arp/System/Nm/INotificationSending.hpp"
12
13
14namespace Arp { namespace System { namespace Nm
15{
16
17
22{
23public:
24 virtual ~INonBlockingNotificationSending() = default;
25
34 const String& notificationName, const String& senderName, Severity severity,
35 PayloadTypeIdType payloadTypeId) = 0;
36
41 NotificationNameIdType notificationNameId) = 0;
42
43
50 NotificationNameIdType notificationNameId, Arp::DateTime timestamp,
51 const RawPayloadType& payload) = 0;
52
59 NotificationNameIdType notificationNameId, Arp::DateTime timestamp,
60 const IPayload& payload) = 0;
61};
62
63
64}}} // end of namespace Arp::System::Nm
The class contains date and time informations.
Definition: DateTime.hpp:45
Future object as proxy for return value an asynchronous function call
Definition: Future.hpp:191
Future object as proxy for return value an asynchronous function call
Definition: Future.hpp:114
Interface for non blocking sending of Notifications
Definition: INonBlockingNotificationSending.hpp:22
virtual Future< NotificationNameIdType > NonBlockingRegisterNotification(const String &notificationName, const String &senderName, Severity severity, PayloadTypeIdType payloadTypeId)=0
Registers a new Notification (non-blocking)
virtual Future< void > NonBlockingUnregisterNotification(NotificationNameIdType notificationNameId)=0
Unregisters a Nototification (non-blocking)
virtual Future< NotificationIdType > NonBlockingSendNotification(NotificationNameIdType notificationNameId, Arp::DateTime timestamp, const RawPayloadType &payload)=0
Sends a notification (non-blocking)
virtual Future< NotificationIdType > NonBlockingSendNotification(NotificationNameIdType notificationNameId, Arp::DateTime timestamp, const IPayload &payload)=0
Sends a notification (non-blocking)
Interface for Paylo objects
Definition: IPayload.hpp:19
@ System
System components used by the System, Device, Plc or Io domains.
Severity
Enumeration of Severities for notifications
Definition: Severity.hpp:15
std::vector< Arp::System::Rsc::Services::RscVariant< RawPayloadTypeLength > > RawPayloadType
type for the internally transferred payloads
Definition: NotificationManagerTypes.hpp:34
Root namespace for the PLCnext API