Skip to main content

StateTransitionContext Class Template

Captures the complete context of a state transition. More...

Declaration

template <typename StateType> class helios::engine::state::types::StateTransitionContext<StateType> { ... }

Private Member Typedefs Index

template <typename StateType>
usingStateTransitionIdType = typename StateTransitionId< StateType >::Type

Public Constructors Index

template <typename StateType>
StateTransitionContext (const StateType from, const StateType to, const StateTransitionIdType transitionId)

Constructs a transition context. More...

Public Member Functions Index

template <typename StateType>
StateTypeto () const noexcept

Returns the target state. More...

template <typename StateType>
StateTypefrom () const noexcept

Returns the source state. More...

template <typename StateType>
StateTransitionIdTypetransitionId () const noexcept

Returns the transition identifier. More...

Private Member Attributes Index

template <typename StateType>
StateTypefrom_

The state being transitioned from. More...

template <typename StateType>
StateTransitionIdTypetransitionId_

The transition that triggered this change. More...

template <typename StateType>
StateTypeto_

The state being transitioned to. More...

Description

Captures the complete context of a state transition.

Contains the source state, target state, and the transition ID that triggered the change. Passed to listeners during state changes.

Template Parameters
StateType

The state enum type.

See Also

StateTransitionListener

See Also

StateManager

Definition at line 27 of file StateTransitionContext.ixx.

Private Member Typedefs

StateTransitionIdType

template <typename StateType>
using helios::engine::state::types::StateTransitionContext< StateType >::StateTransitionIdType = typename StateTransitionId<StateType>::Type

Definition at line 29 of file StateTransitionContext.ixx.

29 using StateTransitionIdType = typename StateTransitionId<StateType>::Type;

Public Constructors

StateTransitionContext()

template <typename StateType>
helios::engine::state::types::StateTransitionContext< StateType >::StateTransitionContext (const StateType from, const StateType to, const StateTransitionIdType transitionId)
inline explicit

Constructs a transition context.

Parameters
from

The source state.

to

The target state.

transitionId

The transition identifier.

Definition at line 55 of file StateTransitionContext.ixx.

56 const StateType from,
57 const StateType to,
58 const StateTransitionIdType transitionId
59 ) : from_(from), to_(to), transitionId_(transitionId) {}

References helios::engine::state::types::StateTransitionContext< StateType >::from, helios::engine::state::types::StateTransitionContext< StateType >::to and helios::engine::state::types::StateTransitionContext< StateType >::transitionId.

Public Member Functions

from()

template <typename StateType>
StateType helios::engine::state::types::StateTransitionContext< StateType >::from ()
inline nodiscard noexcept

Returns the source state.

Returns

The state being transitioned from.

Definition at line 75 of file StateTransitionContext.ixx.

75 [[nodiscard]] StateType from() const noexcept {
76 return from_;
77 }

Referenced by helios::engine::state::types::StateTransitionContext< StateType >::StateTransitionContext.

to()

template <typename StateType>
StateType helios::engine::state::types::StateTransitionContext< StateType >::to ()
inline nodiscard noexcept

Returns the target state.

Returns

The state being transitioned to.

Definition at line 66 of file StateTransitionContext.ixx.

66 [[nodiscard]] StateType to() const noexcept {
67 return to_;
68 }

Referenced by helios::engine::state::types::StateTransitionContext< StateType >::StateTransitionContext.

transitionId()

template <typename StateType>
StateTransitionIdType helios::engine::state::types::StateTransitionContext< StateType >::transitionId ()
inline nodiscard noexcept

Returns the transition identifier.

Returns

The ID of the transition.

Definition at line 84 of file StateTransitionContext.ixx.

84 [[nodiscard]] StateTransitionIdType transitionId() const noexcept {
85 return transitionId_;
86 }

Referenced by helios::engine::state::types::StateTransitionContext< StateType >::StateTransitionContext.

Private Member Attributes

from_

template <typename StateType>
StateType helios::engine::state::types::StateTransitionContext< StateType >::from_

The state being transitioned from.

Definition at line 34 of file StateTransitionContext.ixx.

34 StateType from_;

to_

template <typename StateType>
StateType helios::engine::state::types::StateTransitionContext< StateType >::to_

The state being transitioned to.

Definition at line 44 of file StateTransitionContext.ixx.

44 StateType to_;

transitionId_

template <typename StateType>
StateTransitionIdType helios::engine::state::types::StateTransitionContext< StateType >::transitionId_

The transition that triggered this change.

Definition at line 39 of file StateTransitionContext.ixx.

39 StateTransitionIdType transitionId_;

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


Generated via doxygen2docusaurus 2.0.0 by Doxygen 1.15.0.