class Session;
class Region;
class Playlist;
+class Crossfade;
namespace Properties {
/* fake the type, since regions are handled by SequenceProperty which doesn't
bool hidden() const { return _hidden; }
bool empty() const;
uint32_t n_regions() const;
- std::pair<framecnt_t, framecnt_t> get_extent () const;
+ std::pair<framepos_t, framepos_t> get_extent () const;
layer_t top_layer() const;
EditMode get_edit_mode() const { return _edit_mode; }
uint32_t count_regions_at (framepos_t);
RegionList* regions_touched (framepos_t start, framepos_t end);
RegionList* regions_to_read (framepos_t start, framepos_t end);
+ uint32_t region_use_count (boost::shared_ptr<Region>) const;
boost::shared_ptr<Region> find_region (const PBD::ID&) const;
boost::shared_ptr<Region> top_region_at (framepos_t frame);
boost::shared_ptr<Region> top_unmuted_region_at (framepos_t frame);
void set_explicit_relayering (bool e);
+ virtual boost::shared_ptr<Crossfade> find_crossfade (const PBD::ID &) const {
+ return boost::shared_ptr<Crossfade> ();
+ }
+
+ framepos_t find_next_top_layer_position (framepos_t) const;
+
protected:
friend class Session;
void copy_regions (RegionList&) const;
void partition_internal (framepos_t start, framepos_t end, bool cutting, RegionList& thawlist);
- std::pair<framecnt_t, framecnt_t> _get_extent() const;
+ std::pair<framepos_t, framepos_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);