PLCnext API Documentation 25.0.2.69
Public Types | Public Member Functions | List of all members
Arp::Base::Acf::Commons::SystemEventProvider Class Reference

This class provides system event handling functionality. More...

#include <SystemEventProvider.hpp>

Public Types

using SystemEventHandler = delegate< void(SystemEvent)>
 The delegate type of system event handler.
 

Public Member Functions

 SystemEventProvider (void)
 The default constructor.
 
 SystemEventProvider (const SystemEventProvider &arg)=delete
 
 SystemEventProvider (SystemEventProvider &&arg) noexcept
 The default move constructor. More...
 
SystemEventProvideroperator= (const SystemEventProvider &arg)=delete
 
SystemEventProvideroperator= (SystemEventProvider &&arg) noexcept
 The default move-assignment operator. More...
 
 ~SystemEventProvider (void)
 The default destructor.
 
void AddEventHandler (SystemEvent systemEvent, const SystemEventHandler &eventHandler)
 Registers a system event handler. More...
 
void RemoveEventHandler (SystemEvent systemEvent, const SystemEventHandler &eventHandler)
 Removes a system event handler. More...
 
SystemState WaitFor (SystemEvent systemEvent)
 Waits until a specific SystemEvent occurs. More...
 
SystemState GetSystemState (void) const
 Returns the SystemState. More...
 
Impl & GetImpl (void)
 For internal use only. More...
 
const Impl & GetImpl (void) const
 

Detailed Description

This class provides system event handling functionality.

This class shall be used by external application to synchronize the system start and shutdown procedure.

Constructor & Destructor Documentation

◆ SystemEventProvider()

Arp::Base::Acf::Commons::SystemEventProvider::SystemEventProvider ( SystemEventProvider &&  arg)
defaultnoexcept

The default move constructor.

Parameters
argThe argument to move.

Member Function Documentation

◆ AddEventHandler()

void Arp::Base::Acf::Commons::SystemEventProvider::AddEventHandler ( SystemEvent  systemEvent,
const SystemEventHandler eventHandler 
)

Registers a system event handler.

Parameters
systemEventThe system event to handle.
eventHandlerThe event handler delegate, which is invoked when the system event occurs.

◆ GetImpl()

const SystemEventProvider::Impl & Arp::Base::Acf::Commons::SystemEventProvider::GetImpl ( void  )

For internal use only.

Returns
The implementation instance of this class.

◆ GetSystemState()

SystemState Arp::Base::Acf::Commons::SystemEventProvider::GetSystemState ( void  ) const

Returns the SystemState.

Returns
Value of current SystemState.

◆ operator=()

SystemEventProvider & Arp::Base::Acf::Commons::SystemEventProvider::operator= ( SystemEventProvider &&  arg)
defaultnoexcept

The default move-assignment operator.

Parameters
argThe argument to move.
Returns
This instance.

◆ RemoveEventHandler()

void Arp::Base::Acf::Commons::SystemEventProvider::RemoveEventHandler ( SystemEvent  systemEvent,
const SystemEventHandler eventHandler 
)

Removes a system event handler.

Parameters
systemEventThe system event to deregister.
eventHandlerThe event handler delegate, which was used for registration.

◆ WaitFor()

SystemState Arp::Base::Acf::Commons::SystemEventProvider::WaitFor ( SystemEvent  systemEvent)

Waits until a specific SystemEvent occurs.

Parameters
systemEventSystemEvent that has to be waited for.
Returns

The documentation for this class was generated from the following files: