public:
Butler (Session& session);
~Butler();
-
+
int start_thread();
void terminate_thread();
void schedule_transport_work();
bool transport_work_requested() const;
void drop_references ();
- float read_data_rate() const; ///< in usec
- float write_data_rate() const;
-
- nframes_t audio_diskstream_capture_buffer_size() const { return audio_dstream_capture_buffer_size; }
- nframes_t audio_diskstream_playback_buffer_size() const { return audio_dstream_playback_buffer_size; }
+ framecnt_t audio_diskstream_capture_buffer_size() const { return audio_dstream_capture_buffer_size; }
+ framecnt_t audio_diskstream_playback_buffer_size() const { return audio_dstream_playback_buffer_size; }
uint32_t midi_diskstream_buffer_size() const { return midi_dstream_buffer_size; }
static void* _thread_work(void *arg);
struct Request {
enum Type {
- Wake,
Run,
Pause,
Quit
bool should_run;
mutable gint should_do_transport_work;
int request_pipe[2];
- nframes_t audio_dstream_capture_buffer_size;
- nframes_t audio_dstream_playback_buffer_size;
+ framecnt_t audio_dstream_capture_buffer_size;
+ framecnt_t audio_dstream_playback_buffer_size;
uint32_t midi_dstream_buffer_size;
RingBuffer<CrossThreadPool*> pool_trash;
private:
void empty_pool_trash ();
- void config_changed (std::string);
+ void config_changed (std::string);
};
} // namespace ARDOUR