newly-added InternalReturn processor requires a time domain (post-rebase on master)

This commit is contained in:
Paul Davis 2021-02-09 10:11:30 -07:00
parent cffc25a11c
commit 4a43f5aa0b
3 changed files with 9 additions and 7 deletions

View File

@ -34,7 +34,7 @@ class InternalSend;
class LIBARDOUR_API InternalReturn : public Processor
{
public:
InternalReturn (Session&, std::string const& name = "Return");
InternalReturn (Session&, Temporal::TimeDomain, std::string const& name = "Return");
void run (BufferSet& bufs, samplepos_t start_sample, samplepos_t end_sample, double speed, pframes_t nframes, bool);
bool configure_io (ChanCount, ChanCount);

View File

@ -28,8 +28,8 @@
using namespace std;
using namespace ARDOUR;
InternalReturn::InternalReturn (Session& s, std::string const& name)
: Processor (s, name)
InternalReturn::InternalReturn (Session& s, Temporal::TimeDomain td, std::string const& name)
: Processor (s, name, td)
{
_display_to_user = false;
}

View File

@ -270,7 +270,7 @@ Route::init ()
if (is_monitor()) {
/* where we listen to tracks */
_intreturn.reset (new MonitorReturn (_session));
_intreturn.reset (new MonitorReturn (_session, time_domain()));
_intreturn->activate ();
/* the thing that provides proper control over a control/monitor/listen bus
@ -3097,11 +3097,13 @@ Route::set_processor_state (const XMLNode& node, int version)
_intreturn->set_state (**niter, version);
} else if (prop->value() == "intreturn") {
if (!_intreturn) {
if (is_monitor ()) {
_intreturn.reset (new MonitorReturn (_session));
_intreturn.reset (new MonitorReturn (_session, time_domain()));
} else {
_intreturn.reset (new InternalReturn (_session));
_intreturn.reset (new InternalReturn (_session, time_domain()));
}
must_configure = true;
}
_intreturn->set_state (**niter, version);
@ -3315,7 +3317,7 @@ void
Route::add_internal_return ()
{
if (!_intreturn) {
_intreturn.reset (new InternalReturn (_session));
_intreturn.reset (new InternalReturn (_session, time_domain()));
add_processor (_intreturn, PreFader);
}
}