summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2020-03-08 22:47:09 +0100
committerCarl Hetherington <cth@carlh.net>2020-03-08 22:47:09 +0100
commit900ad47ca6e2addab8ac376daed834dd7b28c01d (patch)
tree3123b25edad25188b730592cf5182fc5e4d8a2af
parentfea967ca635b04ca70f3f44d2e02f551fc9d6684 (diff)
Add Reel::assets().
-rw-r--r--src/reel.cc20
-rw-r--r--src/reel.h2
2 files changed, 22 insertions, 0 deletions
diff --git a/src/reel.cc b/src/reel.cc
index 14c0b1e2..3bf249c9 100644
--- a/src/reel.cc
+++ b/src/reel.cc
@@ -282,6 +282,26 @@ Reel::add (shared_ptr<ReelAsset> asset)
}
}
+list<shared_ptr<ReelAsset> >
+Reel::assets () const
+{
+ list<shared_ptr<ReelAsset> > a;
+ if (_main_picture) {
+ a.push_back (_main_picture);
+ }
+ if (_main_sound) {
+ a.push_back (_main_sound);
+ }
+ if (_main_subtitle) {
+ a.push_back (_main_subtitle);
+ }
+ std::copy (_closed_captions.begin(), _closed_captions.end(), back_inserter(a));
+ if (_atmos) {
+ a.push_back (_atmos);
+ }
+ return a;
+}
+
void
Reel::resolve_refs (list<shared_ptr<Asset> > assets)
{
diff --git a/src/reel.h b/src/reel.h
index 0a3cf19a..3792682e 100644
--- a/src/reel.h
+++ b/src/reel.h
@@ -111,6 +111,8 @@ public:
void add (boost::shared_ptr<ReelAsset> asset);
+ std::list<boost::shared_ptr<ReelAsset> > assets () const;
+
void write_to_cpl (xmlpp::Element* node, Standard standard) const;
bool encrypted () const;