mirror of
https://github.com/Ardour/ardour.git
synced 2025-12-17 04:06:26 +01:00
Reduce coupling between Plugin and PluginInsert.
This commit is contained in:
parent
68507badd9
commit
7204702c3f
8 changed files with 11 additions and 8 deletions
|
|
@ -20,6 +20,7 @@
|
||||||
#include <gtkmm.h>
|
#include <gtkmm.h>
|
||||||
#include "ardour/vst_plugin.h"
|
#include "ardour/vst_plugin.h"
|
||||||
#include "ardour/vst_types.h"
|
#include "ardour/vst_types.h"
|
||||||
|
#include "ardour/plugin_insert.h"
|
||||||
#include "vst_plugin_ui.h"
|
#include "vst_plugin_ui.h"
|
||||||
|
|
||||||
#ifdef PLATFORM_WINDOWS
|
#ifdef PLATFORM_WINDOWS
|
||||||
|
|
|
||||||
|
|
@ -119,7 +119,7 @@ class LIBARDOUR_API LV2Plugin : public ARDOUR::Plugin, public ARDOUR::Workee
|
||||||
boost::shared_ptr<ScalePoints>
|
boost::shared_ptr<ScalePoints>
|
||||||
get_scale_points(uint32_t port_index) const;
|
get_scale_points(uint32_t port_index) const;
|
||||||
|
|
||||||
void set_insert_info(const PluginInsert* insert);
|
void set_insert_id(PBD::ID id);
|
||||||
|
|
||||||
int set_state (const XMLNode& node, int version);
|
int set_state (const XMLNode& node, int version);
|
||||||
bool save_preset (std::string uri);
|
bool save_preset (std::string uri);
|
||||||
|
|
|
||||||
|
|
@ -26,6 +26,7 @@
|
||||||
#include "pbd/statefuldestructible.h"
|
#include "pbd/statefuldestructible.h"
|
||||||
#include "pbd/controllable.h"
|
#include "pbd/controllable.h"
|
||||||
|
|
||||||
|
#include "ardour/buffer_set.h"
|
||||||
#include "ardour/chan_count.h"
|
#include "ardour/chan_count.h"
|
||||||
#include "ardour/chan_mapping.h"
|
#include "ardour/chan_mapping.h"
|
||||||
#include "ardour/cycles.h"
|
#include "ardour/cycles.h"
|
||||||
|
|
@ -33,7 +34,6 @@
|
||||||
#include "ardour/libardour_visibility.h"
|
#include "ardour/libardour_visibility.h"
|
||||||
#include "ardour/midi_state_tracker.h"
|
#include "ardour/midi_state_tracker.h"
|
||||||
#include "ardour/parameter_descriptor.h"
|
#include "ardour/parameter_descriptor.h"
|
||||||
#include "ardour/plugin_insert.h"
|
|
||||||
#include "ardour/types.h"
|
#include "ardour/types.h"
|
||||||
#include "ardour/variant.h"
|
#include "ardour/variant.h"
|
||||||
|
|
||||||
|
|
@ -46,7 +46,7 @@ namespace ARDOUR {
|
||||||
class AudioEngine;
|
class AudioEngine;
|
||||||
class Session;
|
class Session;
|
||||||
class BufferSet;
|
class BufferSet;
|
||||||
|
class PluginInsert;
|
||||||
class Plugin;
|
class Plugin;
|
||||||
|
|
||||||
typedef boost::shared_ptr<Plugin> PluginPtr;
|
typedef boost::shared_ptr<Plugin> PluginPtr;
|
||||||
|
|
@ -99,7 +99,7 @@ class LIBARDOUR_API Plugin : public PBD::StatefulDestructible, public Latent
|
||||||
XMLNode& get_state ();
|
XMLNode& get_state ();
|
||||||
virtual int set_state (const XMLNode &, int version);
|
virtual int set_state (const XMLNode &, int version);
|
||||||
|
|
||||||
virtual void set_insert_info (const PluginInsert*) {}
|
virtual void set_insert_id (PBD::ID id) {}
|
||||||
|
|
||||||
virtual std::string unique_id() const = 0;
|
virtual std::string unique_id() const = 0;
|
||||||
virtual const char * label() const = 0;
|
virtual const char * label() const = 0;
|
||||||
|
|
@ -272,7 +272,6 @@ class LIBARDOUR_API Plugin : public PBD::StatefulDestructible, public Latent
|
||||||
protected:
|
protected:
|
||||||
|
|
||||||
friend class PluginInsert;
|
friend class PluginInsert;
|
||||||
friend struct PluginInsert::PluginControl;
|
|
||||||
|
|
||||||
virtual void set_parameter (uint32_t which, float val);
|
virtual void set_parameter (uint32_t which, float val);
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -30,6 +30,7 @@
|
||||||
#include "ardour/data_type.h"
|
#include "ardour/data_type.h"
|
||||||
#include "ardour/delivery.h"
|
#include "ardour/delivery.h"
|
||||||
#include "ardour/plugin.h"
|
#include "ardour/plugin.h"
|
||||||
|
#include "ardour/plugin_insert.h"
|
||||||
#include "ardour/region_factory.h"
|
#include "ardour/region_factory.h"
|
||||||
#include "ardour/route.h"
|
#include "ardour/route.h"
|
||||||
#include "ardour/session.h"
|
#include "ardour/session.h"
|
||||||
|
|
|
||||||
|
|
@ -26,6 +26,7 @@
|
||||||
#include "ardour/midi_patch_manager.h"
|
#include "ardour/midi_patch_manager.h"
|
||||||
#include "ardour/processor.h"
|
#include "ardour/processor.h"
|
||||||
#include "ardour/plugin.h"
|
#include "ardour/plugin.h"
|
||||||
|
#include "ardour/plugin_insert.h"
|
||||||
#include "ardour/rc_configuration.h"
|
#include "ardour/rc_configuration.h"
|
||||||
|
|
||||||
#include "i18n.h"
|
#include "i18n.h"
|
||||||
|
|
|
||||||
|
|
@ -1506,9 +1506,9 @@ LV2Plugin::work_response(uint32_t size, const void* data)
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
LV2Plugin::set_insert_info(const PluginInsert* insert)
|
LV2Plugin::set_insert_id(PBD::ID id)
|
||||||
{
|
{
|
||||||
_insert_id = insert->id();
|
_insert_id = id;
|
||||||
}
|
}
|
||||||
|
|
||||||
int
|
int
|
||||||
|
|
|
||||||
|
|
@ -1376,7 +1376,7 @@ PluginInsert::collect_signal_for_analysis (framecnt_t nframes)
|
||||||
void
|
void
|
||||||
PluginInsert::add_plugin (boost::shared_ptr<Plugin> plugin)
|
PluginInsert::add_plugin (boost::shared_ptr<Plugin> plugin)
|
||||||
{
|
{
|
||||||
plugin->set_insert_info (this);
|
plugin->set_insert_id (this->id());
|
||||||
|
|
||||||
if (_plugins.empty()) {
|
if (_plugins.empty()) {
|
||||||
/* first (and probably only) plugin instance - connect to relevant signals
|
/* first (and probably only) plugin instance - connect to relevant signals
|
||||||
|
|
|
||||||
|
|
@ -44,6 +44,7 @@
|
||||||
#include "ardour/filesystem_paths.h"
|
#include "ardour/filesystem_paths.h"
|
||||||
#include "ardour/panner.h"
|
#include "ardour/panner.h"
|
||||||
#include "ardour/plugin.h"
|
#include "ardour/plugin.h"
|
||||||
|
#include "ardour/plugin_insert.h"
|
||||||
#include "ardour/send.h"
|
#include "ardour/send.h"
|
||||||
|
|
||||||
#include "osc.h"
|
#include "osc.h"
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue