Make pause/resume work properly in the batch converter.
[dcpomatic.git] / src / lib / job_manager.h
index 4fe1e45d6b337302611d2c500721dfb719df0e88..435c250d194f015eff06f0e97d45779e2156dfb9 100644 (file)
@@ -70,14 +70,14 @@ public:
                std::shared_ptr<const Playlist> playlist,
                bool from_zero,
                boost::signals2::connection& connection,
-               boost::function<void()> ready
+               std::function<void()> ready
                );
 
        void analyse_subtitles (
                std::shared_ptr<const Film> film,
                std::shared_ptr<Content> content,
                boost::signals2::connection& connection,
-               boost::function<void()> ready
+               std::function<void()> ready
                );
 
        boost::signals2::signal<void (std::weak_ptr<Job>)> JobAdded;
@@ -96,20 +96,20 @@ private:
        ~JobManager ();
        void scheduler ();
        void start ();
-       void priority_changed ();
        void job_finished ();
 
        mutable boost::mutex _mutex;
-       boost::condition _empty_condition;
+       boost::condition _schedule_condition;
        /** List of jobs in the order that they will be executed */
        std::list<std::shared_ptr<Job>> _jobs;
        std::list<boost::signals2::connection> _connections;
        bool _terminate = false;
-       bool _paused = false;
-       std::shared_ptr<Job> _paused_job;
 
        boost::optional<std::string> _last_active_job;
        boost::thread _scheduler;
 
+       /** true if all jobs should be paused */
+       bool _paused = false;
+
        static JobManager* _instance;
 };