class Playlist;
-class PlaylistSource : virtual public Source {
- public:
- virtual ~PlaylistSource ();
-
- int set_state (const XMLNode&, int version);
- boost::shared_ptr<const Playlist> playlist() const { return _playlist; }
-
- protected:
- boost::shared_ptr<Playlist> _playlist;
- frameoffset_t _playlist_offset;
- framecnt_t _playlist_length;
-
- PlaylistSource (Session&, const std::string& name, boost::shared_ptr<Playlist>, DataType,
- frameoffset_t begin, framecnt_t len, Source::Flag flags);
- PlaylistSource (Session&, const XMLNode&);
-
- void add_state (XMLNode&);
+class LIBARDOUR_API PlaylistSource : virtual public Source {
+public:
+ virtual ~PlaylistSource ();
+ int set_state (const XMLNode&, int version);
+ boost::shared_ptr<const Playlist> playlist() const { return _playlist; }
+ const PBD::ID& original() const { return _original; }
+
+protected:
+ boost::shared_ptr<Playlist> _playlist;
+ PBD::ID _original;
+ sampleoffset_t _playlist_offset;
+ samplecnt_t _playlist_length;
+
+ PlaylistSource (Session&, const PBD::ID&, const std::string& name, boost::shared_ptr<Playlist>, DataType,
+ sampleoffset_t begin, samplecnt_t len, Source::Flag flags);
+ PlaylistSource (Session&, const XMLNode&);
+
+ void add_state (XMLNode&);
};
-
+
} /* namespace */
#endif /* __ardour_playlist_source_h__ */