summaryrefslogtreecommitdiffstats
path: root/src/server/DuplexPort.cpp
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2014-08-31 01:24:57 +0000
committerDavid Robillard <d@drobilla.net>2014-08-31 01:24:57 +0000
commita2792bd09212eed55bba1aa30dc09043a6955486 (patch)
treed4262f760d4522bc6f1c99778987aada332b9e7e /src/server/DuplexPort.cpp
parente3ecb2b439bd03d27b5e11efe430c24f0ebe6283 (diff)
downloadingen-a2792bd09212eed55bba1aa30dc09043a6955486.tar.gz
ingen-a2792bd09212eed55bba1aa30dc09043a6955486.tar.bz2
ingen-a2792bd09212eed55bba1aa30dc09043a6955486.zip
Use float sequences for sample-accurate control ports.
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@5462 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/server/DuplexPort.cpp')
-rw-r--r--src/server/DuplexPort.cpp16
1 files changed, 14 insertions, 2 deletions
diff --git a/src/server/DuplexPort.cpp b/src/server/DuplexPort.cpp
index 20f8f1b7..0713c35a 100644
--- a/src/server/DuplexPort.cpp
+++ b/src/server/DuplexPort.cpp
@@ -49,11 +49,10 @@ DuplexPort::DuplexPort(BufferFactory& bufs,
}
// Set default control range
- if (!is_output && (type == PortType::CONTROL || type == PortType::CV)) {
+ if (!is_output && value.type() == bufs.uris().atom_Float) {
set_property(bufs.uris().lv2_minimum, bufs.forge().make(0.0f));
set_property(bufs.uris().lv2_maximum, bufs.forge().make(1.0f));
}
-
}
DuplexPort::~DuplexPort()
@@ -148,10 +147,23 @@ DuplexPort::post_process(Context& context)
perspective. Mix down input delivered by plugins so output
(external perspective) is ready. */
InputPort::pre_process(context);
+ InputPort::pre_run(context);
} else {
monitor(context);
}
}
+SampleCount
+DuplexPort::next_value_offset(SampleCount offset, SampleCount end) const
+{
+ return OutputPort::next_value_offset(offset, end);
+}
+
+void
+DuplexPort::update_values(SampleCount offset)
+{
+ return OutputPort::update_values(offset);
+}
+
} // namespace Server
} // namespace Ingen