PeriodicTask class. More...
#include <PeriodicTask.h>
Classes | |
class | alive_t |
alive_t class More... | |
struct | statistics_t |
Structure for task execution time measurement management. More... | |
struct | suspend_t |
Structure for task suspend management. More... | |
Public Types | |
typedef coil::Guard< coil::Mutex > | Guard |
Public Member Functions | |
PeriodicTask () | |
Constructor. | |
virtual | ~PeriodicTask () |
Destructor. | |
virtual void | activate () |
Starting the task. | |
virtual void | finalize () |
Finalizing the task. | |
virtual int | suspend (void) |
Suspending the task. | |
virtual int | resume (void) |
Resuming the suspended task. | |
virtual void | signal () |
Executing the suspended task one tick. | |
virtual bool | setTask (TaskFuncBase *func, bool delete_in_dtor=true) |
Setting task execution function. | |
template<class O , class F > | |
bool | setTask (O *obj, F fun) |
Setting task execution function. | |
virtual void | setPeriod (double period) |
Setting task execution period. | |
virtual void | setPeriod (TimeValue &period) |
Setting task execution period. | |
virtual void | executionMeasure (bool value) |
Validate a Task execute time measurement. | |
virtual void | executionMeasureCount (int n) |
Task execute time measurement period. | |
virtual void | periodicMeasure (bool value) |
Validate a Task period time measurement. | |
virtual void | periodicMeasureCount (int n) |
Task period time measurement count. | |
virtual TimeMeasure::Statistics | getExecStat () |
Get a result in task execute time measurement. | |
virtual TimeMeasure::Statistics | getPeriodStat () |
Get a result in task period time measurement. | |
Protected Member Functions | |
virtual int | svc () |
Thread execution for PeriodicTask. | |
virtual void | sleep () |
Thread sleep. | |
virtual void | updateExecStat () |
Update for execute state. | |
virtual void | updatePeriodStat () |
Update for period state. | |
Protected Attributes | |
coil::TimeValue | m_period |
Task execution period. | |
bool | m_nowait |
Thread sleep flag. | |
TaskFuncBase * | m_func |
Task execution function. | |
bool | m_deleteInDtor |
Task execution function delete flag. | |
alive_t | m_alive |
Task alive flag. | |
suspend_t | m_suspend |
Task suspend infomation. | |
bool | m_execMeasure |
Task execution time measurement flag. | |
unsigned int | m_execCount |
Task execution time measurement count. | |
unsigned int | m_execCountMax |
Task execution time measurement max count. | |
statistics_t | m_execStat |
Task execution time measurement statistics. | |
coil::TimeMeasure | m_execTime |
Task execution time measurement infomation. | |
bool | m_periodMeasure |
Task periodic time measurement flag. | |
unsigned int | m_periodCount |
Task periodic time measurement count. | |
unsigned int | m_periodCountMax |
Task periodic time measurement max count. | |
statistics_t | m_periodStat |
Task periodic time measurement statistics. | |
coil::TimeMeasure | m_periodTime |
Task periodic time measurement infomation. |
PeriodicTask class.
coil::PeriodicTask::PeriodicTask | ( | ) |
Constructor.
Constructor
virtual coil::PeriodicTask::~PeriodicTask | ( | ) | [virtual] |
Destructor.
Destructor
virtual void coil::PeriodicTask::activate | ( | ) | [virtual] |
Starting the task.
Starting a thread to execute a task. If the task/thread is started properly, it will return 'TRUE'. if the task/thread are already started or task function object is not set, 'FALSE' will be returned.
Implements coil::PeriodicTaskBase.
virtual void coil::PeriodicTask::executionMeasure | ( | bool | value | ) | [virtual] |
Validate a Task execute time measurement.
Implements coil::PeriodicTaskBase.
virtual void coil::PeriodicTask::executionMeasureCount | ( | int | n | ) | [virtual] |
Task execute time measurement period.
Implements coil::PeriodicTaskBase.
virtual void coil::PeriodicTask::finalize | ( | ) | [virtual] |
virtual TimeMeasure::Statistics coil::PeriodicTask::getExecStat | ( | ) | [virtual] |
Get a result in task execute time measurement.
Implements coil::PeriodicTaskBase.
virtual TimeMeasure::Statistics coil::PeriodicTask::getPeriodStat | ( | ) | [virtual] |
Get a result in task period time measurement.
Implements coil::PeriodicTaskBase.
virtual void coil::PeriodicTask::periodicMeasure | ( | bool | value | ) | [virtual] |
Validate a Task period time measurement.
Implements coil::PeriodicTaskBase.
virtual void coil::PeriodicTask::periodicMeasureCount | ( | int | n | ) | [virtual] |
Task period time measurement count.
Implements coil::PeriodicTaskBase.
virtual int coil::PeriodicTask::resume | ( | void | ) | [virtual] |
virtual void coil::PeriodicTask::setPeriod | ( | TimeValue & | period | ) | [virtual] |
Setting task execution period.
period | Execution period |
Implements coil::PeriodicTaskBase.
virtual void coil::PeriodicTask::setPeriod | ( | double | period | ) | [virtual] |
Setting task execution period.
period | Execution period [sec] |
Implements coil::PeriodicTaskBase.
bool coil::PeriodicTask::setTask | ( | O * | obj, | |
F | fun | |||
) | [inline] |
Setting task execution function.
func | Set int (*)() type function pointer |
Reimplemented from coil::PeriodicTaskBase.
References setTask().
virtual bool coil::PeriodicTask::setTask | ( | TaskFuncBase * | func, | |
bool | delete_in_dtor = true | |||
) | [virtual] |
Setting task execution function.
func | Set int (*)() type function pointer |
Implements coil::PeriodicTaskBase.
Referenced by setTask().
virtual void coil::PeriodicTask::signal | ( | ) | [virtual] |
Executing the suspended task one tick.
Executing the suspended task one tick
Implements coil::PeriodicTaskBase.
virtual void coil::PeriodicTask::sleep | ( | ) | [protected, virtual] |
Thread sleep.
virtual int coil::PeriodicTask::suspend | ( | void | ) | [virtual] |
virtual int coil::PeriodicTask::svc | ( | ) | [protected, virtual] |
Thread execution for PeriodicTask.
Reimplemented from coil::Task.
virtual void coil::PeriodicTask::updateExecStat | ( | ) | [protected, virtual] |
Update for execute state.
virtual void coil::PeriodicTask::updatePeriodStat | ( | ) | [protected, virtual] |
Update for period state.
alive_t coil::PeriodicTask::m_alive [protected] |
Task alive flag.
bool coil::PeriodicTask::m_deleteInDtor [protected] |
Task execution function delete flag.
unsigned int coil::PeriodicTask::m_execCount [protected] |
Task execution time measurement count.
unsigned int coil::PeriodicTask::m_execCountMax [protected] |
Task execution time measurement max count.
bool coil::PeriodicTask::m_execMeasure [protected] |
Task execution time measurement flag.
statistics_t coil::PeriodicTask::m_execStat [protected] |
Task execution time measurement statistics.
coil::TimeMeasure coil::PeriodicTask::m_execTime [protected] |
Task execution time measurement infomation.
TaskFuncBase* coil::PeriodicTask::m_func [protected] |
Task execution function.
bool coil::PeriodicTask::m_nowait [protected] |
Thread sleep flag.
coil::TimeValue coil::PeriodicTask::m_period [protected] |
Task execution period.
unsigned int coil::PeriodicTask::m_periodCount [protected] |
Task periodic time measurement count.
unsigned int coil::PeriodicTask::m_periodCountMax [protected] |
Task periodic time measurement max count.
bool coil::PeriodicTask::m_periodMeasure [protected] |
Task periodic time measurement flag.
statistics_t coil::PeriodicTask::m_periodStat [protected] |
Task periodic time measurement statistics.
coil::TimeMeasure coil::PeriodicTask::m_periodTime [protected] |
Task periodic time measurement infomation.
suspend_t coil::PeriodicTask::m_suspend [protected] |
Task suspend infomation.