6 struct GlobalInputConfig;
10 struct InputDeviceInfo;
13namespace Nodes::Input {
108 std::optional<uint8_t> cc_number = {},
109 std::optional<uint8_t> channel = {},
110 uint32_t device_id = 0);
116 std::optional<uint8_t> channel = {},
117 uint32_t device_id = 0);
123 std::optional<uint8_t> channel = {},
124 uint32_t device_id = 0);
130 std::optional<uint8_t> channel = {},
131 uint32_t device_id = 0);
137MAYAFLUX_API Core::InputBinding
bind_osc(
const std::string& pattern =
"");
143MAYAFLUX_API Core::InputBinding
bind_serial(uint32_t device_id = 0);
@ InputSubsystem
Input subsystem operations (device management, event dispatch)
@ Core
Core engine, backend, subsystems.
void register_input_node(const std::shared_ptr< Nodes::Input::InputNode > &node, const Core::InputBinding &binding)
Register an input node with specified binding.
std::vector< Core::InputDeviceInfo > get_midi_devices()
Get a list of connected MIDI devices.
void unregister_input_node(const std::shared_ptr< Nodes::Input::InputNode > &node)
Unregister an input node.
Core::InputBinding bind_midi_note_off(std::optional< uint8_t > channel, uint32_t device_id)
Create binding for MIDI Note Off messages.
Core::InputBinding bind_midi_note_on(std::optional< uint8_t > channel, uint32_t device_id)
Create binding for MIDI Note On messages.
Core::InputBinding bind_osc(const std::string &pattern)
Create binding for OSC messages.
std::optional< Core::InputDeviceInfo > find_hid_device(uint16_t vendor_id, uint16_t product_id)
Find a HID device by vendor and product ID.
const Core::InputSubsystem & get_input_subsystem()
Gets the input subsystem.
Core::InputManager & get_input_manager()
Gets a handle to default input manager.
Core::InputBinding bind_serial(uint32_t device_id)
Create binding for Serial device.
std::vector< Core::InputDeviceInfo > get_all_input_devices()
Get a list of connected MIDI devices.
Core::InputBinding bind_midi(uint32_t device_id, std::optional< uint8_t > channel)
Create binding for MIDI device.
Core::InputBinding bind_midi_pitch_bend(std::optional< uint8_t > channel, uint32_t device_id)
Create binding for MIDI Pitch Bend messages.
Core::InputBinding bind_hid(uint32_t device_id)
Create binding for HID device.
std::vector< Core::InputDeviceInfo > get_hid_devices()
Get a list of connected HID devices.
Core::InputBinding bind_midi_cc(std::optional< uint8_t > cc_number, std::optional< uint8_t > channel, uint32_t device_id)
Create binding for MIDI Control Change messages.
Main namespace for the Maya Flux audio engine.