diff options
Diffstat (limited to 'gpu/command_buffer/client/gles2_implementation_impl_autogen.h')
-rw-r--r-- | gpu/command_buffer/client/gles2_implementation_impl_autogen.h | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/gpu/command_buffer/client/gles2_implementation_impl_autogen.h b/gpu/command_buffer/client/gles2_implementation_impl_autogen.h index 98447bf..918db99 100644 --- a/gpu/command_buffer/client/gles2_implementation_impl_autogen.h +++ b/gpu/command_buffer/client/gles2_implementation_impl_autogen.h @@ -996,6 +996,31 @@ void GLES2Implementation::GetFramebufferAttachmentParameteriv(GLenum target, }); CheckGLError(); } +void GLES2Implementation::GetInteger64v(GLenum pname, GLint64* params) { + GPU_CLIENT_SINGLE_THREAD_CHECK(); + GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glGetInteger64v(" + << GLES2Util::GetStringGLState(pname) << ", " + << static_cast<const void*>(params) << ")"); + TRACE_EVENT0("gpu", "GLES2Implementation::GetInteger64v"); + if (GetInteger64vHelper(pname, params)) { + return; + } + typedef cmds::GetInteger64v::Result Result; + Result* result = GetResultAs<Result*>(); + if (!result) { + return; + } + result->SetNumResults(0); + helper_->GetInteger64v(pname, GetResultShmId(), GetResultShmOffset()); + WaitForCmd(); + result->CopyResult(params); + GPU_CLIENT_LOG_CODE_BLOCK({ + for (int32_t i = 0; i < result->GetNumResults(); ++i) { + GPU_CLIENT_LOG(" " << i << ": " << result->GetData()[i]); + } + }); + CheckGLError(); +} void GLES2Implementation::GetIntegerv(GLenum pname, GLint* params) { GPU_CLIENT_SINGLE_THREAD_CHECK(); GPU_CLIENT_VALIDATE_DESTINATION_INITALIZATION(GLint, params); |