diff options
author | Doug McLain <doug@nostar.net> | 2008-03-20 14:27:23 +0000 |
---|---|---|
committer | Doug McLain <doug@nostar.net> | 2008-03-20 14:27:23 +0000 |
commit | caaa0470deae42e128f37c67f388d0e4d694439b (patch) | |
tree | dfe95c672cb904a6f243bc316092f39fc7775c05 /gtk2_ardour/level_meter.cc | |
parent | 422c2d18c379bb27412cd740c9a8eadc9387f1a0 (diff) |
build the meters in GainMeter from the LevelMeters class instead of doing it all over again
git-svn-id: svn://localhost/ardour2/branches/2.0-ongoing@3160 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/level_meter.cc')
-rw-r--r-- | gtk2_ardour/level_meter.cc | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/gtk2_ardour/level_meter.cc b/gtk2_ardour/level_meter.cc index 6ef920235d..166e1877b9 100644 --- a/gtk2_ardour/level_meter.cc +++ b/gtk2_ardour/level_meter.cc @@ -66,6 +66,7 @@ LevelMeter::LevelMeter (boost::shared_ptr<IO> io, Session& s) Config->ParameterChanged.connect (mem_fun (*this, &LevelMeter::parameter_changed)); UI::instance()->theme_changed.connect (mem_fun(*this, &LevelMeter::on_theme_changed)); ColorsChanged.connect (mem_fun (*this, &LevelMeter::color_handler)); + max_peak = minus_infinity(); } void @@ -83,7 +84,7 @@ LevelMeter::~LevelMeter () } } -void +float LevelMeter::update_meters () { vector<MeterInfo>::iterator i; @@ -95,8 +96,12 @@ LevelMeter::update_meters () peak = _io->peak_input_power (n); (*i).meter->set (log_meter (peak)); mpeak = _io->max_peak_power(n); + if (mpeak > max_peak) { + max_peak = mpeak; + } } } + return max_peak; } void @@ -133,8 +138,9 @@ LevelMeter::hide_all_meters () } void -LevelMeter::setup_meters (int len) +LevelMeter::setup_meters (int len, int initial_width) { + regular_meter_width = initial_width; uint32_t nmeters = _io->n_outputs(); guint16 width; |