Signature
Parameters
Variables | Description |
---|---|
id |
Specifies the name of a query object.
|
buffer |
Specifies the name of a buffer object.
|
pname |
Specifies the symbolic name of a query object parameter.
Accepted values are
GL_QUERY_RESULT
or
GL_QUERY_RESULT_AVAILABLE
.
|
params |
If a buffer is bound to the
GL_QUERY_RESULT_BUFFER
target, then
params
is treated as an offset to a location within that buffer's data store to receive the result of the query. If
no buffer is bound to
GL_QUERY_RESULT_BUFFER
, then
params
is
treated as an address in client memory of a variable to receive the resulting data.
|
offset |
Specifies the byte offset into
buffer
's data store
where the queried result will be written.
|
Description
These commands return a selected parameter of the query object specified by
id
.
glGetQueryObject
returns in
params
a selected parameter of the query object specified by
id
.
glGetQueryBufferObject
returns in
buffer
a selected parameter of the query object specified by
id
,
by writing it to
buffer
's data store at the byte offset specified by
offset
.
- GL_QUERY_RESULT
- GL_QUERY_RESULT_NO_WAIT
- GL_QUERY_RESULT_AVAILABLE
Notes
glGetQueryObject
and
glGetQueryBufferObject
implicitly flush the GL pipeline so that any incomplete rendering
delimited by the occlusion query completes in finite time.
If multiple queries are issued using the same query object
id
before calling
glGetQueryObject
or
glGetQueryBufferObject
,
the results of the most recent query will be returned. In this case,
when issuing a new query, the results of the previous query are discarded.
glGetQueryObjecti64v
and
glGetQueryObjectui64v
are available only
if the GL version is 3.3 or greater.
GL_QUERY_RESULT_NO_WAIT
is accepted for
pname
only if the
GL version is 4.4 or greater.
The
GL_QUERY_RESULT_BUFFER
target is available only if the GL version is 4.4 or higher.
On earlier versions of the GL,
params
is always an address in client memory.
Errors
GL_INVALID_ENUM
is generated if
pname
is not an accepted value.
GL_INVALID_OPERATION
is generated if
id
is not the name of a query object.
GL_INVALID_OPERATION
is generated by
glGetQueryBufferObject
if
buffer
is not the name of an already created buffer object.
GL_INVALID_OPERATION
is generated if
id
is the name of a currently active
query object.
GL_INVALID_OPERATION
is generated by
glGetQueryObject
if a buffer is currently bound to the
GL_QUERY_RESULT_BUFFER
target and the command would cause data to be written beyond the bounds
of that buffer's data store.
GL_INVALID_OPERATION
is generated by
glGetQueryBufferObject
if the command would cause data to be written beyond the bounds of
buffer
's data store.
Version Support
glGetQueryObjecti64v | |
glGetQueryObjectiv | |
glGetQueryObjectui64v | |
glGetQueryObjectuiv | |
glGetQueryBufferObjecti64v | |
glGetQueryBufferObjectiv | |
glGetQueryBufferObjectui64v | |
glGetQueryBufferObjectuiv |
See Also
Copyright
Copyright
2005 Addison-Wesley.
Copyright
2010-2014 Khronos Group.
This material may be distributed subject to the terms and conditions set forth in
the Open Publication License, v 1.0, 8 June 1999.
http://opencontent.org/openpub/
.
Sample Code References
The following code samples have been found which appear to reference the functions described here. Take care that the code may be old, broken or not even use PyOpenGL.
glGetQueryObjectiv
glGetQueryObjectuiv