Tiny optimisation; Object default constructor calls make_uuid.
[libdcp.git] / src / object.h
index 636c76a04ed3b233d3a253718ca870459716ca4b..70cbe9996be1ec652df85cb6d97cb5f25e6a1c76 100644 (file)
 
 */
 
+/** @file  src/object.h
+ *  @brief Object class.
+ */
+
 #ifndef LIBDCP_OBJECT_H
 #define LIBDCP_OBJECT_H
 
+#include <boost/noncopyable.hpp>
 #include <string>
 
+class write_subtitle_test;
+
 namespace dcp {
 
-/** Some part of a DCP that has a UUID */
-class Object
+/** @class Object
+ *  @brief Some part of a DCP that has a UUID.
+ */
+class Object : public boost::noncopyable
 {
 public:
        Object ();
        Object (std::string id);
        virtual ~Object () {}
 
+       /** @return ID */
        std::string id () const {
                return _id;
        }
 
 protected:
+       friend class ::write_subtitle_test;
+       
+       /** ID */
        std::string _id;
 };