summaryrefslogtreecommitdiff
path: root/libs/ardour/ardour/meter.h
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2007-06-23 20:13:13 +0000
committerDavid Robillard <d@drobilla.net>2007-06-23 20:13:13 +0000
commit49ee64ada7f7661067a1dde8c02d40a8e2f6ca66 (patch)
treeb1c4472355e6e3c65ca907c5c3e13959fb2e46cf /libs/ardour/ardour/meter.h
parent05184ed52ffcdcad3c071d4c99287f832f42b74b (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/ardour/meter.h')
-rw-r--r--libs/ardour/ardour/meter.h13
1 files changed, 7 insertions, 6 deletions
diff --git a/libs/ardour/ardour/meter.h b/libs/ardour/ardour/meter.h
index ed38fc4f0a..7e0bf8ac53 100644
--- a/libs/ardour/ardour/meter.h
+++ b/libs/ardour/ardour/meter.h
@@ -21,6 +21,7 @@
#include <vector>
#include <ardour/types.h>
+#include <ardour/insert.h>
#include <pbd/fastlog.h>
namespace ARDOUR {
@@ -32,16 +33,17 @@ class Session;
/** Meters peaks on the input and stores them for access.
*/
-class PeakMeter {
+class PeakMeter : public Insert {
public:
- PeakMeter(Session& s) : _session(s) {}
+ PeakMeter(Session& s) : Insert(s, "meter", PreFader) {}
- void setup (const ChanCount& in);
void reset ();
void reset_max ();
-
+
+ bool configure_io (ChanCount in, ChanCount out);
+
/** Compute peaks */
- void run (BufferSet& bufs, nframes_t nframes, nframes_t offset=0);
+ void run (BufferSet& bufs, nframes_t start_frame, nframes_t end_frame, nframes_t nframes, nframes_t offset);
float peak_power (uint32_t n) {
if (n < _visible_peak_power.size()) {
@@ -64,7 +66,6 @@ private:
friend class IO;
void meter();
- Session& _session;
std::vector<float> _peak_power;
std::vector<float> _visible_peak_power;
std::vector<float> _max_peak_power;