LGTM. Reviewed-by: Laura Ekstrand <la...@jlekstrand.net>
On Mon, Feb 16, 2015 at 6:14 AM, Martin Peres <martin.pe...@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.pe...@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@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/mesa-dev >
_______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev