StateBase::Impl Struct Reference

#include <ArmarXCore/statechart/StateBaseImpl.h>

Public Types

using StateInstanceMap = std::map< int, StateBase * >
 
using StateInstanceMapPtr = std::shared_ptr< StateInstanceMap >
 

Public Member Functions

 Impl ()
 

Data Fields

RecursiveMutex __eventBufferMutex
 
HiddenTimedMutex __eventUnbreakableBufferMutex
 
StateBase__parentState
 
RecursiveMutex __processEventMutex
 
HiddenTimedMutex __processEventsMutex
 
HiddenTimedMutex __stateMutex
 
bool __useRunFunction
 
bool cancelEnteringSubstates
 GetActiveStateLeafs returns the list of leaf-states that are active at the moment. More...
 
StatechartContextInterfacecontext
 Pointer to the StatechartContext to the single instance per application. More...
 
ConditionalVariable initCondition
 
Mutex initMutex
 
std::vector< std::string > inputInheritance
 
int localUniqueId
 An in this process unique id for the state. More...
 
StatechartManagermanager
 
StateInstanceMapPtr stateInstancesPtr
 
StatePhase statePhase
 
Mutex statePhaseMutex
 
EventPtr triggeredEndstateEvent
 This variable contains the event of the end substate that was entered to leave this state. More...
 
long visitCounter
 
long visitTimeStamp
 This property is needed for identification at what time this state was entered the last time. More...
 

Static Public Attributes

static int __LocalIdCounter = 0
 Unique Identifier counter for this process for identifing states. More...
 
static HiddenTimedMutex__StateInstancesMutex = new HiddenTimedMutex()
 
static StateInstanceMapPtr StateInstances
 Static map that contains all the states that are alive in this process. More...
 

Detailed Description

Definition at line 10 of file StateBaseImpl.h.

Member Typedef Documentation

◆ StateInstanceMap

using StateInstanceMap = std::map<int, StateBase*>

Definition at line 57 of file StateBaseImpl.h.

◆ StateInstanceMapPtr

using StateInstanceMapPtr = std::shared_ptr<StateInstanceMap>

Definition at line 58 of file StateBaseImpl.h.

Constructor & Destructor Documentation

◆ Impl()

Impl ( )
inline

Definition at line 12 of file StateBaseImpl.h.

Field Documentation

◆ __eventBufferMutex

RecursiveMutex __eventBufferMutex

Definition at line 40 of file StateBaseImpl.h.

◆ __eventUnbreakableBufferMutex

HiddenTimedMutex __eventUnbreakableBufferMutex

Definition at line 41 of file StateBaseImpl.h.

◆ __LocalIdCounter

int __LocalIdCounter = 0
static

Unique Identifier counter for this process for identifing states.

Definition at line 38 of file StateBaseImpl.h.

◆ __parentState

StateBase* __parentState

Definition at line 63 of file StateBaseImpl.h.

◆ __processEventMutex

RecursiveMutex __processEventMutex

Definition at line 42 of file StateBaseImpl.h.

◆ __processEventsMutex

HiddenTimedMutex __processEventsMutex

Definition at line 43 of file StateBaseImpl.h.

◆ __StateInstancesMutex

HiddenTimedMutex * __StateInstancesMutex = new HiddenTimedMutex()
static

Definition at line 39 of file StateBaseImpl.h.

◆ __stateMutex

HiddenTimedMutex __stateMutex

Definition at line 44 of file StateBaseImpl.h.

◆ __useRunFunction

bool __useRunFunction

Definition at line 50 of file StateBaseImpl.h.

◆ cancelEnteringSubstates

bool cancelEnteringSubstates

GetActiveStateLeafs returns the list of leaf-states that are active at the moment.

Parameters
toplevelStateState from which the active substate is to be returned.
Returns
List of active leaf-states. If no orthogonal states are used, the list has at most 1 item.

Definition at line 88 of file StateBaseImpl.h.

◆ context

Pointer to the StatechartContext to the single instance per application.

Contains proxies to observers and units. Used to operate with distributed components over ice.

Definition at line 34 of file StateBaseImpl.h.

◆ initCondition

ConditionalVariable initCondition
mutable

Definition at line 23 of file StateBaseImpl.h.

◆ initMutex

Mutex initMutex
mutable

Definition at line 24 of file StateBaseImpl.h.

◆ inputInheritance

std::vector<std::string> inputInheritance

Definition at line 46 of file StateBaseImpl.h.

◆ localUniqueId

int localUniqueId

An in this process unique id for the state.

Definition at line 68 of file StateBaseImpl.h.

◆ manager

Definition at line 35 of file StateBaseImpl.h.

◆ StateInstances

StateBase::Impl::StateInstanceMapPtr StateInstances
static

Static map that contains all the states that are alive in this process.

Definition at line 60 of file StateBaseImpl.h.

◆ stateInstancesPtr

StateInstanceMapPtr stateInstancesPtr

Definition at line 61 of file StateBaseImpl.h.

◆ statePhase

StatePhase statePhase

Definition at line 26 of file StateBaseImpl.h.

◆ statePhaseMutex

Mutex statePhaseMutex
mutable

Definition at line 27 of file StateBaseImpl.h.

◆ triggeredEndstateEvent

EventPtr triggeredEndstateEvent

This variable contains the event of the end substate that was entered to leave this state.

Definition at line 55 of file StateBaseImpl.h.

◆ visitCounter

long visitCounter

Definition at line 47 of file StateBaseImpl.h.

◆ visitTimeStamp

long visitTimeStamp

This property is needed for identification at what time this state was entered the last time.

The reason is, that events should only be processed by a state, if the events were installed in this visit to this state.

Note
not used yet.

Definition at line 78 of file StateBaseImpl.h.


The documentation for this struct was generated from the following files: