diff options
Diffstat (limited to 'libs/ardour/ardour')
-rw-r--r-- | libs/ardour/ardour/playlist.h | 4 | ||||
-rw-r--r-- | libs/ardour/ardour/session.h | 25 | ||||
-rw-r--r-- | libs/ardour/ardour/session_configuration_vars.h | 1 |
3 files changed, 14 insertions, 16 deletions
diff --git a/libs/ardour/ardour/playlist.h b/libs/ardour/ardour/playlist.h index c5b79644c6..d13789fa38 100644 --- a/libs/ardour/ardour/playlist.h +++ b/libs/ardour/ardour/playlist.h @@ -126,7 +126,7 @@ class Playlist : public SessionObject bool hidden() const { return _hidden; } bool empty() const; uint32_t n_regions() const; - framecnt_t get_maximum_extent () const; + std::pair<framecnt_t, framecnt_t> get_extent () const; layer_t top_layer() const; EditMode get_edit_mode() const { return _edit_mode; } @@ -334,7 +334,7 @@ class Playlist : public SessionObject void copy_regions (RegionList&) const; void partition_internal (framepos_t start, framepos_t end, bool cutting, RegionList& thawlist); - framecnt_t _get_maximum_extent() const; + std::pair<framecnt_t, framecnt_t> _get_extent() const; boost::shared_ptr<Playlist> cut_copy (boost::shared_ptr<Playlist> (Playlist::*pmf)(framepos_t, framecnt_t, bool), std::list<AudioRange>& ranges, bool result_is_hidden); diff --git a/libs/ardour/ardour/session.h b/libs/ardour/ardour/session.h index 4182ce1ea1..0f5a73a280 100644 --- a/libs/ardour/ardour/session.h +++ b/libs/ardour/ardour/session.h @@ -270,7 +270,6 @@ class Session : public PBD::StatefulDestructible, public PBD::ScopedConnectionLi PBD::Signal0<void> TransportStateChange; /* generic */ PBD::Signal1<void,nframes64_t> PositionChanged; /* sent after any non-sequential motion */ - PBD::Signal0<void> DurationChanged; PBD::Signal1<void,nframes64_t> Xrun; PBD::Signal0<void> TransportLooped; @@ -291,10 +290,10 @@ class Session : public PBD::StatefulDestructible, public PBD::ScopedConnectionLi bool get_play_loop () const { return play_loop; } nframes_t last_transport_start() const { return _last_roll_location; } - void goto_end () { request_locate (_session_range_location->end(), false);} - void goto_start () { request_locate (_session_range_location->start(), false); } - void set_session_start (nframes_t start) { _session_range_location->set_start(start); } - void set_session_end (nframes_t end) { _session_range_location->set_end(end); config.set_end_marker_is_free (false); } + void goto_end (); + void goto_start (); + void set_session_start (nframes_t); + void set_session_end (nframes_t); void use_rf_shuttle_speed (); void allow_auto_play (bool yn); void request_transport_speed (double speed); @@ -307,9 +306,9 @@ class Session : public PBD::StatefulDestructible, public PBD::ScopedConnectionLi int wipe (); - nframes_t get_maximum_extent () const; - nframes_t current_end_frame() const { return _session_range_location->end(); } - nframes_t current_start_frame() const { return _session_range_location->start(); } + std::pair<nframes_t, nframes_t> get_extent () const; + nframes_t current_end_frame () const; + nframes_t current_start_frame () const; /// "actual" sample rate of session, set by current audioengine rate, pullup/down etc. nframes_t frame_rate() const { return _current_frame_rate; } /// "native" sample rate of session, regardless of current audioengine rate, pullup/down etc @@ -805,11 +804,9 @@ class Session : public PBD::StatefulDestructible, public PBD::ScopedConnectionLi void update_latency_compensation (bool, bool); private: - int create (const std::string& mix_template, nframes_t initial_length, BusProfile*); + int create (const std::string& mix_template, BusProfile*); void destroy (); - nframes_t compute_initial_length (); - enum SubState { PendingDeclickIn = 0x1, PendingDeclickOut = 0x2, @@ -836,7 +833,7 @@ class Session : public PBD::StatefulDestructible, public PBD::ScopedConnectionLi int transport_sub_state; mutable gint _record_status; volatile nframes64_t _transport_frame; - Location* _session_range_location; + Location* _session_range_location; ///< session range, or 0 if there is nothing in the session yet Slave* _slave; bool _silent; @@ -1056,7 +1053,7 @@ class Session : public PBD::StatefulDestructible, public PBD::ScopedConnectionLi void first_stage_init (std::string path, std::string snapshot_name); int second_stage_init (); - void find_current_end (); + void update_session_range_location_marker (); void remove_empty_sounds (); void setup_midi_control (); @@ -1442,6 +1439,8 @@ class Session : public PBD::StatefulDestructible, public PBD::ScopedConnectionLi /** temporary list of Diskstreams used only during load of 2.X sessions */ std::list<boost::shared_ptr<Diskstream> > _diskstreams_2X; + + void add_session_range_location (nframes_t, nframes_t); }; } // namespace ARDOUR diff --git a/libs/ardour/ardour/session_configuration_vars.h b/libs/ardour/ardour/session_configuration_vars.h index 2776787271..df76057e0b 100644 --- a/libs/ardour/ardour/session_configuration_vars.h +++ b/libs/ardour/ardour/session_configuration_vars.h @@ -37,7 +37,6 @@ CONFIG_VARIABLE (TimecodeFormat, timecode_format, "timecode-format", timecode_30 CONFIG_VARIABLE_SPECIAL(Glib::ustring, raid_path, "raid-path", "", path_expand) CONFIG_VARIABLE (std::string, bwf_country_code, "bwf-country-code", "US") CONFIG_VARIABLE (std::string, bwf_organization_code, "bwf-organization-code", "US") -CONFIG_VARIABLE (bool, end_marker_is_free, "end-marker-is-free", true) CONFIG_VARIABLE (LayerModel, layer_model, "layer-model", MoveAddHigher) CONFIG_VARIABLE (std::string, auditioner_output_left, "auditioner-output-left", "default") CONFIG_VARIABLE (std::string, auditioner_output_right, "auditioner-output-right", "default") |