diff options
Diffstat (limited to 'libs/ardour/plugin_insert.cc')
-rw-r--r-- | libs/ardour/plugin_insert.cc | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/libs/ardour/plugin_insert.cc b/libs/ardour/plugin_insert.cc index eede6b3388..2c08473b54 100644 --- a/libs/ardour/plugin_insert.cc +++ b/libs/ardour/plugin_insert.cc @@ -899,6 +899,11 @@ PluginInsert::PluginControl::set_value (float val) (*i)->set_parameter (_list->parameter().id(), val); } + boost::shared_ptr<Plugin> iasp = _plugin->_impulseAnalysisPlugin.lock(); + if (iasp) { + iasp->set_parameter (_list->parameter().id(), val); + } + AutomationControl::set_value(val); } @@ -925,3 +930,17 @@ PluginInsert::PluginControl::get_value (void) const }*/ } +boost::shared_ptr<Plugin> +PluginInsert::get_impulse_analysis_plugin() +{ + boost::shared_ptr<Plugin> ret; + if (_impulseAnalysisPlugin.expired()) { + ret = plugin_factory(_plugins[0]); + _impulseAnalysisPlugin = ret; + } else { + ret = _impulseAnalysisPlugin.lock(); + } + + return ret; +} + |