PLCnext API Documentation 23.6.0.37
Public Types | Public Member Functions | Protected Member Functions | List of all members
Arp::System::Acf::IControllerComponent Class Referenceabstract

This is a quite important interface of the Arp platform. This is an extension to the basic IComponent interface and shall be implemented by components having its own threads. The Acf will use this interface to start and stop components during system startup and shutdown, respectively. More...

#include <IControllerComponent.hpp>

Public Types

typedef std::shared_ptr< IControllerComponentPtr
 The pointer type of this interface.
 

Public Member Functions

virtual void Start (void)=0
 Starts this component, that is, the component starts its own threads. More...
 
virtual void Stop (void)=0
 Stops this component, that is, the component stops its own threads.
 

Protected Member Functions

 IControllerComponent (void)=default
 The default constructor.
 
virtual ~IControllerComponent (void)=default
 The default destructor.
 

Detailed Description

This is a quite important interface of the Arp platform. This is an extension to the basic IComponent interface and shall be implemented by components having its own threads. The Acf will use this interface to start and stop components during system startup and shutdown, respectively.

Asynchron programmnig might be extremely difficult and error proned. This interface supports the component developer to get rid of the most multithreading issues. There is a clear and strict asynchron design and pattern in the Arp platform

Member Function Documentation

◆ Start()

virtual void Arp::System::Acf::IControllerComponent::Start ( void  )
pure virtual

Starts this component, that is, the component starts its own threads.

It is recommended to use the Arp::System::Commons::Threading::WorkerThread class for own threads.


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