MayaFlux 0.2.0
Digital-First Multimedia Processing Framework
Loading...
Searching...
No Matches
MayaFlux::Core::InputBinding Struct Reference

Specifies what input an InputNode wants to receive. More...

#include <InputBinding.hpp>

+ Collaboration diagram for MayaFlux::Core::InputBinding:

Public Member Functions

InputBindingwith_midi_channel (uint8_t channel)
 Add MIDI channel filter.
 
InputBindingwith_midi_cc (uint8_t cc)
 Add MIDI CC number filter.
 
InputBindingwith_osc_pattern (const std::string &pattern)
 Add OSC address pattern filter.
 

Static Public Member Functions

static InputBinding hid (uint32_t device_id=0)
 Bind to HID device (any or specific)
 
static InputBinding midi (uint32_t device_id=0, std::optional< uint8_t > channel={})
 Bind to MIDI device.
 
static InputBinding osc (const std::string &pattern="")
 Bind to OSC messages.
 
static InputBinding serial (uint32_t device_id=0)
 Bind to Serial device.
 
static InputBinding hid_by_vid_pid (uint16_t vid, uint16_t pid)
 Bind to HID device by vendor/product ID.
 
static InputBinding midi_cc (std::optional< uint8_t > cc_number={}, std::optional< uint8_t > channel={}, uint32_t device_id=0)
 Bind to MIDI Control Change messages.
 
static InputBinding midi_note_on (std::optional< uint8_t > channel={}, uint32_t device_id=0)
 Bind to MIDI Note On messages.
 
static InputBinding midi_note_off (std::optional< uint8_t > channel={}, uint32_t device_id=0)
 Bind to MIDI Note Off messages.
 
static InputBinding midi_pitch_bend (std::optional< uint8_t > channel={}, uint32_t device_id=0)
 Bind to MIDI Pitch Bend messages.
 

Public Attributes

InputType backend
 Which backend type.
 
uint32_t device_id { 0 }
 Specific device (0 = any device)
 
std::optional< uint8_t > midi_channel
 Match specific MIDI channel (1-16)
 
std::optional< uint8_t > midi_message_type
 Match message type (0xB0=CC, 0x90=NoteOn, etc.)
 
std::optional< uint8_t > midi_cc_number
 Match specific CC number.
 
std::optional< std::string > osc_address_pattern
 Match OSC address prefix.
 
std::optional< uint16_t > hid_vendor_id
 Match HID vendor ID.
 
std::optional< uint16_t > hid_product_id
 Match HID product ID.
 

Detailed Description

Specifies what input an InputNode wants to receive.

Used when registering nodes to filter which input events they receive. Can match by backend type, specific device, or additional filters like MIDI channel or OSC address pattern.

Definition at line 28 of file InputBinding.hpp.


The documentation for this struct was generated from the following files: