/*
- Copyright (C) 2018 Carl Hetherington <cth@carlh.net>
+ Copyright (C) 2018-2021 Carl Hetherington <cth@carlh.net>
This file is part of DCP-o-matic.
*/
-#include "dcpomatic_time.h"
-namespace dcp {
- class CPL;
+#ifndef DCPOMATIC_SPL_ENTRY_H
+#define DCPOMATIC_SPL_ENTRY_H
+
+
+#include <libcxml/cxml.h>
+#include <dcp/types.h>
+
+
+namespace xmlpp {
+ class Element;
}
+class Content;
+
+
class SPLEntry
{
public:
- SPLEntry (boost::shared_ptr<dcp::CPL> cpl_, boost::filesystem::path directory_)
- : cpl (cpl_)
- , directory (directory_)
- {}
-
- /* Length of black before this DCP */
- DCPTime black_before;
- boost::shared_ptr<dcp::CPL> cpl;
- boost::filesystem::path directory;
+ SPLEntry (std::shared_ptr<Content> c);
+
+ void as_xml (xmlpp::Element* e);
+
+ std::shared_ptr<Content> content;
+ std::string name;
+ /** Digest of this content */
+ std::string digest;
+ /** CPL ID */
+ std::string id;
+ dcp::ContentKind kind;
+ bool encrypted;
+
+private:
+ void construct (std::shared_ptr<Content> content);
};
+
+
+#endif