X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=libs%2Fardour%2Fardour%2Fmidi_diskstream.h;h=91fb891f17705c651101fbba62294c2154328138;hb=0622a0cc3068a06d328119e90b7d9c5f5a84df32;hp=e3f2673871fe2d296da808fc95a87853483c732e;hpb=e7c47747286c16aa575456b07120e1e8e8271bd5;p=ardour.git diff --git a/libs/ardour/ardour/midi_diskstream.h b/libs/ardour/ardour/midi_diskstream.h index e3f2673871..91fb891f17 100644 --- a/libs/ardour/ardour/midi_diskstream.h +++ b/libs/ardour/ardour/midi_diskstream.h @@ -76,6 +76,7 @@ class LIBARDOUR_API MidiDiskstream : public Diskstream int use_copy_playlist (); bool set_name (std::string const &); + bool set_write_source_name (const std::string& str); /* stateful */ XMLNode& get_state(void); @@ -111,18 +112,17 @@ class LIBARDOUR_API MidiDiskstream : public Diskstream void set_block_size (pframes_t); int internal_playback_seek (framecnt_t distance); int can_internal_playback_seek (framecnt_t distance); - std::list > steal_write_sources(); + std::string steal_write_source_name(); void reset_write_sources (bool, bool force = false); void non_realtime_input_change (); void non_realtime_locate (framepos_t location); static void set_readahead_frames (framecnt_t frames_ahead) { midi_readahead = frames_ahead; } - protected: - int seek (framepos_t which_sample, bool complete_refill = false); - protected: friend class MidiTrack; + friend class Auditioner; + int seek (framepos_t which_sample, bool complete_refill = false); int process (BufferSet&, framepos_t transport_frame, pframes_t nframes, framecnt_t &, bool need_diskstream); frameoffset_t calculate_playback_distance (pframes_t nframes); @@ -174,6 +174,7 @@ class LIBARDOUR_API MidiDiskstream : public Diskstream gint _frames_read_from_ringbuffer; volatile gint _frames_pending_write; volatile gint _num_captured_loops; + framepos_t _accumulated_capture_offset; /** A buffer that we use to put newly-arrived MIDI data in for the GUI to read (so that it can update itself).