<div dir="ltr"><div>LGTM.<br><br></div>Reviewed-by: Laura Ekstrand <<a href="mailto:laura@jlekstrand.net">laura@jlekstrand.net</a>><br></div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Feb 16, 2015 at 6:14 AM, Martin Peres <span dir="ltr"><<a href="mailto:martin.peres@linux.intel.com" target="_blank">martin.peres@linux.intel.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">These entry points will be fleshed out when the GL_ARB_query_buffer_object<br>
extension gets implemented. In the meantime, return GL_INVALID_OPERATION as<br>
suggested by Ian.<br>
<br>
Signed-off-by: Martin Peres <<a href="mailto:martin.peres@linux.intel.com">martin.peres@linux.intel.com</a>><br>
---<br>
src/mapi/glapi/gen/ARB_direct_state_access.xml | 27 ++++++++++++++++++<br>
src/mesa/main/queryobj.c | 39 ++++++++++++++++++++++++++<br>
src/mesa/main/queryobj.h | 12 ++++++++<br>
src/mesa/main/tests/dispatch_sanity.cpp | 4 +++<br>
4 files changed, 82 insertions(+)<br>
<br>
diff --git a/src/mapi/glapi/gen/ARB_direct_state_access.xml b/src/mapi/glapi/gen/ARB_direct_state_access.xml<br>
index 652e8bc..99d2422 100644<br>
--- a/src/mapi/glapi/gen/ARB_direct_state_access.xml<br>
+++ b/src/mapi/glapi/gen/ARB_direct_state_access.xml<br>
@@ -316,5 +316,32 @@<br>
<param name="ids" type="GLuint *" /><br>
</function><br>
<br>
+ <function name="GetQueryBufferObjectiv" offset="assign"><br>
+ <param name="id" type="GLuint" /><br>
+ <param name="buffer" type="GLuint" /><br>
+ <param name="pname" type="GLenum" /><br>
+ <param name="offset" type="GLintptr" /><br>
+ </function><br>
+<br>
+ <function name="GetQueryBufferObjectuiv" offset="assign"><br>
+ <param name="id" type="GLuint" /><br>
+ <param name="buffer" type="GLuint" /><br>
+ <param name="pname" type="GLenum" /><br>
+ <param name="offset" type="GLintptr" /><br>
+ </function><br>
+<br>
+ <function name="GetQueryBufferObjecti64v" offset="assign"><br>
+ <param name="id" type="GLuint" /><br>
+ <param name="buffer" type="GLuint" /><br>
+ <param name="pname" type="GLenum" /><br>
+ <param name="offset" type="GLintptr" /><br>
+ </function><br>
+<br>
+ <function name="GetQueryBufferObjectui64v" offset="assign"><br>
+ <param name="id" type="GLuint" /><br>
+ <param name="buffer" type="GLuint" /><br>
+ <param name="pname" type="GLenum" /><br>
+ <param name="offset" type="GLintptr" /><br>
+ </function><br>
</category><br>
</OpenGLAPI><br>
diff --git a/src/mesa/main/queryobj.c b/src/mesa/main/queryobj.c<br>
index 1bb74c9..19bc682 100644<br>
--- a/src/mesa/main/queryobj.c<br>
+++ b/src/mesa/main/queryobj.c<br>
@@ -820,6 +820,45 @@ _mesa_GetQueryObjectui64v(GLuint id, GLenum pname, GLuint64EXT *params)<br>
}<br>
<br>
/**<br>
+ * New with GL_ARB_query_buffer_object<br>
+ */<br>
+void GLAPIENTRY<br>
+_mesa_GetQueryBufferObjectiv(GLuint id, GLuint buffer, GLenum pname,<br>
+ GLintptr offset)<br>
+{<br>
+ GET_CURRENT_CONTEXT(ctx);<br>
+ _mesa_error(ctx, GL_INVALID_OPERATION, "glGetQueryBufferObjectiv");<br>
+}<br>
+<br>
+<br>
+void GLAPIENTRY<br>
+_mesa_GetQueryBufferObjectuiv(GLuint id, GLuint buffer, GLenum pname,<br>
+ GLintptr offset)<br>
+{<br>
+ GET_CURRENT_CONTEXT(ctx);<br>
+ _mesa_error(ctx, GL_INVALID_OPERATION, "glGetQueryBufferObjectuiv");<br>
+}<br>
+<br>
+<br>
+void GLAPIENTRY<br>
+_mesa_GetQueryBufferObjecti64v(GLuint id, GLuint buffer, GLenum pname,<br>
+ GLintptr offset)<br>
+{<br>
+ GET_CURRENT_CONTEXT(ctx);<br>
+ _mesa_error(ctx, GL_INVALID_OPERATION, "glGetQueryBufferObjecti64v");<br>
+}<br>
+<br>
+<br>
+void GLAPIENTRY<br>
+_mesa_GetQueryBufferObjectui64v(GLuint id, GLuint buffer, GLenum pname,<br>
+ GLintptr offset)<br>
+{<br>
+ GET_CURRENT_CONTEXT(ctx);<br>
+ _mesa_error(ctx, GL_INVALID_OPERATION, "glGetQueryBufferObjectui64v");<br>
+}<br>
+<br>
+<br>
+/**<br>
* Allocate/init the context state related to query objects.<br>
*/<br>
void<br>
diff --git a/src/mesa/main/queryobj.h b/src/mesa/main/queryobj.h<br>
index 431d420..d1036fc 100644<br>
--- a/src/mesa/main/queryobj.h<br>
+++ b/src/mesa/main/queryobj.h<br>
@@ -79,5 +79,17 @@ void GLAPIENTRY<br>
_mesa_GetQueryObjecti64v(GLuint id, GLenum pname, GLint64EXT *params);<br>
void GLAPIENTRY<br>
_mesa_GetQueryObjectui64v(GLuint id, GLenum pname, GLuint64EXT *params);<br>
+void GLAPIENTRY<br>
+_mesa_GetQueryBufferObjectiv(GLuint id, GLuint buffer, GLenum pname,<br>
+ GLintptr offset);<br>
+void GLAPIENTRY<br>
+_mesa_GetQueryBufferObjectuiv(GLuint id, GLuint buffer, GLenum pname,<br>
+ GLintptr offset);<br>
+void GLAPIENTRY<br>
+_mesa_GetQueryBufferObjecti64v(GLuint id, GLuint buffer, GLenum pname,<br>
+ GLintptr offset);<br>
+void GLAPIENTRY<br>
+_mesa_GetQueryBufferObjectui64v(GLuint id, GLuint buffer, GLenum pname,<br>
+ GLintptr offset);<br>
<br>
#endif /* QUERYOBJ_H */<br>
diff --git a/src/mesa/main/tests/dispatch_sanity.cpp b/src/mesa/main/tests/dispatch_sanity.cpp<br>
index ee448f1..b65080e 100644<br>
--- a/src/mesa/main/tests/dispatch_sanity.cpp<br>
+++ b/src/mesa/main/tests/dispatch_sanity.cpp<br>
@@ -994,6 +994,10 @@ const struct function gl_core_functions_possible[] = {<br>
{ "glTextureStorage3DMultisample", 45, -1 },<br>
{ "glTextureBuffer", 45, -1 },<br>
{ "glCreateQueries", 45, -1 },<br>
+ { "glGetQueryBufferObjectiv", 45, -1 },<br>
+ { "glGetQueryBufferObjectuiv", 45, -1 },<br>
+ { "glGetQueryBufferObjecti64v", 45, -1 },<br>
+ { "glGetQueryBufferObjectui64v", 45, -1 },<br>
<br>
/* GL_EXT_polygon_offset_clamp */<br>
{ "glPolygonOffsetClampEXT", 11, -1 },<br>
<span class="HOEnZb"><font color="#888888">--<br>
2.3.0<br>
<br>
_______________________________________________<br>
mesa-dev mailing list<br>
<a href="mailto:mesa-dev@lists.freedesktop.org">mesa-dev@lists.freedesktop.org</a><br>
<a href="http://lists.freedesktop.org/mailman/listinfo/mesa-dev" target="_blank">http://lists.freedesktop.org/mailman/listinfo/mesa-dev</a><br>
</font></span></blockquote></div><br></div>