diff options
author | Brian Paul <brianp@vmware.com> | 2010-01-29 12:36:26 -0700 |
---|---|---|
committer | Brian Paul <brianp@vmware.com> | 2010-01-29 14:01:34 -0700 |
commit | 98f3f1c695f232120541670a8b5a355003ce3cc8 (patch) | |
tree | 49bff4191e5608647c4eb7ebbf47490017c3e65c | |
parent | 3fc73c389a62228792608b3c7a9cf7ad24f1a8b3 (diff) |
gallium: document pipe_context::get_query_result()
-rw-r--r-- | src/gallium/docs/source/context.rst | 12 | ||||
-rw-r--r-- | src/gallium/include/pipe/p_context.h | 5 |
2 files changed, 14 insertions, 3 deletions
diff --git a/src/gallium/docs/source/context.rst b/src/gallium/docs/source/context.rst index 78b01cc9cbe..a7669575b95 100644 --- a/src/gallium/docs/source/context.rst +++ b/src/gallium/docs/source/context.rst @@ -148,9 +148,15 @@ draws. Queries may be nested, though no state tracker currently exercises this. Queries can be created with ``create_query`` and deleted with -``destroy_query``. To enable a query, use ``begin_query``, and when finished, -use ``end_query`` to stop the query. Finally, ``get_query_result`` is used -to retrieve the results. +``destroy_query``. To start a query, use ``begin_query``, and when finished, +use ``end_query`` to end the query. + +``get_query_result`` is used to retrieve the results of a query. If +the ``wait`` parameter is TRUE, then the ``get_query_result`` call +will block until the results of the query are ready (and TRUE will be +returned). Otherwise, if the ``wait`` parameter is FALSE, the call +will not block and the return value will be TRUE if the query has +completed or FALSE otherwise. A common type of query is the occlusion query which counts the number of fragments/pixels which are written to the framebuffer (and not culled by diff --git a/src/gallium/include/pipe/p_context.h b/src/gallium/include/pipe/p_context.h index f3ee0954481..f1e6a60e041 100644 --- a/src/gallium/include/pipe/p_context.h +++ b/src/gallium/include/pipe/p_context.h @@ -122,6 +122,11 @@ struct pipe_context { void (*begin_query)(struct pipe_context *pipe, struct pipe_query *q); void (*end_query)(struct pipe_context *pipe, struct pipe_query *q); + /** + * Get results of a query. + * \param wait if true, this query will block until the result is ready + * \return TRUE if results are ready, FALSE otherwise + */ boolean (*get_query_result)(struct pipe_context *pipe, struct pipe_query *q, boolean wait, |