make boost shared_ptr debugging a little easier to turn on/off
[ardour.git] / libs / ardour / return.cc
index 921be6a53a69d02f4303e1269d434ec70100c0fa..9c0f19ab03f37081d39979295b8a767cec0674a1 100644 (file)
@@ -24,6 +24,7 @@
 #include "ardour/amp.h"
 #include "ardour/audioengine.h"
 #include "ardour/buffer_set.h"
+#include "ardour/gain_control.h"
 #include "ardour/io.h"
 #include "ardour/meter.h"
 #include "ardour/return.h"
@@ -49,7 +50,11 @@ Return::Return (Session& s, bool internal)
 {
        /* never muted */
 
-       _amp.reset (new Amp (_session));
+       boost::shared_ptr<AutomationList> gl (new AutomationList (Evoral::Parameter (GainAutomation)));
+       _gain_control = boost::shared_ptr<GainControl> (new GainControl (_session, Evoral::Parameter (GainAutomation), gl));
+       add_control (_gain_control);
+
+       _amp.reset (new Amp (_session, X_("Fader"), _gain_control, true));
        _meter.reset (new PeakMeter (_session, name()));
 }
 
@@ -81,7 +86,7 @@ Return::set_state (const XMLNode& node, int version)
 {
        XMLNodeList nlist = node.children();
        XMLNodeIterator niter;
-       const XMLProperty* prop;
+       XMLProperty const * prop;
        const XMLNode* insert_node = &node;
 
        /* Return has regular IO automation (gain, pan) */
@@ -136,7 +141,7 @@ Return::run (BufferSet& bufs, framepos_t start_frame, framepos_t end_frame, pfra
 }
 
 bool
-Return::can_support_io_configuration (const ChanCount& in, ChanCount& out) const
+Return::can_support_io_configuration (const ChanCount& in, ChanCount& out)
 {
        out = in + _input->n_ports();
        return true;
@@ -159,4 +164,3 @@ Return::configure_io (ChanCount in, ChanCount out)
 
        return true;
 }
-