From 52dd99e8a4df8ace2fdf8cd173a3338357776bff Mon Sep 17 00:00:00 2001 From: "Daniel P. Berrange" Date: Thu, 11 Aug 2016 14:36:21 +0100 Subject: io: add ability to associate an opaque "result" with with a task Currently there is no data associated with a successful task completion. This adds an opaque pointer to the task to store an arbitrary result. Reviewed-by: Eric Blake Signed-off-by: Daniel P. Berrange --- include/io/task.h | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) (limited to 'include/io/task.h') diff --git a/include/io/task.h b/include/io/task.h index 1407747c74..ece1372781 100644 --- a/include/io/task.h +++ b/include/io/task.h @@ -239,6 +239,33 @@ void qio_task_abort(QIOTask *task, Error *err); +/** + * qio_task_set_result_pointer: + * @task: the task struct + * @result: pointer to the result data + * + * Associate an opaque result with the task, + * which can later be retrieved with the + * qio_task_get_result_pointer() method + * + */ +void qio_task_set_result_pointer(QIOTask *task, + gpointer result, + GDestroyNotify notify); + + +/** + * qio_task_get_result_pointer: + * @task: the task struct + * + * Retrieve the opaque result data associated + * with the task, if any. + * + * Returns: the task result, or NULL + */ +gpointer qio_task_get_result_pointer(QIOTask *task); + + /** * qio_task_get_source: * @task: the task struct -- cgit 1.4.1