Public Types |
typedef RegionImpl | Implementation |
typedef RegionContainerImpl | Context |
typedef Region< RegionImpl,
RegionContainerImpl,
IInnerState, EventArgs,
HistoryType, StateThreadType,
TimeDurationType,
SemaphoreType, MutexType,
EventQueueType > | SelfClassType |
typedef ActiveState
< SelfClassType,
RegionContainerImpl,
IInnerState, StateThreadType,
TimeDurationType,
SemaphoreType, MutexType > | ActiveStateImpl |
typedef CompositeState
< SelfClassType,
RegionContainerImpl,
IInnerState, HistoryType,
ActiveStateImpl, StateMachine
< RegionImpl, IInnerState > > | CompositeStateBase |
typedef
internal::RegionBaseImplementationSelector
< RegionImpl,
RegionContainerImpl,
IInnerState, EventArgs >
::RESULT_TYPE | SelectedRegionBase |
typedef
SelectedRegionBase::RegionBaseClass | RegionBaseClass |
typedef
sttcl::internal::EventArgsInterfaceSelector
< RegionContainerImpl,
IInnerState, EventArgs > | EventArgsSelectorType |
typedef
EventArgsSelectorType::RefCountPtr | RefCountPtr |
typedef
EventArgsSelectorType::InnerEventHandler | InnerEventHandler |
typedef void(RegionBaseClass::* | InternalEventHandler )(bool) |
typedef
CompositeStateBase::StateImplementationBase | StateImplementationBase |
typedef
CompositeStateBase::StateMachineImplementationBase | RegionStateMachine |
typedef
CompositeStateBase::StateDoAction | StateDoAction |
typedef
CompositeStateBase::CompositeStateHistoryBaseClass | CompositeStateHistoryBaseClass |
typedef
CompositeStateBase::InnerStateClass | InnerStateClass |
typedef
CompositeStateBase::OuterStateInterface | OuterStateInterface |
typedef
CompositeStateBase::StateInterface | StateInterface |
typedef StateBase< RegionImpl,
IInnerState > | RegionStateBase |
typedef RegionStateBase | StateBaseClass |
typedef
StateImplementationBase::StateThreadImpl | RegionThreadImpl |
typedef StateMachine
< RegionImpl, IInnerState > | StateMachineImplementationBase |
typedef StateBase
< RegionContainerImpl,
IInnerState > | StateBaseType |
typedef StateThreadType | StateThreadImpl |
typedef SemaphoreType | EndDoActionSemaphoreImpl |
typedef TimeDurationType | TimeDurationImpl |
typedef MutexType | ActiveStateMutexImpl |
typedef
sttcl::internal::RegionEventDispatchInterfaceSelector
< RegionContainerImpl,
IInnerState, EventArgs >
::RESULT_TYPE | RegionEventDispatchInterface |
Public Member Functions |
| Region (RegionContainerImpl *argRegionContainer, TimeDurationType argDoActionFrequency=TimeDurationType::Zero) |
virtual | ~Region () |
void | dispatchInternalEvent (InternalEventHandler internalEventHandler, bool recursive) |
void | changeStateImpl (RegionContainerImpl *context, IInnerState *newState) |
void | changeState (RegionStateBase *newState) |
void | startingRegionThread () |
void | endingRegionThread () |
void | entryImpl (Context *context) |
void | exitImpl (Context *context) |
bool | initializeImpl (bool force) |
void | finalizeImpl (bool finalizeSubStateMachines) |
bool | endDoActionRequestedImpl () |
void | exitingDoActionImpl () |
void | joinDoActionThreadImpl () |
void | unblockDoActionImpl () |
void | endDoImpl (RegionContainerImpl *context) |
| CompositeState (StateDoAction argDoAction=0) |
virtual | ~CompositeState () |
void | changeState (InnerStateClass *newState) |
void | subStateMachineCompletedImpl () |
void | subStateMachineCompleted () |
void | entryImpl (Context *context) |
void | exitImpl (Context *context) |
const TimeDurationImpl & | getDoFrequency () const |
void | setDoFrequency (const TimeDurationImpl &newValue) |
void | endDoImpl (Context *context) |
const StateThreadType & | getStateThread () const |
void | startDoImpl (Context *context) |
bool | isDoActionRunning () const |
void | finalizeSubStateMachinesImpl (bool recursive) |
void | initSubStateMachinesImpl (bool recursive) |
bool | checkDirectTransitionImpl (Context *context, bool &finalize, StateBaseType *&nextState) |
void | changeStateImpl (Context *context, StateBase< StateMachineImpl, IState > *newState) |
template<class StateMachineContext > |
void | changeStateImpl (StateMachineContext *context, StateBase< StateMachineImpl, IState > *newState) |
| ~StateMachine () |
bool | initialize (bool force=false) |
void | finalize (bool finalizeSubStateMachines=true) |
bool | isReady () const |
bool | isInitialized () const |
bool | isInitalizing () const |
bool | isFinalized () const |
bool | isFinalizing () const |
StateBaseClass * | getState () const |
void | subStateMachineCompleted (StateBaseClass *state) |
void | subStateMachineCompletedImpl (StateBaseClass *state) |
| RegionBaseImplWithEventArgs (RegionContainerImpl *argRegionContainer) |
virtual | ~RegionBaseImplWithEventArgs () |
virtual void | handleBroadcastedEvent (RegionContainerImpl *context, InnerEventHandler eventHandler, RefCountPtr eventArgs) |
void | dispatchEvent (RegionContainerImpl *context, IInnerState *state, InnerEventHandler eventHandler, RefCountPtr eventArgs) |
| RegionBase (RegionContainerImpl *argRegionContainer) |
virtual | ~RegionBase () |
template<class RegionImpl > |
RegionImpl * | getRegionContext () |
virtual | ~IRegionEventDispatchWithArgs () |
Additional Inherited Members |
void | changeState (Context *context, StateBase< RegionContainerImpl, OuterStateInterface > *newState) |
virtual void | finalizeSubStateMachines (bool recursive) |
virtual void | initSubStateMachines (bool recursive) |
| ActiveState (StateDoAction argDoAction, bool argRunDoActionOnce=false, TimeDurationType argDoFrequency=TimeDurationType::Zero) |
virtual | ~ActiveState () |
void | changeState (Context *context, StateBase< RegionContainerImpl, IInnerState > *newState) |
bool | endDoActionRequested () |
| StateBase () |
virtual | ~StateBase () |
| StateMachine () |
void | changeState (typename StateMachine< RegionImpl, IInnerState >::StateBaseClass *newState) |
void | setState (StateBaseClass *newState) |
StateBaseClass * | getInitialState () const |
StateBaseClass * | getInitialStateImpl () const |
bool | isReadyImpl () const |
void | exitCurrentState () |
void | enterNewState () |
| CompositeStateBase () |
| ~CompositeStateBase () |
void | saveCurrentState (InnerStateType *currentState) |
InnerStateType * | getStateHistory () |
template<class CompositeStateImpl > |
InnerStateType * | resumeStateHistory (CompositeStateImpl *compositeState) |
template<class CompositeStateImpl > |
InnerStateType * | finalizeStateHistory (CompositeStateImpl *compositeState) |
void | callDispatchedEventHandler (RegionContainerImpl *context, IInnerState *state, InnerEventHandler eventHandler, RefCountPtr eventArgs) |
template<class RegionImpl, class RegionContainerImpl, class IInnerState, class EventArgs = void, CompositeStateHistoryType::Values HistoryType = CompositeStateHistoryType::None, class StateThreadType = sttcl::internal::SttclThread<>, class TimeDurationType = TimeDuration<STTCL_DEFAULT_TIMEDURATIONIMPL>, class SemaphoreType = sttcl::internal::SttclSemaphore<STTCL_DEFAULT_SEMAPHOREIMPL,TimeDurationType>, class MutexType = sttcl::internal::SttclMutex<STTCL_DEFAULT_MUTEXIMPL,TimeDurationType>, class EventQueueType = sttcl::EventQueue<sttcl::internal::DispatchedEvent<RegionContainerImpl,IInnerState,EventArgs>,TimeDurationType,SemaphoreType,MutexType>>
class sttcl::Region< RegionImpl, RegionContainerImpl, IInnerState, EventArgs, HistoryType, StateThreadType, TimeDurationType, SemaphoreType, MutexType, EventQueueType >
Represents a region within a matching ConcurrentCompositeState implementation.
- Template Parameters:
-
template<class RegionImpl , class RegionContainerImpl , class IInnerState , class EventArgs = void, CompositeStateHistoryType::Values HistoryType = CompositeStateHistoryType::None, class StateThreadType = sttcl::internal::SttclThread<>, class TimeDurationType = TimeDuration<STTCL_DEFAULT_TIMEDURATIONIMPL>, class SemaphoreType = sttcl::internal::SttclSemaphore<STTCL_DEFAULT_SEMAPHOREIMPL,TimeDurationType>, class MutexType = sttcl::internal::SttclMutex<STTCL_DEFAULT_MUTEXIMPL,TimeDurationType>, class EventQueueType = sttcl::EventQueue<sttcl::internal::DispatchedEvent<RegionContainerImpl,IInnerState,EventArgs>,TimeDurationType,SemaphoreType,MutexType>>
typedef ActiveState< SelfClassType , RegionContainerImpl , IInnerState , StateThreadType , TimeDurationType , SemaphoreType , MutexType > sttcl::Region< RegionImpl, RegionContainerImpl, IInnerState, EventArgs, HistoryType, StateThreadType, TimeDurationType, SemaphoreType, MutexType, EventQueueType >::ActiveStateImpl |
template<class RegionImpl , class RegionContainerImpl , class IInnerState , class EventArgs = void, CompositeStateHistoryType::Values HistoryType = CompositeStateHistoryType::None, class StateThreadType = sttcl::internal::SttclThread<>, class TimeDurationType = TimeDuration<STTCL_DEFAULT_TIMEDURATIONIMPL>, class SemaphoreType = sttcl::internal::SttclSemaphore<STTCL_DEFAULT_SEMAPHOREIMPL,TimeDurationType>, class MutexType = sttcl::internal::SttclMutex<STTCL_DEFAULT_MUTEXIMPL,TimeDurationType>, class EventQueueType = sttcl::EventQueue<sttcl::internal::DispatchedEvent<RegionContainerImpl,IInnerState,EventArgs>,TimeDurationType,SemaphoreType,MutexType>>
typedef CompositeState< SelfClassType , RegionContainerImpl , IInnerState , HistoryType , ActiveStateImpl , StateMachine<RegionImpl, IInnerState> > sttcl::Region< RegionImpl, RegionContainerImpl, IInnerState, EventArgs, HistoryType, StateThreadType, TimeDurationType, SemaphoreType, MutexType, EventQueueType >::CompositeStateBase |
The region composites state base class type.
template<class RegionImpl , class RegionContainerImpl , class IInnerState , class EventArgs = void, CompositeStateHistoryType::Values HistoryType = CompositeStateHistoryType::None, class StateThreadType = sttcl::internal::SttclThread<>, class TimeDurationType = TimeDuration<STTCL_DEFAULT_TIMEDURATIONIMPL>, class SemaphoreType = sttcl::internal::SttclSemaphore<STTCL_DEFAULT_SEMAPHOREIMPL,TimeDurationType>, class MutexType = sttcl::internal::SttclMutex<STTCL_DEFAULT_MUTEXIMPL,TimeDurationType>, class EventQueueType = sttcl::EventQueue<sttcl::internal::DispatchedEvent<RegionContainerImpl,IInnerState,EventArgs>,TimeDurationType,SemaphoreType,MutexType>>
The composite state base class regarding state history policy.
Reimplemented from sttcl::CompositeState< Region< RegionImpl, RegionContainerImpl, IInnerState, EventArgs, HistoryType, StateThreadType, TimeDurationType, SemaphoreType, MutexType, EventQueueType >, RegionContainerImpl, IInnerState, HistoryType, ActiveState< Region< RegionImpl, RegionContainerImpl, IInnerState, EventArgs, HistoryType, StateThreadType, TimeDurationType, SemaphoreType, MutexType, EventQueueType >, RegionContainerImpl, IInnerState, StateThreadType, TimeDurationType, SemaphoreType, MutexType >, StateMachine< RegionImpl, IInnerState > >.
template<class RegionImpl , class RegionContainerImpl , class IInnerState , class EventArgs = void, CompositeStateHistoryType::Values HistoryType = CompositeStateHistoryType::None, class StateThreadType = sttcl::internal::SttclThread<>, class TimeDurationType = TimeDuration<STTCL_DEFAULT_TIMEDURATIONIMPL>, class SemaphoreType = sttcl::internal::SttclSemaphore<STTCL_DEFAULT_SEMAPHOREIMPL,TimeDurationType>, class MutexType = sttcl::internal::SttclMutex<STTCL_DEFAULT_MUTEXIMPL,TimeDurationType>, class EventQueueType = sttcl::EventQueue<sttcl::internal::DispatchedEvent<RegionContainerImpl,IInnerState,EventArgs>,TimeDurationType,SemaphoreType,MutexType>>
typedef RegionContainerImpl sttcl::Region< RegionImpl, RegionContainerImpl, IInnerState, EventArgs, HistoryType, StateThreadType, TimeDurationType, SemaphoreType, MutexType, EventQueueType >::Context |
The state machine implementation type.
Reimplemented from sttcl::CompositeState< Region< RegionImpl, RegionContainerImpl, IInnerState, EventArgs, HistoryType, StateThreadType, TimeDurationType, SemaphoreType, MutexType, EventQueueType >, RegionContainerImpl, IInnerState, HistoryType, ActiveState< Region< RegionImpl, RegionContainerImpl, IInnerState, EventArgs, HistoryType, StateThreadType, TimeDurationType, SemaphoreType, MutexType, EventQueueType >, RegionContainerImpl, IInnerState, StateThreadType, TimeDurationType, SemaphoreType, MutexType >, StateMachine< RegionImpl, IInnerState > >.
template<class RegionImpl , class RegionContainerImpl , class IInnerState , class EventArgs = void, CompositeStateHistoryType::Values HistoryType = CompositeStateHistoryType::None, class StateThreadType = sttcl::internal::SttclThread<>, class TimeDurationType = TimeDuration<STTCL_DEFAULT_TIMEDURATIONIMPL>, class SemaphoreType = sttcl::internal::SttclSemaphore<STTCL_DEFAULT_SEMAPHOREIMPL,TimeDurationType>, class MutexType = sttcl::internal::SttclMutex<STTCL_DEFAULT_MUTEXIMPL,TimeDurationType>, class EventQueueType = sttcl::EventQueue<sttcl::internal::DispatchedEvent<RegionContainerImpl,IInnerState,EventArgs>,TimeDurationType,SemaphoreType,MutexType>>
typedef sttcl::internal::EventArgsInterfaceSelector<RegionContainerImpl,IInnerState,EventArgs> sttcl::Region< RegionImpl, RegionContainerImpl, IInnerState, EventArgs, HistoryType, StateThreadType, TimeDurationType, SemaphoreType, MutexType, EventQueueType >::EventArgsSelectorType |
template<class RegionImpl , class RegionContainerImpl , class IInnerState , class EventArgs = void, CompositeStateHistoryType::Values HistoryType = CompositeStateHistoryType::None, class StateThreadType = sttcl::internal::SttclThread<>, class TimeDurationType = TimeDuration<STTCL_DEFAULT_TIMEDURATIONIMPL>, class SemaphoreType = sttcl::internal::SttclSemaphore<STTCL_DEFAULT_SEMAPHOREIMPL,TimeDurationType>, class MutexType = sttcl::internal::SttclMutex<STTCL_DEFAULT_MUTEXIMPL,TimeDurationType>, class EventQueueType = sttcl::EventQueue<sttcl::internal::DispatchedEvent<RegionContainerImpl,IInnerState,EventArgs>,TimeDurationType,SemaphoreType,MutexType>>
typedef RegionImpl sttcl::Region< RegionImpl, RegionContainerImpl, IInnerState, EventArgs, HistoryType, StateThreadType, TimeDurationType, SemaphoreType, MutexType, EventQueueType >::Implementation |
template<class RegionImpl , class RegionContainerImpl , class IInnerState , class EventArgs = void, CompositeStateHistoryType::Values HistoryType = CompositeStateHistoryType::None, class StateThreadType = sttcl::internal::SttclThread<>, class TimeDurationType = TimeDuration<STTCL_DEFAULT_TIMEDURATIONIMPL>, class SemaphoreType = sttcl::internal::SttclSemaphore<STTCL_DEFAULT_SEMAPHOREIMPL,TimeDurationType>, class MutexType = sttcl::internal::SttclMutex<STTCL_DEFAULT_MUTEXIMPL,TimeDurationType>, class EventQueueType = sttcl::EventQueue<sttcl::internal::DispatchedEvent<RegionContainerImpl,IInnerState,EventArgs>,TimeDurationType,SemaphoreType,MutexType>>
typedef EventArgsSelectorType::InnerEventHandler sttcl::Region< RegionImpl, RegionContainerImpl, IInnerState, EventArgs, HistoryType, StateThreadType, TimeDurationType, SemaphoreType, MutexType, EventQueueType >::InnerEventHandler |
template<class RegionImpl , class RegionContainerImpl , class IInnerState , class EventArgs = void, CompositeStateHistoryType::Values HistoryType = CompositeStateHistoryType::None, class StateThreadType = sttcl::internal::SttclThread<>, class TimeDurationType = TimeDuration<STTCL_DEFAULT_TIMEDURATIONIMPL>, class SemaphoreType = sttcl::internal::SttclSemaphore<STTCL_DEFAULT_SEMAPHOREIMPL,TimeDurationType>, class MutexType = sttcl::internal::SttclMutex<STTCL_DEFAULT_MUTEXIMPL,TimeDurationType>, class EventQueueType = sttcl::EventQueue<sttcl::internal::DispatchedEvent<RegionContainerImpl,IInnerState,EventArgs>,TimeDurationType,SemaphoreType,MutexType>>
The inner state class.
Reimplemented from sttcl::CompositeState< Region< RegionImpl, RegionContainerImpl, IInnerState, EventArgs, HistoryType, StateThreadType, TimeDurationType, SemaphoreType, MutexType, EventQueueType >, RegionContainerImpl, IInnerState, HistoryType, ActiveState< Region< RegionImpl, RegionContainerImpl, IInnerState, EventArgs, HistoryType, StateThreadType, TimeDurationType, SemaphoreType, MutexType, EventQueueType >, RegionContainerImpl, IInnerState, StateThreadType, TimeDurationType, SemaphoreType, MutexType >, StateMachine< RegionImpl, IInnerState > >.
template<class RegionImpl , class RegionContainerImpl , class IInnerState , class EventArgs = void, CompositeStateHistoryType::Values HistoryType = CompositeStateHistoryType::None, class StateThreadType = sttcl::internal::SttclThread<>, class TimeDurationType = TimeDuration<STTCL_DEFAULT_TIMEDURATIONIMPL>, class SemaphoreType = sttcl::internal::SttclSemaphore<STTCL_DEFAULT_SEMAPHOREIMPL,TimeDurationType>, class MutexType = sttcl::internal::SttclMutex<STTCL_DEFAULT_MUTEXIMPL,TimeDurationType>, class EventQueueType = sttcl::EventQueue<sttcl::internal::DispatchedEvent<RegionContainerImpl,IInnerState,EventArgs>,TimeDurationType,SemaphoreType,MutexType>>
typedef void(RegionBaseClass::* sttcl::Region< RegionImpl, RegionContainerImpl, IInnerState, EventArgs, HistoryType, StateThreadType, TimeDurationType, SemaphoreType, MutexType, EventQueueType >::InternalEventHandler)(bool) |
The internal event handler signature.
template<class RegionImpl , class RegionContainerImpl , class IInnerState , class EventArgs = void, CompositeStateHistoryType::Values HistoryType = CompositeStateHistoryType::None, class StateThreadType = sttcl::internal::SttclThread<>, class TimeDurationType = TimeDuration<STTCL_DEFAULT_TIMEDURATIONIMPL>, class SemaphoreType = sttcl::internal::SttclSemaphore<STTCL_DEFAULT_SEMAPHOREIMPL,TimeDurationType>, class MutexType = sttcl::internal::SttclMutex<STTCL_DEFAULT_MUTEXIMPL,TimeDurationType>, class EventQueueType = sttcl::EventQueue<sttcl::internal::DispatchedEvent<RegionContainerImpl,IInnerState,EventArgs>,TimeDurationType,SemaphoreType,MutexType>>
The outer state interface.
Reimplemented from sttcl::CompositeState< Region< RegionImpl, RegionContainerImpl, IInnerState, EventArgs, HistoryType, StateThreadType, TimeDurationType, SemaphoreType, MutexType, EventQueueType >, RegionContainerImpl, IInnerState, HistoryType, ActiveState< Region< RegionImpl, RegionContainerImpl, IInnerState, EventArgs, HistoryType, StateThreadType, TimeDurationType, SemaphoreType, MutexType, EventQueueType >, RegionContainerImpl, IInnerState, StateThreadType, TimeDurationType, SemaphoreType, MutexType >, StateMachine< RegionImpl, IInnerState > >.
template<class RegionImpl , class RegionContainerImpl , class IInnerState , class EventArgs = void, CompositeStateHistoryType::Values HistoryType = CompositeStateHistoryType::None, class StateThreadType = sttcl::internal::SttclThread<>, class TimeDurationType = TimeDuration<STTCL_DEFAULT_TIMEDURATIONIMPL>, class SemaphoreType = sttcl::internal::SttclSemaphore<STTCL_DEFAULT_SEMAPHOREIMPL,TimeDurationType>, class MutexType = sttcl::internal::SttclMutex<STTCL_DEFAULT_MUTEXIMPL,TimeDurationType>, class EventQueueType = sttcl::EventQueue<sttcl::internal::DispatchedEvent<RegionContainerImpl,IInnerState,EventArgs>,TimeDurationType,SemaphoreType,MutexType>>
template<class RegionImpl , class RegionContainerImpl , class IInnerState , class EventArgs = void, CompositeStateHistoryType::Values HistoryType = CompositeStateHistoryType::None, class StateThreadType = sttcl::internal::SttclThread<>, class TimeDurationType = TimeDuration<STTCL_DEFAULT_TIMEDURATIONIMPL>, class SemaphoreType = sttcl::internal::SttclSemaphore<STTCL_DEFAULT_SEMAPHOREIMPL,TimeDurationType>, class MutexType = sttcl::internal::SttclMutex<STTCL_DEFAULT_MUTEXIMPL,TimeDurationType>, class EventQueueType = sttcl::EventQueue<sttcl::internal::DispatchedEvent<RegionContainerImpl,IInnerState,EventArgs>,TimeDurationType,SemaphoreType,MutexType>>
template<class RegionImpl , class RegionContainerImpl , class IInnerState , class EventArgs = void, CompositeStateHistoryType::Values HistoryType = CompositeStateHistoryType::None, class StateThreadType = sttcl::internal::SttclThread<>, class TimeDurationType = TimeDuration<STTCL_DEFAULT_TIMEDURATIONIMPL>, class SemaphoreType = sttcl::internal::SttclSemaphore<STTCL_DEFAULT_SEMAPHOREIMPL,TimeDurationType>, class MutexType = sttcl::internal::SttclMutex<STTCL_DEFAULT_MUTEXIMPL,TimeDurationType>, class EventQueueType = sttcl::EventQueue<sttcl::internal::DispatchedEvent<RegionContainerImpl,IInnerState,EventArgs>,TimeDurationType,SemaphoreType,MutexType>>
typedef StateBase<RegionImpl,IInnerState> sttcl::Region< RegionImpl, RegionContainerImpl, IInnerState, EventArgs, HistoryType, StateThreadType, TimeDurationType, SemaphoreType, MutexType, EventQueueType >::RegionStateBase |
template<class RegionImpl , class RegionContainerImpl , class IInnerState , class EventArgs = void, CompositeStateHistoryType::Values HistoryType = CompositeStateHistoryType::None, class StateThreadType = sttcl::internal::SttclThread<>, class TimeDurationType = TimeDuration<STTCL_DEFAULT_TIMEDURATIONIMPL>, class SemaphoreType = sttcl::internal::SttclSemaphore<STTCL_DEFAULT_SEMAPHOREIMPL,TimeDurationType>, class MutexType = sttcl::internal::SttclMutex<STTCL_DEFAULT_MUTEXIMPL,TimeDurationType>, class EventQueueType = sttcl::EventQueue<sttcl::internal::DispatchedEvent<RegionContainerImpl,IInnerState,EventArgs>,TimeDurationType,SemaphoreType,MutexType>>
The (composite) state machine base class type.
template<class RegionImpl , class RegionContainerImpl , class IInnerState , class EventArgs = void, CompositeStateHistoryType::Values HistoryType = CompositeStateHistoryType::None, class StateThreadType = sttcl::internal::SttclThread<>, class TimeDurationType = TimeDuration<STTCL_DEFAULT_TIMEDURATIONIMPL>, class SemaphoreType = sttcl::internal::SttclSemaphore<STTCL_DEFAULT_SEMAPHOREIMPL,TimeDurationType>, class MutexType = sttcl::internal::SttclMutex<STTCL_DEFAULT_MUTEXIMPL,TimeDurationType>, class EventQueueType = sttcl::EventQueue<sttcl::internal::DispatchedEvent<RegionContainerImpl,IInnerState,EventArgs>,TimeDurationType,SemaphoreType,MutexType>>
typedef StateImplementationBase::StateThreadImpl sttcl::Region< RegionImpl, RegionContainerImpl, IInnerState, EventArgs, HistoryType, StateThreadType, TimeDurationType, SemaphoreType, MutexType, EventQueueType >::RegionThreadImpl |
The region state thread class type.
template<class RegionImpl , class RegionContainerImpl , class IInnerState , class EventArgs = void, CompositeStateHistoryType::Values HistoryType = CompositeStateHistoryType::None, class StateThreadType = sttcl::internal::SttclThread<>, class TimeDurationType = TimeDuration<STTCL_DEFAULT_TIMEDURATIONIMPL>, class SemaphoreType = sttcl::internal::SttclSemaphore<STTCL_DEFAULT_SEMAPHOREIMPL,TimeDurationType>, class MutexType = sttcl::internal::SttclMutex<STTCL_DEFAULT_MUTEXIMPL,TimeDurationType>, class EventQueueType = sttcl::EventQueue<sttcl::internal::DispatchedEvent<RegionContainerImpl,IInnerState,EventArgs>,TimeDurationType,SemaphoreType,MutexType>>
typedef internal::RegionBaseImplementationSelector<RegionImpl,RegionContainerImpl,IInnerState,EventArgs>::RESULT_TYPE sttcl::Region< RegionImpl, RegionContainerImpl, IInnerState, EventArgs, HistoryType, StateThreadType, TimeDurationType, SemaphoreType, MutexType, EventQueueType >::SelectedRegionBase |
The selected RegionBase implementation class type.
template<class RegionImpl , class RegionContainerImpl , class IInnerState , class EventArgs = void, CompositeStateHistoryType::Values HistoryType = CompositeStateHistoryType::None, class StateThreadType = sttcl::internal::SttclThread<>, class TimeDurationType = TimeDuration<STTCL_DEFAULT_TIMEDURATIONIMPL>, class SemaphoreType = sttcl::internal::SttclSemaphore<STTCL_DEFAULT_SEMAPHOREIMPL,TimeDurationType>, class MutexType = sttcl::internal::SttclMutex<STTCL_DEFAULT_MUTEXIMPL,TimeDurationType>, class EventQueueType = sttcl::EventQueue<sttcl::internal::DispatchedEvent<RegionContainerImpl,IInnerState,EventArgs>,TimeDurationType,SemaphoreType,MutexType>>
typedef Region< RegionImpl , RegionContainerImpl , IInnerState , EventArgs , HistoryType , StateThreadType , TimeDurationType , SemaphoreType , MutexType , EventQueueType > sttcl::Region< RegionImpl, RegionContainerImpl, IInnerState, EventArgs, HistoryType, StateThreadType, TimeDurationType, SemaphoreType, MutexType, EventQueueType >::SelfClassType |
The actual Region class type, just to shorten typing for implementation.
template<class RegionImpl , class RegionContainerImpl , class IInnerState , class EventArgs = void, CompositeStateHistoryType::Values HistoryType = CompositeStateHistoryType::None, class StateThreadType = sttcl::internal::SttclThread<>, class TimeDurationType = TimeDuration<STTCL_DEFAULT_TIMEDURATIONIMPL>, class SemaphoreType = sttcl::internal::SttclSemaphore<STTCL_DEFAULT_SEMAPHOREIMPL,TimeDurationType>, class MutexType = sttcl::internal::SttclMutex<STTCL_DEFAULT_MUTEXIMPL,TimeDurationType>, class EventQueueType = sttcl::EventQueue<sttcl::internal::DispatchedEvent<RegionContainerImpl,IInnerState,EventArgs>,TimeDurationType,SemaphoreType,MutexType>>
template<class RegionImpl , class RegionContainerImpl , class IInnerState , class EventArgs = void, CompositeStateHistoryType::Values HistoryType = CompositeStateHistoryType::None, class StateThreadType = sttcl::internal::SttclThread<>, class TimeDurationType = TimeDuration<STTCL_DEFAULT_TIMEDURATIONIMPL>, class SemaphoreType = sttcl::internal::SttclSemaphore<STTCL_DEFAULT_SEMAPHOREIMPL,TimeDurationType>, class MutexType = sttcl::internal::SttclMutex<STTCL_DEFAULT_MUTEXIMPL,TimeDurationType>, class EventQueueType = sttcl::EventQueue<sttcl::internal::DispatchedEvent<RegionContainerImpl,IInnerState,EventArgs>,TimeDurationType,SemaphoreType,MutexType>>
typedef CompositeStateBase::StateDoAction sttcl::Region< RegionImpl, RegionContainerImpl, IInnerState, EventArgs, HistoryType, StateThreadType, TimeDurationType, SemaphoreType, MutexType, EventQueueType >::StateDoAction |
The state do action type.
Reimplemented from sttcl::CompositeState< Region< RegionImpl, RegionContainerImpl, IInnerState, EventArgs, HistoryType, StateThreadType, TimeDurationType, SemaphoreType, MutexType, EventQueueType >, RegionContainerImpl, IInnerState, HistoryType, ActiveState< Region< RegionImpl, RegionContainerImpl, IInnerState, EventArgs, HistoryType, StateThreadType, TimeDurationType, SemaphoreType, MutexType, EventQueueType >, RegionContainerImpl, IInnerState, StateThreadType, TimeDurationType, SemaphoreType, MutexType >, StateMachine< RegionImpl, IInnerState > >.
template<class RegionImpl , class RegionContainerImpl , class IInnerState , class EventArgs = void, CompositeStateHistoryType::Values HistoryType = CompositeStateHistoryType::None, class StateThreadType = sttcl::internal::SttclThread<>, class TimeDurationType = TimeDuration<STTCL_DEFAULT_TIMEDURATIONIMPL>, class SemaphoreType = sttcl::internal::SttclSemaphore<STTCL_DEFAULT_SEMAPHOREIMPL,TimeDurationType>, class MutexType = sttcl::internal::SttclMutex<STTCL_DEFAULT_MUTEXIMPL,TimeDurationType>, class EventQueueType = sttcl::EventQueue<sttcl::internal::DispatchedEvent<RegionContainerImpl,IInnerState,EventArgs>,TimeDurationType,SemaphoreType,MutexType>>
The (composite) state implementation base class type.
Reimplemented from sttcl::CompositeState< Region< RegionImpl, RegionContainerImpl, IInnerState, EventArgs, HistoryType, StateThreadType, TimeDurationType, SemaphoreType, MutexType, EventQueueType >, RegionContainerImpl, IInnerState, HistoryType, ActiveState< Region< RegionImpl, RegionContainerImpl, IInnerState, EventArgs, HistoryType, StateThreadType, TimeDurationType, SemaphoreType, MutexType, EventQueueType >, RegionContainerImpl, IInnerState, StateThreadType, TimeDurationType, SemaphoreType, MutexType >, StateMachine< RegionImpl, IInnerState > >.
template<class RegionImpl , class RegionContainerImpl , class IInnerState , class EventArgs = void, CompositeStateHistoryType::Values HistoryType = CompositeStateHistoryType::None, class StateThreadType = sttcl::internal::SttclThread<>, class TimeDurationType = TimeDuration<STTCL_DEFAULT_TIMEDURATIONIMPL>, class SemaphoreType = sttcl::internal::SttclSemaphore<STTCL_DEFAULT_SEMAPHOREIMPL,TimeDurationType>, class MutexType = sttcl::internal::SttclMutex<STTCL_DEFAULT_MUTEXIMPL,TimeDurationType>, class EventQueueType = sttcl::EventQueue<sttcl::internal::DispatchedEvent<RegionContainerImpl,IInnerState,EventArgs>,TimeDurationType,SemaphoreType,MutexType>>
The state interface.
Reimplemented from sttcl::CompositeState< Region< RegionImpl, RegionContainerImpl, IInnerState, EventArgs, HistoryType, StateThreadType, TimeDurationType, SemaphoreType, MutexType, EventQueueType >, RegionContainerImpl, IInnerState, HistoryType, ActiveState< Region< RegionImpl, RegionContainerImpl, IInnerState, EventArgs, HistoryType, StateThreadType, TimeDurationType, SemaphoreType, MutexType, EventQueueType >, RegionContainerImpl, IInnerState, StateThreadType, TimeDurationType, SemaphoreType, MutexType >, StateMachine< RegionImpl, IInnerState > >.
template<class RegionImpl , class RegionContainerImpl , class IInnerState , class EventArgs = void, CompositeStateHistoryType::Values HistoryType = CompositeStateHistoryType::None, class StateThreadType = sttcl::internal::SttclThread<>, class TimeDurationType = TimeDuration<STTCL_DEFAULT_TIMEDURATIONIMPL>, class SemaphoreType = sttcl::internal::SttclSemaphore<STTCL_DEFAULT_SEMAPHOREIMPL,TimeDurationType>, class MutexType = sttcl::internal::SttclMutex<STTCL_DEFAULT_MUTEXIMPL,TimeDurationType>, class EventQueueType = sttcl::EventQueue<sttcl::internal::DispatchedEvent<RegionContainerImpl,IInnerState,EventArgs>,TimeDurationType,SemaphoreType,MutexType>>
sttcl::Region< RegionImpl, RegionContainerImpl, IInnerState, EventArgs, HistoryType, StateThreadType, TimeDurationType, SemaphoreType, MutexType, EventQueueType >::Region |
( |
RegionContainerImpl * |
argRegionContainer, |
|
|
TimeDurationType |
argDoActionFrequency = TimeDurationType::Zero |
|
) |
| |
|
inline |
Constructor for class Region.
- Parameters:
-
argRegionContainer | |
argDoActionFrequency | |
template<class RegionImpl , class RegionContainerImpl , class IInnerState , class EventArgs = void, CompositeStateHistoryType::Values HistoryType = CompositeStateHistoryType::None, class StateThreadType = sttcl::internal::SttclThread<>, class TimeDurationType = TimeDuration<STTCL_DEFAULT_TIMEDURATIONIMPL>, class SemaphoreType = sttcl::internal::SttclSemaphore<STTCL_DEFAULT_SEMAPHOREIMPL,TimeDurationType>, class MutexType = sttcl::internal::SttclMutex<STTCL_DEFAULT_MUTEXIMPL,TimeDurationType>, class EventQueueType = sttcl::EventQueue<sttcl::internal::DispatchedEvent<RegionContainerImpl,IInnerState,EventArgs>,TimeDurationType,SemaphoreType,MutexType>>
virtual sttcl::Region< RegionImpl, RegionContainerImpl, IInnerState, EventArgs, HistoryType, StateThreadType, TimeDurationType, SemaphoreType, MutexType, EventQueueType >::~Region |
( |
| ) |
|
|
inlinevirtual |
template<class RegionImpl , class RegionContainerImpl , class IInnerState , class EventArgs = void, CompositeStateHistoryType::Values HistoryType = CompositeStateHistoryType::None, class StateThreadType = sttcl::internal::SttclThread<>, class TimeDurationType = TimeDuration<STTCL_DEFAULT_TIMEDURATIONIMPL>, class SemaphoreType = sttcl::internal::SttclSemaphore<STTCL_DEFAULT_SEMAPHOREIMPL,TimeDurationType>, class MutexType = sttcl::internal::SttclMutex<STTCL_DEFAULT_MUTEXIMPL,TimeDurationType>, class EventQueueType = sttcl::EventQueue<sttcl::internal::DispatchedEvent<RegionContainerImpl,IInnerState,EventArgs>,TimeDurationType,SemaphoreType,MutexType>>
void sttcl::Region< RegionImpl, RegionContainerImpl, IInnerState, EventArgs, HistoryType, StateThreadType, TimeDurationType, SemaphoreType, MutexType, EventQueueType >::changeState |
( |
RegionStateBase * |
newState | ) |
|
|
inline |
Changes the region composite state machine to newState.
- Parameters:
-
template<class RegionImpl , class RegionContainerImpl , class IInnerState , class EventArgs = void, CompositeStateHistoryType::Values HistoryType = CompositeStateHistoryType::None, class StateThreadType = sttcl::internal::SttclThread<>, class TimeDurationType = TimeDuration<STTCL_DEFAULT_TIMEDURATIONIMPL>, class SemaphoreType = sttcl::internal::SttclSemaphore<STTCL_DEFAULT_SEMAPHOREIMPL,TimeDurationType>, class MutexType = sttcl::internal::SttclMutex<STTCL_DEFAULT_MUTEXIMPL,TimeDurationType>, class EventQueueType = sttcl::EventQueue<sttcl::internal::DispatchedEvent<RegionContainerImpl,IInnerState,EventArgs>,TimeDurationType,SemaphoreType,MutexType>>
void sttcl::Region< RegionImpl, RegionContainerImpl, IInnerState, EventArgs, HistoryType, StateThreadType, TimeDurationType, SemaphoreType, MutexType, EventQueueType >::changeStateImpl |
( |
RegionContainerImpl * |
context, |
|
|
IInnerState * |
newState |
|
) |
| |
|
inline |
Default implementation for the changeState() method.
- Parameters:
-
context | A pointer to the containing state machine. |
newState | The new sibling state the containing state machine should change to. |
template<class RegionImpl , class RegionContainerImpl , class IInnerState , class EventArgs = void, CompositeStateHistoryType::Values HistoryType = CompositeStateHistoryType::None, class StateThreadType = sttcl::internal::SttclThread<>, class TimeDurationType = TimeDuration<STTCL_DEFAULT_TIMEDURATIONIMPL>, class SemaphoreType = sttcl::internal::SttclSemaphore<STTCL_DEFAULT_SEMAPHOREIMPL,TimeDurationType>, class MutexType = sttcl::internal::SttclMutex<STTCL_DEFAULT_MUTEXIMPL,TimeDurationType>, class EventQueueType = sttcl::EventQueue<sttcl::internal::DispatchedEvent<RegionContainerImpl,IInnerState,EventArgs>,TimeDurationType,SemaphoreType,MutexType>>
void sttcl::Region< RegionImpl, RegionContainerImpl, IInnerState, EventArgs, HistoryType, StateThreadType, TimeDurationType, SemaphoreType, MutexType, EventQueueType >::dispatchInternalEvent |
( |
InternalEventHandler |
internalEventHandler, |
|
|
bool |
recursive |
|
) |
| |
|
inline |
Dispatches an internal event to be executed within the context of the internal region thread.
- Parameters:
-
internalEventHandler | |
recursive | |
template<class RegionImpl , class RegionContainerImpl , class IInnerState , class EventArgs = void, CompositeStateHistoryType::Values HistoryType = CompositeStateHistoryType::None, class StateThreadType = sttcl::internal::SttclThread<>, class TimeDurationType = TimeDuration<STTCL_DEFAULT_TIMEDURATIONIMPL>, class SemaphoreType = sttcl::internal::SttclSemaphore<STTCL_DEFAULT_SEMAPHOREIMPL,TimeDurationType>, class MutexType = sttcl::internal::SttclMutex<STTCL_DEFAULT_MUTEXIMPL,TimeDurationType>, class EventQueueType = sttcl::EventQueue<sttcl::internal::DispatchedEvent<RegionContainerImpl,IInnerState,EventArgs>,TimeDurationType,SemaphoreType,MutexType>>
bool sttcl::Region< RegionImpl, RegionContainerImpl, IInnerState, EventArgs, HistoryType, StateThreadType, TimeDurationType, SemaphoreType, MutexType, EventQueueType >::endDoActionRequestedImpl |
( |
| ) |
|
|
inline |
Default implementation for the endDoActionRequested() method.
- Returns:
Reimplemented from sttcl::ActiveState< Region< RegionImpl, RegionContainerImpl, IInnerState, EventArgs, HistoryType, StateThreadType, TimeDurationType, SemaphoreType, MutexType, EventQueueType >, RegionContainerImpl, IInnerState, StateThreadType, TimeDurationType, SemaphoreType, MutexType >.
template<class RegionImpl , class RegionContainerImpl , class IInnerState , class EventArgs = void, CompositeStateHistoryType::Values HistoryType = CompositeStateHistoryType::None, class StateThreadType = sttcl::internal::SttclThread<>, class TimeDurationType = TimeDuration<STTCL_DEFAULT_TIMEDURATIONIMPL>, class SemaphoreType = sttcl::internal::SttclSemaphore<STTCL_DEFAULT_SEMAPHOREIMPL,TimeDurationType>, class MutexType = sttcl::internal::SttclMutex<STTCL_DEFAULT_MUTEXIMPL,TimeDurationType>, class EventQueueType = sttcl::EventQueue<sttcl::internal::DispatchedEvent<RegionContainerImpl,IInnerState,EventArgs>,TimeDurationType,SemaphoreType,MutexType>>
void sttcl::Region< RegionImpl, RegionContainerImpl, IInnerState, EventArgs, HistoryType, StateThreadType, TimeDurationType, SemaphoreType, MutexType, EventQueueType >::endDoImpl |
( |
RegionContainerImpl * |
context | ) |
|
|
inline |
Default implementation of the ActiveState::endDo() method.
- Parameters:
-
template<class RegionImpl , class RegionContainerImpl , class IInnerState , class EventArgs = void, CompositeStateHistoryType::Values HistoryType = CompositeStateHistoryType::None, class StateThreadType = sttcl::internal::SttclThread<>, class TimeDurationType = TimeDuration<STTCL_DEFAULT_TIMEDURATIONIMPL>, class SemaphoreType = sttcl::internal::SttclSemaphore<STTCL_DEFAULT_SEMAPHOREIMPL,TimeDurationType>, class MutexType = sttcl::internal::SttclMutex<STTCL_DEFAULT_MUTEXIMPL,TimeDurationType>, class EventQueueType = sttcl::EventQueue<sttcl::internal::DispatchedEvent<RegionContainerImpl,IInnerState,EventArgs>,TimeDurationType,SemaphoreType,MutexType>>
void sttcl::Region< RegionImpl, RegionContainerImpl, IInnerState, EventArgs, HistoryType, StateThreadType, TimeDurationType, SemaphoreType, MutexType, EventQueueType >::endingRegionThread |
( |
| ) |
|
|
inline |
Called when the region thread is stopped.
template<class RegionImpl , class RegionContainerImpl , class IInnerState , class EventArgs = void, CompositeStateHistoryType::Values HistoryType = CompositeStateHistoryType::None, class StateThreadType = sttcl::internal::SttclThread<>, class TimeDurationType = TimeDuration<STTCL_DEFAULT_TIMEDURATIONIMPL>, class SemaphoreType = sttcl::internal::SttclSemaphore<STTCL_DEFAULT_SEMAPHOREIMPL,TimeDurationType>, class MutexType = sttcl::internal::SttclMutex<STTCL_DEFAULT_MUTEXIMPL,TimeDurationType>, class EventQueueType = sttcl::EventQueue<sttcl::internal::DispatchedEvent<RegionContainerImpl,IInnerState,EventArgs>,TimeDurationType,SemaphoreType,MutexType>>
void sttcl::Region< RegionImpl, RegionContainerImpl, IInnerState, EventArgs, HistoryType, StateThreadType, TimeDurationType, SemaphoreType, MutexType, EventQueueType >::entryImpl |
( |
Context * |
context | ) |
|
|
inline |
Default entry() method implementation.
- Parameters:
-
template<class RegionImpl , class RegionContainerImpl , class IInnerState , class EventArgs = void, CompositeStateHistoryType::Values HistoryType = CompositeStateHistoryType::None, class StateThreadType = sttcl::internal::SttclThread<>, class TimeDurationType = TimeDuration<STTCL_DEFAULT_TIMEDURATIONIMPL>, class SemaphoreType = sttcl::internal::SttclSemaphore<STTCL_DEFAULT_SEMAPHOREIMPL,TimeDurationType>, class MutexType = sttcl::internal::SttclMutex<STTCL_DEFAULT_MUTEXIMPL,TimeDurationType>, class EventQueueType = sttcl::EventQueue<sttcl::internal::DispatchedEvent<RegionContainerImpl,IInnerState,EventArgs>,TimeDurationType,SemaphoreType,MutexType>>
void sttcl::Region< RegionImpl, RegionContainerImpl, IInnerState, EventArgs, HistoryType, StateThreadType, TimeDurationType, SemaphoreType, MutexType, EventQueueType >::exitImpl |
( |
Context * |
context | ) |
|
|
inline |
Default exit() method implementation.
- Parameters:
-
template<class RegionImpl , class RegionContainerImpl , class IInnerState , class EventArgs = void, CompositeStateHistoryType::Values HistoryType = CompositeStateHistoryType::None, class StateThreadType = sttcl::internal::SttclThread<>, class TimeDurationType = TimeDuration<STTCL_DEFAULT_TIMEDURATIONIMPL>, class SemaphoreType = sttcl::internal::SttclSemaphore<STTCL_DEFAULT_SEMAPHOREIMPL,TimeDurationType>, class MutexType = sttcl::internal::SttclMutex<STTCL_DEFAULT_MUTEXIMPL,TimeDurationType>, class EventQueueType = sttcl::EventQueue<sttcl::internal::DispatchedEvent<RegionContainerImpl,IInnerState,EventArgs>,TimeDurationType,SemaphoreType,MutexType>>
void sttcl::Region< RegionImpl, RegionContainerImpl, IInnerState, EventArgs, HistoryType, StateThreadType, TimeDurationType, SemaphoreType, MutexType, EventQueueType >::exitingDoActionImpl |
( |
| ) |
|
|
inline |
Default implementation for the exitingDoAction() method.
Reimplemented from sttcl::ActiveState< Region< RegionImpl, RegionContainerImpl, IInnerState, EventArgs, HistoryType, StateThreadType, TimeDurationType, SemaphoreType, MutexType, EventQueueType >, RegionContainerImpl, IInnerState, StateThreadType, TimeDurationType, SemaphoreType, MutexType >.
template<class RegionImpl , class RegionContainerImpl , class IInnerState , class EventArgs = void, CompositeStateHistoryType::Values HistoryType = CompositeStateHistoryType::None, class StateThreadType = sttcl::internal::SttclThread<>, class TimeDurationType = TimeDuration<STTCL_DEFAULT_TIMEDURATIONIMPL>, class SemaphoreType = sttcl::internal::SttclSemaphore<STTCL_DEFAULT_SEMAPHOREIMPL,TimeDurationType>, class MutexType = sttcl::internal::SttclMutex<STTCL_DEFAULT_MUTEXIMPL,TimeDurationType>, class EventQueueType = sttcl::EventQueue<sttcl::internal::DispatchedEvent<RegionContainerImpl,IInnerState,EventArgs>,TimeDurationType,SemaphoreType,MutexType>>
void sttcl::Region< RegionImpl, RegionContainerImpl, IInnerState, EventArgs, HistoryType, StateThreadType, TimeDurationType, SemaphoreType, MutexType, EventQueueType >::finalizeImpl |
( |
bool |
finalizeSubStateMachines | ) |
|
|
inline |
Default implementation for finalize().
- Parameters:
-
finalizeSubStateMachines | Indicates to finalize any sub state machines. |
Reimplemented from sttcl::CompositeState< Region< RegionImpl, RegionContainerImpl, IInnerState, EventArgs, HistoryType, StateThreadType, TimeDurationType, SemaphoreType, MutexType, EventQueueType >, RegionContainerImpl, IInnerState, HistoryType, ActiveState< Region< RegionImpl, RegionContainerImpl, IInnerState, EventArgs, HistoryType, StateThreadType, TimeDurationType, SemaphoreType, MutexType, EventQueueType >, RegionContainerImpl, IInnerState, StateThreadType, TimeDurationType, SemaphoreType, MutexType >, StateMachine< RegionImpl, IInnerState > >.
template<class RegionImpl , class RegionContainerImpl , class IInnerState , class EventArgs = void, CompositeStateHistoryType::Values HistoryType = CompositeStateHistoryType::None, class StateThreadType = sttcl::internal::SttclThread<>, class TimeDurationType = TimeDuration<STTCL_DEFAULT_TIMEDURATIONIMPL>, class SemaphoreType = sttcl::internal::SttclSemaphore<STTCL_DEFAULT_SEMAPHOREIMPL,TimeDurationType>, class MutexType = sttcl::internal::SttclMutex<STTCL_DEFAULT_MUTEXIMPL,TimeDurationType>, class EventQueueType = sttcl::EventQueue<sttcl::internal::DispatchedEvent<RegionContainerImpl,IInnerState,EventArgs>,TimeDurationType,SemaphoreType,MutexType>>
bool sttcl::Region< RegionImpl, RegionContainerImpl, IInnerState, EventArgs, HistoryType, StateThreadType, TimeDurationType, SemaphoreType, MutexType, EventQueueType >::initializeImpl |
( |
bool |
force | ) |
|
|
inline |
Default initialize() method implementation.
- Parameters:
-
- Returns:
Reimplemented from sttcl::CompositeState< Region< RegionImpl, RegionContainerImpl, IInnerState, EventArgs, HistoryType, StateThreadType, TimeDurationType, SemaphoreType, MutexType, EventQueueType >, RegionContainerImpl, IInnerState, HistoryType, ActiveState< Region< RegionImpl, RegionContainerImpl, IInnerState, EventArgs, HistoryType, StateThreadType, TimeDurationType, SemaphoreType, MutexType, EventQueueType >, RegionContainerImpl, IInnerState, StateThreadType, TimeDurationType, SemaphoreType, MutexType >, StateMachine< RegionImpl, IInnerState > >.
template<class RegionImpl , class RegionContainerImpl , class IInnerState , class EventArgs = void, CompositeStateHistoryType::Values HistoryType = CompositeStateHistoryType::None, class StateThreadType = sttcl::internal::SttclThread<>, class TimeDurationType = TimeDuration<STTCL_DEFAULT_TIMEDURATIONIMPL>, class SemaphoreType = sttcl::internal::SttclSemaphore<STTCL_DEFAULT_SEMAPHOREIMPL,TimeDurationType>, class MutexType = sttcl::internal::SttclMutex<STTCL_DEFAULT_MUTEXIMPL,TimeDurationType>, class EventQueueType = sttcl::EventQueue<sttcl::internal::DispatchedEvent<RegionContainerImpl,IInnerState,EventArgs>,TimeDurationType,SemaphoreType,MutexType>>
void sttcl::Region< RegionImpl, RegionContainerImpl, IInnerState, EventArgs, HistoryType, StateThreadType, TimeDurationType, SemaphoreType, MutexType, EventQueueType >::joinDoActionThreadImpl |
( |
| ) |
|
|
inline |
Called when the ActiveState::endDoImpl() method is called.
Reimplemented from sttcl::ActiveState< Region< RegionImpl, RegionContainerImpl, IInnerState, EventArgs, HistoryType, StateThreadType, TimeDurationType, SemaphoreType, MutexType, EventQueueType >, RegionContainerImpl, IInnerState, StateThreadType, TimeDurationType, SemaphoreType, MutexType >.
template<class RegionImpl , class RegionContainerImpl , class IInnerState , class EventArgs = void, CompositeStateHistoryType::Values HistoryType = CompositeStateHistoryType::None, class StateThreadType = sttcl::internal::SttclThread<>, class TimeDurationType = TimeDuration<STTCL_DEFAULT_TIMEDURATIONIMPL>, class SemaphoreType = sttcl::internal::SttclSemaphore<STTCL_DEFAULT_SEMAPHOREIMPL,TimeDurationType>, class MutexType = sttcl::internal::SttclMutex<STTCL_DEFAULT_MUTEXIMPL,TimeDurationType>, class EventQueueType = sttcl::EventQueue<sttcl::internal::DispatchedEvent<RegionContainerImpl,IInnerState,EventArgs>,TimeDurationType,SemaphoreType,MutexType>>
void sttcl::Region< RegionImpl, RegionContainerImpl, IInnerState, EventArgs, HistoryType, StateThreadType, TimeDurationType, SemaphoreType, MutexType, EventQueueType >::startingRegionThread |
( |
| ) |
|
|
inline |
Called when the region thread is started.
template<class RegionImpl , class RegionContainerImpl , class IInnerState , class EventArgs = void, CompositeStateHistoryType::Values HistoryType = CompositeStateHistoryType::None, class StateThreadType = sttcl::internal::SttclThread<>, class TimeDurationType = TimeDuration<STTCL_DEFAULT_TIMEDURATIONIMPL>, class SemaphoreType = sttcl::internal::SttclSemaphore<STTCL_DEFAULT_SEMAPHOREIMPL,TimeDurationType>, class MutexType = sttcl::internal::SttclMutex<STTCL_DEFAULT_MUTEXIMPL,TimeDurationType>, class EventQueueType = sttcl::EventQueue<sttcl::internal::DispatchedEvent<RegionContainerImpl,IInnerState,EventArgs>,TimeDurationType,SemaphoreType,MutexType>>
void sttcl::Region< RegionImpl, RegionContainerImpl, IInnerState, EventArgs, HistoryType, StateThreadType, TimeDurationType, SemaphoreType, MutexType, EventQueueType >::unblockDoActionImpl |
( |
| ) |
|
|
inline |
Called by the ActiveState::endDoImpl() method to unblock any blocking methods waiting in the internal region thread.
Reimplemented from sttcl::ActiveState< Region< RegionImpl, RegionContainerImpl, IInnerState, EventArgs, HistoryType, StateThreadType, TimeDurationType, SemaphoreType, MutexType, EventQueueType >, RegionContainerImpl, IInnerState, StateThreadType, TimeDurationType, SemaphoreType, MutexType >.
template<class RegionImpl , class RegionContainerImpl , class IInnerState , class EventArgs = void, CompositeStateHistoryType::Values HistoryType = CompositeStateHistoryType::None, class StateThreadType = sttcl::internal::SttclThread<>, class TimeDurationType = TimeDuration<STTCL_DEFAULT_TIMEDURATIONIMPL>, class SemaphoreType = sttcl::internal::SttclSemaphore<STTCL_DEFAULT_SEMAPHOREIMPL,TimeDurationType>, class MutexType = sttcl::internal::SttclMutex<STTCL_DEFAULT_MUTEXIMPL,TimeDurationType>, class EventQueueType = sttcl::EventQueue<sttcl::internal::DispatchedEvent<RegionContainerImpl,IInnerState,EventArgs>,TimeDurationType,SemaphoreType,MutexType>>