std::shared_ptr
[dcpomatic.git] / src / lib / transcode_job.h
index 9e827e41259d1b0981a17edc2fa9488758577e0a..88f41d6554cf76fb19b28fb8c6692d42503c4c2b 100644 (file)
@@ -1,5 +1,5 @@
 /*
-    Copyright (C) 2012-2015 Carl Hetherington <cth@carlh.net>
+    Copyright (C) 2012-2019 Carl Hetherington <cth@carlh.net>
 
     This file is part of DCP-o-matic.
 
  */
 
 #include "job.h"
-#include <boost/shared_ptr.hpp>
 
-class DCPTranscoder;
+class Encoder;
 
 /** @class TranscodeJob
- *  @brief A job which transcodes from one format to another.
+ *  @brief A job which transcodes a Film to another format.
  */
 class TranscodeJob : public Job
 {
 public:
-       TranscodeJob (boost::shared_ptr<const Film> film);
+       explicit TranscodeJob (std::shared_ptr<const Film> film);
+       ~TranscodeJob ();
 
        std::string name () const;
        std::string json_name () const;
        void run ();
        std::string status () const;
 
+       void set_encoder (std::shared_ptr<Encoder> t);
+
 private:
        int remaining_time () const;
 
-       boost::shared_ptr<DCPTranscoder> _transcoder;
+       std::shared_ptr<Encoder> _encoder;
 };