summaryrefslogtreecommitdiff
path: root/libs/ardour/ardour
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2011-05-26 17:22:22 +0000
committerPaul Davis <paul@linuxaudiosystems.com>2011-05-26 17:22:22 +0000
commitd6be900da002cde17570e742bcc48f1588f73dc9 (patch)
tree8996b368649d87610329a54385960ee3c013204f /libs/ardour/ardour
parent92ede6153eaf7eaae359a456307f697d04e2fcb7 (diff)
more combine/uncombine fixes including making uncombine push the compound region gain level into the constituents and doing the right thing when we uncombine in a playlist other than the one in which the compound region was created
git-svn-id: svn://localhost/ardour2/branches/3.0@9601 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/ardour/ardour')
-rw-r--r--libs/ardour/ardour/audio_playlist_source.h2
-rw-r--r--libs/ardour/ardour/playlist_source.h10
-rw-r--r--libs/ardour/ardour/source_factory.h2
3 files changed, 8 insertions, 6 deletions
diff --git a/libs/ardour/ardour/audio_playlist_source.h b/libs/ardour/ardour/audio_playlist_source.h
index 3514a06407..273651b7d1 100644
--- a/libs/ardour/ardour/audio_playlist_source.h
+++ b/libs/ardour/ardour/audio_playlist_source.h
@@ -56,7 +56,7 @@ class AudioPlaylistSource : public AudioSource, public PlaylistSource {
protected:
friend class SourceFactory;
- AudioPlaylistSource (Session&, const std::string& name, boost::shared_ptr<AudioPlaylist>, uint32_t chn,
+ AudioPlaylistSource (Session&, const PBD::ID& orig, const std::string& name, boost::shared_ptr<AudioPlaylist>, uint32_t chn,
frameoffset_t begin, framecnt_t len, Source::Flag flags);
AudioPlaylistSource (Session&, const XMLNode&);
diff --git a/libs/ardour/ardour/playlist_source.h b/libs/ardour/ardour/playlist_source.h
index ed48fbabd5..b41569cbdd 100644
--- a/libs/ardour/ardour/playlist_source.h
+++ b/libs/ardour/ardour/playlist_source.h
@@ -37,13 +37,15 @@ class PlaylistSource : virtual public Source {
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;
- frameoffset_t _playlist_offset;
- framecnt_t _playlist_length;
+ boost::shared_ptr<Playlist> _playlist;
+ PBD::ID _original;
+ frameoffset_t _playlist_offset;
+ framecnt_t _playlist_length;
- PlaylistSource (Session&, const std::string& name, boost::shared_ptr<Playlist>, DataType,
+ PlaylistSource (Session&, const PBD::ID&, const std::string& name, boost::shared_ptr<Playlist>, DataType,
frameoffset_t begin, framecnt_t len, Source::Flag flags);
PlaylistSource (Session&, const XMLNode&);
diff --git a/libs/ardour/ardour/source_factory.h b/libs/ardour/ardour/source_factory.h
index 427bf10a56..df15653c1d 100644
--- a/libs/ardour/ardour/source_factory.h
+++ b/libs/ardour/ardour/source_factory.h
@@ -56,7 +56,7 @@ class SourceFactory {
static boost::shared_ptr<Source> createFromPlaylist
- (DataType type, Session& s, boost::shared_ptr<Playlist> p, const std::string& name,
+ (DataType type, Session& s, boost::shared_ptr<Playlist> p, const PBD::ID& orig, const std::string& name,
uint32_t chn, frameoffset_t start, framecnt_t len, bool copy, bool defer_peaks);
static Glib::Cond* PeaksToBuild;