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

#include <ConcurrentCompositeState.h>

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

List of all members.

Public Types

typedef
sttcl::internal::ConcurrentCompositeStateBase
< CompositeStateImpl,
StateMachineImpl, IInnerState,
NumOfRegions, EventArgs,
StateBaseImpl > 
ConcurrenCompositeStateBaseType
typedef StateMachineImpl StateMachineClass
typedef
ConcurrenCompositeStateBaseType::RegionBaseType 
RegionsBaseType
typedef
ConcurrenCompositeStateBaseType::RegionsArray 
RegionsArray
typedef IInnerState InnerStateInterface
typedef
StateMachineImpl::StateInterface 
OuterStateInterface
- Public Types inherited from sttcl::internal::ConcurrentCompositeStateBase< CompositeStateImpl, StateMachineImpl, IInnerState, NumOfRegions, EventArgs, StateBaseImpl >
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 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

 ConcurrentCompositeState (StateMachineImpl *context, const RegionsArray &argRegions)
virtual ~ConcurrentCompositeState ()
void changeState (StateMachineImpl *context, sttcl::StateBase< StateMachineImpl, OuterStateInterface > *newState)
- Public Member Functions inherited from sttcl::internal::ConcurrentCompositeStateBase< CompositeStateImpl, StateMachineImpl, IInnerState, NumOfRegions, EventArgs, StateBaseImpl >
 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 ()

Detailed Description

template<class CompositeStateImpl, class StateMachineImpl, class IInnerState, unsigned int NumOfRegions = 1, class EventArgs = void, class StateBaseImpl = State<CompositeStateImpl,StateMachineImpl,typename StateMachineImpl::StateInterface>>
class sttcl::ConcurrentCompositeState< CompositeStateImpl, StateMachineImpl, IInnerState, NumOfRegions, EventArgs, StateBaseImpl >

Represents the base class for an orthogonal composite state implementation.

Template Parameters:
CompositeStateImplThe implementing class.
StateMachineImplThe containing state machine class.
IInnerStateThe inner state's interface class type.
NumOfRegionsThe number of orthogonal state regions (default is 1).
EventArgsThe dispatch event arguments type (default is void).
StateBaseImplThe State class base implementation (default is State<CompositeStateImpl,StateMachineImpl,StateMachineImpl::StateInterface>)

Member Typedef Documentation

template<class CompositeStateImpl , class StateMachineImpl , class IInnerState , unsigned int NumOfRegions = 1, class EventArgs = void, class StateBaseImpl = State<CompositeStateImpl,StateMachineImpl,typename StateMachineImpl::StateInterface>>
typedef sttcl::internal::ConcurrentCompositeStateBase< CompositeStateImpl , StateMachineImpl , IInnerState , NumOfRegions , EventArgs , StateBaseImpl > sttcl::ConcurrentCompositeState< CompositeStateImpl, StateMachineImpl, IInnerState, NumOfRegions, EventArgs, StateBaseImpl >::ConcurrenCompositeStateBaseType
template<class CompositeStateImpl , class StateMachineImpl , class IInnerState , unsigned int NumOfRegions = 1, class EventArgs = void, class StateBaseImpl = State<CompositeStateImpl,StateMachineImpl,typename StateMachineImpl::StateInterface>>
typedef IInnerState sttcl::ConcurrentCompositeState< CompositeStateImpl, StateMachineImpl, IInnerState, NumOfRegions, EventArgs, StateBaseImpl >::InnerStateInterface
template<class CompositeStateImpl , class StateMachineImpl , class IInnerState , unsigned int NumOfRegions = 1, class EventArgs = void, class StateBaseImpl = State<CompositeStateImpl,StateMachineImpl,typename StateMachineImpl::StateInterface>>
typedef StateMachineImpl::StateInterface sttcl::ConcurrentCompositeState< CompositeStateImpl, StateMachineImpl, IInnerState, NumOfRegions, EventArgs, StateBaseImpl >::OuterStateInterface
template<class CompositeStateImpl , class StateMachineImpl , class IInnerState , unsigned int NumOfRegions = 1, class EventArgs = void, class StateBaseImpl = State<CompositeStateImpl,StateMachineImpl,typename StateMachineImpl::StateInterface>>
typedef ConcurrenCompositeStateBaseType::RegionsArray sttcl::ConcurrentCompositeState< CompositeStateImpl, StateMachineImpl, IInnerState, NumOfRegions, EventArgs, StateBaseImpl >::RegionsArray
template<class CompositeStateImpl , class StateMachineImpl , class IInnerState , unsigned int NumOfRegions = 1, class EventArgs = void, class StateBaseImpl = State<CompositeStateImpl,StateMachineImpl,typename StateMachineImpl::StateInterface>>
typedef ConcurrenCompositeStateBaseType::RegionBaseType sttcl::ConcurrentCompositeState< CompositeStateImpl, StateMachineImpl, IInnerState, NumOfRegions, EventArgs, StateBaseImpl >::RegionsBaseType
template<class CompositeStateImpl , class StateMachineImpl , class IInnerState , unsigned int NumOfRegions = 1, class EventArgs = void, class StateBaseImpl = State<CompositeStateImpl,StateMachineImpl,typename StateMachineImpl::StateInterface>>
typedef StateMachineImpl sttcl::ConcurrentCompositeState< CompositeStateImpl, StateMachineImpl, IInnerState, NumOfRegions, EventArgs, StateBaseImpl >::StateMachineClass

Constructor & Destructor Documentation

template<class CompositeStateImpl , class StateMachineImpl , class IInnerState , unsigned int NumOfRegions = 1, class EventArgs = void, class StateBaseImpl = State<CompositeStateImpl,StateMachineImpl,typename StateMachineImpl::StateInterface>>
sttcl::ConcurrentCompositeState< CompositeStateImpl, StateMachineImpl, IInnerState, NumOfRegions, EventArgs, StateBaseImpl >::ConcurrentCompositeState ( StateMachineImpl *  context,
const RegionsArray argRegions 
)
inline

Constructor for class ConcurrentCompositeState.

Parameters:
contextThe 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 = 1, class EventArgs = void, class StateBaseImpl = State<CompositeStateImpl,StateMachineImpl,typename StateMachineImpl::StateInterface>>
virtual sttcl::ConcurrentCompositeState< CompositeStateImpl, StateMachineImpl, IInnerState, NumOfRegions, EventArgs, StateBaseImpl >::~ConcurrentCompositeState ( )
inlinevirtual

Destructor for class ConcurrentCompositeState.


Member Function Documentation

template<class CompositeStateImpl , class StateMachineImpl , class IInnerState , unsigned int NumOfRegions = 1, class EventArgs = void, class StateBaseImpl = State<CompositeStateImpl,StateMachineImpl,typename StateMachineImpl::StateInterface>>
void sttcl::ConcurrentCompositeState< CompositeStateImpl, StateMachineImpl, IInnerState, NumOfRegions, EventArgs, StateBaseImpl >::changeState ( StateMachineImpl *  context,
sttcl::StateBase< StateMachineImpl, OuterStateInterface > *  newState 
)
inline

Changes context state machine to another sibling state.

Parameters:
contextA pointer to the containing state machine.
newStateA pointer to the sibling state to change to.

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