diff options
Diffstat (limited to 'libs')
-rw-r--r-- | libs/ardour/ardour/gain_control.h | 1 | ||||
-rw-r--r-- | libs/ardour/gain_control.cc | 7 |
2 files changed, 8 insertions, 0 deletions
diff --git a/libs/ardour/ardour/gain_control.h b/libs/ardour/ardour/gain_control.h index 8dea7a7750..7a4524c34c 100644 --- a/libs/ardour/ardour/gain_control.h +++ b/libs/ardour/ardour/gain_control.h @@ -58,6 +58,7 @@ class LIBARDOUR_API GainControl : public AutomationControl { void remove_master (boost::shared_ptr<VCA>); void clear_masters (); bool slaved_to (boost::shared_ptr<VCA>) const; + bool slaved () const; std::vector<uint32_t> masters () const; PBD::Signal0<void> VCAStatusChange; diff --git a/libs/ardour/gain_control.cc b/libs/ardour/gain_control.cc index d655b700b4..29b9146a0a 100644 --- a/libs/ardour/gain_control.cc +++ b/libs/ardour/gain_control.cc @@ -227,6 +227,13 @@ GainControl::slaved_to (boost::shared_ptr<VCA> vca) const return find (_masters.begin(), _masters.end(), vca->control()) != _masters.end(); } +bool +GainControl::slaved () const +{ + Glib::Threads::Mutex::Lock lm (master_lock); + return !_masters.empty(); +} + XMLNode& GainControl::get_state () { |