From 20606068645f30e1a57bb7c1d19f7e227ee2eb69 Mon Sep 17 00:00:00 2001 From: Robbert van der Helm Date: Tue, 1 Dec 2020 22:27:01 +0100 Subject: [PATCH] Add a list of things to watch out for with VST3 --- src/plugin/vst3-plugin.cpp | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/src/plugin/vst3-plugin.cpp b/src/plugin/vst3-plugin.cpp index 67f4df8b..ed84b022 100644 --- a/src/plugin/vst3-plugin.cpp +++ b/src/plugin/vst3-plugin.cpp @@ -32,6 +32,19 @@ SMTG_EXPORT_SYMBOL Steinberg::IPluginFactory* PLUGIN_API GetPluginFactory() { // those classes. // // We should wrap this in our `Vst3PluginBridge` + // TODO: We should also create a list of which extensions we have + // already implemented and which are left + // TODO: And when we get a query for some interface that we do not (yet) + // support, we should print some easy to spot warning message + // TODO: The documentation mentions that private communication through + // VST3's message system should be handled on a separate timer + // thread. Do we need special handling for this on the Wine side + // (e.g. during the event handling loop)? Probably not, since the + // actual host should manage all messaging. + // TODO: The docs very explicitly mention that + // the`IComponentHandler::{begin,perform,end}Edit()` functions + // have to be called from the UI thread. Should we have special + // handling for this or does everything just magically work out? // static Steinberg::PFactoryInfo factoryInfo(vendor, url, email, // flags); gPluginFactory = new Steinberg::CPluginFactory(factoryInfo);