#include <ardour/ardour.h>
#include <ardour/playlist.h>
+#include <evoral/Parameter.hpp>
namespace ARDOUR
{
class Region;
class MidiRegion;
class Source;
-class MidiRingBuffer;
+template<typename T> class MidiRingBuffer;
class MidiPlaylist : public ARDOUR::Playlist
{
~MidiPlaylist ();
- nframes_t read (MidiRingBuffer& buf,
+ nframes_t read (MidiRingBuffer<double>& buf,
nframes_t start, nframes_t cnt, uint32_t chan_n=0);
int set_state (const XMLNode&);
UndoAction get_memento() const;
bool destroy_region (boost::shared_ptr<Region>);
+
+ void set_note_mode (NoteMode m) { _note_mode = m; }
+
+ std::set<Evoral::Parameter> contained_automation();
protected:
/* playlist "callbacks" */
- void flush_notifications ();
void finalize_split_region (boost::shared_ptr<Region> original, boost::shared_ptr<Region> left, boost::shared_ptr<Region> right);
void remove_dependents (boost::shared_ptr<Region> region);
private:
- XMLNode& state (bool full_state);
void dump () const;
bool region_changed (Change, boost::shared_ptr<Region>);
+
+ NoteMode _note_mode;
};
} /* namespace ARDOUR */