ThreadWeaver
10 #define JOBINTERFACE_H
12 #include <QSharedPointer>
14 #include "jobpointer.h"
15 #include "threadweaver_export.h"
19 namespace ThreadWeaver
29 class THREADWEAVER_EXPORT JobInterface
40 Status_NumberOfStatuses,
43 virtual ~JobInterface()
46 virtual void execute(
const JobPointer &job, Thread *) = 0;
47 virtual void blockingExecute() = 0;
48 virtual Executor *setExecutor(Executor *executor) = 0;
49 virtual Executor *executor()
const = 0;
50 virtual int priority()
const = 0;
52 virtual void setStatus(Status) = 0;
53 virtual bool success()
const = 0;
54 virtual void requestAbort() = 0;
55 virtual void aboutToBeQueued(QueueAPI *api) = 0;
56 virtual void aboutToBeQueued_locked(QueueAPI *api) = 0;
57 virtual void aboutToBeDequeued(QueueAPI *api) = 0;
58 virtual void aboutToBeDequeued_locked(QueueAPI *api) = 0;
59 virtual bool isFinished()
const = 0;
60 virtual void assignQueuePolicy(QueuePolicy *) = 0;
61 virtual void removeQueuePolicy(QueuePolicy *) = 0;
63 virtual void run(JobPointer
self, Thread *thread) = 0;
64 friend class Executor;
65 virtual void defaultBegin(
const JobPointer &job, Thread *thread) = 0;
66 virtual void defaultEnd(
const JobPointer &job, Thread *thread) = 0;
67 virtual QMutex *mutex()
const = 0;
74 #endif // JOBINTERFACE_H
Q_SCRIPTABLE CaptureState status()
KIOWIDGETS_EXPORT bool run(const QUrl &_url, bool _is_local)
This file is part of the KDE documentation.
Documentation copyright © 1996-2023 The KDE developers.
Generated on Thu Sep 21 2023 04:10:21 by
doxygen 1.8.17 written
by
Dimitri van Heesch, © 1997-2006
KDE's Doxygen guidelines are available online.