summaryrefslogtreecommitdiff
path: root/libs/ardour/vca.cc
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2016-03-02 12:09:24 -0500
committerPaul Davis <paul@linuxaudiosystems.com>2016-05-31 15:30:39 -0400
commit35172bb369eea6245e08b258f4a350411c20f98d (patch)
tree6cece2c4bc2f6cb986ec341cc3c11ff6a894892e /libs/ardour/vca.cc
parentcab88c6aad6782e621ae9c51aac5af24a2f3d5b8 (diff)
change API for GainControl, VCA and VCAManager
This allows sane state save/restore
Diffstat (limited to 'libs/ardour/vca.cc')
-rw-r--r--libs/ardour/vca.cc18
1 files changed, 5 insertions, 13 deletions
diff --git a/libs/ardour/vca.cc b/libs/ardour/vca.cc
index 9ae0c5a2dc..5afa31d38d 100644
--- a/libs/ardour/vca.cc
+++ b/libs/ardour/vca.cc
@@ -66,6 +66,11 @@ VCA::VCA (Session& s, XMLNode const & node, int version)
set_state (node, version);
}
+VCA::~VCA ()
+{
+ DropReferences (); /* emit signal */
+}
+
void
VCA::set_value (double val, Controllable::GroupControlDisposition gcd)
{
@@ -79,19 +84,6 @@ VCA::get_value() const
}
void
-VCA::add (boost::shared_ptr<Route> r)
-{
- boost::dynamic_pointer_cast<GainControl>(r->gain_control())->add_master (_control);
- std::cerr << name() << " now controlling " << r->name() << std::endl;
-}
-
-void
-VCA::remove (boost::shared_ptr<Route> r)
-{
- r->gain_control()->remove_master (_control);
-}
-
-void
VCA::set_name (string const& str)
{
_name = str;