|
Toast Engine
|
Polymorphic base for all modifiers. More...
#include <modifier.hpp>

Public Member Functions | |
| IModifier (const IModifier &)=default | |
| auto | operator= (const IModifier &) -> IModifier &=default |
| virtual void | apply (Value &value, const EvalContext &ctx)=0 |
| Transforms a value in place. | |
| virtual auto | name () const -> std::string_view=0 |
Static Public Member Functions | |
| static auto | fromToml (const toml::table &table) -> std::shared_ptr< IModifier > |
| Builds a modifier from a TOML table keyed by its "name" field. | |
Polymorphic base for all modifiers.
|
pure virtual |
Transforms a value in place.
| value | The value to modify; its type tag is preserved |
| ctx | Frame context, used by the key and delta-time modifiers |
Implemented in input::DeadzoneModifier, input::ExponentialModifier, input::InvertModifier, input::KeyModifier, input::ScaleByDeltaTimeModifier, input::ScaleModifier, and input::SmoothModifier.
|
static |
Builds a modifier from a TOML table keyed by its "name" field.
| table | The [[modifier]] table |

|
nodiscardpure virtual |
Implemented in input::DeadzoneModifier, input::ExponentialModifier, input::InvertModifier, input::KeyModifier, input::ScaleByDeltaTimeModifier, input::ScaleModifier, and input::SmoothModifier.