summaryrefslogtreecommitdiff
path: root/libs/ardour/vca.cc
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2016-02-28 11:57:18 -0500
committerPaul Davis <paul@linuxaudiosystems.com>2016-05-31 15:30:38 -0400
commit405f9fc712836937bf44dba48c64c1741bc4101c (patch)
tree745d26434acb43768b403d5e9cc99b6d24cfc435 /libs/ardour/vca.cc
parent3daad049362bed97935d09c1bfebe085ce482f6c (diff)
change VCA model to facilitate Harrison *and* SSL designs
Diffstat (limited to 'libs/ardour/vca.cc')
-rw-r--r--libs/ardour/vca.cc9
1 files changed, 2 insertions, 7 deletions
diff --git a/libs/ardour/vca.cc b/libs/ardour/vca.cc
index 2ba8b8c7c4..b49489dfe7 100644
--- a/libs/ardour/vca.cc
+++ b/libs/ardour/vca.cc
@@ -47,16 +47,11 @@ VCA::get_value() const
void
VCA::add (boost::shared_ptr<Route> r)
{
- boost::dynamic_pointer_cast<GainControl>(r->gain_control())->set_master (_control);
+ boost::dynamic_pointer_cast<GainControl>(r->gain_control())->add_master (_control);
}
void
VCA::remove (boost::shared_ptr<Route> r)
{
- boost::shared_ptr<GainControl> route_gain = boost::dynamic_pointer_cast<GainControl>(r->gain_control());
- boost::shared_ptr<GainControl> current_master = route_gain->master();
-
- if (current_master == _control) {
- route_gain->set_master (boost::shared_ptr<GainControl>());
- }
+ r->gain_control()->remove_master (_control);
}