|
PROFINET IO Controller Stack 1.0.0
Modern C++ implementation of a PROFINET IO Controller stack
|
Abstract interface for controlling cyclic PROFINET communication. More...
#include <cyclic.h>
Inheritance diagram for profinet::cyclic::ICyclicController:
Collaboration diagram for profinet::cyclic::ICyclicController:Public Member Functions | |
| virtual | ~ICyclicController ()=default |
| Virtual destructor. | |
| virtual void | Start ()=0 |
| Starts cyclic PROFINET communication. | |
| virtual void | Stop ()=0 |
| Stops cyclic PROFINET communication. | |
Abstract interface for controlling cyclic PROFINET communication.
Defines the lifecycle operations required by higher-level components to start and stop cyclic PROFINET communication. The interface separates device-level lifecycle management from the concrete cyclic controller implementation, allowing components such as ProfinetDevice to be unit tested without starting actual cyclic Ethernet communication.
Implementations are responsible for managing the underlying cyclic communication resources and maintaining the appropriate controller state between Start() and Stop() calls.
|
virtualdefault |
Virtual destructor.
Ensures that derived cyclic controller implementations can be destroyed safely through an ICyclicController pointer.
|
pure virtual |
Starts cyclic PROFINET communication.
Starts the cyclic communication process and enables transmission and reception of cyclic IO data according to the configured IOCR parameters.
| std::exception | Derived implementations may throw when cyclic communication cannot be started. |
Implemented in profinet::cyclic::CyclicController.
|
pure virtual |
Stops cyclic PROFINET communication.
Stops cyclic communication and releases or disables the resources associated with cyclic IO data exchange. Implementations should leave the controller in a state in which it can be safely destroyed or started again, where supported.
Implemented in profinet::cyclic::CyclicController.