move all (G)UI related configuration parameters into UIConfiguration, not RCConfiguration
[ardour.git] / libs / ardour / ardour / session.h
index 2c0ac05bdaa0fecf404ed71fe71412dbc6bd7f1a..895bbd6f1758053eae5700c518f15d5763583c23 100644 (file)
@@ -384,6 +384,7 @@ class LIBARDOUR_API Session : public PBD::StatefulDestructible, public PBD::Scop
 
        void set_auto_punch_location (Location *);
        void set_auto_loop_location (Location *);
+       void set_session_extents (framepos_t start, framepos_t end);
        int location_name(std::string& result, std::string base = std::string(""));
 
        pframes_t get_block_size()        const { return current_block_size; }
@@ -547,7 +548,8 @@ class LIBARDOUR_API Session : public PBD::StatefulDestructible, public PBD::Scop
        void set_silent (bool yn);
        bool silent () { return _silent; }
 
-       TempoMap& tempo_map() { return *_tempo_map; }
+       TempoMap&       tempo_map()       { return *_tempo_map; }
+       const TempoMap& tempo_map() const { return *_tempo_map; }
 
        /* region info  */
 
@@ -630,7 +632,7 @@ class LIBARDOUR_API Session : public PBD::StatefulDestructible, public PBD::Scop
 
        /* flattening stuff */
 
-       boost::shared_ptr<Region> write_one_track (AudioTrack&, framepos_t start, framepos_t end,
+       boost::shared_ptr<Region> write_one_track (Track&, framepos_t start, framepos_t end,
                                                   bool overwrite, std::vector<boost::shared_ptr<Source> >&, InterThreadInfo& wot,
                                                   boost::shared_ptr<Processor> endpoint,
                                                         bool include_endpoint, bool for_export, bool for_freeze);
@@ -988,8 +990,6 @@ class LIBARDOUR_API Session : public PBD::StatefulDestructible, public PBD::Scop
        framecnt_t              _worst_input_latency;
        framecnt_t              _worst_track_latency;
        bool                    _have_captured;
-       float                   _meter_hold;
-       float                   _meter_falloff;
        bool                    _non_soloed_outs_muted;
        uint32_t                _listen_cnt;
        uint32_t                _solo_isolated_cnt;
@@ -1169,10 +1169,15 @@ class LIBARDOUR_API Session : public PBD::StatefulDestructible, public PBD::Scop
        void reset_rf_scale (framecnt_t frames_moved);
 
        Locations*       _locations;
-       void              locations_changed ();
-       void              locations_added (Location*);
-       void              handle_locations_changed (Locations::LocationList&);
-       void              sync_locations_to_skips (Locations::LocationList&);
+       void              location_added (Location*);
+       void              location_removed (Location*);
+        void              locations_changed ();
+        void             _locations_changed (const Locations::LocationList&);
+
+        void              update_skips (Location*, bool consolidate);
+        Locations::LocationList consolidate_skips (Location*);
+       void              sync_locations_to_skips (const Locations::LocationList&);
+        PBD::ScopedConnectionList skip_connections;
 
        PBD::ScopedConnectionList punch_connections;
        void             auto_punch_start_changed (Location *);
@@ -1634,7 +1639,7 @@ class LIBARDOUR_API Session : public PBD::StatefulDestructible, public PBD::Scop
        /** true if timecode transmission by the transport is suspended, otherwise false */
        mutable gint _suspend_timecode_transmission;
 
-       void update_locations_after_tempo_map_change (Locations::LocationList &);
+       void update_locations_after_tempo_map_change (const Locations::LocationList &);
 
        void start_time_changed (framepos_t);
        void end_time_changed (framepos_t);