21 #ifndef __ardour_midi_diskstream_h__
22 #define __ardour_midi_diskstream_h__
40 #include "ardour/utils.h"
66 float playback_buffer_load()
const;
67 float capture_buffer_load()
const;
72 void set_record_enabled (
bool yn);
74 void reset_tracker ();
80 int use_new_playlist ();
81 int use_copy_playlist ();
83 bool set_name (std::string
const &);
84 bool set_write_source_name (
const std::string& str);
88 int set_state(
const XMLNode&,
int version);
90 void ensure_input_monitoring (
bool);
94 int set_destructive (
bool yn);
115 void set_pending_overwrite(
bool);
116 int overwrite_existing_buffers ();
118 int internal_playback_seek (
framecnt_t distance);
119 int can_internal_playback_seek (
framecnt_t distance);
120 std::string steal_write_source_name();
121 void reset_write_sources (
bool,
bool force =
false);
122 void non_realtime_input_change ();
123 void non_realtime_locate (
framepos_t location);
130 int seek (
framepos_t which_sample,
bool complete_refill =
false);
142 int do_flush (
RunContext context,
bool force =
false);
145 int do_refill_with_alloc();
149 void finish_capture ();
150 void transport_stopped_wallclock (
struct tm&, time_t,
bool abort);
151 void transport_looped (
framepos_t transport_frame);
155 int use_new_write_source (uint32_t n=0);
157 int find_and_use_playlist (
const std::string&);
159 void allocate_temporary_buffers ();
161 int use_pending_capture_data (
XMLNode& node);
163 void get_input_sources ();
164 void set_align_style_from_io();
172 bool prep_record_enable ();
173 bool prep_record_disable ();
volatile gint _frames_pending_write
MidiRingBuffer< framepos_t > * _capture_buf
MidiBuffer _gui_feed_buffer
boost::weak_ptr< MidiPort > _source_port
LIBARDOUR_API PBD::PropertyDescriptor< framepos_t > start
boost::shared_ptr< SMFSource > write_source()
gint _frames_written_to_ringbuffer
PBD::Signal1< void, boost::weak_ptr< MidiSource > > DataRecorded
Glib::Threads::Mutex _gui_feed_buffer_mutex
MidiRingBuffer< framepos_t > * _playback_buf
CubicMidiInterpolation interpolation
static void set_readahead_frames(framecnt_t frames_ahead)
framepos_t _accumulated_capture_offset
void adjust_playback_buffering()
static framecnt_t midi_readahead
void adjust_capture_buffering()
boost::shared_ptr< SMFSource > _write_source
gint _frames_read_from_ringbuffer
LIBARDOUR_API bool init(bool with_vst, bool try_optimization, const char *localedir)
volatile gint _num_captured_loops