summaryrefslogtreecommitdiff
path: root/src/lib/job_manager.h
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2018-08-16 23:14:57 +0100
committerCarl Hetherington <cth@carlh.net>2018-08-16 23:14:57 +0100
commitbb990ccc49ee724a8af2ad80bde066374af4b68a (patch)
tree4893842f188db4f268def9a2a518bc7858a099b0 /src/lib/job_manager.h
parent773346b1518c68dc7533b381a90e77ae276ae6bc (diff)
Add pause/resume to the batch converter (#1248).
Add some missing locking to JobManager::decrease_priority.
Diffstat (limited to 'src/lib/job_manager.h')
-rw-r--r--src/lib/job_manager.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/lib/job_manager.h b/src/lib/job_manager.h
index a382dd736..aafb7aa67 100644
--- a/src/lib/job_manager.h
+++ b/src/lib/job_manager.h
@@ -47,6 +47,12 @@ public:
bool errors () const;
void increase_priority (boost::shared_ptr<Job>);
void decrease_priority (boost::shared_ptr<Job>);
+ void pause ();
+ void resume ();
+ bool paused () const {
+ boost::mutex::scoped_lock lm (_mutex);
+ return _paused;
+ }
void analyse_audio (
boost::shared_ptr<const Film> film,
@@ -77,6 +83,8 @@ private:
/** List of jobs in the order that they will be executed */
std::list<boost::shared_ptr<Job> > _jobs;
bool _terminate;
+ bool _paused;
+ boost::shared_ptr<Job> _paused_job;
boost::optional<std::string> _last_active_job;
boost::thread* _scheduler;