diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2016-03-07 22:20:37 -0500 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2016-05-31 15:30:39 -0400 |
commit | 04e26fe7e6cf0ae4d85a5527b30b5e1196966465 (patch) | |
tree | 57aad34a79a2a5fb47c076041ae3a97b5c70a431 /libs/ardour/route.cc | |
parent | c3afeab49c7f454f58bd1fb17b39ccac1d39258e (diff) |
move VCA assignment up to Route level
Diffstat (limited to 'libs/ardour/route.cc')
-rw-r--r-- | libs/ardour/route.cc | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/libs/ardour/route.cc b/libs/ardour/route.cc index db92edf786..edffc3f3ce 100644 --- a/libs/ardour/route.cc +++ b/libs/ardour/route.cc @@ -5894,3 +5894,23 @@ Route::slaved_to (boost::shared_ptr<VCA> vca) const return _gain_control->slaved_to (vca); } + +void +Route::vca_assign (boost::shared_ptr<VCA> vca) +{ + _gain_control->add_master (vca); + vca->add_solo_mute_target (shared_from_this()); +} + +void +Route::vca_unassign (boost::shared_ptr<VCA> vca) +{ + if (!vca) { + /* unassign from all */ + _gain_control->clear_masters (); + /* XXXX need to remove from solo/mute target lists */ + } else { + _gain_control->remove_master (vca); + vca->remove_solo_mute_target (shared_from_this()); + } +} |