summaryrefslogtreecommitdiff
path: root/gtk2_ardour/gain_meter.h
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2009-06-09 20:21:19 +0000
committerPaul Davis <paul@linuxaudiosystems.com>2009-06-09 20:21:19 +0000
commite6eb059576eefd9a26c177627ae7dd3ba2feb727 (patch)
tree536ce6ee456f2306bb0346a51ede0a4aa64a8e63 /gtk2_ardour/gain_meter.h
parent9bd274bfdee62c9cc0e5752d2a72027d2c732cd0 (diff)
the big Route structure refactor. !!!! THIS WILL ***NOT LOAD*** PRIOR 3.0 or 2.X SESSIONS !!!! BREAKAGE IS EXPECTED !!!! IF YOU HAVE AND NEED A WORKING 3.0 DO **NOT** UPDATE. !!!! otherwise, update and enjoy the steadily emerging joys of this major reworking of ardour internals
git-svn-id: svn://localhost/ardour2/branches/3.0@5137 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/gain_meter.h')
-rw-r--r--gtk2_ardour/gain_meter.h17
1 files changed, 13 insertions, 4 deletions
diff --git a/gtk2_ardour/gain_meter.h b/gtk2_ardour/gain_meter.h
index ea817bcae2..7feaf5c0e4 100644
--- a/gtk2_ardour/gain_meter.h
+++ b/gtk2_ardour/gain_meter.h
@@ -46,6 +46,8 @@ namespace ARDOUR {
class Session;
class Route;
class RouteGroup;
+ class PeakMeter;
+ class Automatable;
}
namespace Gtkmm2ext {
class FastMeter;
@@ -62,8 +64,10 @@ class GainMeterBase : virtual public sigc::trackable
bool horizontal);
virtual ~GainMeterBase ();
- virtual void set_io (boost::shared_ptr<ARDOUR::IO>);
- boost::shared_ptr<ARDOUR::IO> io() const { return _io; }
+ virtual void set_controls (boost::shared_ptr<ARDOUR::Route> route,
+ boost::shared_ptr<ARDOUR::PeakMeter> meter,
+ boost::shared_ptr<ARDOUR::AutomationControl> gain_control,
+ boost::shared_ptr<ARDOUR::Automatable> gc_owner);
void update_gain_sensitive ();
void update_meters ();
@@ -83,7 +87,9 @@ class GainMeterBase : virtual public sigc::trackable
protected:
friend class MixerStrip;
- boost::shared_ptr<ARDOUR::IO> _io;
+ boost::shared_ptr<ARDOUR::Route> _route;
+ boost::shared_ptr<ARDOUR::PeakMeter> _meter;
+ boost::shared_ptr<ARDOUR::AutomationControl> _gain_control;
ARDOUR::Session& _session;
std::vector<sigc::connection> connections;
@@ -176,7 +182,10 @@ class GainMeter : public GainMeterBase, public Gtk::VBox
GainMeter (ARDOUR::Session&);
~GainMeter () {}
- void set_io (boost::shared_ptr<ARDOUR::IO>);
+ virtual void set_controls (boost::shared_ptr<ARDOUR::Route> route,
+ boost::shared_ptr<ARDOUR::PeakMeter> meter,
+ boost::shared_ptr<ARDOUR::AutomationControl> gain_control,
+ boost::shared_ptr<ARDOUR::Automatable> gc_owner);
int get_gm_width ();
void setup_meters (int len=0);