74 virtual void Start(std::unique_ptr<IRawEthernetSocket> eSocket =
nullptr, std::unique_ptr<IUdpSocket> uSocket =
nullptr) = 0;
Abstraction for sending and receiving raw Ethernet frames.
Abstraction for IPv4 UDP datagram transport.
Declares PROFINET alarm, diagnosis, maintenance, and USI payload types and parsers.
Abstract interface for receiving PROFINET alarm notifications.
virtual void AddAlarmNotificationCallback(std::function< void(const AlarmNotification &)> callback)=0
Registers a callback for received alarm notifications.
virtual void Stop()=0
Stops alarm reception.
virtual void AddRtaAlarmCallback(std::function< void(const RtaError &)> callback)=0
Registers a callback for received rta alarms.
virtual bool IsRunning() const =0
Indicates whether the listener is currently running.
virtual void RemoveRtaAlarmCallback(std::function< void(const RtaError &)> callback)=0
Remove a registered callback for received rta alarms.
virtual void Start(std::unique_ptr< IRawEthernetSocket > eSocket=nullptr, std::unique_ptr< IUdpSocket > uSocket=nullptr)=0
Starts alarm reception.
virtual ~IAlarmListener()=default
Virtual destructor.
virtual void RemoveAlarmNotificationCallback(std::function< void(const AlarmNotification &)> callback)=0
Remove a registered callback for received alarm notifications.
Complete parsed AlarmNotification PDU: header fields + parsed items.
Decoded PROFINET RTA ERR-PDU.