MayaFlux 0.4.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_cc (uint8_t cc)
 Add MIDI CC number filter.
 
InputBindingwith_midi_channel (uint8_t channel)
 Add MIDI channel 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 hid_by_vid_pid (uint16_t vid, uint16_t pid)
 Bind to HID device by vendor/product ID.
 
static InputBinding midi (uint32_t device_id=0, std::optional< uint8_t > channel={})
 Bind to MIDI device.
 
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_off (std::optional< uint8_t > channel={}, uint32_t device_id=0)
 Bind to MIDI Note Off 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_pitch_bend (std::optional< uint8_t > channel={}, uint32_t device_id=0)
 Bind to MIDI Pitch Bend messages.
 
static InputBinding osc (const std::string &pattern="")
 Bind to OSC messages.
 
static InputBinding serial (uint32_t device_id=0)
 Bind to Serial device.
 

Public Attributes

InputType backend
 Which backend type.
 
uint32_t device_id { 0 }
 Specific device (0 = any device)
 
std::optional< uint16_t > hid_product_id
 Match HID product ID.
 
std::optional< uint16_t > hid_vendor_id
 Match HID vendor ID.
 
std::optional< uint8_t > midi_cc_number
 Match specific CC number.
 
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< std::string > osc_address_pattern
 Match OSC address prefix.
 

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: