X-Git-Url: https://main.carlh.net/gitweb/?p=dcpomatic.git;a=blobdiff_plain;f=src%2Flib%2Fspl_entry.h;h=d939ec66a23193d205972f5f033559ed4726ebcc;hp=e79d89afcf7263f0cdd37f7a7e126c95ebd2ec82;hb=f515b8daea9d28200be803bb64ff17e9f30343c4;hpb=c4ac1ba47652884a647103ec49b2de4c0b6e60a9 diff --git a/src/lib/spl_entry.h b/src/lib/spl_entry.h index e79d89afc..d939ec66a 100644 --- a/src/lib/spl_entry.h +++ b/src/lib/spl_entry.h @@ -21,24 +21,43 @@ #ifndef DCPOMATIC_SPL_ENTRY_H #define DCPOMATIC_SPL_ENTRY_H -#include "dcpomatic_time.h" +#include +#include +#include -namespace dcp { - class CPL; +namespace xmlpp { + class Element; } +class Content; + class SPLEntry { public: - SPLEntry (boost::shared_ptr cpl_, boost::filesystem::path directory_) - : cpl (cpl_) - , directory (directory_) - {} - - /* Length of black before this DCP */ - DCPTime black_before; - boost::shared_ptr cpl; - boost::filesystem::path directory; + SPLEntry (boost::shared_ptr content); + SPLEntry (boost::shared_ptr content, cxml::ConstNodePtr node); + + void as_xml (xmlpp::Element* e); + + boost::shared_ptr content; + std::string name; + /** Digest of this content */ + std::string digest; + /** CPL ID or something else for MP4 (?) */ + std::string id; + dcp::ContentKind kind; + enum Type { + DCP, + ECINEMA + }; + Type type; + bool encrypted; + bool skippable; + bool disable_timeline; + bool stop_after_play; + +private: + void construct (boost::shared_ptr content); }; #endif