MCPcopy Create free account
hub / github.com/DISTRHO/DPF / sendNote

Function sendNote

distrho/src/DistrhoUIVST3.cpp:719–739  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

717
718 #if DISTRHO_PLUGIN_WANT_MIDI_INPUT
719 void sendNote(const uint8_t channel, const uint8_t note, const uint8_t velocity)
720 {
721 DISTRHO_SAFE_ASSERT_RETURN(fConnection != nullptr,);
722
723 v3_message** const message = createMessage("midi");
724 DISTRHO_SAFE_ASSERT_RETURN(message != nullptr,);
725
726 v3_attribute_list** const attrlist = v3_cpp_obj(message)->get_attributes(message);
727 DISTRHO_SAFE_ASSERT_RETURN(attrlist != nullptr,);
728
729 uint8_t midiData[3];
730 midiData[0] = (velocity != 0 ? 0x90 : 0x80) | channel;
731 midiData[1] = note;
732 midiData[2] = velocity;
733
734 v3_cpp_obj(attrlist)->set_int(attrlist, "__dpf_msg_target__", 1);
735 v3_cpp_obj(attrlist)->set_binary(attrlist, "data", midiData, sizeof(midiData));
736 v3_cpp_obj(fConnection)->notify(fConnection, message);
737
738 v3_cpp_obj_unref(message);
739 }
740
741 static void sendNoteCallback(void* const ptr, const uint8_t channel, const uint8_t note, const uint8_t velocity)
742 {

Callers 1

onMouseMethod · 0.85

Calls 4

v3_cpp_obj_unrefFunction · 0.85
createMessageFunction · 0.70
v3_cpp_objFunction · 0.50
notifyMethod · 0.45

Tested by

no test coverage detected