sttcl  v0.9c
STTCL C++ template state machine framework
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
sttcl::internal::ConcurrentCompositeStateBase< CompositeStateImpl, StateMachineImpl, IInnerState, NumOfRegions, EventArgs, StateBaseImpl > Class Template Reference

#include <ConcurrentCompositeState.h>

Inheritance diagram for sttcl::internal::ConcurrentCompositeStateBase< CompositeStateImpl, StateMachineImpl, IInnerState, NumOfRegions, EventArgs, StateBaseImpl >:
Collaboration diagram for sttcl::internal::ConcurrentCompositeStateBase< CompositeStateImpl, StateMachineImpl, IInnerState, NumOfRegions, EventArgs, StateBaseImpl >:

List of all members.

Public Types

typedef
ConcurrentCompositeBaseImplementationSelector
< CompositeStateImpl,
StateMachineImpl, IInnerState,
NumOfRegions, EventArgs,
StateBaseImpl > 
BaseClassSelectorType
typedef
BaseClassSelectorType::RESULT_TYPE 
BaseClassType
typedef StateBaseImpl StateImplementationBase
typedef
StateMachineImpl::StateInterface 
StateInterface
typedef
StateMachineImpl::StateBaseClass 
StateBaseClass
typedef
BaseClassType::RegionBaseType 
RegionBaseType
typedef BaseClassType::RegionsArray RegionsArray
typedef StateMachineImpl Context
typedef
sttcl::internal::EventArgsInterfaceSelector
< StateMachineImpl,
IInnerState, EventArgs > 
EventArgsSelectorType
typedef
EventArgsSelectorType::RefCountPtr 
RefCountPtr
typedef
StateMachineImpl::StateInterface 
OuterEventHandler
typedef
EventArgsSelectorType::InnerEventHandler 
InnerEventHandler
- Public Types inherited from sttcl::internal::RegionContainer< CompositeStateImpl, IInnerState, EventArgs >

Public Member Functions

 ConcurrentCompositeStateBase (Context *argContextStateMachine, const RegionsArray &argRegions)
virtual ~ConcurrentCompositeStateBase ()
void entryImpl (Context *context)
void exitImpl (Context *context)
virtual void finalizeSubStateMachines (bool recursive)
virtual void initSubStateMachines (bool recursive)
bool initializeImpl (bool recursive)
void finalize (bool finalizeSubStateMachines=true)
void finalizeImpl (bool recursive)
void startDoImpl (Context *context)
void endDoImpl (Context *context)
void regionCompletedImpl (RegionBaseType *region)
Contextcontext () const
- Public Member Functions inherited from sttcl::internal::RegionContainer< CompositeStateImpl, IInnerState, EventArgs >
virtual ~RegionContainer ()

Additional Inherited Members

- Protected Types inherited from sttcl::internal::ConcurrentCompositeStateWithEventArgs< CompositeStateImpl, StateMachineImpl, IInnerState, NumOfRegions, EventArgs, StateBaseImpl >
- Protected Member Functions inherited from sttcl::internal::ConcurrentCompositeStateWithEventArgs< CompositeStateImpl, StateMachineImpl, IInnerState, NumOfRegions, EventArgs, StateBaseImpl >
 ConcurrentCompositeStateWithEventArgs (const RegionsArray &argRegions)
void broadcastEvent (Context *context, InnerEventHandler eventHandler, RefCountPtr eventArgs)
- Protected Attributes inherited from sttcl::internal::ConcurrentCompositeStateWithEventArgs< CompositeStateImpl, StateMachineImpl, IInnerState, NumOfRegions, EventArgs, StateBaseImpl >
const RegionsArrayregions

Detailed Description

template<class CompositeStateImpl, class StateMachineImpl, class IInnerState, unsigned int NumOfRegions, class EventArgs, class StateBaseImpl>
class sttcl::internal::ConcurrentCompositeStateBase< CompositeStateImpl, StateMachineImpl, IInnerState, NumOfRegions, EventArgs, StateBaseImpl >

Represents a concurrent composite state implementation base class.

Template Parameters:
CompositeStateImpl
StateMachineImpl
IInnerState
NumOfRegions
EventArgs
StateBaseImpl

Member Typedef Documentation

template<class CompositeStateImpl , class StateMachineImpl , class IInnerState , unsigned int NumOfRegions, class EventArgs , class StateBaseImpl >
typedef ConcurrentCompositeBaseImplementationSelector< CompositeStateImpl , StateMachineImpl , IInnerState , NumOfRegions , EventArgs , StateBaseImpl > sttcl::internal::ConcurrentCompositeStateBase< CompositeStateImpl, StateMachineImpl, IInnerState, NumOfRegions, EventArgs, StateBaseImpl >::BaseClassSelectorType
template<class CompositeStateImpl , class StateMachineImpl , class IInnerState , unsigned int NumOfRegions, class EventArgs , class StateBaseImpl >
typedef BaseClassSelectorType::RESULT_TYPE sttcl::internal::ConcurrentCompositeStateBase< CompositeStateImpl, StateMachineImpl, IInnerState, NumOfRegions, EventArgs, StateBaseImpl >::BaseClassType
template<class CompositeStateImpl , class StateMachineImpl , class IInnerState , unsigned int NumOfRegions, class EventArgs , class StateBaseImpl >
typedef StateMachineImpl sttcl::internal::ConcurrentCompositeStateBase< CompositeStateImpl, StateMachineImpl, IInnerState, NumOfRegions, EventArgs, StateBaseImpl >::Context
template<class CompositeStateImpl , class StateMachineImpl , class IInnerState , unsigned int NumOfRegions, class EventArgs , class StateBaseImpl >
typedef sttcl::internal::EventArgsInterfaceSelector<StateMachineImpl,IInnerState,EventArgs> sttcl::internal::ConcurrentCompositeStateBase< CompositeStateImpl, StateMachineImpl, IInnerState, NumOfRegions, EventArgs, StateBaseImpl >::EventArgsSelectorType
template<class CompositeStateImpl , class StateMachineImpl , class IInnerState , unsigned int NumOfRegions, class EventArgs , class StateBaseImpl >
typedef EventArgsSelectorType::InnerEventHandler sttcl::internal::ConcurrentCompositeStateBase< CompositeStateImpl, StateMachineImpl, IInnerState, NumOfRegions, EventArgs, StateBaseImpl >::InnerEventHandler
template<class CompositeStateImpl , class StateMachineImpl , class IInnerState , unsigned int NumOfRegions, class EventArgs , class StateBaseImpl >
typedef StateMachineImpl::StateInterface sttcl::internal::ConcurrentCompositeStateBase< CompositeStateImpl, StateMachineImpl, IInnerState, NumOfRegions, EventArgs, StateBaseImpl >::OuterEventHandler
template<class CompositeStateImpl , class StateMachineImpl , class IInnerState , unsigned int NumOfRegions, class EventArgs , class StateBaseImpl >
typedef EventArgsSelectorType::RefCountPtr sttcl::internal::ConcurrentCompositeStateBase< CompositeStateImpl, StateMachineImpl, IInnerState, NumOfRegions, EventArgs, StateBaseImpl >::RefCountPtr

The pointer type used to pass event arguments to the contained regions inner states.

Reimplemented from sttcl::internal::ConcurrentCompositeStateWithEventArgs< CompositeStateImpl, StateMachineImpl, IInnerState, NumOfRegions, EventArgs, StateBaseImpl >.

template<class CompositeStateImpl , class StateMachineImpl , class IInnerState , unsigned int NumOfRegions, class EventArgs , class StateBaseImpl >
typedef BaseClassType::RegionBaseType sttcl::internal::ConcurrentCompositeStateBase< CompositeStateImpl, StateMachineImpl, IInnerState, NumOfRegions, EventArgs, StateBaseImpl >::RegionBaseType
template<class CompositeStateImpl , class StateMachineImpl , class IInnerState , unsigned int NumOfRegions, class EventArgs , class StateBaseImpl >
typedef BaseClassType::RegionsArray sttcl::internal::ConcurrentCompositeStateBase< CompositeStateImpl, StateMachineImpl, IInnerState, NumOfRegions, EventArgs, StateBaseImpl >::RegionsArray
template<class CompositeStateImpl , class StateMachineImpl , class IInnerState , unsigned int NumOfRegions, class EventArgs , class StateBaseImpl >
typedef StateMachineImpl::StateBaseClass sttcl::internal::ConcurrentCompositeStateBase< CompositeStateImpl, StateMachineImpl, IInnerState, NumOfRegions, EventArgs, StateBaseImpl >::StateBaseClass

The state base class type.

template<class CompositeStateImpl , class StateMachineImpl , class IInnerState , unsigned int NumOfRegions, class EventArgs , class StateBaseImpl >
typedef StateBaseImpl sttcl::internal::ConcurrentCompositeStateBase< CompositeStateImpl, StateMachineImpl, IInnerState, NumOfRegions, EventArgs, StateBaseImpl >::StateImplementationBase

The state implementation base class type.

template<class CompositeStateImpl , class StateMachineImpl , class IInnerState , unsigned int NumOfRegions, class EventArgs , class StateBaseImpl >
typedef StateMachineImpl::StateInterface sttcl::internal::ConcurrentCompositeStateBase< CompositeStateImpl, StateMachineImpl, IInnerState, NumOfRegions, EventArgs, StateBaseImpl >::StateInterface

The (outer) state interface class type.


Constructor & Destructor Documentation

template<class CompositeStateImpl , class StateMachineImpl , class IInnerState , unsigned int NumOfRegions, class EventArgs , class StateBaseImpl >
sttcl::internal::ConcurrentCompositeStateBase< CompositeStateImpl, StateMachineImpl, IInnerState, NumOfRegions, EventArgs, StateBaseImpl >::ConcurrentCompositeStateBase ( Context argContextStateMachine,
const RegionsArray argRegions 
)
inline

Constructor for class ConcurrentCompositeState.

Parameters:
argContextStateMachineThe containing state machine context.
argRegionsA reference to the concrete array of regions in the concurrent composite state.
template<class CompositeStateImpl , class StateMachineImpl , class IInnerState , unsigned int NumOfRegions, class EventArgs , class StateBaseImpl >
virtual sttcl::internal::ConcurrentCompositeStateBase< CompositeStateImpl, StateMachineImpl, IInnerState, NumOfRegions, EventArgs, StateBaseImpl >::~ConcurrentCompositeStateBase ( )
inlinevirtual

Destructor for class ConcurrentCompositeState.


Member Function Documentation

template<class CompositeStateImpl , class StateMachineImpl , class IInnerState , unsigned int NumOfRegions, class EventArgs , class StateBaseImpl >
Context* sttcl::internal::ConcurrentCompositeStateBase< CompositeStateImpl, StateMachineImpl, IInnerState, NumOfRegions, EventArgs, StateBaseImpl >::context ( ) const
inline
template<class CompositeStateImpl , class StateMachineImpl , class IInnerState , unsigned int NumOfRegions, class EventArgs , class StateBaseImpl >
void sttcl::internal::ConcurrentCompositeStateBase< CompositeStateImpl, StateMachineImpl, IInnerState, NumOfRegions, EventArgs, StateBaseImpl >::endDoImpl ( Context context)
inline

Called before this state is left.

Parameters:
contextThe state machine context.
template<class CompositeStateImpl , class StateMachineImpl , class IInnerState , unsigned int NumOfRegions, class EventArgs , class StateBaseImpl >
void sttcl::internal::ConcurrentCompositeStateBase< CompositeStateImpl, StateMachineImpl, IInnerState, NumOfRegions, EventArgs, StateBaseImpl >::entryImpl ( Context context)
inline

Default entry() implementation.

Parameters:
contextThe state machine context.
template<class CompositeStateImpl , class StateMachineImpl , class IInnerState , unsigned int NumOfRegions, class EventArgs , class StateBaseImpl >
void sttcl::internal::ConcurrentCompositeStateBase< CompositeStateImpl, StateMachineImpl, IInnerState, NumOfRegions, EventArgs, StateBaseImpl >::exitImpl ( Context context)
inline

Default exit() implementation.

Parameters:
contextThe state machine context.
template<class CompositeStateImpl , class StateMachineImpl , class IInnerState , unsigned int NumOfRegions, class EventArgs , class StateBaseImpl >
void sttcl::internal::ConcurrentCompositeStateBase< CompositeStateImpl, StateMachineImpl, IInnerState, NumOfRegions, EventArgs, StateBaseImpl >::finalize ( bool  finalizeSubStateMachines = true)
inline
template<class CompositeStateImpl , class StateMachineImpl , class IInnerState , unsigned int NumOfRegions, class EventArgs , class StateBaseImpl >
void sttcl::internal::ConcurrentCompositeStateBase< CompositeStateImpl, StateMachineImpl, IInnerState, NumOfRegions, EventArgs, StateBaseImpl >::finalizeImpl ( bool  recursive)
inline

The default finalizeSubStateMachines() implementation.

Parameters:
recursiveIndicates to finalize nested sub state machines recursively.
template<class CompositeStateImpl , class StateMachineImpl , class IInnerState , unsigned int NumOfRegions, class EventArgs , class StateBaseImpl >
virtual void sttcl::internal::ConcurrentCompositeStateBase< CompositeStateImpl, StateMachineImpl, IInnerState, NumOfRegions, EventArgs, StateBaseImpl >::finalizeSubStateMachines ( bool  recursive)
inlinevirtual

The StateBase::finalizeSubStateMachines() implementation.

Parameters:
recursiveIndicates to finalize nested sub state machines recursively.
template<class CompositeStateImpl , class StateMachineImpl , class IInnerState , unsigned int NumOfRegions, class EventArgs , class StateBaseImpl >
bool sttcl::internal::ConcurrentCompositeStateBase< CompositeStateImpl, StateMachineImpl, IInnerState, NumOfRegions, EventArgs, StateBaseImpl >::initializeImpl ( bool  recursive)
inline

The default initSubStateMachines() implementation.

Parameters:
recursiveIndicates to initialize nested sub state machines recursively.
Returns:
true if all contained regions were successfully initialized, false otherwise.
template<class CompositeStateImpl , class StateMachineImpl , class IInnerState , unsigned int NumOfRegions, class EventArgs , class StateBaseImpl >
virtual void sttcl::internal::ConcurrentCompositeStateBase< CompositeStateImpl, StateMachineImpl, IInnerState, NumOfRegions, EventArgs, StateBaseImpl >::initSubStateMachines ( bool  recursive)
inlinevirtual

The StateBase::initSubStateMachines() implementation.

Parameters:
recursiveIndicates to initialize nested sub state machines recursively.
template<class CompositeStateImpl , class StateMachineImpl , class IInnerState , unsigned int NumOfRegions, class EventArgs , class StateBaseImpl >
void sttcl::internal::ConcurrentCompositeStateBase< CompositeStateImpl, StateMachineImpl, IInnerState, NumOfRegions, EventArgs, StateBaseImpl >::regionCompletedImpl ( RegionBaseType region)
inline

Called when a containe region is completed (finalized).

Parameters:
regionThe finalized region.
template<class CompositeStateImpl , class StateMachineImpl , class IInnerState , unsigned int NumOfRegions, class EventArgs , class StateBaseImpl >
void sttcl::internal::ConcurrentCompositeStateBase< CompositeStateImpl, StateMachineImpl, IInnerState, NumOfRegions, EventArgs, StateBaseImpl >::startDoImpl ( Context context)
inline

Called after this state was entered.

Parameters:
contextThe state machine context.

The documentation for this class was generated from the following file: