XII Release 0.1.0
Loading...
Searching...
No Matches
xiiStateMachineState Class Referenceabstract

Base class for a state in a state machine. More...

#include <StateMachine.h>

Inheritance diagram for xiiStateMachineState:
[legend]

Public Member Functions

 xiiStateMachineState (xiiStringView sName=xiiStringView())
 
void SetName (xiiStringView sName)
 
xiiStringView GetName () const
 
const xiiHashedStringGetNameHashed () const
 
virtual void OnEnter (xiiStateMachineInstance &ref_instance, void *pInstanceData, const xiiStateMachineState *pFromState) const =0
 
virtual void OnExit (xiiStateMachineInstance &ref_instance, void *pInstanceData, const xiiStateMachineState *pToState) const
 
virtual void Update (xiiStateMachineInstance &ref_instance, void *pInstanceData, xiiTime deltaTime) const
 
virtual xiiResult Serialize (xiiStreamWriter &inout_stream) const
 
virtual xiiResult Deserialize (xiiStreamReader &inout_stream)
 
virtual bool GetInstanceDataDesc (xiiInstanceDataDesc &out_desc)
 Returns whether this state needs additional instance data and if so fills the out_desc.
 
- Public Member Functions inherited from xiiReflectedClass
virtual const xiiRTTIGetDynamicRTTI () const
 
bool IsInstanceOf (const xiiRTTI *pType) const
 Returns whether the type of this instance is of the given type or derived from it.
 
template<typename T>
XII_ALWAYS_INLINE bool IsInstanceOf () const
 Returns whether the type of this instance is of the given type or derived from it.
 

Additional Inherited Members

- Static Public Member Functions inherited from xiiNoBase
static const xiiRTTIGetStaticRTTI ()
 

Detailed Description

Base class for a state in a state machine.

Note that states are shared between multiple instances and thus shouldn't modify any data on their own but always operate on the passed instance and instance data.

See also
xiiStateMachineInstanceDataDesc

Member Function Documentation

◆ GetInstanceDataDesc()

bool xiiStateMachineState::GetInstanceDataDesc ( xiiInstanceDataDesc & out_desc)
virtual

Returns whether this state needs additional instance data and if so fills the out_desc.

See also
xiiStateMachineInstanceDataDesc

Reimplemented in xiiStateMachineState_Compound, xiiStateMachineState_NestedStateMachine, and xiiStateMachineState_Script.


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