#include <glibmm/threads.h>
#include "evoral/visibility.h"
-#include "evoral/types.hpp"
#include "evoral/Note.hpp"
#include "evoral/ControlSet.hpp"
#include "evoral/ControlList.hpp"
}
};
+#if 0 // NOT USED
struct LaterNoteComparator {
typedef const Note<Time>* value_type;
inline bool operator()(const boost::shared_ptr< const Note<Time> > a,
return a->time() > b->time();
}
};
+#endif
struct LaterNoteEndComparator {
typedef const Note<Time>* value_type;
inline bool operator()(const boost::shared_ptr< const Note<Time> > a,
const boost::shared_ptr< const Note<Time> > b) const {
- return a->end_time() > b->end_time();
+ return a->end_time().to_double() > b->end_time().to_double();
}
};
void invalidate(std::set<WeakNotePtr>* notes);
- const Event<Time>& operator*() const { return *_event; }
- const boost::shared_ptr< Event<Time> > operator->() const { return _event; }
- const boost::shared_ptr< Event<Time> > get_event_pointer() { return _event; }
+ const Event<Time>& operator*() const { return *_event; }
+ const boost::shared_ptr< const Event<Time> > operator->() const { return _event; }
const const_iterator& operator++(); // prefix only