Cleanup: make things a little clearer.
[dcpomatic.git] / src / lib / dcp_video.h
index 8efd680a2a1942036fadb6f19ef3895db26e21c8..33df0942cbb5e7a1e6c6c88b3edb3c9e2feb7ec2 100644 (file)
 
 */
 
-#include "types.h"
+
 #include "encode_server_description.h"
+#include "resolution.h"
 #include <libcxml/cxml.h>
 #include <dcp/array_data.h>
+#include <dcp/openjpeg_image.h>
+
 
 /** @file  src/dcp_video_frame.h
  *  @brief A single frame of video destined for a DCP.
  */
 
+
 class Log;
 class PlayerVideo;
 
+
 /** @class DCPVideo
  *  @brief A single frame of video destined for a DCP.
  *
@@ -39,14 +44,17 @@ class PlayerVideo;
  *  Objects of this class are used for the queue that we keep
  *  of images that require encoding.
  */
-class DCPVideo : public boost::noncopyable
+class DCPVideo
 {
 public:
        DCPVideo (std::shared_ptr<const PlayerVideo>, int index, int dcp_fps, int bandwidth, Resolution r);
        DCPVideo (std::shared_ptr<const PlayerVideo>, cxml::ConstNodePtr);
 
-       dcp::ArrayData encode_locally ();
-       dcp::ArrayData encode_remotely (EncodeServerDescription, int timeout = 30);
+       DCPVideo (DCPVideo const&) = default;
+       DCPVideo& operator= (DCPVideo const&) = default;
+
+       dcp::ArrayData encode_locally () const;
+       dcp::ArrayData encode_remotely (EncodeServerDescription, int timeout = 30) const;
 
        int index () const {
                return _index;