Move EventRingBuffer to libardour.
[ardour.git] / libs / ardour / midi_playlist.cc
index 4bbedcecd8464b5c251deb349fb657ee6ded4833..36b6fce75fa60d3cda434d0655e99b694c82d4df 100644 (file)
 
 #include <algorithm>
 #include <iostream>
+#include <utility>
 
 #include <stdlib.h>
 
-#include "pbd/error.h"
-
 #include "evoral/EventList.hpp"
 
-#include "ardour/configuration.h"
 #include "ardour/debug.h"
 #include "ardour/midi_model.h"
 #include "ardour/midi_playlist.h"
 #include "ardour/midi_region.h"
-#include "ardour/midi_ring_buffer.h"
-#include "ardour/session.h"
+#include "ardour/midi_state_tracker.h"
 #include "ardour/types.h"
 
 #include "i18n.h"
@@ -88,7 +85,8 @@ template<typename Time>
 struct EventsSortByTimeAndType {
     bool operator() (Evoral::Event<Time>* a, Evoral::Event<Time>* b) {
            if (a->time() == b->time()) {
-                   if (EventTypeMap::instance().type_is_midi (a->event_type()) && EventTypeMap::instance().type_is_midi (b->event_type())) {
+                   if (parameter_is_midi ((AutomationType)a->event_type()) &&
+                       parameter_is_midi ((AutomationType)b->event_type())) {
                            /* negate return value since we must return whether
                             * or not a should sort before b, not b before a
                             */
@@ -257,10 +255,7 @@ MidiPlaylist::read (Evoral::EventSink<framepos_t>& dst, framepos_t start, framec
                        } else {
 
                                if (new_tracker) {
-                                       pair<Region*,MidiStateTracker*> newpair;
-                                       newpair.first = mr.get();
-                                       newpair.second = tracker;
-                                       _note_trackers.insert (newpair).first;
+                                       _note_trackers.insert (make_pair (mr.get(), tracker));
                                        DEBUG_TRACE (DEBUG::MidiPlaylistIO, "\tadded tracker to trackers\n");
                                }
                        }