X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=libs%2Fardour%2Fardour%2Fmidi_model.h;h=16d972c3ccc6ef44101e220f9d8a0f0e4ea019e3;hb=3963d2b0b224e79fdf8e852e39fc3a765fa1431b;hp=a1a0da7296b685e184edd827a1475d72e7f00fdb;hpb=e14187aadd574d46c82d8eb0d151b526b84ddcc7;p=ardour.git diff --git a/libs/ardour/ardour/midi_model.h b/libs/ardour/ardour/midi_model.h index a1a0da7296..16d972c3cc 100644 --- a/libs/ardour/ardour/midi_model.h +++ b/libs/ardour/ardour/midi_model.h @@ -30,7 +30,7 @@ #include #include #include -#include +#include #include #include #include @@ -47,8 +47,10 @@ class MidiSource; * Because of this MIDI controllers and automatable controllers/widgets/etc * are easily interchangeable. */ -class MidiModel : public AutomatableSequence { +class MidiModel : public AutomatableSequence { public: + typedef double TimeType; + MidiModel(MidiSource* s, size_t size=0); NoteMode note_mode() const { return (percussive() ? Percussive : Sustained); } @@ -71,17 +73,17 @@ public: int set_state (const XMLNode&); XMLNode& get_state (); - void add(const boost::shared_ptr note); - void remove(const boost::shared_ptr note); + void add(const boost::shared_ptr< Evoral::Note > note); + void remove(const boost::shared_ptr< Evoral::Note > note); private: - XMLNode &marshal_note(const boost::shared_ptr note); - boost::shared_ptr unmarshal_note(XMLNode *xml_note); + XMLNode &marshal_note(const boost::shared_ptr< Evoral::Note > note); + boost::shared_ptr< Evoral::Note > unmarshal_note(XMLNode *xml_note); boost::shared_ptr _model; const std::string _name; - typedef std::list< boost::shared_ptr > NoteList; + typedef std::list< boost::shared_ptr< Evoral::Note > > NoteList; NoteList _added_notes; NoteList _removed_notes;