Some missing copy constructors / operator= / noncopyable.
[dcpomatic.git] / src / lib / job.h
index 40e90b73c72b3c136f0570cf7198018746610a29..ce3a87f5efdb29b8a8555c06c7446dc7972705b9 100644 (file)
@@ -35,10 +35,10 @@ class Film;
 /** @class Job
  *  @brief A parent class to represent long-running tasks which are run in their own thread.
  */
-class Job : public boost::enable_shared_from_this<Job>
+class Job : public boost::enable_shared_from_this<Job>, public boost::noncopyable
 {
 public:
-       Job (boost::shared_ptr<Film>);
+       Job (boost::shared_ptr<const Film>);
        virtual ~Job() {}
 
        /** @return user-readable name of this job */
@@ -71,7 +71,7 @@ public:
        void descend (float);
        float overall_progress () const;
 
-       /** Emitted by the JobManagerView from the UI thread */
+       /** Emitted from the UI thread when the job is finished */
        boost::signals2::signal<void()> Finished;
 
 protected:
@@ -91,7 +91,7 @@ protected:
        void set_state (State);
        void set_error (std::string s, std::string d);
 
-       boost::shared_ptr<Film> _film;
+       boost::shared_ptr<const Film> _film;
 
 private: