2 #include <boost/shared_ptr.hpp>
7 class MainPicture : public XMLNode
11 MainPicture (xmlpp::Node const * node);
14 std::string annotation_text;
16 int64_t intrinsic_duration;
20 Fraction screen_aspect_ratio;
23 class MainSound : public XMLNode
27 MainSound (xmlpp::Node const * node);
30 std::string annotation_text;
32 int64_t intrinsic_duration;
37 class MainSubtitle : public XMLNode
41 MainSubtitle (xmlpp::Node const * node);
44 std::string annotation_text;
46 int64_t intrinsic_duration;
51 class CPLAssetList : public XMLNode
55 CPLAssetList (xmlpp::Node const * node);
57 boost::shared_ptr<MainPicture> main_picture;
58 boost::shared_ptr<MainSound> main_sound;
59 boost::shared_ptr<MainSubtitle> main_subtitle;
62 class Reel : public XMLNode
66 Reel (xmlpp::Node const * node);
69 boost::shared_ptr<CPLAssetList> asset_list;
72 class ContentVersion : public XMLNode
76 ContentVersion (xmlpp::Node const * node);
79 std::string label_text;
82 class CPL : public XMLFile
85 CPL (std::string file);
88 std::string annotation_text;
89 std::string issue_date;
91 std::string content_title_text;
92 ContentKind content_kind;
93 boost::shared_ptr<ContentVersion> content_version;
94 std::list<boost::shared_ptr<Reel> > reels;