Skip to main content

StateTransitionRequest Class Template

Represents a request to perform a state transition. More...

Declaration

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

Private Member Typedefs Index

template <typename StateType>
usingStateTransitionIdType = StateTransitionIdType< StateType >

Public Constructors Index

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

Constructs a transition request. More...

Public Member Functions Index

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 current state to transition from. More...

template <typename StateType>
StateTransitionIdTypetransitionId_

The transition to perform. More...

Description

Represents a request to perform a state transition.

Contains the current state and the desired transition ID. The StateManager uses registered rules to determine the target state.

Template Parameters
StateType

The state enum type.

See Also

StateCommand

See Also

StateManager

Definition at line 28 of file StateTransitionRequest.ixx.

Private Member Typedefs

StateTransitionIdType

template <typename StateType>
using helios::engine::state::types::StateTransitionRequest< StateType >::StateTransitionIdType = StateTransitionIdType<StateType>

Definition at line 30 of file StateTransitionRequest.ixx.

30 using StateTransitionIdType = StateTransitionIdType<StateType>;

Public Constructors

StateTransitionRequest()

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

Constructs a transition request.

Parameters
from

The current state.

transitionId

The transition to perform.

Definition at line 51 of file StateTransitionRequest.ixx.

52 const StateType from,
53 const StateTransitionIdType transitionId
54 ) : from_(from), transitionId_(transitionId) {}

References helios::engine::state::types::StateTransitionRequest< StateType >::from and helios::engine::state::types::StateTransitionRequest< StateType >::transitionId.

Public Member Functions

from()

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

Returns the source state.

Returns

The state to transition from.

Definition at line 61 of file StateTransitionRequest.ixx.

61 [[nodiscard]] StateType from() const noexcept {
62 return from_;
63 }

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

transitionId()

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

Returns the transition identifier.

Returns

The ID of the requested transition.

Definition at line 70 of file StateTransitionRequest.ixx.

70 [[nodiscard]] StateTransitionIdType transitionId() const noexcept {
71 return transitionId_;
72 }

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

Private Member Attributes

from_

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

The current state to transition from.

Definition at line 35 of file StateTransitionRequest.ixx.

35 StateType from_;

transitionId_

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

The transition to perform.

Definition at line 40 of file StateTransitionRequest.ixx.

40 StateTransitionIdType transitionId_;

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


Generated via doxygen2docusaurus 2.0.0 by Doxygen 1.15.0.