QTaskInterface Class
QTaskInterface is a helper class used when adapting custom task's interface. More...
| Header: | #include <qtasktree.h> |
| Inherits: | QObject |
Note: All functions in this class are reentrant.
Public Functions
| void | reportDone(QtTaskTree::DoneResult result) |
Detailed Description
The custom Adapter type of the QCustomTask<Task, Adapter, Deleter> template is expected to have the following form, when adapting Worker task:
class WorkerTaskAdapter { public: void operator()(Worker *task, QTaskInterface *iface) { ... } }; using WorkerTask = QCustomTask<Worker, WorkerTaskAdapter>;
Member Function Documentation
void QTaskInterface::reportDone(QtTaskTree::DoneResult result)
This method should be called when the task adapted via custom adapter is finished, passing the result of the task execution.
Assuming the Worker emits a finished(bool) signal, the adapter may look like:
class WorkerTaskAdapter { public: void operator()(Worker *task, QTaskInterface *iface) { connect(task, &Worker::finished, iface, [iface](bool success) { iface->reportDone(QtTaskTree::toDoneResult(success)); }); task->execute(); } }; using WorkerTask = QCustomTask<Worker, WorkerTaskAdapter>;
See also QCustomTask.