From 23683a3e4f03dd8f7cdb1dc1a1592fdaa9d18b23 Mon Sep 17 00:00:00 2001 From: David Robillard Date: Sun, 7 Oct 2007 19:41:15 +0000 Subject: Added common abstract interface for Plugins. git-svn-id: http://svn.drobilla.net/lad/ingen@837 a436a847-0d15-0410-975c-d299462d15a1 --- src/libs/engine/NodeBase.hpp | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) (limited to 'src/libs/engine/NodeBase.hpp') diff --git a/src/libs/engine/NodeBase.hpp b/src/libs/engine/NodeBase.hpp index 833e4edd..2e4480b8 100644 --- a/src/libs/engine/NodeBase.hpp +++ b/src/libs/engine/NodeBase.hpp @@ -29,7 +29,7 @@ using std::string; namespace Ingen { -class Plugin; +class PluginImpl; class Patch; class ObjectStore; @@ -47,12 +47,12 @@ namespace Shared { class NodeBase : public NodeImpl { public: - NodeBase(const Plugin* plugin, - const string& name, - bool poly, - Patch* parent, - SampleRate rate, - size_t buffer_size); + NodeBase(const PluginImpl* plugin, + const string& name, + bool poly, + Patch* parent, + SampleRate rate, + size_t buffer_size); virtual ~NodeBase(); @@ -96,7 +96,8 @@ public: Raul::List* dependants() { return _dependants; } void dependants(Raul::List* l) { _dependants = l; } - virtual const Plugin* plugin() const { return _plugin; } + virtual const PluginImpl* plugin() const { return _plugin; } + virtual void plugin(const PluginImpl* const pi) { _plugin = pi; } /** A node's parent is always a patch, so static cast should be safe */ inline Patch* parent_patch() const { return (Patch*)_parent; } @@ -104,7 +105,7 @@ public: protected: virtual void signal_input_ready(); - const Plugin* _plugin; + const PluginImpl* _plugin; uint32_t _polyphony; SampleRate _srate; -- cgit v1.2.1