optimize some performance bottlenecks; remove jack_nframes_t that crept back into...
[ardour.git] / libs / ardour / ardour / midi_playlist.h
index 6f89d2340473cc72f941c0a9f15aaa276b51bfe5..44f04b781b2c5810a18bf007d43721d5ee7cb997 100644 (file)
@@ -40,12 +40,14 @@ class MidiPlaylist : public ARDOUR::Playlist
 public:
        MidiPlaylist (Session&, const XMLNode&, bool hidden = false);
        MidiPlaylist (Session&, string name, bool hidden = false);
-       MidiPlaylist (const MidiPlaylist&, string name, bool hidden = false);
-       MidiPlaylist (const MidiPlaylist&, jack_nframes_t start, jack_nframes_t cnt,
+       MidiPlaylist (boost::shared_ptr<const MidiPlaylist> other, string name, bool hidden = false);
+       MidiPlaylist (boost::shared_ptr<const MidiPlaylist> other, nframes_t start, nframes_t cnt,
                      string name, bool hidden = false);
 
+       ~MidiPlaylist ();
+
        nframes_t read (MidiRingBuffer& buf,
-                       jack_nframes_t start, jack_nframes_t cnt, uint32_t chan_n=0);
+                       nframes_t start, nframes_t cnt, uint32_t chan_n=0);
 
        int set_state (const XMLNode&);
        UndoAction get_memento() const;
@@ -63,9 +65,6 @@ protected:
        void refresh_dependents (boost::shared_ptr<Region> region);
        void remove_dependents (boost::shared_ptr<Region> region);
 
-protected:
-       ~MidiPlaylist (); /* public should use unref() */
-
 private:
        XMLNode& state (bool full_state);
        void dump () const;