Pyrogenesis  trunk
Classes | Typedefs | Variables
FSM.h File Reference
#include <limits>
#include <map>
#include <set>
#include <vector>
Include dependency graph for FSM.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  CallbackFunction
 
class  CFsmEvent
 Represents a signal in the state machine that a change has occurred. More...
 
class  CFsmTransition
 An association of event, condition, action and next state. More...
 
class  CFsm
 Manages states, events, actions and transitions between states. More...
 

Typedefs

using Condition = bool(void *pContext)
 
using Action = bool(void *pContext, const CFsmEvent *pEvent)
 
using StateSet = std::set< unsigned int >
 
using EventMap = std::map< unsigned int, CFsmEvent * >
 
using TransitionList = std::vector< CFsmTransition * >
 
using CallbackList = std::vector< CallbackFunction >
 

Variables

constexpr unsigned int FSM_INVALID_STATE {std::numeric_limits<unsigned int>::max()}
 

Typedef Documentation

◆ Action

using Action = bool(void* pContext, const CFsmEvent* pEvent)

◆ CallbackList

using CallbackList = std::vector<CallbackFunction>

◆ Condition

using Condition = bool(void* pContext)

◆ EventMap

using EventMap = std::map<unsigned int, CFsmEvent*>

◆ StateSet

using StateSet = std::set<unsigned int>

◆ TransitionList

using TransitionList = std::vector<CFsmTransition*>

Variable Documentation

◆ FSM_INVALID_STATE

constexpr unsigned int FSM_INVALID_STATE {std::numeric_limits<unsigned int>::max()}