FairMQ  1.4.33
C++ Message Queuing Library and Framework
Classes | Public Types | Public Member Functions | Public Attributes | List of all members
fair::mq::fsm::Machine_ Struct Reference
Inheritance diagram for fair::mq::fsm::Machine_:
Inheritance graph
[legend]
Collaboration diagram for fair::mq::fsm::Machine_:
Collaboration graph
[legend]

Classes

struct  DefaultFct
 
struct  transition_table
 

Public Types

using initial_state = bmpl::vector< IDLE_S, OK_S >
 

Public Member Functions

template<typename Transition , typename FSM >
void on_entry (Transition const &, FSM &)
 
template<typename Transition , typename FSM >
void on_exit (Transition const &, FSM &)
 
void CallStateChangeCallbacks (const State state) const
 
void CallStateHandler (const State state) const
 
void CallNewTransitionCallbacks (const Transition transition) const
 
void ProcessWork ()
 
template<typename FSM , typename Transition >
void no_transition (Transition const &t, FSM &fsm, int state)
 

Public Attributes

atomic< State > fState
 
atomic< State > fNewState
 
atomic< bool > fLastTransitionResult
 
mutex fStateMtx
 
atomic< bool > fNewStatePending
 
condition_variable fNewStatePendingCV
 
boost::signals2::signal< void(const State)> fStateChangeSignal
 
boost::signals2::signal< void(const State)> fStateHandleSignal
 
boost::signals2::signal< void(const Transition)> fNewTransitionSignal
 
unordered_map< string, boost::signals2::connection > fStateChangeSignalsMap
 
unordered_map< string, boost::signals2::connection > fNewTransitionSignalsMap
 

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

privacy