Logging improvements to allow prettier displays in the server GUI.
[dcpomatic.git] / src / lib / cinema.h
index d8e28ecfdecfecc569d68396cf5742a063a19d4a..3bf958d82b451d5f49e0183730c5ef2a22d864dd 100644 (file)
@@ -1,5 +1,5 @@
 /*
-    Copyright (C) 2013 Carl Hetherington <cth@carlh.net>
+    Copyright (C) 2013-2014 Carl Hetherington <cth@carlh.net>
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
 
 */
 
-#include <boost/enable_shared_from_this.hpp>
-#include <dcp/certificates.h>
+/** @file  src/lib/cinema.h
+ *  @brief Cinema class.
+ */
 
-class Cinema;
+#include <libcxml/cxml.h>
+#include <boost/enable_shared_from_this.hpp>
 
-namespace cxml {
-       class Node;
+namespace xmlpp {
+       class Element;
 }
 
-class Screen
-{
-public:
-       Screen (std::string const & n, boost::shared_ptr<dcp::Certificate> cert)
-               : name (n)
-               , certificate (cert)
-       {}
-
-       Screen (boost::shared_ptr<const cxml::Node>);
-
-       void as_xml (xmlpp::Element *) const;
-       
-       boost::shared_ptr<Cinema> cinema;
-       std::string name;
-       boost::shared_ptr<dcp::Certificate> certificate;
-};
+class Screen;
 
+/** @class Cinema
+ *  @brief A description of a Cinema for KDM generation.
+ *
+ *  This is a cinema name, contact email address and a list of
+ *  Screen objects.
+ */
 class Cinema : public boost::enable_shared_from_this<Cinema>
 {
 public:
@@ -51,21 +44,21 @@ public:
                , email (e)
        {}
 
-       Cinema (boost::shared_ptr<const cxml::Node>);
+       Cinema (cxml::ConstNodePtr);
 
-       void read_screens (boost::shared_ptr<const cxml::Node>);
+       void read_screens (cxml::ConstNodePtr);
 
        void as_xml (xmlpp::Element *) const;
 
        void add_screen (boost::shared_ptr<Screen>);
        void remove_screen (boost::shared_ptr<Screen>);
-       
+
        std::string name;
        std::string email;
        std::list<boost::shared_ptr<Screen> > screens () const {
                return _screens;
        }
 
-private:       
+private:
        std::list<boost::shared_ptr<Screen> > _screens;
 };