diff options
author | David Robillard <d@drobilla.net> | 2007-06-23 20:13:13 +0000 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2007-06-23 20:13:13 +0000 |
commit | 49ee64ada7f7661067a1dde8c02d40a8e2f6ca66 (patch) | |
tree | b1c4472355e6e3c65ca907c5c3e13959fb2e46cf /libs/ardour/meter.cc | |
parent | 05184ed52ffcdcad3c071d4c99287f832f42b74b (diff) |
Insert/Redirect refactoring, towards better MIDI support in mixer strip, and
http://ardour.org/node/1043 style things.
git-svn-id: svn://localhost/ardour2/trunk@2027 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/ardour/meter.cc')
-rw-r--r-- | libs/ardour/meter.cc | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/libs/ardour/meter.cc b/libs/ardour/meter.cc index 1de144dc55..a7a287e9c1 100644 --- a/libs/ardour/meter.cc +++ b/libs/ardour/meter.cc @@ -34,7 +34,7 @@ namespace ARDOUR { * be set to 0. */ void -PeakMeter::run (BufferSet& bufs, nframes_t nframes, nframes_t offset) +PeakMeter::run (BufferSet& bufs, nframes_t start_frame, nframes_t end_frame, nframes_t nframes, nframes_t offset) { size_t meterable = std::min(bufs.count().n_total(), _peak_power.size()); @@ -93,9 +93,13 @@ PeakMeter::reset_max () } } -void -PeakMeter::setup (const ChanCount& in) +bool +PeakMeter::configure_io (ChanCount in, ChanCount out) { + /* we're transparent no matter what. fight the power. */ + if (out != in) + return false; + uint32_t limit = in.n_total(); while (_peak_power.size() > limit) { @@ -113,6 +117,10 @@ PeakMeter::setup (const ChanCount& in) assert(_peak_power.size() == limit); assert(_visible_peak_power.size() == limit); assert(_max_peak_power.size() == limit); + + Insert::configure_io(in, out); + + return true; } /** To be driven by the Meter signal from IO. |