summaryrefslogtreecommitdiffstats
path: root/src/engine/InputPort.cpp
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2009-06-03 02:30:57 +0000
committerDavid Robillard <d@drobilla.net>2009-06-03 02:30:57 +0000
commit6488ffb1a3fedb87b41add3a2a78a953755c949a (patch)
treeac2c564c1f93b207940419aea265022d48c71240 /src/engine/InputPort.cpp
parent69ad5f645fbc1ac5c4f886a7f2daa6c354b4afe3 (diff)
downloadingen-6488ffb1a3fedb87b41add3a2a78a953755c949a.tar.gz
ingen-6488ffb1a3fedb87b41add3a2a78a953755c949a.tar.bz2
ingen-6488ffb1a3fedb87b41add3a2a78a953755c949a.zip
Clean up and shave some overhead from port value broadcasting.
Clean up duplex port code and document weird semantics. git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@2075 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/engine/InputPort.cpp')
-rw-r--r--src/engine/InputPort.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/engine/InputPort.cpp b/src/engine/InputPort.cpp
index c42de5c6..09132b6e 100644
--- a/src/engine/InputPort.cpp
+++ b/src/engine/InputPort.cpp
@@ -263,14 +263,15 @@ InputPort::pre_process(ProcessContext& context)
for (uint32_t i=0; i < _poly; ++i)
buffer(i)->prepare_read(context.start(), context.nframes());
+
+ if (_broadcast)
+ broadcast_value(context, false);
}
void
InputPort::post_process(ProcessContext& context)
{
- broadcast(context);
-
// Prepare buffers for next cycle
if (!can_direct())
for (uint32_t i=0; i < _poly; ++i)