Add Reel::assets().
authorCarl Hetherington <cth@carlh.net>
Sun, 8 Mar 2020 21:47:09 +0000 (22:47 +0100)
committerCarl Hetherington <cth@carlh.net>
Sun, 8 Mar 2020 21:47:09 +0000 (22:47 +0100)
src/reel.cc
src/reel.h

index 14c0b1e2ac350a874afe539270f1a46da6511c50..3bf249c9d79e534e2cbc4e44a2486bd6dbc84668 100644 (file)
@@ -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)
 {
index 0a3cf19ae8b6a344d7d04468957bdf29f20edd47..3792682e52b9440847de4390c746369a350f189c 100644 (file)
@@ -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;