Post-export hook tweaks
[ardour.git] / libs / ardour / internal_send.cc
index dac1839a5ea07a89bfc2a0907a75be81281c800e..23d9221086f8455ad3b56439e6e9e4257f7e35e0 100644 (file)
@@ -40,8 +40,8 @@ using namespace std;
 
 PBD::Signal1<void, pframes_t> InternalSend::CycleStart;
 
-InternalSend::InternalSend (Session& s, boost::shared_ptr<Pannable> p, boost::shared_ptr<MuteMaster> mm, boost::shared_ptr<Route> sendto, Delivery::Role role)
-       : Send (s, p, mm, role)
+InternalSend::InternalSend (Session& s, boost::shared_ptr<Pannable> p, boost::shared_ptr<MuteMaster> mm, boost::shared_ptr<Route> sendto, Delivery::Role role, bool ignore_bitslot)
+       : Send (s, p, mm, role, ignore_bitslot)
 {
         if (sendto) {
                 if (use_target (sendto)) {
@@ -129,7 +129,7 @@ InternalSend::run (BufferSet& bufs, framepos_t start_frame, framepos_t end_frame
        // we have to copy the input, because we may alter the buffers with the amp
        // in-place, which a send must never do.
 
-       if (_panshell && !_panshell->bypassed()) {
+       if (_panshell && !_panshell->bypassed() && role() != Listen) {
                _panshell->run (bufs, mixbufs, start_frame, end_frame, nframes);
        } else {
                if (role() == Listen) {
@@ -202,6 +202,8 @@ InternalSend::run (BufferSet& bufs, framepos_t start_frame, framepos_t end_frame
        _amp->setup_gain_automation (start_frame, end_frame, nframes);
        _amp->run (mixbufs, start_frame, end_frame, nframes, true);
 
+       _delayline->run (mixbufs, start_frame, end_frame, nframes, true);
+
        /* consider metering */
 
        if (_metering) {