From 1a66c67ec77a9e495240614ae3643f9b5f63d65e Mon Sep 17 00:00:00 2001 From: Robbert van der Helm Date: Fri, 15 Jan 2021 23:13:51 +0100 Subject: [PATCH] Add message structs for IMidiLearn --- .../serialization/vst3/plugin/midi-learn.h | 23 +++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/src/common/serialization/vst3/plugin/midi-learn.h b/src/common/serialization/vst3/plugin/midi-learn.h index 700d9583..f64130ef 100644 --- a/src/common/serialization/vst3/plugin/midi-learn.h +++ b/src/common/serialization/vst3/plugin/midi-learn.h @@ -61,6 +61,29 @@ class YaMidiLearn : public Steinberg::Vst::IMidiLearn { inline bool supported() const { return arguments.supported; } + /** + * Message to pass through a call to + * `IMidiLearn::onLiveMIDIControllerInput(bus_index, channel, midi_cc)` to + * the Wine plugin host. + */ + struct OnLiveMIDIControllerInput { + using Response = UniversalTResult; + + native_size_t instance_id; + + int32 bus_index; + int16 channel; + Steinberg::Vst::CtrlNumber midi_cc; + + template + void serialize(S& s) { + s.value8b(instance_id); + s.value4b(bus_index); + s.value2b(channel); + s.value2b(midi_cc); + } + }; + virtual tresult PLUGIN_API onLiveMIDIControllerInput(int32 busIndex, int16 channel,