+ {}
+
+ virtual ~ScreenKDM () {}
+
+ virtual std::string kdm_as_xml () const = 0;
+ virtual void kdm_as_xml (boost::filesystem::path out) const = 0;
+ virtual std::string kdm_id () const = 0;
+
+ static int write_files (
+ std::list<boost::shared_ptr<ScreenKDM> > screen_kdms, boost::filesystem::path directory,
+ dcp::NameFormat name_format, dcp::NameFormat::Map name_values,
+ boost::function<bool (boost::filesystem::path)> confirm_overwrite
+ );
+
+ boost::shared_ptr<dcpomatic::Screen> screen;
+};
+
+class DCPScreenKDM : public ScreenKDM
+{
+public:
+ DCPScreenKDM (boost::shared_ptr<dcpomatic::Screen> s, dcp::EncryptedKDM k)
+ : ScreenKDM (s)