Definition at line 375 of file InputManager.cpp.
376{
377 if (binding.backend !=
value.source_type) {
378 return false;
379 }
380
381 if (binding.device_id != 0 && binding.device_id !=
value.device_id) {
382 return false;
383 }
384
385 switch (binding.backend) {
388 const auto& midi =
value.as_midi();
389
390 if (binding.midi_channel && *binding.midi_channel != midi.channel()) {
391 return false;
392 }
393
394 if (binding.midi_message_type && *binding.midi_message_type != midi.type()) {
395 return false;
396 }
397 if (binding.midi_cc_number && midi.type() == 0xB0) {
398 if (*binding.midi_cc_number != midi.data1) {
399 return false;
400 }
401 }
402 }
403 break;
404
407 const auto& osc =
value.as_osc();
408 if (!osc.address.starts_with(*binding.osc_address_pattern)) {
409 return false;
410 }
411 }
412 break;
413
414 default:
415
416 break;
417 }
418
419 return true;
420}
@ OSC
Open Sound Control (network)
@ MIDI
MIDI controllers and instruments.
References MayaFlux::Core::InputBinding::backend, MayaFlux::Core::InputBinding::device_id, MayaFlux::Core::MIDI, MayaFlux::Core::InputValue::MIDI, MayaFlux::Core::InputBinding::midi_cc_number, MayaFlux::Core::InputBinding::midi_channel, MayaFlux::Core::InputBinding::midi_message_type, MayaFlux::Core::OSC, MayaFlux::Core::InputValue::OSC, MayaFlux::Core::InputBinding::osc_address_pattern, and value.
Referenced by dispatch_to_nodes().