XII Release 0.1.0
Loading...
Searching...
No Matches
xiiStateMachineDescription Class Reference

The state machine description defines the structure of a state machine like e.g. what states it has and how to transition between them. Once an instance is created from a description it is not allowed to change the description afterwards. More...

#include <StateMachine.h>

Inheritance diagram for xiiStateMachineDescription:
[legend]

Public Member Functions

xiiUInt32 AddState (xiiUniquePtr< xiiStateMachineState > &&pState)
 Adds the given state to the description and returns the state index.
 
void AddTransition (xiiUInt32 uiFromStateIndex, xiiUInt32 uiToStateIndex, xiiUniquePtr< xiiStateMachineTransition > &&pTransistion)
 Adds the given transition between the two given states. A uiFromStateIndex of xiiInvalidIndex generates a transition that can be done from any other possible state.
 
xiiResult Serialize (xiiStreamWriter &inout_stream) const
 
xiiResult Deserialize (xiiStreamReader &inout_stream)
 
- Public Member Functions inherited from xiiRefCounted
virtual ~xiiRefCounted ()=default
 Adds a virtual destructor.
 
- Public Member Functions inherited from xiiRefCountingImpl
 xiiRefCountingImpl ()=default
 Constructor.
 
 xiiRefCountingImpl (const xiiRefCountingImpl &rhs)
 
void operator= (const xiiRefCountingImpl &rhs)
 
xiiUInt32 AddRef () const
 Increments the reference counter. Returns the new reference count.
 
xiiUInt32 ReleaseRef () const
 Decrements the reference counter. Returns the new reference count.
 
bool IsReferenced () const
 Returns true if the reference count is greater than 0, false otherwise.
 
xiiUInt32 GetRefCount () const
 Returns the current reference count.
 

Friends

class xiiStateMachineInstance
 

Detailed Description

The state machine description defines the structure of a state machine like e.g. what states it has and how to transition between them. Once an instance is created from a description it is not allowed to change the description afterwards.


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