#include <glibmm/thread.h>
-#include "ardour/ardour.h"
#include "ardour/audioengine.h"
#include "ardour/auditioner.h"
#include "ardour/butler.h"
+#include "ardour/cycle_timer.h"
#include "ardour/debug.h"
+#include "ardour/graph.h"
+#include "ardour/port.h"
#include "ardour/process_thread.h"
#include "ardour/session.h"
#include "ardour/slave.h"
-#include "ardour/timestamps.h"
-#include "ardour/graph.h"
-#include "ardour/audio_port.h"
-#include "ardour/tempo.h"
#include "ardour/ticker.h"
-#include "ardour/cycle_timer.h"
+#include "ardour/types.h"
#include "midi++/manager.h"
#include "midi++/mmc.h"
#include "i18n.h"
+#include <xmmintrin.h>
+
using namespace ARDOUR;
using namespace PBD;
using namespace std;
{
framepos_t transport_at_start = _transport_frame;
- MIDI::Manager::instance()->cycle_start(nframes);
-
_silent = false;
if (processing_blocked()) {
}
SendFeedback (); /* EMIT SIGNAL */
-
- MIDI::Manager::instance()->cycle_end();
}
int
framepos_t end_frame = _transport_frame + nframes; // FIXME: varispeed + no_roll ??
int ret = 0;
- bool declick = get_transport_declick_required();
+ int declick = get_transport_declick_required();
boost::shared_ptr<RouteList> r = routes.reader ();
if (_click_io) {
del = false;
break;
+ case SessionEvent::AutoLoopDeclick:
+ if (play_loop) {
+ /* Request a declick fade-out and a fade-in; the fade-out will happen
+ at the end of the loop, and the fade-in at the start.
+ */
+ transport_sub_state |= (PendingLoopDeclickOut | PendingLoopDeclickIn);
+ }
+ remove = false;
+ del = false;
+ break;
+
case SessionEvent::Locate:
if (ev->yes_or_no) {
// cerr << "forced locate to " << ev->target_frame << endl;