mirror of
https://github.com/robbert-vdh/yabridge.git
synced 2026-05-09 20:29:10 +02:00
Add stubs for IMidiMapping
This commit is contained in:
@@ -27,6 +27,7 @@ Vst3PluginProxy::ConstructArgs::ConstructArgs(
|
|||||||
connection_point_args(object),
|
connection_point_args(object),
|
||||||
edit_controller_args(object),
|
edit_controller_args(object),
|
||||||
edit_controller_2_args(object),
|
edit_controller_2_args(object),
|
||||||
|
midi_mapping_args(object),
|
||||||
note_expression_controller_args(object),
|
note_expression_controller_args(object),
|
||||||
plugin_base_args(object),
|
plugin_base_args(object),
|
||||||
program_list_data_args(object),
|
program_list_data_args(object),
|
||||||
@@ -39,6 +40,7 @@ Vst3PluginProxy::Vst3PluginProxy(const ConstructArgs&& args)
|
|||||||
YaConnectionPoint(std::move(args.connection_point_args)),
|
YaConnectionPoint(std::move(args.connection_point_args)),
|
||||||
YaEditController(std::move(args.edit_controller_args)),
|
YaEditController(std::move(args.edit_controller_args)),
|
||||||
YaEditController2(std::move(args.edit_controller_2_args)),
|
YaEditController2(std::move(args.edit_controller_2_args)),
|
||||||
|
YaMidiMapping(std::move(args.midi_mapping_args)),
|
||||||
YaNoteExpressionController(
|
YaNoteExpressionController(
|
||||||
std::move(args.note_expression_controller_args)),
|
std::move(args.note_expression_controller_args)),
|
||||||
YaPluginBase(std::move(args.plugin_base_args)),
|
YaPluginBase(std::move(args.plugin_base_args)),
|
||||||
@@ -96,6 +98,10 @@ tresult PLUGIN_API Vst3PluginProxy::queryInterface(Steinberg::FIDString _iid,
|
|||||||
QUERY_INTERFACE(_iid, obj, Steinberg::Vst::IEditController2::iid,
|
QUERY_INTERFACE(_iid, obj, Steinberg::Vst::IEditController2::iid,
|
||||||
Steinberg::Vst::IEditController2)
|
Steinberg::Vst::IEditController2)
|
||||||
}
|
}
|
||||||
|
if (YaMidiMapping::supported()) {
|
||||||
|
QUERY_INTERFACE(_iid, obj, Steinberg::Vst::IMidiMapping::iid,
|
||||||
|
Steinberg::Vst::IMidiMapping)
|
||||||
|
}
|
||||||
if (YaNoteExpressionController::supported()) {
|
if (YaNoteExpressionController::supported()) {
|
||||||
QUERY_INTERFACE(_iid, obj,
|
QUERY_INTERFACE(_iid, obj,
|
||||||
Steinberg::Vst::INoteExpressionController::iid,
|
Steinberg::Vst::INoteExpressionController::iid,
|
||||||
|
|||||||
@@ -62,6 +62,7 @@ class Vst3PluginProxy : public YaAudioProcessor,
|
|||||||
public YaConnectionPoint,
|
public YaConnectionPoint,
|
||||||
public YaEditController,
|
public YaEditController,
|
||||||
public YaEditController2,
|
public YaEditController2,
|
||||||
|
public YaMidiMapping,
|
||||||
public YaNoteExpressionController,
|
public YaNoteExpressionController,
|
||||||
public YaPluginBase,
|
public YaPluginBase,
|
||||||
public YaProgramListData,
|
public YaProgramListData,
|
||||||
@@ -90,6 +91,7 @@ class Vst3PluginProxy : public YaAudioProcessor,
|
|||||||
YaConnectionPoint::ConstructArgs connection_point_args;
|
YaConnectionPoint::ConstructArgs connection_point_args;
|
||||||
YaEditController::ConstructArgs edit_controller_args;
|
YaEditController::ConstructArgs edit_controller_args;
|
||||||
YaEditController2::ConstructArgs edit_controller_2_args;
|
YaEditController2::ConstructArgs edit_controller_2_args;
|
||||||
|
YaMidiMapping::ConstructArgs midi_mapping_args;
|
||||||
YaNoteExpressionController::ConstructArgs
|
YaNoteExpressionController::ConstructArgs
|
||||||
note_expression_controller_args;
|
note_expression_controller_args;
|
||||||
YaPluginBase::ConstructArgs plugin_base_args;
|
YaPluginBase::ConstructArgs plugin_base_args;
|
||||||
|
|||||||
@@ -100,11 +100,11 @@ class YaMidiMapping : public Steinberg::Vst::IMidiMapping {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
virtual tresult PLUGIN_API
|
virtual tresult PLUGIN_API getMidiControllerAssignment(
|
||||||
getMidiControllerAssignment(int32 busIndex,
|
int32 busIndex,
|
||||||
int16 channel,
|
int16 channel,
|
||||||
Steinberg::Vst::CtrlNumber midiControllerNumber,
|
Steinberg::Vst::CtrlNumber midiControllerNumber,
|
||||||
Steinberg::Vst::ParamID& id /*out*/) = 0;
|
Steinberg::Vst::ParamID& id /*out*/) override = 0;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
ConstructArgs arguments;
|
ConstructArgs arguments;
|
||||||
|
|||||||
@@ -413,6 +413,16 @@ tresult PLUGIN_API Vst3PluginProxyImpl::openAboutBox(TBool onlyCheck) {
|
|||||||
.instance_id = instance_id(), .only_check = onlyCheck});
|
.instance_id = instance_id(), .only_check = onlyCheck});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
tresult PLUGIN_API Vst3PluginProxyImpl::getMidiControllerAssignment(
|
||||||
|
int32 busIndex,
|
||||||
|
int16 channel,
|
||||||
|
Steinberg::Vst::CtrlNumber midiControllerNumber,
|
||||||
|
Steinberg::Vst::ParamID& id /*out*/) {
|
||||||
|
// TODO: Implement
|
||||||
|
bridge.logger.log("TODO: IMidiMapping::getMidiControllerAssignment()");
|
||||||
|
return Steinberg::kNotImplemented;
|
||||||
|
}
|
||||||
|
|
||||||
int32 PLUGIN_API Vst3PluginProxyImpl::getNoteExpressionCount(int32 busIndex,
|
int32 PLUGIN_API Vst3PluginProxyImpl::getNoteExpressionCount(int32 busIndex,
|
||||||
int16 channel) {
|
int16 channel) {
|
||||||
return bridge.send_message(
|
return bridge.send_message(
|
||||||
|
|||||||
@@ -120,6 +120,13 @@ class Vst3PluginProxyImpl : public Vst3PluginProxy {
|
|||||||
tresult PLUGIN_API openHelp(TBool onlyCheck) override;
|
tresult PLUGIN_API openHelp(TBool onlyCheck) override;
|
||||||
tresult PLUGIN_API openAboutBox(TBool onlyCheck) override;
|
tresult PLUGIN_API openAboutBox(TBool onlyCheck) override;
|
||||||
|
|
||||||
|
// From `IMidiMapping`
|
||||||
|
tresult PLUGIN_API
|
||||||
|
getMidiControllerAssignment(int32 busIndex,
|
||||||
|
int16 channel,
|
||||||
|
Steinberg::Vst::CtrlNumber midiControllerNumber,
|
||||||
|
Steinberg::Vst::ParamID& id /*out*/) override;
|
||||||
|
|
||||||
// From `INoteExpressionController`
|
// From `INoteExpressionController`
|
||||||
int32 PLUGIN_API getNoteExpressionCount(int32 busIndex,
|
int32 PLUGIN_API getNoteExpressionCount(int32 busIndex,
|
||||||
int16 channel) override;
|
int16 channel) override;
|
||||||
|
|||||||
Reference in New Issue
Block a user