Toast Engine
Loading...
Searching...
No Matches
assets::Haptic Class Reference

Asset representing a single haptic effect loaded from a .thaptic file. More...

#include <haptic.hpp>

Inheritance diagram for assets::Haptic:
Collaboration diagram for assets::Haptic:

Public Member Functions

 Haptic (const toml::table &table, Handle< Schema > schema={})
auto type () const -> std::string_view override
auto mode () const noexcept -> HapticMode
auto priority () const noexcept -> int
auto durationMs () const noexcept -> uint32_t
auto sample (float t) const -> glm::vec2
 Samples the effect's motor intensities at a normalized playback time.
Public Member Functions inherited from assets::Data
 Data (const toml::table &table, Handle< Schema > schema={})
 Data (const toml::table &table, Handle< Schema > schema, KeepAllKeysTag)
 Stores the schema handle for round-trip serialization but runs free-form buildRoot, keeping every TOML key.
auto operator[] (std::string_view k) -> DataValue &
auto operator[] (std::string_view k) const -> const DataValue &
auto contains (std::string_view k) const -> bool
auto root () const -> const DataValue &
auto schema () const -> const Handle< Schema > &
auto serialize (SaveMode mode) const -> std::vector< uint8_t > override
virtual void reload (const toml::table &table)
 Re-parses the asset contents in place.
Public Member Functions inherited from assets::Asset
 Asset (const Asset &)=delete
auto operator= (const Asset &) -> Asset &=delete
auto refCount () const noexcept -> uint32_t

Protected Member Functions

void onReloaded () override
Protected Member Functions inherited from assets::Asset
void addRef () noexcept
void release () noexcept

Additional Inherited Members

Static Public Attributes inherited from assets::Data
static constexpr KeepAllKeysTag keep_all_keys {}
Protected Attributes inherited from assets::Data
DataValue m_root
 Object DataValue holding all fields.
Handle< Schema > m_schema
 optional
bool m_keep_all_keys = false

Detailed Description

Asset representing a single haptic effect loaded from a .thaptic file.

Member Function Documentation

◆ onReloaded()

void assets::Haptic::onReloaded ( )
overrideprotectedvirtual

Reimplemented from assets::Data.

◆ sample()

auto assets::Haptic::sample ( float t) const -> glm::vec2
nodiscard

Samples the effect's motor intensities at a normalized playback time.

Parameters
tNormalized playback time in [0, 1]
Returns
{left, right} motor intensities in [0, 1]
Here is the caller graph for this function:

◆ type()

auto assets::Haptic::type ( ) const -> std::string_view
inlinenodiscardoverridevirtual

Reimplemented from assets::Data.


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