Fully implement IParameterFunctionName

We now support all VST 3.7.1 interfaces! At least, in theory we do.
This commit is contained in:
Robbert van der Helm
2021-01-17 14:17:28 +01:00
parent 6b992e7c9a
commit 1c6d3f8fd9
4 changed files with 38 additions and 5 deletions
+18
View File
@@ -55,6 +55,7 @@ InstanceInterfaces::InstanceInterfaces(
note_expression_physical_ui_mapping(object),
plugin_base(object),
unit_data(object),
parameter_function_name(object),
prefetchable_support(object),
process_context_requirements(object),
program_list_data(object),
@@ -573,6 +574,23 @@ void Vst3Bridge::run() {
return YaParameterFinder::FindParameterResponse{
.result = result, .result_tag = result_tag};
},
[&](const YaParameterFunctionName::GetParameterIDFromFunctionName&
request) -> YaParameterFunctionName::
GetParameterIDFromFunctionName::Response {
Steinberg::Vst::ParamID param_id;
const tresult result =
object_instances[request.instance_id]
.parameter_function_name
->getParameterIDFromFunctionName(
request.unit_id,
request.function_name.c_str(),
param_id);
return YaParameterFunctionName::
GetParameterIDFromFunctionNameResponse{
.result = result,
.param_id = param_id};
},
[&](const YaPlugView::IsPlatformTypeSupported& request)
-> YaPlugView::IsPlatformTypeSupported::Response {
// The host will of course want to pass an X11 window ID for the
+2
View File
@@ -169,6 +169,8 @@ struct InstanceInterfaces {
note_expression_physical_ui_mapping;
Steinberg::FUnknownPtr<Steinberg::IPluginBase> plugin_base;
Steinberg::FUnknownPtr<Steinberg::Vst::IUnitData> unit_data;
Steinberg::FUnknownPtr<Steinberg::Vst::IParameterFunctionName>
parameter_function_name;
Steinberg::FUnknownPtr<Steinberg::Vst::IPrefetchableSupport>
prefetchable_support;
Steinberg::FUnknownPtr<Steinberg::Vst::IProcessContextRequirements>