summaryrefslogtreecommitdiff
path: root/libs/ardour/playlist.cc
diff options
context:
space:
mode:
Diffstat (limited to 'libs/ardour/playlist.cc')
-rw-r--r--libs/ardour/playlist.cc29
1 files changed, 29 insertions, 0 deletions
diff --git a/libs/ardour/playlist.cc b/libs/ardour/playlist.cc
index b93ac55326..c3b91f3f45 100644
--- a/libs/ardour/playlist.cc
+++ b/libs/ardour/playlist.cc
@@ -1517,6 +1517,35 @@ Playlist::duplicate_ranges (std::list<AudioRange>& ranges, float times)
_splicing = old_sp;
}
+void
+Playlist::AddToSoloSelectedList(const Region* r)
+{
+ _soloSelectedRegions.insert (r);
+}
+
+
+void
+Playlist::RemoveFromSoloSelectedList(const Region* r)
+{
+ _soloSelectedRegions.erase (r);
+}
+
+
+bool
+Playlist::SoloSelectedListIncludes(const Region* r)
+{
+ std::set<const Region*>::iterator i = _soloSelectedRegions.find(r);
+
+ return ( i != _soloSelectedRegions.end() );
+}
+
+bool
+Playlist::SoloSelectedActive()
+{
+ return !_soloSelectedRegions.empty();
+}
+
+
void
Playlist::possibly_splice (samplepos_t at, samplecnt_t distance, boost::shared_ptr<Region> exclude)
{