summaryrefslogtreecommitdiff
path: root/libs/ardour/ardour/gain_control.h
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2016-02-29 09:09:53 -0500
committerPaul Davis <paul@linuxaudiosystems.com>2016-05-31 15:30:38 -0400
commit8eafe8b8045e60b305a40b729b9daea2c6289d28 (patch)
treec50dff992ee908e81e63296aaa25992ae09b1661 /libs/ardour/ardour/gain_control.h
parent405f9fc712836937bf44dba48c64c1741bc4101c (diff)
vca design: gain controls cannot silently "merge" the master(s) value into their own
Diffstat (limited to 'libs/ardour/ardour/gain_control.h')
-rw-r--r--libs/ardour/ardour/gain_control.h5
1 files changed, 3 insertions, 2 deletions
diff --git a/libs/ardour/ardour/gain_control.h b/libs/ardour/ardour/gain_control.h
index 9a79a8046f..c6421a6922 100644
--- a/libs/ardour/ardour/gain_control.h
+++ b/libs/ardour/ardour/gain_control.h
@@ -43,7 +43,6 @@ class LIBARDOUR_API GainControl : public AutomationControl {
void set_value (double val, PBD::Controllable::GroupControlDisposition group_override);
void set_value_unchecked (double);
- double get_value () const;
double internal_to_interface (double) const;
double interface_to_internal (double) const;
@@ -54,18 +53,20 @@ class LIBARDOUR_API GainControl : public AutomationControl {
double lower_db;
double range_db;
+ gain_t get_master_gain () const;
void add_master (boost::shared_ptr<GainControl>);
void remove_master (boost::shared_ptr<GainControl>);
void clear_masters ();
private:
void _set_value (double val, PBD::Controllable::GroupControlDisposition group_override);
- gain_t get_master_gain () const;
mutable Glib::Threads::Mutex master_lock;
typedef std::list<boost::shared_ptr<GainControl> > Masters;
Masters _masters;
+
+ gain_t get_master_gain_locked () const;
};
} /* namespace */