summaryrefslogtreecommitdiff
path: root/libs/ardour/ardour/source_factory.h
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2011-05-13 19:55:39 +0000
committerPaul Davis <paul@linuxaudiosystems.com>2011-05-13 19:55:39 +0000
commit41b23ca647c100a3e2cd1641aff52f77216db803 (patch)
treeeb93e387b7cfe9b62f3b6c29478f8544fb749a21 /libs/ardour/ardour/source_factory.h
parentd0bb7df866faa48bb4aac7f947a72501e3dd61c3 (diff)
initial volley of work for AudioPlaylistSource, the basic prototype for sources-that-are-nested
git-svn-id: svn://localhost/ardour2/branches/3.0@9507 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/ardour/ardour/source_factory.h')
-rw-r--r--libs/ardour/ardour/source_factory.h21
1 files changed, 15 insertions, 6 deletions
diff --git a/libs/ardour/ardour/source_factory.h b/libs/ardour/ardour/source_factory.h
index c5994027ce..b8bc5e72b5 100644
--- a/libs/ardour/ardour/source_factory.h
+++ b/libs/ardour/ardour/source_factory.h
@@ -32,6 +32,7 @@ namespace ARDOUR {
class Session;
class AudioSource;
+class Playlist;
class SourceFactory {
public:
@@ -43,13 +44,21 @@ class SourceFactory {
static boost::shared_ptr<Source> createSilent (Session&, const XMLNode& node,
framecnt_t nframes, float sample_rate);
- static boost::shared_ptr<Source> createReadable (DataType type, Session&,
- const std::string& path,
- int chn, Source::Flag flags, bool announce = true, bool async = false);
+ static boost::shared_ptr<Source> createReadable
+ (DataType type, Session&,
+ const std::string& path,
+ int chn, Source::Flag flags, bool announce = true, bool async = false);
- static boost::shared_ptr<Source> createWritable (DataType type, Session&,
- const std::string& path, const std::string& origin,
- bool destructive, framecnt_t rate, bool announce = true, bool async = false);
+ static boost::shared_ptr<Source> createWritable
+ (DataType type, Session&,
+ const std::string& path, const std::string& origin,
+ bool destructive, framecnt_t rate, bool announce = true, bool async = false);
+
+
+ static boost::shared_ptr<Source> createFromPlaylist
+ (DataType type, Session& s, boost::shared_ptr<Playlist> p, const std::string& name,
+ uint32_t chn, frameoffset_t start, framecnt_t len, bool copy, Source::Flag flags,
+ bool announce, bool defer_peaks);
static Glib::Cond* PeaksToBuild;
static Glib::StaticMutex peak_building_lock;