+/** @class Screen
+ * @brief A representation of a Screen for KDM generation.
+ *
+ * This is the name of the screen, the certificate of its
+ * `recipient' (i.e. the mediablock) and the certificates/thumbprints
+ * of any trusted devices.
+ */
+class Screen
+{
+public:
+ Screen (std::string const & n, boost::optional<dcp::Certificate> rec, std::vector<TrustedDevice> td)
+ : name (n)
+ , recipient (rec)
+ , trusted_devices (td)
+ {}
+
+ explicit Screen (cxml::ConstNodePtr);
+
+ void as_xml (xmlpp::Element *) const;
+ std::vector<std::string> trusted_device_thumbprints () const;
+
+ boost::shared_ptr<Cinema> cinema;
+ std::string name;
+ std::string notes;
+ boost::optional<dcp::Certificate> recipient;
+ std::vector<TrustedDevice> trusted_devices;