diff options
author | David Robillard <d@drobilla.net> | 2009-11-16 00:30:35 +0000 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2009-11-16 00:30:35 +0000 |
commit | 3d89115a67a9c947a28539ffdd2399808a53279b (patch) | |
tree | 826b900de3979eed9c31aae0d3ac560d39b53460 /src/engine/InputPort.hpp | |
parent | 597fa9212f27d2448c0cdd20fbf616928c662cc1 (diff) | |
download | ingen-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/InputPort.hpp')
-rw-r--r-- | src/engine/InputPort.hpp | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/src/engine/InputPort.hpp b/src/engine/InputPort.hpp index 81702b34..971a8747 100644 --- a/src/engine/InputPort.hpp +++ b/src/engine/InputPort.hpp @@ -46,7 +46,8 @@ class NodeImpl; class InputPort : virtual public PortImpl { public: - InputPort(NodeImpl* parent, + InputPort(BufferFactory& bufs, + NodeImpl* parent, const std::string& name, uint32_t index, uint32_t poly, @@ -61,20 +62,20 @@ public: void add_connection(Connections::Node* c); Connections::Node* remove_connection(const OutputPort* src_port); - bool prepare_poly(uint32_t poly); + void set_buffer_size(BufferFactory& bufs, size_t size); + bool prepare_poly(BufferFactory& bufs, uint32_t poly); bool apply_poly(Raul::Maid& maid, uint32_t poly); void pre_process(Context& context); void post_process(Context& context); - bool is_connected() const { return (_connections.size() > 0); } + size_t num_connections() const { return _connections.size(); } bool is_input() const { return true; } bool is_output() const { return false; } - virtual void set_buffer_size(size_t size); - protected: + void connect_buffers(); bool can_direct() const; Connections _connections; |