|
MayaFlux 0.2.0
Digital-First Multimedia Processing Framework
|
Generic input value container. More...
#include <InputBinding.hpp>
Collaboration diagram for MayaFlux::Core::InputValue:Classes | |
| struct | MIDIMessage |
| MIDI message structure. More... | |
| struct | OSCMessage |
| OSC message structure. More... | |
Public Types | |
| enum class | Type : uint8_t { SCALAR , VECTOR , BYTES , MIDI , OSC } |
| Type of input data. More... | |
| using | OSCArg = std::variant< int32_t, float, std::string, std::vector< uint8_t > > |
| OSC argument types. | |
Public Member Functions | |
| double | as_scalar () const |
| const std::vector< double > & | as_vector () const |
| const std::vector< uint8_t > & | as_bytes () const |
| const MIDIMessage & | as_midi () const |
| const OSCMessage & | as_osc () const |
Static Public Member Functions | |
| static InputValue | make_scalar (double v, uint32_t dev_id, InputType src) |
| static InputValue | make_vector (std::vector< double > v, uint32_t dev_id, InputType src) |
| static InputValue | make_bytes (std::vector< uint8_t > v, uint32_t dev_id, InputType src) |
| static InputValue | make_midi (uint8_t status, uint8_t d1, uint8_t d2, uint32_t dev_id) |
| static InputValue | make_osc (std::string addr, std::vector< OSCArg > args, uint32_t dev_id) |
Public Attributes | |
| Type | type |
| std::variant< double, std::vector< double >, std::vector< uint8_t >, MIDIMessage, OSCMessage > | data |
| uint64_t | timestamp_ns |
| Nanoseconds since epoch (or backend start) | |
| uint32_t | device_id |
| Source device identifier. | |
| InputType | source_type |
| Backend that generated this value. | |
Generic input value container.
Represents a single input event from any backend type. Uses variant to handle different data formats efficiently.
Definition at line 206 of file InputBinding.hpp.