tsm
0.1.0
|
#include <tsm_impl.h>
Public Types | |
using | type = ThreadedExecWithObserver< Observer, Context, Policy > |
using | HsmType = typename Policy< Context >::type |
Public Types inherited from tsm::ThreadedExecutionPolicy< Context > | |
using | Event = tuple_to_variant_t< Events > |
using | Event = tuple_to_variant_t< get_events_t< Context > > |
using | TaskCallback = void(*)(ThreadedExecutionPolicy *) |
using | type = ThreadedExecutionPolicy< Context, Policy > |
using | HsmType = typename Policy< Context >::type |
Public Member Functions | |
void | start () |
virtual | ~ThreadedExecWithObserver ()=default |
Public Member Functions inherited from tsm::ThreadedExecutionPolicy< Context > | |
ThreadedExecutionPolicy () | |
virtual | ~ThreadedExecutionPolicy () |
virtual | ~ThreadedExecutionPolicy () |
void | send_event (const Event &event) |
void | send_event (Event &&event) |
void | start () |
void | stop () |
Additional Inherited Members | |
Protected Member Functions inherited from tsm::ThreadedExecutionPolicy< Context > | |
void | step () |
void | process_event () |
void | process_event () |
Static Protected Member Functions inherited from tsm::ThreadedExecutionPolicy< Context > | |
static void | StepTask (void *pvParameters) |
Protected Attributes inherited from tsm::ThreadedExecutionPolicy< Context > | |
TaskCallback | taskCallback |
TaskHandle_t | smTaskHandle |
EventQueue | eventQueue |
BaseType_t | interrupt_ |
bool | interrupt_ |
std::thread | smThread_ |
EventQueue< Event > | eventQueue_ |
Another Threaded execution policy. The only difference with ThreadedExecutionPolicy is that an Observer's notify method will be invoked at the end of processing each event - specifically, right before the blocking wait for the next event.
using tsm::ThreadedExecWithObserver< Observer, Context, Policy >::HsmType = typename Policy<Context>::type |
using tsm::ThreadedExecWithObserver< Observer, Context, Policy >::type = ThreadedExecWithObserver<Observer, Context, Policy> |
|
virtualdefault |
|
inline |