Commit 3641b4b1 by Jamie Madill

Provide a pass-through mechanic for the new ES3 Query methods to use the old ES2 query extension.

We will need to add the new transform feedback queries in a later patch. TRAC #23347 Signed-off-by: Geoff Lang Signed-off-by: Shannon Woods Authored-by: Jamie Madill
parent 5215e1a1
...@@ -8637,8 +8637,7 @@ void __stdcall glGenQueries(GLsizei n, GLuint* ids) ...@@ -8637,8 +8637,7 @@ void __stdcall glGenQueries(GLsizei n, GLuint* ids)
return gl::error(GL_INVALID_OPERATION); return gl::error(GL_INVALID_OPERATION);
} }
// glGenQueries glGenQueriesEXT(n, ids);
UNIMPLEMENTED();
} }
} }
catch(std::bad_alloc&) catch(std::bad_alloc&)
...@@ -8662,8 +8661,7 @@ void __stdcall glDeleteQueries(GLsizei n, const GLuint* ids) ...@@ -8662,8 +8661,7 @@ void __stdcall glDeleteQueries(GLsizei n, const GLuint* ids)
return gl::error(GL_INVALID_OPERATION); return gl::error(GL_INVALID_OPERATION);
} }
// glDeleteQueries glDeleteQueriesEXT(n, ids);
UNIMPLEMENTED();
} }
} }
catch(std::bad_alloc&) catch(std::bad_alloc&)
...@@ -8687,8 +8685,8 @@ GLboolean __stdcall glIsQuery(GLuint id) ...@@ -8687,8 +8685,8 @@ GLboolean __stdcall glIsQuery(GLuint id)
return gl::error(GL_INVALID_OPERATION, GL_FALSE); return gl::error(GL_INVALID_OPERATION, GL_FALSE);
} }
// glIsQuery // TODO: XFB queries
UNIMPLEMENTED(); return glIsQueryEXT(id);
} }
} }
catch(std::bad_alloc&) catch(std::bad_alloc&)
...@@ -8714,8 +8712,30 @@ void __stdcall glBeginQuery(GLenum target, GLuint id) ...@@ -8714,8 +8712,30 @@ void __stdcall glBeginQuery(GLenum target, GLuint id)
return gl::error(GL_INVALID_OPERATION); return gl::error(GL_INVALID_OPERATION);
} }
// glBeginQuery switch (target)
UNIMPLEMENTED(); {
case GL_ANY_SAMPLES_PASSED:
case GL_ANY_SAMPLES_PASSED_CONSERVATIVE:
case GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN:
break;
default:
return gl::error(GL_INVALID_ENUM);
}
if (id == 0)
{
return gl::error(GL_INVALID_OPERATION);
}
if (target == GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN)
{
// TODO: XFB queries
UNIMPLEMENTED();
}
else
{
context->beginQuery(target, id);
}
} }
} }
catch(std::bad_alloc&) catch(std::bad_alloc&)
...@@ -8739,8 +8759,15 @@ void __stdcall glEndQuery(GLenum target) ...@@ -8739,8 +8759,15 @@ void __stdcall glEndQuery(GLenum target)
return gl::error(GL_INVALID_OPERATION); return gl::error(GL_INVALID_OPERATION);
} }
// glEndQuery if (target == GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN)
UNIMPLEMENTED(); {
// TODO: XFB queries
UNIMPLEMENTED();
}
else
{
glEndQueryEXT(target);
}
} }
} }
catch(std::bad_alloc&) catch(std::bad_alloc&)
...@@ -8764,8 +8791,15 @@ void __stdcall glGetQueryiv(GLenum target, GLenum pname, GLint* params) ...@@ -8764,8 +8791,15 @@ void __stdcall glGetQueryiv(GLenum target, GLenum pname, GLint* params)
return gl::error(GL_INVALID_OPERATION); return gl::error(GL_INVALID_OPERATION);
} }
// glGetQueryiv if (target == GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN)
UNIMPLEMENTED(); {
// TODO: XFB queries
UNIMPLEMENTED();
}
else
{
glGetQueryivEXT(target, pname, params);
}
} }
} }
catch(std::bad_alloc&) catch(std::bad_alloc&)
...@@ -8789,8 +8823,8 @@ void __stdcall glGetQueryObjectuiv(GLuint id, GLenum pname, GLuint* params) ...@@ -8789,8 +8823,8 @@ void __stdcall glGetQueryObjectuiv(GLuint id, GLenum pname, GLuint* params)
return gl::error(GL_INVALID_OPERATION); return gl::error(GL_INVALID_OPERATION);
} }
// glGetQueryObjectuiv // TODO: XFB queries
UNIMPLEMENTED(); glGetQueryObjectuivEXT(id, pname, params);
} }
} }
catch(std::bad_alloc&) catch(std::bad_alloc&)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment