Toast Engine
Loading...
Searching...
No Matches
input::Action Class Reference

Public Types

using Sampler = std::function<InputSample(const KeyCode&)>
 Supplies the current raw input for a keycode; provided by the input system.

Public Member Functions

auto evaluate (const Sampler &sampler, const EvalContext &ctx) -> SignalList
 Evaluates every bind, accumulates the value and updates timing state.
auto uid () const noexcept -> toast::UID
auto name () const noexcept -> std::string_view
auto functionName () const noexcept -> std::string_view
auto valueType () const noexcept -> ValueType
auto value () const noexcept -> const Value &
auto modifiers () const noexcept -> ModifierKey
auto device () const noexcept -> Device
auto timeSinceStart () const noexcept -> float
auto timeSinceTry () const noexcept -> float
auto remainingCountdown () const noexcept -> float
auto binds () const noexcept -> const std::vector< Bind > &

Static Public Member Functions

static auto fromAsset (assets::Handle< assets::Action > handle) -> std::unique_ptr< Action >
 Builds a runtime action from its asset.

Member Function Documentation

◆ binds()

auto input::Action::binds ( ) const -> const std::vector< Bind > &
inlinenodiscardnoexcept

<

Returns
The binds that drive this action
Here is the caller graph for this function:

◆ device()

auto input::Action::device ( ) const -> Device
nodiscardnoexcept
Returns
The device that most recently contributed to this action

◆ evaluate()

auto input::Action::evaluate ( const Sampler & sampler,
const EvalContext & ctx ) -> SignalList

Evaluates every bind, accumulates the value and updates timing state.

Parameters
samplerCallback returning the raw input for a given keycode
ctxFrame context
Returns
The distinct discrete events fired this frame, each appearing at most once

◆ fromAsset()

auto input::Action::fromAsset ( assets::Handle< assets::Action > handle) -> std::unique_ptr< Action >
static

Builds a runtime action from its asset.

Parameters
handleHandle to the loaded asset::Action; kept alive for the action's lifetime
Returns
A new action, or nullptr when the handle does not resolve

◆ functionName()

auto input::Action::functionName ( ) const -> std::string_view
nodiscardnoexcept
Returns
The reflected parent function this action invokes

◆ modifiers()

auto input::Action::modifiers ( ) const -> ModifierKey
nodiscardnoexcept
Returns
The keyboard modifier keys held
Here is the caller graph for this function:

◆ name()

auto input::Action::name ( ) const -> std::string_view
nodiscardnoexcept
Returns
The action's display name

◆ remainingCountdown()

auto input::Action::remainingCountdown ( ) const -> float
nodiscardnoexcept
Returns
Remaining seconds of the countdown

◆ timeSinceStart()

auto input::Action::timeSinceStart ( ) const -> float
nodiscardnoexcept
Returns
Seconds the action has been active

◆ timeSinceTry()

auto input::Action::timeSinceTry ( ) const -> float
nodiscardnoexcept
Returns
Seconds since the start countdown

◆ uid()

auto input::Action::uid ( ) const -> toast::UID
nodiscardnoexcept
Returns
The UID of the backing asset::Action

◆ value()

auto input::Action::value ( ) const -> const Value &
nodiscardnoexcept
Returns
The current accumulated value

◆ valueType()

auto input::Action::valueType ( ) const -> ValueType
nodiscardnoexcept
Returns
The action's value domain

The documentation for this class was generated from the following files:
  • engine/src/toast/input/action.hpp
  • engine/src/toast/input/action.cpp