X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=libs%2Fardour%2Fardour%2Fpublic_diskstream.h;h=1fc93a66749226273869de55666d13f48bf9ecb6;hb=79245a296b73c4ad49bc9b5a204cdda120e1ab90;hp=a33c43f0cdc339099692091df21766d3029e4e33;hpb=fe229a830e0164e56d3aceaf3d539e4148f322a6;p=ardour.git diff --git a/libs/ardour/ardour/public_diskstream.h b/libs/ardour/ardour/public_diskstream.h old mode 100755 new mode 100644 index a33c43f0cd..1fc93a6674 --- a/libs/ardour/ardour/public_diskstream.h +++ b/libs/ardour/ardour/public_diskstream.h @@ -26,56 +26,55 @@ class Playlist; class Source; class Location; -/** Public interface to a Diskstream */ -class PublicDiskstream +/** Public interface to a Diskstream */ +class LIBARDOUR_API PublicDiskstream { public: + virtual ~PublicDiskstream() {} virtual boost::shared_ptr playlist () = 0; - virtual void monitor_input (bool) = 0; + virtual void request_input_monitoring (bool) = 0; + virtual void ensure_input_monitoring (bool) = 0; virtual bool destructive () const = 0; virtual std::list > & last_capture_sources () = 0; virtual void set_capture_offset () = 0; - virtual std::list > steal_write_sources () = 0; + virtual std::string steal_write_source_name () = 0; virtual void reset_write_sources (bool, bool force = false) = 0; virtual float playback_buffer_load () const = 0; virtual float capture_buffer_load () const = 0; virtual int do_refill () = 0; virtual int do_flush (RunContext, bool force = false) = 0; - virtual uint32_t read_data_count() const = 0; - virtual uint32_t write_data_count() const = 0; virtual void set_pending_overwrite (bool) = 0; - virtual int seek (nframes_t, bool complete_refill = false) = 0; + virtual int seek (framepos_t, bool complete_refill = false) = 0; virtual bool hidden () const = 0; - virtual int can_internal_playback_seek (nframes_t) = 0; - virtual int internal_playback_seek (nframes_t) = 0; + virtual int can_internal_playback_seek (framecnt_t) = 0; + virtual int internal_playback_seek (framecnt_t) = 0; virtual void non_realtime_input_change () = 0; - virtual void non_realtime_locate (nframes_t) = 0; + virtual void non_realtime_locate (framepos_t) = 0; virtual void non_realtime_set_speed () = 0; virtual int overwrite_existing_buffers () = 0; - virtual nframes_t get_captured_frames (uint32_t n = 0) = 0; + virtual framecnt_t get_captured_frames (uint32_t n = 0) const = 0; virtual int set_loop (Location *) = 0; - virtual void transport_looped (nframes_t) = 0; + virtual void transport_looped (framepos_t) = 0; virtual bool realtime_set_speed (double, bool) = 0; virtual void transport_stopped_wallclock (struct tm &, time_t, bool) = 0; virtual bool pending_overwrite () const = 0; virtual double speed () const = 0; - virtual void prepare_to_stop (framepos_t) = 0; + virtual void prepare_to_stop (framepos_t,framepos_t) = 0; virtual void set_slaved (bool) = 0; virtual ChanCount n_channels () = 0; - virtual nframes_t get_capture_start_frame (uint32_t n = 0) = 0; + virtual framepos_t get_capture_start_frame (uint32_t n = 0) const = 0; virtual AlignStyle alignment_style () const = 0; - virtual void set_record_enabled (bool) = 0; - virtual nframes_t current_capture_start () const = 0; - virtual nframes_t current_capture_end () const = 0; + virtual framepos_t current_capture_start () const = 0; + virtual framepos_t current_capture_end () const = 0; virtual void playlist_modified () = 0; virtual int use_playlist (boost::shared_ptr) = 0; - virtual void set_align_style (AlignStyle) = 0; + virtual void set_align_style (AlignStyle, bool force=false) = 0; + virtual void set_align_choice (AlignChoice, bool force=false) = 0; virtual int use_copy_playlist () = 0; virtual int use_new_playlist () = 0; - virtual void adjust_playback_buffering () = 0; - virtual void adjust_capture_buffering () = 0; - + virtual void adjust_playback_buffering () = 0; + virtual void adjust_capture_buffering () = 0; }; }