, _last_time (0)
, _run_thread (false)
{
-
+
}
AutomationWatch::~AutomationWatch ()
* creates reference cycles. we don't need to make the weak_ptr<>
* explicit here, but it helps to remind us what is going on.
*/
-
+
boost::weak_ptr<AutomationControl> wac (ac);
ac->DropReferences.connect_same_thread (*this, boost::bind (&AutomationWatch::remove_weak_automation_watch, this, wac));
}
(*aw)->alist()->automation_write()));
(*aw)->list()->set_in_write_pass (false);
if ( (*aw)->alist()->automation_write() ) {
- (*aw)->list()->set_in_write_pass (true);
+ (*aw)->list()->set_in_write_pass (true, time);
}
}
}
-
+
_last_time = time;
}
if (_session) {
_run_thread = true;
_thread = Glib::Threads::Thread::create (boost::bind (&AutomationWatch::thread, this));
-
+
_session->TransportStateChange.connect_same_thread (transport_connection, boost::bind (&AutomationWatch::transport_state_change, this));
}
}
}
bool rolling = _session->transport_rolling();
-
+
_last_time = _session->audible_frame ();
{