mirror of
https://github.com/Ardour/ardour.git
synced 2026-01-06 05:35:47 +01:00
First draft of the EQ visualization system. Now force fed to all plugin UIs.
git-svn-id: svn://localhost/ardour2/branches/3.0@3958 d708f5d6-7413-0410-9779-e7cbd77b26cf
This commit is contained in:
parent
b3634a723d
commit
d9106e99a4
10 changed files with 905 additions and 35 deletions
|
|
@ -23,6 +23,8 @@
|
|||
#include <vector>
|
||||
#include <string>
|
||||
|
||||
#include <boost/weak_ptr.hpp>
|
||||
|
||||
#include <sigc++/signal.h>
|
||||
#include <ardour/ardour.h>
|
||||
#include <ardour/types.h>
|
||||
|
|
@ -102,6 +104,8 @@ class PluginInsert : public Processor
|
|||
|
||||
nframes_t signal_latency() const;
|
||||
|
||||
boost::shared_ptr<Plugin> get_impulse_analysis_plugin();
|
||||
|
||||
private:
|
||||
|
||||
void parameter_changed (Evoral::Parameter, float);
|
||||
|
|
@ -112,6 +116,8 @@ class PluginInsert : public Processor
|
|||
float default_parameter_value (const Evoral::Parameter& param);
|
||||
|
||||
std::vector<boost::shared_ptr<Plugin> > _plugins;
|
||||
|
||||
boost::weak_ptr<Plugin> _impulseAnalysisPlugin;
|
||||
|
||||
void automation_run (BufferSet& bufs, nframes_t nframes, nframes_t offset);
|
||||
void connect_and_run (BufferSet& bufs, nframes_t nframes, nframes_t offset, bool with_auto, nframes_t now = 0);
|
||||
|
|
|
|||
|
|
@ -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;
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue