X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=libs%2Fardour%2Fardour%2Fregion.h;h=9dc51e2d4a4bc447940c82917486612f9b806b11;hb=eaa1dacf5fc9537cfff36e2339bd07aab348aa2e;hp=ec4f559a87e78563b4704a0f053dd25a6d4e139e;hpb=94e0a15325278ec26dbeba4990a0e883db859338;p=ardour.git diff --git a/libs/ardour/ardour/region.h b/libs/ardour/ardour/region.h index ec4f559a87..9dc51e2d4a 100644 --- a/libs/ardour/ardour/region.h +++ b/libs/ardour/ardour/region.h @@ -57,6 +57,8 @@ namespace Properties { LIBARDOUR_API extern PBD::PropertyDescriptor start; LIBARDOUR_API extern PBD::PropertyDescriptor length; LIBARDOUR_API extern PBD::PropertyDescriptor position; + LIBARDOUR_API extern PBD::PropertyDescriptor beat; + LIBARDOUR_API extern PBD::PropertyDescriptor pulse; LIBARDOUR_API extern PBD::PropertyDescriptor sync_position; LIBARDOUR_API extern PBD::PropertyDescriptor layer; LIBARDOUR_API extern PBD::PropertyDescriptor ancestral_start; @@ -171,9 +173,13 @@ class LIBARDOUR_API Region Trimmable::CanTrim can_trim () const; PositionLockStyle position_lock_style () const { return _position_lock_style; } - double beat () const { return _beat; } void set_position_lock_style (PositionLockStyle ps); - void recompute_position_from_lock_style (const int32_t& sub_num); + void recompute_position_from_lock_style (const int32_t sub_num); + + double beat () const { return _beat; } + void set_beat (double beat) { _beat = beat; } + double pulse () const { return _pulse; } + void set_pulse (double pulse) { _pulse = pulse; } void suspend_property_changes (); @@ -205,7 +211,7 @@ class LIBARDOUR_API Region /* EDITING OPERATIONS */ - void set_length (framecnt_t, const int32_t& sub_num); + void set_length (framecnt_t, const int32_t sub_num); void set_start (framepos_t); void set_position (framepos_t, int32_t sub_num = 0); void set_initial_position (framepos_t); @@ -216,15 +222,15 @@ class LIBARDOUR_API Region bool at_natural_position () const; void move_to_natural_position (); - void move_start (frameoffset_t distance, const int32_t& sub_num = 0); - void trim_front (framepos_t new_position, const int32_t& sub_num = 0); - void trim_end (framepos_t new_position, const int32_t& sub_num = 0); - void trim_to (framepos_t position, framecnt_t length, const int32_t& sub_num = 0); + void move_start (frameoffset_t distance, const int32_t sub_num = 0); + void trim_front (framepos_t new_position, const int32_t sub_num = 0); + void trim_end (framepos_t new_position, const int32_t sub_num = 0); + void trim_to (framepos_t position, framecnt_t length, const int32_t sub_num = 0); virtual void fade_range (framepos_t, framepos_t) {} - void cut_front (framepos_t new_position, const int32_t& sub_num = 0); - void cut_end (framepos_t new_position, const int32_t& sub_num = 0); + void cut_front (framepos_t new_position, const int32_t sub_num = 0); + void cut_end (framepos_t new_position, const int32_t sub_num = 0); void set_layer (layer_t l); /* ONLY Playlist can call this */ void raise (); @@ -339,7 +345,7 @@ class LIBARDOUR_API Region Region (boost::shared_ptr); /** Construct a region from another region, at an offset within that region */ - Region (boost::shared_ptr, frameoffset_t start_offset, const int32_t& sub_num); + Region (boost::shared_ptr, frameoffset_t start_offset, const int32_t sub_num); /** Construct a region as a copy of another region, but with different sources */ Region (boost::shared_ptr, const SourceList&); @@ -356,9 +362,9 @@ class LIBARDOUR_API Region void send_change (const PBD::PropertyChange&); virtual int _set_state (const XMLNode&, int version, PBD::PropertyChange& what_changed, bool send_signal); void post_set (const PBD::PropertyChange&); - virtual void set_position_internal (framepos_t pos, bool allow_bbt_recompute, const int32_t& sub_num); - virtual void set_length_internal (framecnt_t, const int32_t& sub_num); - virtual void set_start_internal (framecnt_t, const int32_t& sub_num = 0); + virtual void set_position_internal (framepos_t pos, bool allow_bbt_recompute, const int32_t sub_num); + virtual void set_length_internal (framecnt_t, const int32_t sub_num); + virtual void set_start_internal (framecnt_t, const int32_t sub_num = 0); bool verify_start_and_length (framepos_t, framecnt_t&); void first_edit (); @@ -371,6 +377,8 @@ class LIBARDOUR_API Region PBD::Property _start; PBD::Property _length; PBD::Property _position; + PBD::Property _beat; + PBD::Property _pulse; /** Sync position relative to the start of our file */ PBD::Property _sync_position; @@ -396,9 +404,9 @@ class LIBARDOUR_API Region private: void mid_thaw (const PBD::PropertyChange&); - virtual void trim_to_internal (framepos_t position, framecnt_t length, const int32_t& sub_num); - void modify_front (framepos_t new_position, bool reset_fade, const int32_t& sub_num); - void modify_end (framepos_t new_position, bool reset_fade, const int32_t& sub_num); + virtual void trim_to_internal (framepos_t position, framecnt_t length, const int32_t sub_num); + void modify_front (framepos_t new_position, bool reset_fade, const int32_t sub_num); + void modify_end (framepos_t new_position, bool reset_fade, const int32_t sub_num); void maybe_uncopy (); @@ -429,7 +437,6 @@ class LIBARDOUR_API Region framecnt_t _last_length; framepos_t _last_position; mutable RegionEditState _first_edit; - double _beat; layer_t _layer; void register_properties ();