X-Git-Url: https://git.carlh.net/gitweb/?a=blobdiff_plain;f=src%2Freel.h;h=35302f17d96cdd0baf52a69314953b1adce07a73;hb=0ad84c854da64d0710f06307f63d8b70ac59b681;hp=0ad5ace2bc54f1a7582e53c05e95f2b9ef229f0e;hpb=ed6a471b61d36a3ba7e8696fa3e5606406c5cf62;p=libdcp.git diff --git a/src/reel.h b/src/reel.h index 0ad5ace2..35302f17 100644 --- a/src/reel.h +++ b/src/reel.h @@ -17,8 +17,14 @@ */ +#ifndef LIBDCP_REEL_H +#define LIBDCP_REEL_H + #include #include +#include +#include +#include "key.h" #include "types.h" namespace xmlpp { @@ -28,17 +34,18 @@ namespace xmlpp { namespace libdcp { class PictureAsset; -class SoundAsset; -class SubtitleAsset; +class SoundAsset; +class SubtitleAsset; +class KDM; /** @brief A reel within a DCP; the part which actually contains picture, sound and subtitle data */ class Reel { public: Reel ( - boost::shared_ptr picture, - boost::shared_ptr sound, - boost::shared_ptr subtitle + boost::shared_ptr picture, + boost::shared_ptr sound, + boost::shared_ptr subtitle ) : _main_picture (picture) , _main_sound (sound) @@ -57,14 +64,22 @@ public: return _main_subtitle; } - void write_to_cpl (xmlpp::Node *) const; + void write_to_cpl (xmlpp::Element *) const; + + bool encrypted () const; - bool equals (boost::shared_ptr other, EqualityOptions opt, std::list& notes) const; + void set_mxf_keys (libdcp::Key); + + bool equals (boost::shared_ptr other, EqualityOptions opt, boost::function notes) const; + + void add_kdm (KDM const &); private: - boost::shared_ptr _main_picture; - boost::shared_ptr _main_sound; - boost::shared_ptr _main_subtitle; + boost::shared_ptr _main_picture; + boost::shared_ptr _main_sound; + boost::shared_ptr _main_subtitle; }; } + +#endif