X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=libs%2Fardour%2Fardour%2Fsession_playlists.h;h=865ad9ed3961bd7a0afe70945f1c84830ab89ba3;hb=50604d83de43e71ccc3190400be2d8c89dbe6b4c;hp=e7ad1624dd9af7d71ee9d6f8d55c072434b4e7c3;hpb=2a7ed69c28c5c4606ff13b3605b9bc9c3eba607d;p=ardour.git diff --git a/libs/ardour/ardour/session_playlists.h b/libs/ardour/ardour/session_playlists.h index e7ad1624dd..865ad9ed39 100644 --- a/libs/ardour/ardour/session_playlists.h +++ b/libs/ardour/ardour/session_playlists.h @@ -54,12 +54,16 @@ public: uint32_t source_use_count (boost::shared_ptr src) const; uint32_t region_use_count (boost::shared_ptr region) const; template void foreach (T *obj, void (T::*func)(boost::shared_ptr)); + void foreach (boost::function)> functor, bool incl_unused = true); void get (std::vector >&) const; void unassigned (std::list > & list); void destroy_region (boost::shared_ptr); boost::shared_ptr find_crossfade (const PBD::ID &); void sync_all_regions_with_regions (); std::vector > playlists_for_track (boost::shared_ptr) const; + std::vector > get_used () const; + std::vector > get_unused () const; + uint32_t n_playlists() const; private: friend class Session; @@ -68,11 +72,11 @@ private: void remove (boost::shared_ptr); void remove_weak (boost::weak_ptr); void track (bool, boost::weak_ptr); + void update_tracking (); - uint32_t n_playlists() const; void find_equivalent_playlist_regions (boost::shared_ptr, std::vector >& result); void update_after_tempo_map_change (); - void add_state (XMLNode *, bool); + void add_state (XMLNode*, bool save_template, bool include_unused); bool maybe_delete_unused (boost::function)>); int load (Session &, const XMLNode&); int load_unused (Session &, const XMLNode&);