+ /* gain control */
+
+ _amp->set_gain_automation_buffer (_session.send_gain_automation_buffer ());
+ _amp->setup_gain_automation (start_sample, end_sample, nframes);
+ _amp->run (sendbufs, start_sample, end_sample, speed, nframes, true);
+
+ _delayline->run (sendbufs, start_sample, end_sample, speed, nframes, true);
+
+ /* deliver to outputs */
+
+ Delivery::run (sendbufs, start_sample, end_sample, speed, nframes, true);
+
+ /* consider metering */
+
+ if (_metering) {
+ if (_amp->gain_control()->get_value() == 0) {
+ _meter->reset();
+ } else {
+ _meter->run (*_output_buffers, start_sample, end_sample, speed, nframes, true);
+ }
+ }
+
+ /* _active was set to _pending_active by Delivery::run() */