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: