summaryrefslogtreecommitdiffstats
path: root/src/engine/NodeImpl.hpp
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2009-11-16 00:30:35 +0000
committerDavid Robillard <d@drobilla.net>2009-11-16 00:30:35 +0000
commit3d89115a67a9c947a28539ffdd2399808a53279b (patch)
tree826b900de3979eed9c31aae0d3ac560d39b53460 /src/engine/NodeImpl.hpp
parent597fa9212f27d2448c0cdd20fbf616928c662cc1 (diff)
downloadingen-3d89115a67a9c947a28539ffdd2399808a53279b.tar.gz
ingen-3d89115a67a9c947a28539ffdd2399808a53279b.tar.bz2
ingen-3d89115a67a9c947a28539ffdd2399808a53279b.zip
Rework objects extension to have "value ports" and "message ports".
Make audio and control buffers in ingen actually object buffers (towards interop). Overhaul the hell out of ingen buffer and mixing stuff. git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@2266 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/engine/NodeImpl.hpp')
-rw-r--r--src/engine/NodeImpl.hpp12
1 files changed, 7 insertions, 5 deletions
diff --git a/src/engine/NodeImpl.hpp b/src/engine/NodeImpl.hpp
index 67ab0898..55ff5417 100644
--- a/src/engine/NodeImpl.hpp
+++ b/src/engine/NodeImpl.hpp
@@ -29,10 +29,12 @@ namespace Ingen {
namespace Shared { class Plugin; class Node; class Port; }
class Buffer;
-class PluginImpl;
+class BufferFactory;
+class Engine;
+class MessageContext;
class PatchImpl;
+class PluginImpl;
class PortImpl;
-class MessageContext;
class ProcessContext;
@@ -69,7 +71,7 @@ public:
* Preprocessor thread, poly is actually applied by apply_poly.
* \return true on success.
*/
- virtual bool prepare_poly(uint32_t poly) = 0;
+ virtual bool prepare_poly(BufferFactory& bufs, uint32_t poly) = 0;
/** Apply a new (external) polyphony value.
*
@@ -131,7 +133,7 @@ public:
*/
virtual void process(ProcessContext& context) = 0;
- virtual void set_port_buffer(uint32_t voice, uint32_t port_num, Buffer* buf) = 0;
+ virtual void set_port_buffer(uint32_t voice, uint32_t port_num, SharedPtr<Buffer> buf) = 0;
virtual uint32_t num_ports() const = 0;
@@ -167,7 +169,7 @@ public:
*/
virtual const Shared::Plugin* plugin() const = 0;
- virtual void set_buffer_size(size_t size) = 0;
+ virtual void set_buffer_size(BufferFactory& bufs, size_t size) = 0;
};