From 00b7385e4c1b8ab341f827323eeca77109349ef0 Mon Sep 17 00:00:00 2001 From: Paul Davis Date: Fri, 4 Mar 2016 16:44:30 -0500 Subject: correctly restore VCA-VCA slave/master relationships at session load time --- libs/ardour/ardour/gain_control.h | 4 +++- libs/ardour/ardour/vca_manager.h | 4 ++++ 2 files changed, 7 insertions(+), 1 deletion(-) (limited to 'libs/ardour/ardour') diff --git a/libs/ardour/ardour/gain_control.h b/libs/ardour/ardour/gain_control.h index c44a76dd04..2b472dc8e0 100644 --- a/libs/ardour/ardour/gain_control.h +++ b/libs/ardour/ardour/gain_control.h @@ -91,12 +91,14 @@ class LIBARDOUR_API GainControl : public AutomationControl { typedef std::map Masters; Masters _masters; PBD::ScopedConnectionList masters_connections; - std::string _masters_state_string (); + std::string masters_string; + PBD::ScopedConnection vca_loaded_connection; gain_t get_value_locked () const; gain_t get_master_gain_locked () const; void master_going_away (boost::weak_ptr); void recompute_masters_ratios (double val); + void vcas_loaded(); void _set_value (double val, PBD::Controllable::GroupControlDisposition group_override); }; diff --git a/libs/ardour/ardour/vca_manager.h b/libs/ardour/ardour/vca_manager.h index 4e5b54f438..c51336b558 100644 --- a/libs/ardour/ardour/vca_manager.h +++ b/libs/ardour/ardour/vca_manager.h @@ -50,17 +50,21 @@ class VCAManager : public SessionHandleRef, public PBD::StatefulDestructible VCAList vcas() const; + PBD::Signal0 VCAsLoaded; PBD::Signal1 VCAAdded; PBD::Signal1 VCARemoved; XMLNode& get_state(); int set_state (XMLNode const&, int version); + bool vcas_loaded() const { return _vcas_loaded; } + static std::string xml_node_name; private: mutable Glib::Threads::Mutex lock; VCAList _vcas; + bool _vcas_loaded; void clear (); }; -- cgit v1.2.3