Task API
ExecutableObjectIF
-
class ExecutableObjectIF
The interface provides a method to execute objects within a task.
The performOperation method, that is required by the interface is executed cyclically within a task context.
- Author
Bastian Baetz
Subclassed by AbstractTemperatureSensor, CommandingServiceBase, ControllerBase, DeviceHandlerBase, EventManager, HealthDevice, InternalErrorReporter, PowerSwitcherComponent, PusServiceBase, Service1TelecommandVerification, SubsystemBase, TcDistributorBase, TcpTmTcServer, TestTask, TmTcBridge, UdpTcPollingTask
Public Functions
-
inline virtual ~ExecutableObjectIF()
This is the empty virtual destructor as required for C++ interfaces.
-
virtual ReturnValue_t performOperation(uint8_t operationCode = 0) = 0
The performOperation method is executed in a task.
There are no restrictions for calls within this method, so any other member of the class can be used.
- Returns:
Currently, the return value is ignored.
-
inline virtual void setTaskIF(PeriodicTaskIF *task_)
Function called during setup assignment of object to task.
Has to be called from the function that assigns the object to a task and enables the object implementation to overwrite this function and get a reference to the executing task
- Parameters:
task_ – Pointer to the taskIF of this task
-
inline virtual ReturnValue_t initializeAfterTaskCreation()
This function should be called after the object was assigned to a specific task.
Example: Can be used to get task execution frequency. The task is created after initialize() and the object ctors have been called so the execution frequency can’t be cached in initialize()
- Returns: