From b2d51e16571190becea1476080cff1b0a258a4f6 Mon Sep 17 00:00:00 2001 From: David Robillard Date: Mon, 13 Oct 2008 01:59:53 +0000 Subject: Fix various problems with subpatch connecting/disconnecting (and probably introduce new ones). git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@1668 a436a847-0d15-0410-975c-d299462d15a1 --- src/engine/ConnectionImpl.hpp | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'src/engine/ConnectionImpl.hpp') diff --git a/src/engine/ConnectionImpl.hpp b/src/engine/ConnectionImpl.hpp index b3d7cf4b..a5a61c85 100644 --- a/src/engine/ConnectionImpl.hpp +++ b/src/engine/ConnectionImpl.hpp @@ -65,7 +65,7 @@ public: * buffer, and will return accordingly (ie the same buffer for every voice * in a mono->poly connection). */ - inline Buffer* buffer(size_t voice) const; + inline Buffer* buffer(uint32_t voice) const; inline size_t buffer_size() const { return _buffer_size; } @@ -73,6 +73,7 @@ public: void prepare_poly(uint32_t poly); void apply_poly(Raul::Maid& maid, uint32_t poly); + bool must_copy() const; bool must_mix() const; bool must_extend() const; @@ -82,7 +83,7 @@ public: DataType type() const { return _src_port->type(); } protected: - enum { DIRECT, MIX, EXTEND } _mode; + enum { DIRECT, MIX, COPY, EXTEND } _mode; void set_mode(); PortImpl* const _src_port; @@ -94,7 +95,7 @@ protected: inline Buffer* -ConnectionImpl::buffer(size_t voice) const +ConnectionImpl::buffer(uint32_t voice) const { if (_mode == MIX) { return _local_buffer; -- cgit v1.2.1