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>>