/*
Copyright (C) 2006 Paul Davis
- Written by Dave Robillard, 2006
+ Written by Dave Robillard, 2006
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
#include "ardour/ardour.h"
#include "ardour/playlist.h"
+#include "ardour/midi_state_tracker.h"
#include "evoral/Parameter.hpp"
namespace ARDOUR
nframes_t read (MidiRingBuffer<nframes_t>& buf,
nframes_t start, nframes_t cnt, uint32_t chan_n=0);
- int set_state (const XMLNode&);
+ int set_state (const XMLNode&, int version);
bool destroy_region (boost::shared_ptr<Region>);
std::set<Evoral::Parameter> contained_automation();
+ void clear_note_trackers ();
+
protected:
/* playlist "callbacks" */
private:
void dump () const;
- bool region_changed (Change, boost::shared_ptr<Region>);
+ bool region_changed (const PBD::PropertyChange&, boost::shared_ptr<Region>);
NoteMode _note_mode;
+
+ typedef std::map<Region*,MidiStateTracker*> NoteTrackers;
+ NoteTrackers _note_trackers;
+
};
} /* namespace ARDOUR */