[Mesa-dev] [PATCH 11/16] main: Added entry points for glGetQueryBufferObject*

Laura Ekstrand laura at jlekstrand.net
Thu Feb 26 15:33:05 PST 2015


LGTM.

Reviewed-by: Laura Ekstrand <laura at jlekstrand.net>

On Mon, Feb 16, 2015 at 6:14 AM, Martin Peres <martin.peres at linux.intel.com>
wrote:

> These entry points will be fleshed out when the GL_ARB_query_buffer_object
> extension gets implemented. In the meantime, return GL_INVALID_OPERATION as
> suggested by Ian.
>
> Signed-off-by: Martin Peres <martin.peres at linux.intel.com>
> ---
>  src/mapi/glapi/gen/ARB_direct_state_access.xml | 27 ++++++++++++++++++
>  src/mesa/main/queryobj.c                       | 39
> ++++++++++++++++++++++++++
>  src/mesa/main/queryobj.h                       | 12 ++++++++
>  src/mesa/main/tests/dispatch_sanity.cpp        |  4 +++
>  4 files changed, 82 insertions(+)
>
> diff --git a/src/mapi/glapi/gen/ARB_direct_state_access.xml
> b/src/mapi/glapi/gen/ARB_direct_state_access.xml
> index 652e8bc..99d2422 100644
> --- a/src/mapi/glapi/gen/ARB_direct_state_access.xml
> +++ b/src/mapi/glapi/gen/ARB_direct_state_access.xml
> @@ -316,5 +316,32 @@
>        <param name="ids" type="GLuint *" />
>     </function>
>
> +   <function name="GetQueryBufferObjectiv" offset="assign">
> +      <param name="id" type="GLuint" />
> +      <param name="buffer" type="GLuint" />
> +      <param name="pname" type="GLenum" />
> +      <param name="offset" type="GLintptr" />
> +   </function>
> +
> +   <function name="GetQueryBufferObjectuiv" offset="assign">
> +      <param name="id" type="GLuint" />
> +      <param name="buffer" type="GLuint" />
> +      <param name="pname" type="GLenum" />
> +      <param name="offset" type="GLintptr" />
> +   </function>
> +
> +   <function name="GetQueryBufferObjecti64v" offset="assign">
> +      <param name="id" type="GLuint" />
> +      <param name="buffer" type="GLuint" />
> +      <param name="pname" type="GLenum" />
> +      <param name="offset" type="GLintptr" />
> +   </function>
> +
> +   <function name="GetQueryBufferObjectui64v" offset="assign">
> +      <param name="id" type="GLuint" />
> +      <param name="buffer" type="GLuint" />
> +      <param name="pname" type="GLenum" />
> +      <param name="offset" type="GLintptr" />
> +   </function>
>  </category>
>  </OpenGLAPI>
> diff --git a/src/mesa/main/queryobj.c b/src/mesa/main/queryobj.c
> index 1bb74c9..19bc682 100644
> --- a/src/mesa/main/queryobj.c
> +++ b/src/mesa/main/queryobj.c
> @@ -820,6 +820,45 @@ _mesa_GetQueryObjectui64v(GLuint id, GLenum pname,
> GLuint64EXT *params)
>  }
>
>  /**
> + * New with GL_ARB_query_buffer_object
> + */
> +void GLAPIENTRY
> +_mesa_GetQueryBufferObjectiv(GLuint id, GLuint buffer, GLenum pname,
> +                             GLintptr offset)
> +{
> +   GET_CURRENT_CONTEXT(ctx);
> +   _mesa_error(ctx, GL_INVALID_OPERATION, "glGetQueryBufferObjectiv");
> +}
> +
> +
> +void GLAPIENTRY
> +_mesa_GetQueryBufferObjectuiv(GLuint id, GLuint buffer, GLenum pname,
> +                              GLintptr offset)
> +{
> +   GET_CURRENT_CONTEXT(ctx);
> +   _mesa_error(ctx, GL_INVALID_OPERATION, "glGetQueryBufferObjectuiv");
> +}
> +
> +
> +void GLAPIENTRY
> +_mesa_GetQueryBufferObjecti64v(GLuint id, GLuint buffer, GLenum pname,
> +                               GLintptr offset)
> +{
> +   GET_CURRENT_CONTEXT(ctx);
> +   _mesa_error(ctx, GL_INVALID_OPERATION, "glGetQueryBufferObjecti64v");
> +}
> +
> +
> +void GLAPIENTRY
> +_mesa_GetQueryBufferObjectui64v(GLuint id, GLuint buffer, GLenum pname,
> +                                GLintptr offset)
> +{
> +   GET_CURRENT_CONTEXT(ctx);
> +   _mesa_error(ctx, GL_INVALID_OPERATION, "glGetQueryBufferObjectui64v");
> +}
> +
> +
> +/**
>   * Allocate/init the context state related to query objects.
>   */
>  void
> diff --git a/src/mesa/main/queryobj.h b/src/mesa/main/queryobj.h
> index 431d420..d1036fc 100644
> --- a/src/mesa/main/queryobj.h
> +++ b/src/mesa/main/queryobj.h
> @@ -79,5 +79,17 @@ void GLAPIENTRY
>  _mesa_GetQueryObjecti64v(GLuint id, GLenum pname, GLint64EXT *params);
>  void GLAPIENTRY
>  _mesa_GetQueryObjectui64v(GLuint id, GLenum pname, GLuint64EXT *params);
> +void GLAPIENTRY
> +_mesa_GetQueryBufferObjectiv(GLuint id, GLuint buffer, GLenum pname,
> +                             GLintptr offset);
> +void GLAPIENTRY
> +_mesa_GetQueryBufferObjectuiv(GLuint id, GLuint buffer, GLenum pname,
> +                              GLintptr offset);
> +void GLAPIENTRY
> +_mesa_GetQueryBufferObjecti64v(GLuint id, GLuint buffer, GLenum pname,
> +                               GLintptr offset);
> +void GLAPIENTRY
> +_mesa_GetQueryBufferObjectui64v(GLuint id, GLuint buffer, GLenum pname,
> +                                GLintptr offset);
>
>  #endif /* QUERYOBJ_H */
> diff --git a/src/mesa/main/tests/dispatch_sanity.cpp
> b/src/mesa/main/tests/dispatch_sanity.cpp
> index ee448f1..b65080e 100644
> --- a/src/mesa/main/tests/dispatch_sanity.cpp
> +++ b/src/mesa/main/tests/dispatch_sanity.cpp
> @@ -994,6 +994,10 @@ const struct function gl_core_functions_possible[] = {
>     { "glTextureStorage3DMultisample", 45, -1 },
>     { "glTextureBuffer", 45, -1 },
>     { "glCreateQueries", 45, -1 },
> +   { "glGetQueryBufferObjectiv", 45, -1 },
> +   { "glGetQueryBufferObjectuiv", 45, -1 },
> +   { "glGetQueryBufferObjecti64v", 45, -1 },
> +   { "glGetQueryBufferObjectui64v", 45, -1 },
>
>     /* GL_EXT_polygon_offset_clamp */
>     { "glPolygonOffsetClampEXT", 11, -1 },
> --
> 2.3.0
>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/mesa-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/mesa-dev/attachments/20150226/6fc40924/attachment.html>


More information about the mesa-dev mailing list