summaryrefslogtreecommitdiff
path: root/libs/ardour/ardour/meter.h
diff options
context:
space:
mode:
authorRobin Gareus <robin@gareus.org>2013-07-07 02:00:43 +0200
committerRobin Gareus <robin@gareus.org>2013-07-10 15:27:12 +0200
commit6e1781e5e33d6d97233a2e46aa98fd570d09e31f (patch)
tree92d236a8a82c9ba33687e2abc3988f2d7f5c7720 /libs/ardour/ardour/meter.h
parenta181009caefd5fe9efb73fff7c0c663dc8415e0a (diff)
experimental RMS-meter and peak-signal (vs peak-power) query
Diffstat (limited to 'libs/ardour/ardour/meter.h')
-rw-r--r--libs/ardour/ardour/meter.h14
1 files changed, 12 insertions, 2 deletions
diff --git a/libs/ardour/ardour/meter.h b/libs/ardour/ardour/meter.h
index eea240f821..001178a226 100644
--- a/libs/ardour/ardour/meter.h
+++ b/libs/ardour/ardour/meter.h
@@ -23,6 +23,7 @@
#include "ardour/types.h"
#include "ardour/processor.h"
#include "pbd/fastlog.h"
+#include "kmeterdsp.h"
namespace ARDOUR {
@@ -45,6 +46,7 @@ class Metering {
class PeakMeter : public Processor {
public:
PeakMeter(Session& s, const std::string& name);
+ ~PeakMeter();
void meter();
void reset ();
@@ -88,6 +90,11 @@ public:
}
}
+ float meter_level (uint32_t n, MeterType type);
+
+ void set_type(MeterType t);
+ MeterType get_type() { return _meter_type; }
+
XMLNode& state (bool full);
private:
@@ -99,11 +106,14 @@ private:
*/
ChanCount current_meters;
- std::vector<float> _peak_power;
+ std::vector<float> _peak_signal;
std::vector<float> _visible_peak_power;
+ std::vector<float> _max_peak_signal;
std::vector<float> _max_peak_power;
-};
+ std::vector<Kmeterdsp *> _kmeter;
+ MeterType _meter_type;
+};
} // namespace ARDOUR