diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2015-10-20 09:07:51 -0400 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2015-10-20 09:07:58 -0400 |
commit | 336b2eb9a4a8634bae84a15e952d20335aa28c12 (patch) | |
tree | ab171341dd5ab7915ae77c937673ae586116ecb9 /gtk2_ardour/lv2_plugin_ui.h | |
parent | f1a6d7816d13d3eca5885494f711b88a8270c899 (diff) |
rename ParameterChanged signal in Plugin to ParameterChangedExternally to reflect its intent, and clean up the result.
The signal exists to notify listeners that something outside of the host's control (e.g. a plugin's own GUI for AU or VST)
has modified a plugin parameter. Previous code had strange feedback loops and ambiguous semantics.
Significant modification of LV2 GUI updating was required.
Still to be tested for feedback loop issues: AudioUnits
Diffstat (limited to 'gtk2_ardour/lv2_plugin_ui.h')
-rw-r--r-- | gtk2_ardour/lv2_plugin_ui.h | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/gtk2_ardour/lv2_plugin_ui.h b/gtk2_ardour/lv2_plugin_ui.h index 6a8acf9cf5..25ab4b9e30 100644 --- a/gtk2_ardour/lv2_plugin_ui.h +++ b/gtk2_ardour/lv2_plugin_ui.h @@ -26,6 +26,7 @@ #include <list> #include <map> +#include <set> #include <vector> #include <gtkmm/widget.h> @@ -64,7 +65,7 @@ class LV2PluginUI : public PlugUIBase, public Gtk::VBox private: - void parameter_changed (uint32_t, float); + void control_changed (uint32_t); typedef boost::shared_ptr<ARDOUR::AutomationControl> ControllableRef; @@ -85,6 +86,8 @@ class LV2PluginUI : public PlugUIBase, public Gtk::VBox LV2_Feature _parent_feature; Gtk::Window* _win_ptr; void* _inst; + typedef std::set<uint32_t> Updates; + Updates _updates; static void on_external_ui_closed(void* controller); |