sttcl
v0.9c
STTCL C++ template state machine framework
|
#include <Region.h>
Public Types | |
typedef sttcl::internal::RegionEventDispatchInterfaceSelector < RegionContainerImpl, IInnerState, EventArgs > ::RESULT_TYPE | RegionEventDispatchInterface |
typedef RegionEventDispatchInterface::RefCountPtr | RefCountPtr |
typedef RegionEventDispatchInterface::InnerEventHandler | InnerEventHandler |
Public Types inherited from sttcl::internal::IRegionEventDispatchWithArgs< RegionContainerImpl, IInnerState, EventArgs > | |
typedef EventArgsInterfaceSelector < RegionContainerImpl, IInnerState, EventArgs > | EventArgsSelectorType |
Public Member Functions | |
RegionBase (RegionContainerImpl *argRegionContainer) | |
virtual | ~RegionBase () |
virtual void | enterRegion (RegionContainerImpl *context)=0 |
virtual void | exitRegion (RegionContainerImpl *context)=0 |
virtual void | finalizeRegion (bool recursive)=0 |
virtual bool | initializeRegion (bool recursive)=0 |
virtual void | startDoRegion (RegionContainerImpl *context)=0 |
virtual void | endDoRegion (RegionContainerImpl *context)=0 |
virtual bool | isRegionInitialized ()=0 |
virtual bool | isRegionFinalized ()=0 |
virtual bool | isRegionThreadRunning () const =0 |
virtual void | joinRegionThread ()=0 |
template<class RegionImpl > | |
RegionImpl * | getRegionContext () |
virtual void | internalInitialize (bool recursive)=0 |
virtual void | internalFinalize (bool recursive)=0 |
virtual void | queueDispatchedEvent (const sttcl::internal::DispatchedEvent< RegionContainerImpl, IInnerState, EventArgs > &dispatchedEvent)=0 |
Public Member Functions inherited from sttcl::internal::IRegionEventDispatchWithArgs< RegionContainerImpl, IInnerState, EventArgs > | |
virtual void | handleBroadcastedEvent (RegionContainerImpl *context, InnerEventHandler eventHandler, RefCountPtr eventArgs)=0 |
virtual | ~IRegionEventDispatchWithArgs () |
Protected Attributes | |
RegionContainerImpl * | regionContainer |
Represents the abstract Region base class.
RegionContainerImpl | |
StateInterface | |
EventArgs |
typedef RegionEventDispatchInterface::InnerEventHandler sttcl::RegionBase< RegionContainerImpl, IInnerState, EventArgs >::InnerEventHandler |
The inner states event handler signature. All methods of the IInnerState interface must have this signature. The first parameter is a pointer to the containing state machine. The second parameter is a pointer to additional event arguments as specified with the EventArgs template parameter.
Reimplemented from sttcl::internal::IRegionEventDispatchWithArgs< RegionContainerImpl, IInnerState, EventArgs >.
Reimplemented in sttcl::Region< RegionImpl, RegionContainerImpl, IInnerState, EventArgs, HistoryType, StateThreadType, TimeDurationType, SemaphoreType, MutexType, EventQueueType >, sttcl::internal::RegionBaseImplWithoutEventArgs< RegionImpl, RegionContainerImpl, IInnerState, EventArgs >, and sttcl::internal::RegionBaseImplWithEventArgs< RegionImpl, RegionContainerImpl, IInnerState, EventArgs >.
typedef RegionEventDispatchInterface::RefCountPtr sttcl::RegionBase< RegionContainerImpl, IInnerState, EventArgs >::RefCountPtr |
The pointer type used to pass event arguments to the contained regions inner states.
Reimplemented from sttcl::internal::IRegionEventDispatchWithArgs< RegionContainerImpl, IInnerState, EventArgs >.
Reimplemented in sttcl::Region< RegionImpl, RegionContainerImpl, IInnerState, EventArgs, HistoryType, StateThreadType, TimeDurationType, SemaphoreType, MutexType, EventQueueType >, sttcl::internal::RegionBaseImplWithoutEventArgs< RegionImpl, RegionContainerImpl, IInnerState, EventArgs >, and sttcl::internal::RegionBaseImplWithEventArgs< RegionImpl, RegionContainerImpl, IInnerState, EventArgs >.
typedef sttcl::internal::RegionEventDispatchInterfaceSelector<RegionContainerImpl,IInnerState,EventArgs>::RESULT_TYPE sttcl::RegionBase< RegionContainerImpl, IInnerState, EventArgs >::RegionEventDispatchInterface |
|
inline |
Constructor for class RegionBase.
|
inlinevirtual |
Destructor for class RegionBase.
|
pure virtual |
Called to stop the region thread.
context | A pointer to the containing state machine. |
|
pure virtual |
Called when the region is entered.
context | A pointer to the containing state machine. |
|
pure virtual |
Called when the region is left.
context | A pointer to the containing state machine. |
|
pure virtual |
Called to finalize the region.
recursive | Indicates to finalize nested sub state machines recursively. |
|
inline |
|
pure virtual |
Called to initialize the region.
recursive | Indicates to initialize nested sub state machines recursively. |
true
when the region was successfully initialized, false
otherwise.
|
pure virtual |
|
pure virtual |
Used to call the Region::initialize() method, when initialize() should run inside the region thread.
recursive |
|
pure virtual |
Indicates that the region is finalized.
true
if the region is finalized, false
otherwise.
|
pure virtual |
Indicates that the region is initialized.
true
if the region is initialized, false
otherwise.
|
pure virtual |
Indicates that the region thread is currently running.
true
if the region thread is running, false
otherwise.
|
pure virtual |
Called to join the region thread after stopping it.
|
pure virtual |
|
pure virtual |
Called to start the region thread.
context | A pointer to the containing state machine. |
|
protected |