summaryrefslogtreecommitdiff
path: root/libs/ardour/ardour/vst_plugin.h
diff options
context:
space:
mode:
authorRobin Gareus <robin@gareus.org>2017-02-28 20:08:03 +0100
committerRobin Gareus <robin@gareus.org>2017-02-28 20:20:18 +0100
commita80920c016127d7601bb89ba32c0beb7040c4cdf (patch)
tree3760557a1dd60cbe33007f40bd54a250b8dbf514 /libs/ardour/ardour/vst_plugin.h
parentc7168b387bda1b5e8dd1314ae608af7789305c77 (diff)
Tweak/optimize VST callback:
The audioMasterAutomate callback from plugin to host does include the parameter-value. Previously there was a redundant call Plugin::parameter_changed_externally() -> get_parameter -> VSTPlugin::get_parameter() back into the plugin to query the value. calling back into the plugin from the callback, may explain oddities and/or crashes with some VSTs.
Diffstat (limited to 'libs/ardour/ardour/vst_plugin.h')
-rw-r--r--libs/ardour/ardour/vst_plugin.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/libs/ardour/ardour/vst_plugin.h b/libs/ardour/ardour/vst_plugin.h
index 00bf680217..f96b35ff4b 100644
--- a/libs/ardour/ardour/vst_plugin.h
+++ b/libs/ardour/ardour/vst_plugin.h
@@ -40,6 +40,7 @@ class PluginInsert;
class LIBARDOUR_API VSTPlugin : public Plugin
{
public:
+ friend class Session;
VSTPlugin (AudioEngine &, Session &, VSTHandle *);
VSTPlugin (const VSTPlugin& other);
virtual ~VSTPlugin ();
@@ -99,6 +100,7 @@ public:
protected:
+ void parameter_changed_externally (uint32_t which, float val);
void set_plugin (AEffect *);
gchar* get_chunk (bool) const;
int set_chunk (gchar const *, bool);