| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 // This file is auto-generated from | 5 // This file is auto-generated from |
| 6 // gpu/command_buffer/build_gles2_cmd_buffer.py | 6 // gpu/command_buffer/build_gles2_cmd_buffer.py |
| 7 // DO NOT EDIT! | 7 // DO NOT EDIT! |
| 8 | 8 |
| 9 // This file is included by gles2_implementation.h to declare the | 9 // This file is included by gles2_implementation.h to declare the |
| 10 // GL api functions. | 10 // GL api functions. |
| 11 #ifndef GPU_COMMAND_BUFFER_CLIENT_GLES2_IMPLEMENTATION_AUTOGEN_H_ | 11 #ifndef GPU_COMMAND_BUFFER_CLIENT_GLES2_IMPLEMENTATION_AUTOGEN_H_ |
| 12 #define GPU_COMMAND_BUFFER_CLIENT_GLES2_IMPLEMENTATION_AUTOGEN_H_ | 12 #define GPU_COMMAND_BUFFER_CLIENT_GLES2_IMPLEMENTATION_AUTOGEN_H_ |
| 13 | 13 |
| 14 void ActiveTexture(GLenum texture); | 14 void ActiveTexture(GLenum texture); |
| 15 | 15 |
| 16 void AttachShader(GLuint program, GLuint shader) { | 16 void AttachShader(GLuint program, GLuint shader) { |
| 17 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 17 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 18 GPU_CLIENT_LOG("[" << this << "] glAttachShader(" << program << ", " << shader
<< ")"); // NOLINT | 18 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glAttachShader(" << program << ", "
<< shader << ")"); // NOLINT |
| 19 helper_->AttachShader(program, shader); | 19 helper_->AttachShader(program, shader); |
| 20 } | 20 } |
| 21 | 21 |
| 22 void BindAttribLocation(GLuint program, GLuint index, const char* name); | 22 void BindAttribLocation(GLuint program, GLuint index, const char* name); |
| 23 | 23 |
| 24 void BindBuffer(GLenum target, GLuint buffer) { | 24 void BindBuffer(GLenum target, GLuint buffer) { |
| 25 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 25 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 26 GPU_CLIENT_LOG("[" << this << "] glBindBuffer(" << GLES2Util::GetStringBufferT
arget(target) << ", " << buffer << ")"); // NOLINT | 26 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glBindBuffer(" << GLES2Util::GetStr
ingBufferTarget(target) << ", " << buffer << ")"); // NOLINT |
| 27 if (IsBufferReservedId(buffer)) { | 27 if (IsBufferReservedId(buffer)) { |
| 28 SetGLError(GL_INVALID_OPERATION, "BindBuffer", "buffer reserved id"); | 28 SetGLError(GL_INVALID_OPERATION, "BindBuffer", "buffer reserved id"); |
| 29 return; | 29 return; |
| 30 } | 30 } |
| 31 BindBufferHelper(target, buffer); | 31 BindBufferHelper(target, buffer); |
| 32 helper_->BindBuffer(target, buffer); | 32 helper_->BindBuffer(target, buffer); |
| 33 } | 33 } |
| 34 | 34 |
| 35 void BindFramebuffer(GLenum target, GLuint framebuffer) { | 35 void BindFramebuffer(GLenum target, GLuint framebuffer) { |
| 36 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 36 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 37 GPU_CLIENT_LOG("[" << this << "] glBindFramebuffer(" << GLES2Util::GetStringFr
ameBufferTarget(target) << ", " << framebuffer << ")"); // NOLINT | 37 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glBindFramebuffer(" << GLES2Util::G
etStringFrameBufferTarget(target) << ", " << framebuffer << ")"); // NOLINT |
| 38 if (IsFramebufferReservedId(framebuffer)) { | 38 if (IsFramebufferReservedId(framebuffer)) { |
| 39 SetGLError( | 39 SetGLError( |
| 40 GL_INVALID_OPERATION, "BindFramebuffer", "framebuffer reserved id"); | 40 GL_INVALID_OPERATION, "BindFramebuffer", "framebuffer reserved id"); |
| 41 return; | 41 return; |
| 42 } | 42 } |
| 43 BindFramebufferHelper(target, framebuffer); | 43 BindFramebufferHelper(target, framebuffer); |
| 44 helper_->BindFramebuffer(target, framebuffer); | 44 helper_->BindFramebuffer(target, framebuffer); |
| 45 } | 45 } |
| 46 | 46 |
| 47 void BindRenderbuffer(GLenum target, GLuint renderbuffer) { | 47 void BindRenderbuffer(GLenum target, GLuint renderbuffer) { |
| 48 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 48 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 49 GPU_CLIENT_LOG("[" << this << "] glBindRenderbuffer(" << GLES2Util::GetStringR
enderBufferTarget(target) << ", " << renderbuffer << ")"); // NOLINT | 49 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glBindRenderbuffer(" << GLES2Util::
GetStringRenderBufferTarget(target) << ", " << renderbuffer << ")"); // NOLINT |
| 50 if (IsRenderbufferReservedId(renderbuffer)) { | 50 if (IsRenderbufferReservedId(renderbuffer)) { |
| 51 SetGLError( | 51 SetGLError( |
| 52 GL_INVALID_OPERATION, "BindRenderbuffer", "renderbuffer reserved id"); | 52 GL_INVALID_OPERATION, "BindRenderbuffer", "renderbuffer reserved id"); |
| 53 return; | 53 return; |
| 54 } | 54 } |
| 55 BindRenderbufferHelper(target, renderbuffer); | 55 BindRenderbufferHelper(target, renderbuffer); |
| 56 helper_->BindRenderbuffer(target, renderbuffer); | 56 helper_->BindRenderbuffer(target, renderbuffer); |
| 57 } | 57 } |
| 58 | 58 |
| 59 void BindTexture(GLenum target, GLuint texture) { | 59 void BindTexture(GLenum target, GLuint texture) { |
| 60 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 60 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 61 GPU_CLIENT_LOG("[" << this << "] glBindTexture(" << GLES2Util::GetStringTextur
eBindTarget(target) << ", " << texture << ")"); // NOLINT | 61 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glBindTexture(" << GLES2Util::GetSt
ringTextureBindTarget(target) << ", " << texture << ")"); // NOLINT |
| 62 if (IsTextureReservedId(texture)) { | 62 if (IsTextureReservedId(texture)) { |
| 63 SetGLError(GL_INVALID_OPERATION, "BindTexture", "texture reserved id"); | 63 SetGLError(GL_INVALID_OPERATION, "BindTexture", "texture reserved id"); |
| 64 return; | 64 return; |
| 65 } | 65 } |
| 66 BindTextureHelper(target, texture); | 66 BindTextureHelper(target, texture); |
| 67 helper_->BindTexture(target, texture); | 67 helper_->BindTexture(target, texture); |
| 68 } | 68 } |
| 69 | 69 |
| 70 void BlendColor(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha) { | 70 void BlendColor(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha) { |
| 71 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 71 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 72 GPU_CLIENT_LOG("[" << this << "] glBlendColor(" << red << ", " << green << ",
" << blue << ", " << alpha << ")"); // NOLINT | 72 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glBlendColor(" << red << ", " << gr
een << ", " << blue << ", " << alpha << ")"); // NOLINT |
| 73 helper_->BlendColor(red, green, blue, alpha); | 73 helper_->BlendColor(red, green, blue, alpha); |
| 74 } | 74 } |
| 75 | 75 |
| 76 void BlendEquation(GLenum mode) { | 76 void BlendEquation(GLenum mode) { |
| 77 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 77 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 78 GPU_CLIENT_LOG("[" << this << "] glBlendEquation(" << GLES2Util::GetStringEqua
tion(mode) << ")"); // NOLINT | 78 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glBlendEquation(" << GLES2Util::Get
StringEquation(mode) << ")"); // NOLINT |
| 79 helper_->BlendEquation(mode); | 79 helper_->BlendEquation(mode); |
| 80 } | 80 } |
| 81 | 81 |
| 82 void BlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha) { | 82 void BlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha) { |
| 83 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 83 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 84 GPU_CLIENT_LOG("[" << this << "] glBlendEquationSeparate(" << GLES2Util::GetSt
ringEquation(modeRGB) << ", " << GLES2Util::GetStringEquation(modeAlpha) << ")")
; // NOLINT | 84 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glBlendEquationSeparate(" << GLES2U
til::GetStringEquation(modeRGB) << ", " << GLES2Util::GetStringEquation(modeAlph
a) << ")"); // NOLINT |
| 85 helper_->BlendEquationSeparate(modeRGB, modeAlpha); | 85 helper_->BlendEquationSeparate(modeRGB, modeAlpha); |
| 86 } | 86 } |
| 87 | 87 |
| 88 void BlendFunc(GLenum sfactor, GLenum dfactor) { | 88 void BlendFunc(GLenum sfactor, GLenum dfactor) { |
| 89 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 89 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 90 GPU_CLIENT_LOG("[" << this << "] glBlendFunc(" << GLES2Util::GetStringSrcBlend
Factor(sfactor) << ", " << GLES2Util::GetStringDstBlendFactor(dfactor) << ")");
// NOLINT | 90 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glBlendFunc(" << GLES2Util::GetStri
ngSrcBlendFactor(sfactor) << ", " << GLES2Util::GetStringDstBlendFactor(dfactor)
<< ")"); // NOLINT |
| 91 helper_->BlendFunc(sfactor, dfactor); | 91 helper_->BlendFunc(sfactor, dfactor); |
| 92 } | 92 } |
| 93 | 93 |
| 94 void BlendFuncSeparate( | 94 void BlendFuncSeparate( |
| 95 GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha) { | 95 GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha) { |
| 96 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 96 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 97 GPU_CLIENT_LOG("[" << this << "] glBlendFuncSeparate(" << GLES2Util::GetString
SrcBlendFactor(srcRGB) << ", " << GLES2Util::GetStringDstBlendFactor(dstRGB) <<
", " << GLES2Util::GetStringSrcBlendFactor(srcAlpha) << ", " << GLES2Util::GetSt
ringDstBlendFactor(dstAlpha) << ")"); // NOLINT | 97 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glBlendFuncSeparate(" << GLES2Util:
:GetStringSrcBlendFactor(srcRGB) << ", " << GLES2Util::GetStringDstBlendFactor(d
stRGB) << ", " << GLES2Util::GetStringSrcBlendFactor(srcAlpha) << ", " << GLES2U
til::GetStringDstBlendFactor(dstAlpha) << ")"); // NOLINT |
| 98 helper_->BlendFuncSeparate(srcRGB, dstRGB, srcAlpha, dstAlpha); | 98 helper_->BlendFuncSeparate(srcRGB, dstRGB, srcAlpha, dstAlpha); |
| 99 } | 99 } |
| 100 | 100 |
| 101 void BufferData( | 101 void BufferData( |
| 102 GLenum target, GLsizeiptr size, const void* data, GLenum usage); | 102 GLenum target, GLsizeiptr size, const void* data, GLenum usage); |
| 103 | 103 |
| 104 void BufferSubData( | 104 void BufferSubData( |
| 105 GLenum target, GLintptr offset, GLsizeiptr size, const void* data); | 105 GLenum target, GLintptr offset, GLsizeiptr size, const void* data); |
| 106 | 106 |
| 107 GLenum CheckFramebufferStatus(GLenum target) { | 107 GLenum CheckFramebufferStatus(GLenum target) { |
| 108 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 108 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 109 GPU_CLIENT_LOG("[" << this << "] glCheckFramebufferStatus(" << GLES2Util::GetS
tringFrameBufferTarget(target) << ")"); // NOLINT | 109 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glCheckFramebufferStatus(" << GLES2
Util::GetStringFrameBufferTarget(target) << ")"); // NOLINT |
| 110 typedef CheckFramebufferStatus::Result Result; | 110 typedef CheckFramebufferStatus::Result Result; |
| 111 Result* result = GetResultAs<Result*>(); | 111 Result* result = GetResultAs<Result*>(); |
| 112 if (!result) { | 112 if (!result) { |
| 113 return GL_FRAMEBUFFER_UNSUPPORTED; | 113 return GL_FRAMEBUFFER_UNSUPPORTED; |
| 114 } | 114 } |
| 115 *result = 0; | 115 *result = 0; |
| 116 helper_->CheckFramebufferStatus( | 116 helper_->CheckFramebufferStatus( |
| 117 target, GetResultShmId(), GetResultShmOffset()); | 117 target, GetResultShmId(), GetResultShmOffset()); |
| 118 WaitForCmd(); | 118 WaitForCmd(); |
| 119 GPU_CLIENT_LOG("returned " << *result); | 119 GPU_CLIENT_LOG("returned " << *result); |
| 120 return *result; | 120 return *result; |
| 121 } | 121 } |
| 122 | 122 |
| 123 void Clear(GLbitfield mask); | 123 void Clear(GLbitfield mask); |
| 124 | 124 |
| 125 void ClearColor(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha) { | 125 void ClearColor(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha) { |
| 126 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 126 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 127 GPU_CLIENT_LOG("[" << this << "] glClearColor(" << red << ", " << green << ",
" << blue << ", " << alpha << ")"); // NOLINT | 127 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glClearColor(" << red << ", " << gr
een << ", " << blue << ", " << alpha << ")"); // NOLINT |
| 128 helper_->ClearColor(red, green, blue, alpha); | 128 helper_->ClearColor(red, green, blue, alpha); |
| 129 } | 129 } |
| 130 | 130 |
| 131 void ClearDepthf(GLclampf depth) { | 131 void ClearDepthf(GLclampf depth) { |
| 132 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 132 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 133 GPU_CLIENT_LOG("[" << this << "] glClearDepthf(" << depth << ")"); | 133 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glClearDepthf(" << depth << ")"); |
| 134 helper_->ClearDepthf(depth); | 134 helper_->ClearDepthf(depth); |
| 135 } | 135 } |
| 136 | 136 |
| 137 void ClearStencil(GLint s) { | 137 void ClearStencil(GLint s) { |
| 138 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 138 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 139 GPU_CLIENT_LOG("[" << this << "] glClearStencil(" << s << ")"); | 139 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glClearStencil(" << s << ")"); |
| 140 helper_->ClearStencil(s); | 140 helper_->ClearStencil(s); |
| 141 } | 141 } |
| 142 | 142 |
| 143 void ColorMask( | 143 void ColorMask( |
| 144 GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha) { | 144 GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha) { |
| 145 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 145 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 146 GPU_CLIENT_LOG("[" << this << "] glColorMask(" << GLES2Util::GetStringBool( | 146 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glColorMask(" << GLES2Util::GetStri
ngBool(red) << ", " << GLES2Util::GetStringBool(green) << ", " << GLES2Util::Get
StringBool(blue) << ", " << GLES2Util::GetStringBool(alpha) << ")"); // NOLINT |
| 147 red) << ", " << GLES2Util::GetStringBool( | |
| 148 green) << ", " << GLES2Util::GetStringBool( | |
| 149 blue) << ", " << GLES2Util::GetStringBool(alpha) << ")"); | |
| 150 helper_->ColorMask(red, green, blue, alpha); | 147 helper_->ColorMask(red, green, blue, alpha); |
| 151 } | 148 } |
| 152 | 149 |
| 153 void CompileShader(GLuint shader) { | 150 void CompileShader(GLuint shader) { |
| 154 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 151 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 155 GPU_CLIENT_LOG("[" << this << "] glCompileShader(" << shader << ")"); | 152 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glCompileShader(" << shader << ")")
; // NOLINT |
| 156 helper_->CompileShader(shader); | 153 helper_->CompileShader(shader); |
| 157 } | 154 } |
| 158 | 155 |
| 159 void CompressedTexImage2D( | 156 void CompressedTexImage2D( |
| 160 GLenum target, GLint level, GLenum internalformat, GLsizei width, | 157 GLenum target, GLint level, GLenum internalformat, GLsizei width, |
| 161 GLsizei height, GLint border, GLsizei imageSize, const void* data); | 158 GLsizei height, GLint border, GLsizei imageSize, const void* data); |
| 162 | 159 |
| 163 void CompressedTexSubImage2D( | 160 void CompressedTexSubImage2D( |
| 164 GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, | 161 GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, |
| 165 GLsizei height, GLenum format, GLsizei imageSize, const void* data); | 162 GLsizei height, GLenum format, GLsizei imageSize, const void* data); |
| 166 | 163 |
| 167 void CopyTexImage2D( | 164 void CopyTexImage2D( |
| 168 GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, | 165 GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, |
| 169 GLsizei width, GLsizei height, GLint border) { | 166 GLsizei width, GLsizei height, GLint border) { |
| 170 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 167 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 171 GPU_CLIENT_LOG("[" << this << "] glCopyTexImage2D(" << GLES2Util::GetStringTex
tureTarget(target) << ", " << level << ", " << GLES2Util::GetStringTextureIntern
alFormat(internalformat) << ", " << x << ", " << y << ", " << width << ", " << h
eight << ", " << border << ")"); // NOLINT | 168 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glCopyTexImage2D(" << GLES2Util::Ge
tStringTextureTarget(target) << ", " << level << ", " << GLES2Util::GetStringTex
tureInternalFormat(internalformat) << ", " << x << ", " << y << ", " << width <<
", " << height << ", " << border << ")"); // NOLINT |
| 172 if (width < 0) { | 169 if (width < 0) { |
| 173 SetGLError(GL_INVALID_VALUE, "glCopyTexImage2D", "width < 0"); | 170 SetGLError(GL_INVALID_VALUE, "glCopyTexImage2D", "width < 0"); |
| 174 return; | 171 return; |
| 175 } | 172 } |
| 176 if (height < 0) { | 173 if (height < 0) { |
| 177 SetGLError(GL_INVALID_VALUE, "glCopyTexImage2D", "height < 0"); | 174 SetGLError(GL_INVALID_VALUE, "glCopyTexImage2D", "height < 0"); |
| 178 return; | 175 return; |
| 179 } | 176 } |
| 180 helper_->CopyTexImage2D( | 177 helper_->CopyTexImage2D( |
| 181 target, level, internalformat, x, y, width, height, border); | 178 target, level, internalformat, x, y, width, height, border); |
| 182 } | 179 } |
| 183 | 180 |
| 184 void CopyTexSubImage2D( | 181 void CopyTexSubImage2D( |
| 185 GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, | 182 GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, |
| 186 GLsizei width, GLsizei height) { | 183 GLsizei width, GLsizei height) { |
| 187 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 184 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 188 GPU_CLIENT_LOG("[" << this << "] glCopyTexSubImage2D(" << GLES2Util::GetString
TextureTarget(target) << ", " << level << ", " << xoffset << ", " << yoffset <<
", " << x << ", " << y << ", " << width << ", " << height << ")"); // NOLINT | 185 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glCopyTexSubImage2D(" << GLES2Util:
:GetStringTextureTarget(target) << ", " << level << ", " << xoffset << ", " << y
offset << ", " << x << ", " << y << ", " << width << ", " << height << ")"); //
NOLINT |
| 189 if (width < 0) { | 186 if (width < 0) { |
| 190 SetGLError(GL_INVALID_VALUE, "glCopyTexSubImage2D", "width < 0"); | 187 SetGLError(GL_INVALID_VALUE, "glCopyTexSubImage2D", "width < 0"); |
| 191 return; | 188 return; |
| 192 } | 189 } |
| 193 if (height < 0) { | 190 if (height < 0) { |
| 194 SetGLError(GL_INVALID_VALUE, "glCopyTexSubImage2D", "height < 0"); | 191 SetGLError(GL_INVALID_VALUE, "glCopyTexSubImage2D", "height < 0"); |
| 195 return; | 192 return; |
| 196 } | 193 } |
| 197 helper_->CopyTexSubImage2D( | 194 helper_->CopyTexSubImage2D( |
| 198 target, level, xoffset, yoffset, x, y, width, height); | 195 target, level, xoffset, yoffset, x, y, width, height); |
| 199 } | 196 } |
| 200 | 197 |
| 201 GLuint CreateProgram() { | 198 GLuint CreateProgram() { |
| 202 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 199 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 203 GPU_CLIENT_LOG("[" << this << "] glCreateProgram(" << ")"); | 200 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glCreateProgram(" << ")"); |
| 204 GLuint client_id; | 201 GLuint client_id; |
| 205 GetIdHandler(id_namespaces::kProgramsAndShaders)-> | 202 GetIdHandler(id_namespaces::kProgramsAndShaders)-> |
| 206 MakeIds(this, 0, 1, &client_id); | 203 MakeIds(this, 0, 1, &client_id); |
| 207 helper_->CreateProgram(client_id); | 204 helper_->CreateProgram(client_id); |
| 208 GPU_CLIENT_LOG("returned " << client_id); | 205 GPU_CLIENT_LOG("returned " << client_id); |
| 209 return client_id; | 206 return client_id; |
| 210 } | 207 } |
| 211 | 208 |
| 212 GLuint CreateShader(GLenum type) { | 209 GLuint CreateShader(GLenum type) { |
| 213 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 210 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 214 GPU_CLIENT_LOG("[" << this << "] glCreateShader(" << GLES2Util::GetStringShade
rType(type) << ")"); // NOLINT | 211 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glCreateShader(" << GLES2Util::GetS
tringShaderType(type) << ")"); // NOLINT |
| 215 GLuint client_id; | 212 GLuint client_id; |
| 216 GetIdHandler(id_namespaces::kProgramsAndShaders)-> | 213 GetIdHandler(id_namespaces::kProgramsAndShaders)-> |
| 217 MakeIds(this, 0, 1, &client_id); | 214 MakeIds(this, 0, 1, &client_id); |
| 218 helper_->CreateShader(type, client_id); | 215 helper_->CreateShader(type, client_id); |
| 219 GPU_CLIENT_LOG("returned " << client_id); | 216 GPU_CLIENT_LOG("returned " << client_id); |
| 220 return client_id; | 217 return client_id; |
| 221 } | 218 } |
| 222 | 219 |
| 223 void CullFace(GLenum mode) { | 220 void CullFace(GLenum mode) { |
| 224 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 221 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 225 GPU_CLIENT_LOG("[" << this << "] glCullFace(" << GLES2Util::GetStringFaceType( | 222 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glCullFace(" << GLES2Util::GetStrin
gFaceType(mode) << ")"); // NOLINT |
| 226 mode) << ")"); | |
| 227 helper_->CullFace(mode); | 223 helper_->CullFace(mode); |
| 228 } | 224 } |
| 229 | 225 |
| 230 void DeleteBuffers(GLsizei n, const GLuint* buffers) { | 226 void DeleteBuffers(GLsizei n, const GLuint* buffers) { |
| 231 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 227 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 232 GPU_CLIENT_LOG("[" << this << "] glDeleteBuffers(" << n << ", " << static_cast
<const void*>(buffers) << ")"); // NOLINT | 228 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glDeleteBuffers(" << n << ", " << s
tatic_cast<const void*>(buffers) << ")"); // NOLINT |
| 233 GPU_CLIENT_LOG_CODE_BLOCK({ | 229 GPU_CLIENT_LOG_CODE_BLOCK({ |
| 234 for (GLsizei i = 0; i < n; ++i) { | 230 for (GLsizei i = 0; i < n; ++i) { |
| 235 GPU_CLIENT_LOG(" " << i << ": " << buffers[i]); | 231 GPU_CLIENT_LOG(" " << i << ": " << buffers[i]); |
| 236 } | 232 } |
| 237 }); | 233 }); |
| 238 GPU_CLIENT_DCHECK_CODE_BLOCK({ | 234 GPU_CLIENT_DCHECK_CODE_BLOCK({ |
| 239 for (GLsizei i = 0; i < n; ++i) { | 235 for (GLsizei i = 0; i < n; ++i) { |
| 240 GPU_DCHECK(buffers[i] != 0); | 236 GPU_DCHECK(buffers[i] != 0); |
| 241 } | 237 } |
| 242 }); | 238 }); |
| 243 if (n < 0) { | 239 if (n < 0) { |
| 244 SetGLError(GL_INVALID_VALUE, "glDeleteBuffers", "n < 0"); | 240 SetGLError(GL_INVALID_VALUE, "glDeleteBuffers", "n < 0"); |
| 245 return; | 241 return; |
| 246 } | 242 } |
| 247 DeleteBuffersHelper(n, buffers); | 243 DeleteBuffersHelper(n, buffers); |
| 248 } | 244 } |
| 249 | 245 |
| 250 void DeleteFramebuffers(GLsizei n, const GLuint* framebuffers) { | 246 void DeleteFramebuffers(GLsizei n, const GLuint* framebuffers) { |
| 251 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 247 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 252 GPU_CLIENT_LOG("[" << this << "] glDeleteFramebuffers(" << n << ", " << static
_cast<const void*>(framebuffers) << ")"); // NOLINT | 248 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glDeleteFramebuffers(" << n << ", "
<< static_cast<const void*>(framebuffers) << ")"); // NOLINT |
| 253 GPU_CLIENT_LOG_CODE_BLOCK({ | 249 GPU_CLIENT_LOG_CODE_BLOCK({ |
| 254 for (GLsizei i = 0; i < n; ++i) { | 250 for (GLsizei i = 0; i < n; ++i) { |
| 255 GPU_CLIENT_LOG(" " << i << ": " << framebuffers[i]); | 251 GPU_CLIENT_LOG(" " << i << ": " << framebuffers[i]); |
| 256 } | 252 } |
| 257 }); | 253 }); |
| 258 GPU_CLIENT_DCHECK_CODE_BLOCK({ | 254 GPU_CLIENT_DCHECK_CODE_BLOCK({ |
| 259 for (GLsizei i = 0; i < n; ++i) { | 255 for (GLsizei i = 0; i < n; ++i) { |
| 260 GPU_DCHECK(framebuffers[i] != 0); | 256 GPU_DCHECK(framebuffers[i] != 0); |
| 261 } | 257 } |
| 262 }); | 258 }); |
| 263 if (n < 0) { | 259 if (n < 0) { |
| 264 SetGLError(GL_INVALID_VALUE, "glDeleteFramebuffers", "n < 0"); | 260 SetGLError(GL_INVALID_VALUE, "glDeleteFramebuffers", "n < 0"); |
| 265 return; | 261 return; |
| 266 } | 262 } |
| 267 DeleteFramebuffersHelper(n, framebuffers); | 263 DeleteFramebuffersHelper(n, framebuffers); |
| 268 } | 264 } |
| 269 | 265 |
| 270 void DeleteProgram(GLuint program) { | 266 void DeleteProgram(GLuint program) { |
| 271 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 267 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 272 GPU_CLIENT_LOG("[" << this << "] glDeleteProgram(" << program << ")"); | 268 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glDeleteProgram(" << program << ")"
); // NOLINT |
| 273 GPU_CLIENT_DCHECK(program != 0); | 269 GPU_CLIENT_DCHECK(program != 0); |
| 274 DeleteProgramHelper(program); | 270 DeleteProgramHelper(program); |
| 275 } | 271 } |
| 276 | 272 |
| 277 void DeleteRenderbuffers(GLsizei n, const GLuint* renderbuffers) { | 273 void DeleteRenderbuffers(GLsizei n, const GLuint* renderbuffers) { |
| 278 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 274 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 279 GPU_CLIENT_LOG("[" << this << "] glDeleteRenderbuffers(" << n << ", " << stati
c_cast<const void*>(renderbuffers) << ")"); // NOLINT | 275 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glDeleteRenderbuffers(" << n << ",
" << static_cast<const void*>(renderbuffers) << ")"); // NOLINT |
| 280 GPU_CLIENT_LOG_CODE_BLOCK({ | 276 GPU_CLIENT_LOG_CODE_BLOCK({ |
| 281 for (GLsizei i = 0; i < n; ++i) { | 277 for (GLsizei i = 0; i < n; ++i) { |
| 282 GPU_CLIENT_LOG(" " << i << ": " << renderbuffers[i]); | 278 GPU_CLIENT_LOG(" " << i << ": " << renderbuffers[i]); |
| 283 } | 279 } |
| 284 }); | 280 }); |
| 285 GPU_CLIENT_DCHECK_CODE_BLOCK({ | 281 GPU_CLIENT_DCHECK_CODE_BLOCK({ |
| 286 for (GLsizei i = 0; i < n; ++i) { | 282 for (GLsizei i = 0; i < n; ++i) { |
| 287 GPU_DCHECK(renderbuffers[i] != 0); | 283 GPU_DCHECK(renderbuffers[i] != 0); |
| 288 } | 284 } |
| 289 }); | 285 }); |
| 290 if (n < 0) { | 286 if (n < 0) { |
| 291 SetGLError(GL_INVALID_VALUE, "glDeleteRenderbuffers", "n < 0"); | 287 SetGLError(GL_INVALID_VALUE, "glDeleteRenderbuffers", "n < 0"); |
| 292 return; | 288 return; |
| 293 } | 289 } |
| 294 DeleteRenderbuffersHelper(n, renderbuffers); | 290 DeleteRenderbuffersHelper(n, renderbuffers); |
| 295 } | 291 } |
| 296 | 292 |
| 297 void DeleteShader(GLuint shader) { | 293 void DeleteShader(GLuint shader) { |
| 298 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 294 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 299 GPU_CLIENT_LOG("[" << this << "] glDeleteShader(" << shader << ")"); | 295 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glDeleteShader(" << shader << ")"); |
| 300 GPU_CLIENT_DCHECK(shader != 0); | 296 GPU_CLIENT_DCHECK(shader != 0); |
| 301 DeleteShaderHelper(shader); | 297 DeleteShaderHelper(shader); |
| 302 } | 298 } |
| 303 | 299 |
| 304 void DeleteTextures(GLsizei n, const GLuint* textures) { | 300 void DeleteTextures(GLsizei n, const GLuint* textures) { |
| 305 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 301 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 306 GPU_CLIENT_LOG("[" << this << "] glDeleteTextures(" << n << ", " << static_cas
t<const void*>(textures) << ")"); // NOLINT | 302 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glDeleteTextures(" << n << ", " <<
static_cast<const void*>(textures) << ")"); // NOLINT |
| 307 GPU_CLIENT_LOG_CODE_BLOCK({ | 303 GPU_CLIENT_LOG_CODE_BLOCK({ |
| 308 for (GLsizei i = 0; i < n; ++i) { | 304 for (GLsizei i = 0; i < n; ++i) { |
| 309 GPU_CLIENT_LOG(" " << i << ": " << textures[i]); | 305 GPU_CLIENT_LOG(" " << i << ": " << textures[i]); |
| 310 } | 306 } |
| 311 }); | 307 }); |
| 312 GPU_CLIENT_DCHECK_CODE_BLOCK({ | 308 GPU_CLIENT_DCHECK_CODE_BLOCK({ |
| 313 for (GLsizei i = 0; i < n; ++i) { | 309 for (GLsizei i = 0; i < n; ++i) { |
| 314 GPU_DCHECK(textures[i] != 0); | 310 GPU_DCHECK(textures[i] != 0); |
| 315 } | 311 } |
| 316 }); | 312 }); |
| 317 if (n < 0) { | 313 if (n < 0) { |
| 318 SetGLError(GL_INVALID_VALUE, "glDeleteTextures", "n < 0"); | 314 SetGLError(GL_INVALID_VALUE, "glDeleteTextures", "n < 0"); |
| 319 return; | 315 return; |
| 320 } | 316 } |
| 321 DeleteTexturesHelper(n, textures); | 317 DeleteTexturesHelper(n, textures); |
| 322 } | 318 } |
| 323 | 319 |
| 324 void DepthFunc(GLenum func) { | 320 void DepthFunc(GLenum func) { |
| 325 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 321 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 326 GPU_CLIENT_LOG("[" << this << "] glDepthFunc(" << GLES2Util::GetStringCmpFunct
ion(func) << ")"); // NOLINT | 322 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glDepthFunc(" << GLES2Util::GetStri
ngCmpFunction(func) << ")"); // NOLINT |
| 327 helper_->DepthFunc(func); | 323 helper_->DepthFunc(func); |
| 328 } | 324 } |
| 329 | 325 |
| 330 void DepthMask(GLboolean flag) { | 326 void DepthMask(GLboolean flag) { |
| 331 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 327 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 332 GPU_CLIENT_LOG("[" << this << "] glDepthMask(" << GLES2Util::GetStringBool( | 328 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glDepthMask(" << GLES2Util::GetStri
ngBool(flag) << ")"); // NOLINT |
| 333 flag) << ")"); | |
| 334 helper_->DepthMask(flag); | 329 helper_->DepthMask(flag); |
| 335 } | 330 } |
| 336 | 331 |
| 337 void DepthRangef(GLclampf zNear, GLclampf zFar) { | 332 void DepthRangef(GLclampf zNear, GLclampf zFar) { |
| 338 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 333 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 339 GPU_CLIENT_LOG("[" << this << "] glDepthRangef(" << zNear << ", " << zFar << "
)"); // NOLINT | 334 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glDepthRangef(" << zNear << ", " <<
zFar << ")"); // NOLINT |
| 340 helper_->DepthRangef(zNear, zFar); | 335 helper_->DepthRangef(zNear, zFar); |
| 341 } | 336 } |
| 342 | 337 |
| 343 void DetachShader(GLuint program, GLuint shader) { | 338 void DetachShader(GLuint program, GLuint shader) { |
| 344 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 339 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 345 GPU_CLIENT_LOG("[" << this << "] glDetachShader(" << program << ", " << shader
<< ")"); // NOLINT | 340 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glDetachShader(" << program << ", "
<< shader << ")"); // NOLINT |
| 346 helper_->DetachShader(program, shader); | 341 helper_->DetachShader(program, shader); |
| 347 } | 342 } |
| 348 | 343 |
| 349 void Disable(GLenum cap); | 344 void Disable(GLenum cap); |
| 350 | 345 |
| 351 void DrawArrays(GLenum mode, GLint first, GLsizei count); | 346 void DrawArrays(GLenum mode, GLint first, GLsizei count); |
| 352 | 347 |
| 353 void DrawElements( | 348 void DrawElements( |
| 354 GLenum mode, GLsizei count, GLenum type, const void* indices); | 349 GLenum mode, GLsizei count, GLenum type, const void* indices); |
| 355 | 350 |
| 356 void Enable(GLenum cap); | 351 void Enable(GLenum cap); |
| 357 | 352 |
| 358 void Finish(); | 353 void Finish(); |
| 359 | 354 |
| 360 void Flush(); | 355 void Flush(); |
| 361 | 356 |
| 362 void ShallowFlushCHROMIUM(); | 357 void ShallowFlushCHROMIUM(); |
| 363 | 358 |
| 364 void FramebufferRenderbuffer( | 359 void FramebufferRenderbuffer( |
| 365 GLenum target, GLenum attachment, GLenum renderbuffertarget, | 360 GLenum target, GLenum attachment, GLenum renderbuffertarget, |
| 366 GLuint renderbuffer) { | 361 GLuint renderbuffer) { |
| 367 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 362 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 368 GPU_CLIENT_LOG("[" << this << "] glFramebufferRenderbuffer(" << GLES2Util::Get
StringFrameBufferTarget(target) << ", " << GLES2Util::GetStringAttachment(attach
ment) << ", " << GLES2Util::GetStringRenderBufferTarget(renderbuffertarget) << "
, " << renderbuffer << ")"); // NOLINT | 363 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glFramebufferRenderbuffer(" << GLES
2Util::GetStringFrameBufferTarget(target) << ", " << GLES2Util::GetStringAttachm
ent(attachment) << ", " << GLES2Util::GetStringRenderBufferTarget(renderbufferta
rget) << ", " << renderbuffer << ")"); // NOLINT |
| 369 helper_->FramebufferRenderbuffer( | 364 helper_->FramebufferRenderbuffer( |
| 370 target, attachment, renderbuffertarget, renderbuffer); | 365 target, attachment, renderbuffertarget, renderbuffer); |
| 371 } | 366 } |
| 372 | 367 |
| 373 void FramebufferTexture2D( | 368 void FramebufferTexture2D( |
| 374 GLenum target, GLenum attachment, GLenum textarget, GLuint texture, | 369 GLenum target, GLenum attachment, GLenum textarget, GLuint texture, |
| 375 GLint level) { | 370 GLint level) { |
| 376 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 371 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 377 GPU_CLIENT_LOG("[" << this << "] glFramebufferTexture2D(" << GLES2Util::GetStr
ingFrameBufferTarget(target) << ", " << GLES2Util::GetStringAttachment(attachmen
t) << ", " << GLES2Util::GetStringTextureTarget(textarget) << ", " << texture <<
", " << level << ")"); // NOLINT | 372 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glFramebufferTexture2D(" << GLES2Ut
il::GetStringFrameBufferTarget(target) << ", " << GLES2Util::GetStringAttachment
(attachment) << ", " << GLES2Util::GetStringTextureTarget(textarget) << ", " <<
texture << ", " << level << ")"); // NOLINT |
| 378 helper_->FramebufferTexture2D(target, attachment, textarget, texture, level); | 373 helper_->FramebufferTexture2D(target, attachment, textarget, texture, level); |
| 379 } | 374 } |
| 380 | 375 |
| 381 void FrontFace(GLenum mode) { | 376 void FrontFace(GLenum mode) { |
| 382 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 377 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 383 GPU_CLIENT_LOG("[" << this << "] glFrontFace(" << GLES2Util::GetStringFaceMode
(mode) << ")"); // NOLINT | 378 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glFrontFace(" << GLES2Util::GetStri
ngFaceMode(mode) << ")"); // NOLINT |
| 384 helper_->FrontFace(mode); | 379 helper_->FrontFace(mode); |
| 385 } | 380 } |
| 386 | 381 |
| 387 void GenBuffers(GLsizei n, GLuint* buffers) { | 382 void GenBuffers(GLsizei n, GLuint* buffers) { |
| 388 GPU_CLIENT_LOG("[" << this << "] glGenBuffers(" << n << ", " << static_cast<co
nst void*>(buffers) << ")"); // NOLINT | 383 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glGenBuffers(" << n << ", " << stat
ic_cast<const void*>(buffers) << ")"); // NOLINT |
| 389 if (n < 0) { | 384 if (n < 0) { |
| 390 SetGLError(GL_INVALID_VALUE, "glGenBuffers", "n < 0"); | 385 SetGLError(GL_INVALID_VALUE, "glGenBuffers", "n < 0"); |
| 391 return; | 386 return; |
| 392 } | 387 } |
| 393 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 388 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 394 GetIdHandler(id_namespaces::kBuffers)-> | 389 GetIdHandler(id_namespaces::kBuffers)-> |
| 395 MakeIds(this, 0, n, buffers); | 390 MakeIds(this, 0, n, buffers); |
| 396 helper_->GenBuffersImmediate(n, buffers); | 391 helper_->GenBuffersImmediate(n, buffers); |
| 397 GPU_CLIENT_LOG_CODE_BLOCK({ | 392 GPU_CLIENT_LOG_CODE_BLOCK({ |
| 398 for (GLsizei i = 0; i < n; ++i) { | 393 for (GLsizei i = 0; i < n; ++i) { |
| 399 GPU_CLIENT_LOG(" " << i << ": " << buffers[i]); | 394 GPU_CLIENT_LOG(" " << i << ": " << buffers[i]); |
| 400 } | 395 } |
| 401 }); | 396 }); |
| 402 } | 397 } |
| 403 | 398 |
| 404 void GenerateMipmap(GLenum target) { | 399 void GenerateMipmap(GLenum target) { |
| 405 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 400 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 406 GPU_CLIENT_LOG("[" << this << "] glGenerateMipmap(" << GLES2Util::GetStringTex
tureBindTarget(target) << ")"); // NOLINT | 401 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glGenerateMipmap(" << GLES2Util::Ge
tStringTextureBindTarget(target) << ")"); // NOLINT |
| 407 helper_->GenerateMipmap(target); | 402 helper_->GenerateMipmap(target); |
| 408 } | 403 } |
| 409 | 404 |
| 410 void GenFramebuffers(GLsizei n, GLuint* framebuffers) { | 405 void GenFramebuffers(GLsizei n, GLuint* framebuffers) { |
| 411 GPU_CLIENT_LOG("[" << this << "] glGenFramebuffers(" << n << ", " << static_ca
st<const void*>(framebuffers) << ")"); // NOLINT | 406 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glGenFramebuffers(" << n << ", " <<
static_cast<const void*>(framebuffers) << ")"); // NOLINT |
| 412 if (n < 0) { | 407 if (n < 0) { |
| 413 SetGLError(GL_INVALID_VALUE, "glGenFramebuffers", "n < 0"); | 408 SetGLError(GL_INVALID_VALUE, "glGenFramebuffers", "n < 0"); |
| 414 return; | 409 return; |
| 415 } | 410 } |
| 416 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 411 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 417 GetIdHandler(id_namespaces::kFramebuffers)-> | 412 GetIdHandler(id_namespaces::kFramebuffers)-> |
| 418 MakeIds(this, 0, n, framebuffers); | 413 MakeIds(this, 0, n, framebuffers); |
| 419 helper_->GenFramebuffersImmediate(n, framebuffers); | 414 helper_->GenFramebuffersImmediate(n, framebuffers); |
| 420 GPU_CLIENT_LOG_CODE_BLOCK({ | 415 GPU_CLIENT_LOG_CODE_BLOCK({ |
| 421 for (GLsizei i = 0; i < n; ++i) { | 416 for (GLsizei i = 0; i < n; ++i) { |
| 422 GPU_CLIENT_LOG(" " << i << ": " << framebuffers[i]); | 417 GPU_CLIENT_LOG(" " << i << ": " << framebuffers[i]); |
| 423 } | 418 } |
| 424 }); | 419 }); |
| 425 } | 420 } |
| 426 | 421 |
| 427 void GenRenderbuffers(GLsizei n, GLuint* renderbuffers) { | 422 void GenRenderbuffers(GLsizei n, GLuint* renderbuffers) { |
| 428 GPU_CLIENT_LOG("[" << this << "] glGenRenderbuffers(" << n << ", " << static_c
ast<const void*>(renderbuffers) << ")"); // NOLINT | 423 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glGenRenderbuffers(" << n << ", " <
< static_cast<const void*>(renderbuffers) << ")"); // NOLINT |
| 429 if (n < 0) { | 424 if (n < 0) { |
| 430 SetGLError(GL_INVALID_VALUE, "glGenRenderbuffers", "n < 0"); | 425 SetGLError(GL_INVALID_VALUE, "glGenRenderbuffers", "n < 0"); |
| 431 return; | 426 return; |
| 432 } | 427 } |
| 433 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 428 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 434 GetIdHandler(id_namespaces::kRenderbuffers)-> | 429 GetIdHandler(id_namespaces::kRenderbuffers)-> |
| 435 MakeIds(this, 0, n, renderbuffers); | 430 MakeIds(this, 0, n, renderbuffers); |
| 436 helper_->GenRenderbuffersImmediate(n, renderbuffers); | 431 helper_->GenRenderbuffersImmediate(n, renderbuffers); |
| 437 GPU_CLIENT_LOG_CODE_BLOCK({ | 432 GPU_CLIENT_LOG_CODE_BLOCK({ |
| 438 for (GLsizei i = 0; i < n; ++i) { | 433 for (GLsizei i = 0; i < n; ++i) { |
| 439 GPU_CLIENT_LOG(" " << i << ": " << renderbuffers[i]); | 434 GPU_CLIENT_LOG(" " << i << ": " << renderbuffers[i]); |
| 440 } | 435 } |
| 441 }); | 436 }); |
| 442 } | 437 } |
| 443 | 438 |
| 444 void GenTextures(GLsizei n, GLuint* textures) { | 439 void GenTextures(GLsizei n, GLuint* textures) { |
| 445 GPU_CLIENT_LOG("[" << this << "] glGenTextures(" << n << ", " << static_cast<c
onst void*>(textures) << ")"); // NOLINT | 440 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glGenTextures(" << n << ", " << sta
tic_cast<const void*>(textures) << ")"); // NOLINT |
| 446 if (n < 0) { | 441 if (n < 0) { |
| 447 SetGLError(GL_INVALID_VALUE, "glGenTextures", "n < 0"); | 442 SetGLError(GL_INVALID_VALUE, "glGenTextures", "n < 0"); |
| 448 return; | 443 return; |
| 449 } | 444 } |
| 450 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 445 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 451 GetIdHandler(id_namespaces::kTextures)-> | 446 GetIdHandler(id_namespaces::kTextures)-> |
| 452 MakeIds(this, 0, n, textures); | 447 MakeIds(this, 0, n, textures); |
| 453 helper_->GenTexturesImmediate(n, textures); | 448 helper_->GenTexturesImmediate(n, textures); |
| 454 GPU_CLIENT_LOG_CODE_BLOCK({ | 449 GPU_CLIENT_LOG_CODE_BLOCK({ |
| 455 for (GLsizei i = 0; i < n; ++i) { | 450 for (GLsizei i = 0; i < n; ++i) { |
| (...skipping 11 matching lines...) Expand all Loading... |
| 467 GLenum* type, char* name); | 462 GLenum* type, char* name); |
| 468 | 463 |
| 469 void GetAttachedShaders( | 464 void GetAttachedShaders( |
| 470 GLuint program, GLsizei maxcount, GLsizei* count, GLuint* shaders); | 465 GLuint program, GLsizei maxcount, GLsizei* count, GLuint* shaders); |
| 471 | 466 |
| 472 GLint GetAttribLocation(GLuint program, const char* name); | 467 GLint GetAttribLocation(GLuint program, const char* name); |
| 473 | 468 |
| 474 void GetBooleanv(GLenum pname, GLboolean* params) { | 469 void GetBooleanv(GLenum pname, GLboolean* params) { |
| 475 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 470 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 476 GPU_CLIENT_VALIDATE_DESTINATION_INITALIZATION(GLboolean, params); | 471 GPU_CLIENT_VALIDATE_DESTINATION_INITALIZATION(GLboolean, params); |
| 477 GPU_CLIENT_LOG("[" << this << "] glGetBooleanv(" << GLES2Util::GetStringGLStat
e(pname) << ", " << static_cast<const void*>(params) << ")"); // NOLINT | 472 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glGetBooleanv(" << GLES2Util::GetSt
ringGLState(pname) << ", " << static_cast<const void*>(params) << ")"); // NOLI
NT |
| 478 if (GetBooleanvHelper(pname, params)) { | 473 if (GetBooleanvHelper(pname, params)) { |
| 479 return; | 474 return; |
| 480 } | 475 } |
| 481 typedef GetBooleanv::Result Result; | 476 typedef GetBooleanv::Result Result; |
| 482 Result* result = GetResultAs<Result*>(); | 477 Result* result = GetResultAs<Result*>(); |
| 483 if (!result) { | 478 if (!result) { |
| 484 return; | 479 return; |
| 485 } | 480 } |
| 486 result->SetNumResults(0); | 481 result->SetNumResults(0); |
| 487 helper_->GetBooleanv(pname, | 482 helper_->GetBooleanv(pname, |
| 488 GetResultShmId(), GetResultShmOffset()); | 483 GetResultShmId(), GetResultShmOffset()); |
| 489 WaitForCmd(); | 484 WaitForCmd(); |
| 490 result->CopyResult(params); | 485 result->CopyResult(params); |
| 491 GPU_CLIENT_LOG_CODE_BLOCK({ | 486 GPU_CLIENT_LOG_CODE_BLOCK({ |
| 492 for (int32 i = 0; i < result->GetNumResults(); ++i) { | 487 for (int32 i = 0; i < result->GetNumResults(); ++i) { |
| 493 GPU_CLIENT_LOG(" " << i << ": " << result->GetData()[i]); | 488 GPU_CLIENT_LOG(" " << i << ": " << result->GetData()[i]); |
| 494 } | 489 } |
| 495 }); | 490 }); |
| 496 } | 491 } |
| 497 void GetBufferParameteriv(GLenum target, GLenum pname, GLint* params) { | 492 void GetBufferParameteriv(GLenum target, GLenum pname, GLint* params) { |
| 498 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 493 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 499 GPU_CLIENT_VALIDATE_DESTINATION_INITALIZATION(GLint, params); | 494 GPU_CLIENT_VALIDATE_DESTINATION_INITALIZATION(GLint, params); |
| 500 GPU_CLIENT_LOG("[" << this << "] glGetBufferParameteriv(" << GLES2Util::GetStr
ingBufferTarget(target) << ", " << GLES2Util::GetStringBufferParameter(pname) <<
", " << static_cast<const void*>(params) << ")"); // NOLINT | 495 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glGetBufferParameteriv(" << GLES2Ut
il::GetStringBufferTarget(target) << ", " << GLES2Util::GetStringBufferParameter
(pname) << ", " << static_cast<const void*>(params) << ")"); // NOLINT |
| 501 if (GetBufferParameterivHelper(target, pname, params)) { | 496 if (GetBufferParameterivHelper(target, pname, params)) { |
| 502 return; | 497 return; |
| 503 } | 498 } |
| 504 typedef GetBufferParameteriv::Result Result; | 499 typedef GetBufferParameteriv::Result Result; |
| 505 Result* result = GetResultAs<Result*>(); | 500 Result* result = GetResultAs<Result*>(); |
| 506 if (!result) { | 501 if (!result) { |
| 507 return; | 502 return; |
| 508 } | 503 } |
| 509 result->SetNumResults(0); | 504 result->SetNumResults(0); |
| 510 helper_->GetBufferParameteriv(target, pname, | 505 helper_->GetBufferParameteriv(target, pname, |
| 511 GetResultShmId(), GetResultShmOffset()); | 506 GetResultShmId(), GetResultShmOffset()); |
| 512 WaitForCmd(); | 507 WaitForCmd(); |
| 513 result->CopyResult(params); | 508 result->CopyResult(params); |
| 514 GPU_CLIENT_LOG_CODE_BLOCK({ | 509 GPU_CLIENT_LOG_CODE_BLOCK({ |
| 515 for (int32 i = 0; i < result->GetNumResults(); ++i) { | 510 for (int32 i = 0; i < result->GetNumResults(); ++i) { |
| 516 GPU_CLIENT_LOG(" " << i << ": " << result->GetData()[i]); | 511 GPU_CLIENT_LOG(" " << i << ": " << result->GetData()[i]); |
| 517 } | 512 } |
| 518 }); | 513 }); |
| 519 } | 514 } |
| 520 GLenum GetError(); | 515 GLenum GetError(); |
| 521 | 516 |
| 522 void GetFloatv(GLenum pname, GLfloat* params) { | 517 void GetFloatv(GLenum pname, GLfloat* params) { |
| 523 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 518 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 524 GPU_CLIENT_LOG("[" << this << "] glGetFloatv(" << GLES2Util::GetStringGLState( | 519 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glGetFloatv(" << GLES2Util::GetStri
ngGLState(pname) << ", " << static_cast<const void*>(params) << ")"); // NOLINT |
| 525 pname) << ", " << static_cast<const void*>(params) << ")"); | |
| 526 if (GetFloatvHelper(pname, params)) { | 520 if (GetFloatvHelper(pname, params)) { |
| 527 return; | 521 return; |
| 528 } | 522 } |
| 529 typedef GetFloatv::Result Result; | 523 typedef GetFloatv::Result Result; |
| 530 Result* result = GetResultAs<Result*>(); | 524 Result* result = GetResultAs<Result*>(); |
| 531 if (!result) { | 525 if (!result) { |
| 532 return; | 526 return; |
| 533 } | 527 } |
| 534 result->SetNumResults(0); | 528 result->SetNumResults(0); |
| 535 helper_->GetFloatv(pname, | 529 helper_->GetFloatv(pname, |
| 536 GetResultShmId(), GetResultShmOffset()); | 530 GetResultShmId(), GetResultShmOffset()); |
| 537 WaitForCmd(); | 531 WaitForCmd(); |
| 538 result->CopyResult(params); | 532 result->CopyResult(params); |
| 539 GPU_CLIENT_LOG_CODE_BLOCK({ | 533 GPU_CLIENT_LOG_CODE_BLOCK({ |
| 540 for (int32 i = 0; i < result->GetNumResults(); ++i) { | 534 for (int32 i = 0; i < result->GetNumResults(); ++i) { |
| 541 GPU_CLIENT_LOG(" " << i << ": " << result->GetData()[i]); | 535 GPU_CLIENT_LOG(" " << i << ": " << result->GetData()[i]); |
| 542 } | 536 } |
| 543 }); | 537 }); |
| 544 } | 538 } |
| 545 void GetFramebufferAttachmentParameteriv( | 539 void GetFramebufferAttachmentParameteriv( |
| 546 GLenum target, GLenum attachment, GLenum pname, GLint* params) { | 540 GLenum target, GLenum attachment, GLenum pname, GLint* params) { |
| 547 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 541 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 548 GPU_CLIENT_VALIDATE_DESTINATION_INITALIZATION(GLint, params); | 542 GPU_CLIENT_VALIDATE_DESTINATION_INITALIZATION(GLint, params); |
| 549 GPU_CLIENT_LOG("[" << this << "] glGetFramebufferAttachmentParameteriv(" << GL
ES2Util::GetStringFrameBufferTarget(target) << ", " << GLES2Util::GetStringAttac
hment(attachment) << ", " << GLES2Util::GetStringFrameBufferParameter(pname) <<
", " << static_cast<const void*>(params) << ")"); // NOLINT | 543 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glGetFramebufferAttachmentParameter
iv(" << GLES2Util::GetStringFrameBufferTarget(target) << ", " << GLES2Util::GetS
tringAttachment(attachment) << ", " << GLES2Util::GetStringFrameBufferParameter(
pname) << ", " << static_cast<const void*>(params) << ")"); // NOLINT |
| 550 if (GetFramebufferAttachmentParameterivHelper( | 544 if (GetFramebufferAttachmentParameterivHelper( |
| 551 target, attachment, pname, params)) { | 545 target, attachment, pname, params)) { |
| 552 return; | 546 return; |
| 553 } | 547 } |
| 554 typedef GetFramebufferAttachmentParameteriv::Result Result; | 548 typedef GetFramebufferAttachmentParameteriv::Result Result; |
| 555 Result* result = GetResultAs<Result*>(); | 549 Result* result = GetResultAs<Result*>(); |
| 556 if (!result) { | 550 if (!result) { |
| 557 return; | 551 return; |
| 558 } | 552 } |
| 559 result->SetNumResults(0); | 553 result->SetNumResults(0); |
| 560 helper_->GetFramebufferAttachmentParameteriv(target, attachment, pname, | 554 helper_->GetFramebufferAttachmentParameteriv(target, attachment, pname, |
| 561 GetResultShmId(), GetResultShmOffset()); | 555 GetResultShmId(), GetResultShmOffset()); |
| 562 WaitForCmd(); | 556 WaitForCmd(); |
| 563 result->CopyResult(params); | 557 result->CopyResult(params); |
| 564 GPU_CLIENT_LOG_CODE_BLOCK({ | 558 GPU_CLIENT_LOG_CODE_BLOCK({ |
| 565 for (int32 i = 0; i < result->GetNumResults(); ++i) { | 559 for (int32 i = 0; i < result->GetNumResults(); ++i) { |
| 566 GPU_CLIENT_LOG(" " << i << ": " << result->GetData()[i]); | 560 GPU_CLIENT_LOG(" " << i << ": " << result->GetData()[i]); |
| 567 } | 561 } |
| 568 }); | 562 }); |
| 569 } | 563 } |
| 570 void GetIntegerv(GLenum pname, GLint* params) { | 564 void GetIntegerv(GLenum pname, GLint* params) { |
| 571 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 565 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 572 GPU_CLIENT_VALIDATE_DESTINATION_INITALIZATION(GLint, params); | 566 GPU_CLIENT_VALIDATE_DESTINATION_INITALIZATION(GLint, params); |
| 573 GPU_CLIENT_LOG("[" << this << "] glGetIntegerv(" << GLES2Util::GetStringGLStat
e(pname) << ", " << static_cast<const void*>(params) << ")"); // NOLINT | 567 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glGetIntegerv(" << GLES2Util::GetSt
ringGLState(pname) << ", " << static_cast<const void*>(params) << ")"); // NOLI
NT |
| 574 if (GetIntegervHelper(pname, params)) { | 568 if (GetIntegervHelper(pname, params)) { |
| 575 return; | 569 return; |
| 576 } | 570 } |
| 577 typedef GetIntegerv::Result Result; | 571 typedef GetIntegerv::Result Result; |
| 578 Result* result = GetResultAs<Result*>(); | 572 Result* result = GetResultAs<Result*>(); |
| 579 if (!result) { | 573 if (!result) { |
| 580 return; | 574 return; |
| 581 } | 575 } |
| 582 result->SetNumResults(0); | 576 result->SetNumResults(0); |
| 583 helper_->GetIntegerv(pname, | 577 helper_->GetIntegerv(pname, |
| 584 GetResultShmId(), GetResultShmOffset()); | 578 GetResultShmId(), GetResultShmOffset()); |
| 585 WaitForCmd(); | 579 WaitForCmd(); |
| 586 result->CopyResult(params); | 580 result->CopyResult(params); |
| 587 GPU_CLIENT_LOG_CODE_BLOCK({ | 581 GPU_CLIENT_LOG_CODE_BLOCK({ |
| 588 for (int32 i = 0; i < result->GetNumResults(); ++i) { | 582 for (int32 i = 0; i < result->GetNumResults(); ++i) { |
| 589 GPU_CLIENT_LOG(" " << i << ": " << result->GetData()[i]); | 583 GPU_CLIENT_LOG(" " << i << ": " << result->GetData()[i]); |
| 590 } | 584 } |
| 591 }); | 585 }); |
| 592 } | 586 } |
| 593 void GetProgramiv(GLuint program, GLenum pname, GLint* params) { | 587 void GetProgramiv(GLuint program, GLenum pname, GLint* params) { |
| 594 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 588 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 595 GPU_CLIENT_VALIDATE_DESTINATION_INITALIZATION(GLint, params); | 589 GPU_CLIENT_VALIDATE_DESTINATION_INITALIZATION(GLint, params); |
| 596 GPU_CLIENT_LOG("[" << this << "] glGetProgramiv(" << program << ", " << GLES2U
til::GetStringProgramParameter(pname) << ", " << static_cast<const void*>(params
) << ")"); // NOLINT | 590 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glGetProgramiv(" << program << ", "
<< GLES2Util::GetStringProgramParameter(pname) << ", " << static_cast<const voi
d*>(params) << ")"); // NOLINT |
| 597 if (GetProgramivHelper(program, pname, params)) { | 591 if (GetProgramivHelper(program, pname, params)) { |
| 598 return; | 592 return; |
| 599 } | 593 } |
| 600 typedef GetProgramiv::Result Result; | 594 typedef GetProgramiv::Result Result; |
| 601 Result* result = GetResultAs<Result*>(); | 595 Result* result = GetResultAs<Result*>(); |
| 602 if (!result) { | 596 if (!result) { |
| 603 return; | 597 return; |
| 604 } | 598 } |
| 605 result->SetNumResults(0); | 599 result->SetNumResults(0); |
| 606 helper_->GetProgramiv(program, pname, | 600 helper_->GetProgramiv(program, pname, |
| 607 GetResultShmId(), GetResultShmOffset()); | 601 GetResultShmId(), GetResultShmOffset()); |
| 608 WaitForCmd(); | 602 WaitForCmd(); |
| 609 result->CopyResult(params); | 603 result->CopyResult(params); |
| 610 GPU_CLIENT_LOG_CODE_BLOCK({ | 604 GPU_CLIENT_LOG_CODE_BLOCK({ |
| 611 for (int32 i = 0; i < result->GetNumResults(); ++i) { | 605 for (int32 i = 0; i < result->GetNumResults(); ++i) { |
| 612 GPU_CLIENT_LOG(" " << i << ": " << result->GetData()[i]); | 606 GPU_CLIENT_LOG(" " << i << ": " << result->GetData()[i]); |
| 613 } | 607 } |
| 614 }); | 608 }); |
| 615 } | 609 } |
| 616 void GetProgramInfoLog( | 610 void GetProgramInfoLog( |
| 617 GLuint program, GLsizei bufsize, GLsizei* length, char* infolog) { | 611 GLuint program, GLsizei bufsize, GLsizei* length, char* infolog) { |
| 618 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 612 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 619 GPU_CLIENT_VALIDATE_DESTINATION_INITALIZATION(GLsizei, length); | 613 GPU_CLIENT_VALIDATE_DESTINATION_OPTIONAL_INITALIZATION(GLsizei, length); |
| 620 GPU_CLIENT_LOG("[" << this << "] glGetProgramInfoLog" << "(" | 614 GPU_CLIENT_LOG("[" << GetLogPrefix() |
| 615 << "] glGetProgramInfoLog" << "(" |
| 621 << program << ", " | 616 << program << ", " |
| 622 << bufsize << ", " | 617 << bufsize << ", " |
| 623 << static_cast<void*>(length) << ", " | 618 << static_cast<void*>(length) << ", " |
| 624 << static_cast<void*>(infolog) << ")"); | 619 << static_cast<void*>(infolog) << ")"); |
| 625 helper_->SetBucketSize(kResultBucketId, 0); | 620 helper_->SetBucketSize(kResultBucketId, 0); |
| 626 helper_->GetProgramInfoLog(program, kResultBucketId); | 621 helper_->GetProgramInfoLog(program, kResultBucketId); |
| 627 std::string str; | 622 std::string str; |
| 628 GLsizei max_size = 0; | 623 GLsizei max_size = 0; |
| 629 if (GetBucketAsString(kResultBucketId, &str)) { | 624 if (GetBucketAsString(kResultBucketId, &str)) { |
| 630 if (bufsize > 0) { | 625 if (bufsize > 0) { |
| 631 max_size = | 626 max_size = |
| 632 std::min(static_cast<size_t>(bufsize) - 1, str.size()); | 627 std::min(static_cast<size_t>(bufsize) - 1, str.size()); |
| 633 memcpy(infolog, str.c_str(), max_size); | 628 memcpy(infolog, str.c_str(), max_size); |
| 634 infolog[max_size] = '\0'; | 629 infolog[max_size] = '\0'; |
| 635 GPU_CLIENT_LOG("------\n" << infolog << "\n------"); | 630 GPU_CLIENT_LOG("------\n" << infolog << "\n------"); |
| 636 } | 631 } |
| 637 } | 632 } |
| 638 if (length != NULL) { | 633 if (length != NULL) { |
| 639 *length = max_size; | 634 *length = max_size; |
| 640 } | 635 } |
| 641 } | 636 } |
| 642 void GetRenderbufferParameteriv(GLenum target, GLenum pname, GLint* params) { | 637 void GetRenderbufferParameteriv(GLenum target, GLenum pname, GLint* params) { |
| 643 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 638 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 644 GPU_CLIENT_VALIDATE_DESTINATION_INITALIZATION(GLint, params); | 639 GPU_CLIENT_VALIDATE_DESTINATION_INITALIZATION(GLint, params); |
| 645 GPU_CLIENT_LOG("[" << this << "] glGetRenderbufferParameteriv(" << GLES2Util::
GetStringRenderBufferTarget(target) << ", " << GLES2Util::GetStringRenderBufferP
arameter(pname) << ", " << static_cast<const void*>(params) << ")"); // NOLINT | 640 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glGetRenderbufferParameteriv(" << G
LES2Util::GetStringRenderBufferTarget(target) << ", " << GLES2Util::GetStringRen
derBufferParameter(pname) << ", " << static_cast<const void*>(params) << ")");
// NOLINT |
| 646 if (GetRenderbufferParameterivHelper(target, pname, params)) { | 641 if (GetRenderbufferParameterivHelper(target, pname, params)) { |
| 647 return; | 642 return; |
| 648 } | 643 } |
| 649 typedef GetRenderbufferParameteriv::Result Result; | 644 typedef GetRenderbufferParameteriv::Result Result; |
| 650 Result* result = GetResultAs<Result*>(); | 645 Result* result = GetResultAs<Result*>(); |
| 651 if (!result) { | 646 if (!result) { |
| 652 return; | 647 return; |
| 653 } | 648 } |
| 654 result->SetNumResults(0); | 649 result->SetNumResults(0); |
| 655 helper_->GetRenderbufferParameteriv(target, pname, | 650 helper_->GetRenderbufferParameteriv(target, pname, |
| 656 GetResultShmId(), GetResultShmOffset()); | 651 GetResultShmId(), GetResultShmOffset()); |
| 657 WaitForCmd(); | 652 WaitForCmd(); |
| 658 result->CopyResult(params); | 653 result->CopyResult(params); |
| 659 GPU_CLIENT_LOG_CODE_BLOCK({ | 654 GPU_CLIENT_LOG_CODE_BLOCK({ |
| 660 for (int32 i = 0; i < result->GetNumResults(); ++i) { | 655 for (int32 i = 0; i < result->GetNumResults(); ++i) { |
| 661 GPU_CLIENT_LOG(" " << i << ": " << result->GetData()[i]); | 656 GPU_CLIENT_LOG(" " << i << ": " << result->GetData()[i]); |
| 662 } | 657 } |
| 663 }); | 658 }); |
| 664 } | 659 } |
| 665 void GetShaderiv(GLuint shader, GLenum pname, GLint* params) { | 660 void GetShaderiv(GLuint shader, GLenum pname, GLint* params) { |
| 666 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 661 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 667 GPU_CLIENT_VALIDATE_DESTINATION_INITALIZATION(GLint, params); | 662 GPU_CLIENT_VALIDATE_DESTINATION_INITALIZATION(GLint, params); |
| 668 GPU_CLIENT_LOG("[" << this << "] glGetShaderiv(" << shader << ", " << GLES2Uti
l::GetStringShaderParameter(pname) << ", " << static_cast<const void*>(params) <
< ")"); // NOLINT | 663 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glGetShaderiv(" << shader << ", " <
< GLES2Util::GetStringShaderParameter(pname) << ", " << static_cast<const void*>
(params) << ")"); // NOLINT |
| 669 if (GetShaderivHelper(shader, pname, params)) { | 664 if (GetShaderivHelper(shader, pname, params)) { |
| 670 return; | 665 return; |
| 671 } | 666 } |
| 672 typedef GetShaderiv::Result Result; | 667 typedef GetShaderiv::Result Result; |
| 673 Result* result = GetResultAs<Result*>(); | 668 Result* result = GetResultAs<Result*>(); |
| 674 if (!result) { | 669 if (!result) { |
| 675 return; | 670 return; |
| 676 } | 671 } |
| 677 result->SetNumResults(0); | 672 result->SetNumResults(0); |
| 678 helper_->GetShaderiv(shader, pname, | 673 helper_->GetShaderiv(shader, pname, |
| 679 GetResultShmId(), GetResultShmOffset()); | 674 GetResultShmId(), GetResultShmOffset()); |
| 680 WaitForCmd(); | 675 WaitForCmd(); |
| 681 result->CopyResult(params); | 676 result->CopyResult(params); |
| 682 GPU_CLIENT_LOG_CODE_BLOCK({ | 677 GPU_CLIENT_LOG_CODE_BLOCK({ |
| 683 for (int32 i = 0; i < result->GetNumResults(); ++i) { | 678 for (int32 i = 0; i < result->GetNumResults(); ++i) { |
| 684 GPU_CLIENT_LOG(" " << i << ": " << result->GetData()[i]); | 679 GPU_CLIENT_LOG(" " << i << ": " << result->GetData()[i]); |
| 685 } | 680 } |
| 686 }); | 681 }); |
| 687 } | 682 } |
| 688 void GetShaderInfoLog( | 683 void GetShaderInfoLog( |
| 689 GLuint shader, GLsizei bufsize, GLsizei* length, char* infolog) { | 684 GLuint shader, GLsizei bufsize, GLsizei* length, char* infolog) { |
| 690 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 685 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 691 GPU_CLIENT_VALIDATE_DESTINATION_INITALIZATION(GLsizei, length); | 686 GPU_CLIENT_VALIDATE_DESTINATION_OPTIONAL_INITALIZATION(GLsizei, length); |
| 692 GPU_CLIENT_LOG("[" << this << "] glGetShaderInfoLog" << "(" | 687 GPU_CLIENT_LOG("[" << GetLogPrefix() |
| 688 << "] glGetShaderInfoLog" << "(" |
| 693 << shader << ", " | 689 << shader << ", " |
| 694 << bufsize << ", " | 690 << bufsize << ", " |
| 695 << static_cast<void*>(length) << ", " | 691 << static_cast<void*>(length) << ", " |
| 696 << static_cast<void*>(infolog) << ")"); | 692 << static_cast<void*>(infolog) << ")"); |
| 697 helper_->SetBucketSize(kResultBucketId, 0); | 693 helper_->SetBucketSize(kResultBucketId, 0); |
| 698 helper_->GetShaderInfoLog(shader, kResultBucketId); | 694 helper_->GetShaderInfoLog(shader, kResultBucketId); |
| 699 std::string str; | 695 std::string str; |
| 700 GLsizei max_size = 0; | 696 GLsizei max_size = 0; |
| 701 if (GetBucketAsString(kResultBucketId, &str)) { | 697 if (GetBucketAsString(kResultBucketId, &str)) { |
| 702 if (bufsize > 0) { | 698 if (bufsize > 0) { |
| 703 max_size = | 699 max_size = |
| 704 std::min(static_cast<size_t>(bufsize) - 1, str.size()); | 700 std::min(static_cast<size_t>(bufsize) - 1, str.size()); |
| 705 memcpy(infolog, str.c_str(), max_size); | 701 memcpy(infolog, str.c_str(), max_size); |
| 706 infolog[max_size] = '\0'; | 702 infolog[max_size] = '\0'; |
| 707 GPU_CLIENT_LOG("------\n" << infolog << "\n------"); | 703 GPU_CLIENT_LOG("------\n" << infolog << "\n------"); |
| 708 } | 704 } |
| 709 } | 705 } |
| 710 if (length != NULL) { | 706 if (length != NULL) { |
| 711 *length = max_size; | 707 *length = max_size; |
| 712 } | 708 } |
| 713 } | 709 } |
| 714 void GetShaderPrecisionFormat( | 710 void GetShaderPrecisionFormat( |
| 715 GLenum shadertype, GLenum precisiontype, GLint* range, GLint* precision); | 711 GLenum shadertype, GLenum precisiontype, GLint* range, GLint* precision); |
| 716 | 712 |
| 717 void GetShaderSource( | 713 void GetShaderSource( |
| 718 GLuint shader, GLsizei bufsize, GLsizei* length, char* source) { | 714 GLuint shader, GLsizei bufsize, GLsizei* length, char* source) { |
| 719 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 715 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 720 GPU_CLIENT_VALIDATE_DESTINATION_INITALIZATION(GLsizei, length); | 716 GPU_CLIENT_VALIDATE_DESTINATION_OPTIONAL_INITALIZATION(GLsizei, length); |
| 721 GPU_CLIENT_LOG("[" << this << "] glGetShaderSource" << "(" | 717 GPU_CLIENT_LOG("[" << GetLogPrefix() |
| 718 << "] glGetShaderSource" << "(" |
| 722 << shader << ", " | 719 << shader << ", " |
| 723 << bufsize << ", " | 720 << bufsize << ", " |
| 724 << static_cast<void*>(length) << ", " | 721 << static_cast<void*>(length) << ", " |
| 725 << static_cast<void*>(source) << ")"); | 722 << static_cast<void*>(source) << ")"); |
| 726 helper_->SetBucketSize(kResultBucketId, 0); | 723 helper_->SetBucketSize(kResultBucketId, 0); |
| 727 helper_->GetShaderSource(shader, kResultBucketId); | 724 helper_->GetShaderSource(shader, kResultBucketId); |
| 728 std::string str; | 725 std::string str; |
| 729 GLsizei max_size = 0; | 726 GLsizei max_size = 0; |
| 730 if (GetBucketAsString(kResultBucketId, &str)) { | 727 if (GetBucketAsString(kResultBucketId, &str)) { |
| 731 if (bufsize > 0) { | 728 if (bufsize > 0) { |
| 732 max_size = | 729 max_size = |
| 733 std::min(static_cast<size_t>(bufsize) - 1, str.size()); | 730 std::min(static_cast<size_t>(bufsize) - 1, str.size()); |
| 734 memcpy(source, str.c_str(), max_size); | 731 memcpy(source, str.c_str(), max_size); |
| 735 source[max_size] = '\0'; | 732 source[max_size] = '\0'; |
| 736 GPU_CLIENT_LOG("------\n" << source << "\n------"); | 733 GPU_CLIENT_LOG("------\n" << source << "\n------"); |
| 737 } | 734 } |
| 738 } | 735 } |
| 739 if (length != NULL) { | 736 if (length != NULL) { |
| 740 *length = max_size; | 737 *length = max_size; |
| 741 } | 738 } |
| 742 } | 739 } |
| 743 const GLubyte* GetString(GLenum name); | 740 const GLubyte* GetString(GLenum name); |
| 744 | 741 |
| 745 void GetTexParameterfv(GLenum target, GLenum pname, GLfloat* params) { | 742 void GetTexParameterfv(GLenum target, GLenum pname, GLfloat* params) { |
| 746 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 743 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 747 GPU_CLIENT_LOG("[" << this << "] glGetTexParameterfv(" << GLES2Util::GetString
GetTexParamTarget(target) << ", " << GLES2Util::GetStringTextureParameter(pname)
<< ", " << static_cast<const void*>(params) << ")"); // NOLINT | 744 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glGetTexParameterfv(" << GLES2Util:
:GetStringGetTexParamTarget(target) << ", " << GLES2Util::GetStringTextureParame
ter(pname) << ", " << static_cast<const void*>(params) << ")"); // NOLINT |
| 748 if (GetTexParameterfvHelper(target, pname, params)) { | 745 if (GetTexParameterfvHelper(target, pname, params)) { |
| 749 return; | 746 return; |
| 750 } | 747 } |
| 751 typedef GetTexParameterfv::Result Result; | 748 typedef GetTexParameterfv::Result Result; |
| 752 Result* result = GetResultAs<Result*>(); | 749 Result* result = GetResultAs<Result*>(); |
| 753 if (!result) { | 750 if (!result) { |
| 754 return; | 751 return; |
| 755 } | 752 } |
| 756 result->SetNumResults(0); | 753 result->SetNumResults(0); |
| 757 helper_->GetTexParameterfv(target, pname, | 754 helper_->GetTexParameterfv(target, pname, |
| 758 GetResultShmId(), GetResultShmOffset()); | 755 GetResultShmId(), GetResultShmOffset()); |
| 759 WaitForCmd(); | 756 WaitForCmd(); |
| 760 result->CopyResult(params); | 757 result->CopyResult(params); |
| 761 GPU_CLIENT_LOG_CODE_BLOCK({ | 758 GPU_CLIENT_LOG_CODE_BLOCK({ |
| 762 for (int32 i = 0; i < result->GetNumResults(); ++i) { | 759 for (int32 i = 0; i < result->GetNumResults(); ++i) { |
| 763 GPU_CLIENT_LOG(" " << i << ": " << result->GetData()[i]); | 760 GPU_CLIENT_LOG(" " << i << ": " << result->GetData()[i]); |
| 764 } | 761 } |
| 765 }); | 762 }); |
| 766 } | 763 } |
| 767 void GetTexParameteriv(GLenum target, GLenum pname, GLint* params) { | 764 void GetTexParameteriv(GLenum target, GLenum pname, GLint* params) { |
| 768 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 765 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 769 GPU_CLIENT_VALIDATE_DESTINATION_INITALIZATION(GLint, params); | 766 GPU_CLIENT_VALIDATE_DESTINATION_INITALIZATION(GLint, params); |
| 770 GPU_CLIENT_LOG("[" << this << "] glGetTexParameteriv(" << GLES2Util::GetString
GetTexParamTarget(target) << ", " << GLES2Util::GetStringTextureParameter(pname)
<< ", " << static_cast<const void*>(params) << ")"); // NOLINT | 767 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glGetTexParameteriv(" << GLES2Util:
:GetStringGetTexParamTarget(target) << ", " << GLES2Util::GetStringTextureParame
ter(pname) << ", " << static_cast<const void*>(params) << ")"); // NOLINT |
| 771 if (GetTexParameterivHelper(target, pname, params)) { | 768 if (GetTexParameterivHelper(target, pname, params)) { |
| 772 return; | 769 return; |
| 773 } | 770 } |
| 774 typedef GetTexParameteriv::Result Result; | 771 typedef GetTexParameteriv::Result Result; |
| 775 Result* result = GetResultAs<Result*>(); | 772 Result* result = GetResultAs<Result*>(); |
| 776 if (!result) { | 773 if (!result) { |
| 777 return; | 774 return; |
| 778 } | 775 } |
| 779 result->SetNumResults(0); | 776 result->SetNumResults(0); |
| 780 helper_->GetTexParameteriv(target, pname, | 777 helper_->GetTexParameteriv(target, pname, |
| 781 GetResultShmId(), GetResultShmOffset()); | 778 GetResultShmId(), GetResultShmOffset()); |
| 782 WaitForCmd(); | 779 WaitForCmd(); |
| 783 result->CopyResult(params); | 780 result->CopyResult(params); |
| 784 GPU_CLIENT_LOG_CODE_BLOCK({ | 781 GPU_CLIENT_LOG_CODE_BLOCK({ |
| 785 for (int32 i = 0; i < result->GetNumResults(); ++i) { | 782 for (int32 i = 0; i < result->GetNumResults(); ++i) { |
| 786 GPU_CLIENT_LOG(" " << i << ": " << result->GetData()[i]); | 783 GPU_CLIENT_LOG(" " << i << ": " << result->GetData()[i]); |
| 787 } | 784 } |
| 788 }); | 785 }); |
| 789 } | 786 } |
| 790 void GetUniformfv(GLuint program, GLint location, GLfloat* params); | 787 void GetUniformfv(GLuint program, GLint location, GLfloat* params); |
| 791 | 788 |
| 792 void GetUniformiv(GLuint program, GLint location, GLint* params); | 789 void GetUniformiv(GLuint program, GLint location, GLint* params); |
| 793 | 790 |
| 794 GLint GetUniformLocation(GLuint program, const char* name); | 791 GLint GetUniformLocation(GLuint program, const char* name); |
| 795 | 792 |
| 796 void GetVertexAttribPointerv(GLuint index, GLenum pname, void** pointer); | 793 void GetVertexAttribPointerv(GLuint index, GLenum pname, void** pointer); |
| 797 | 794 |
| 798 void Hint(GLenum target, GLenum mode) { | 795 void Hint(GLenum target, GLenum mode) { |
| 799 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 796 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 800 GPU_CLIENT_LOG("[" << this << "] glHint(" << GLES2Util::GetStringHintTarget( | 797 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glHint(" << GLES2Util::GetStringHin
tTarget(target) << ", " << GLES2Util::GetStringHintMode(mode) << ")"); // NOLIN
T |
| 801 target) << ", " << GLES2Util::GetStringHintMode(mode) << ")"); | |
| 802 helper_->Hint(target, mode); | 798 helper_->Hint(target, mode); |
| 803 } | 799 } |
| 804 | 800 |
| 805 GLboolean IsBuffer(GLuint buffer) { | 801 GLboolean IsBuffer(GLuint buffer) { |
| 806 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 802 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 807 GPU_CLIENT_LOG("[" << this << "] glIsBuffer(" << buffer << ")"); | 803 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glIsBuffer(" << buffer << ")"); |
| 808 typedef IsBuffer::Result Result; | 804 typedef IsBuffer::Result Result; |
| 809 Result* result = GetResultAs<Result*>(); | 805 Result* result = GetResultAs<Result*>(); |
| 810 if (!result) { | 806 if (!result) { |
| 811 return GL_FALSE; | 807 return GL_FALSE; |
| 812 } | 808 } |
| 813 *result = 0; | 809 *result = 0; |
| 814 helper_->IsBuffer(buffer, GetResultShmId(), GetResultShmOffset()); | 810 helper_->IsBuffer(buffer, GetResultShmId(), GetResultShmOffset()); |
| 815 WaitForCmd(); | 811 WaitForCmd(); |
| 816 GPU_CLIENT_LOG("returned " << *result); | 812 GPU_CLIENT_LOG("returned " << *result); |
| 817 return *result; | 813 return *result; |
| 818 } | 814 } |
| 819 | 815 |
| 820 GLboolean IsEnabled(GLenum cap); | 816 GLboolean IsEnabled(GLenum cap); |
| 821 | 817 |
| 822 GLboolean IsFramebuffer(GLuint framebuffer) { | 818 GLboolean IsFramebuffer(GLuint framebuffer) { |
| 823 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 819 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 824 GPU_CLIENT_LOG("[" << this << "] glIsFramebuffer(" << framebuffer << ")"); | 820 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glIsFramebuffer(" << framebuffer <<
")"); // NOLINT |
| 825 typedef IsFramebuffer::Result Result; | 821 typedef IsFramebuffer::Result Result; |
| 826 Result* result = GetResultAs<Result*>(); | 822 Result* result = GetResultAs<Result*>(); |
| 827 if (!result) { | 823 if (!result) { |
| 828 return GL_FALSE; | 824 return GL_FALSE; |
| 829 } | 825 } |
| 830 *result = 0; | 826 *result = 0; |
| 831 helper_->IsFramebuffer(framebuffer, GetResultShmId(), GetResultShmOffset()); | 827 helper_->IsFramebuffer(framebuffer, GetResultShmId(), GetResultShmOffset()); |
| 832 WaitForCmd(); | 828 WaitForCmd(); |
| 833 GPU_CLIENT_LOG("returned " << *result); | 829 GPU_CLIENT_LOG("returned " << *result); |
| 834 return *result; | 830 return *result; |
| 835 } | 831 } |
| 836 | 832 |
| 837 GLboolean IsProgram(GLuint program) { | 833 GLboolean IsProgram(GLuint program) { |
| 838 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 834 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 839 GPU_CLIENT_LOG("[" << this << "] glIsProgram(" << program << ")"); | 835 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glIsProgram(" << program << ")"); |
| 840 typedef IsProgram::Result Result; | 836 typedef IsProgram::Result Result; |
| 841 Result* result = GetResultAs<Result*>(); | 837 Result* result = GetResultAs<Result*>(); |
| 842 if (!result) { | 838 if (!result) { |
| 843 return GL_FALSE; | 839 return GL_FALSE; |
| 844 } | 840 } |
| 845 *result = 0; | 841 *result = 0; |
| 846 helper_->IsProgram(program, GetResultShmId(), GetResultShmOffset()); | 842 helper_->IsProgram(program, GetResultShmId(), GetResultShmOffset()); |
| 847 WaitForCmd(); | 843 WaitForCmd(); |
| 848 GPU_CLIENT_LOG("returned " << *result); | 844 GPU_CLIENT_LOG("returned " << *result); |
| 849 return *result; | 845 return *result; |
| 850 } | 846 } |
| 851 | 847 |
| 852 GLboolean IsRenderbuffer(GLuint renderbuffer) { | 848 GLboolean IsRenderbuffer(GLuint renderbuffer) { |
| 853 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 849 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 854 GPU_CLIENT_LOG("[" << this << "] glIsRenderbuffer(" << renderbuffer << ")"); | 850 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glIsRenderbuffer(" << renderbuffer
<< ")"); // NOLINT |
| 855 typedef IsRenderbuffer::Result Result; | 851 typedef IsRenderbuffer::Result Result; |
| 856 Result* result = GetResultAs<Result*>(); | 852 Result* result = GetResultAs<Result*>(); |
| 857 if (!result) { | 853 if (!result) { |
| 858 return GL_FALSE; | 854 return GL_FALSE; |
| 859 } | 855 } |
| 860 *result = 0; | 856 *result = 0; |
| 861 helper_->IsRenderbuffer( | 857 helper_->IsRenderbuffer( |
| 862 renderbuffer, GetResultShmId(), GetResultShmOffset()); | 858 renderbuffer, GetResultShmId(), GetResultShmOffset()); |
| 863 WaitForCmd(); | 859 WaitForCmd(); |
| 864 GPU_CLIENT_LOG("returned " << *result); | 860 GPU_CLIENT_LOG("returned " << *result); |
| 865 return *result; | 861 return *result; |
| 866 } | 862 } |
| 867 | 863 |
| 868 GLboolean IsShader(GLuint shader) { | 864 GLboolean IsShader(GLuint shader) { |
| 869 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 865 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 870 GPU_CLIENT_LOG("[" << this << "] glIsShader(" << shader << ")"); | 866 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glIsShader(" << shader << ")"); |
| 871 typedef IsShader::Result Result; | 867 typedef IsShader::Result Result; |
| 872 Result* result = GetResultAs<Result*>(); | 868 Result* result = GetResultAs<Result*>(); |
| 873 if (!result) { | 869 if (!result) { |
| 874 return GL_FALSE; | 870 return GL_FALSE; |
| 875 } | 871 } |
| 876 *result = 0; | 872 *result = 0; |
| 877 helper_->IsShader(shader, GetResultShmId(), GetResultShmOffset()); | 873 helper_->IsShader(shader, GetResultShmId(), GetResultShmOffset()); |
| 878 WaitForCmd(); | 874 WaitForCmd(); |
| 879 GPU_CLIENT_LOG("returned " << *result); | 875 GPU_CLIENT_LOG("returned " << *result); |
| 880 return *result; | 876 return *result; |
| 881 } | 877 } |
| 882 | 878 |
| 883 GLboolean IsTexture(GLuint texture) { | 879 GLboolean IsTexture(GLuint texture) { |
| 884 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 880 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 885 GPU_CLIENT_LOG("[" << this << "] glIsTexture(" << texture << ")"); | 881 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glIsTexture(" << texture << ")"); |
| 886 typedef IsTexture::Result Result; | 882 typedef IsTexture::Result Result; |
| 887 Result* result = GetResultAs<Result*>(); | 883 Result* result = GetResultAs<Result*>(); |
| 888 if (!result) { | 884 if (!result) { |
| 889 return GL_FALSE; | 885 return GL_FALSE; |
| 890 } | 886 } |
| 891 *result = 0; | 887 *result = 0; |
| 892 helper_->IsTexture(texture, GetResultShmId(), GetResultShmOffset()); | 888 helper_->IsTexture(texture, GetResultShmId(), GetResultShmOffset()); |
| 893 WaitForCmd(); | 889 WaitForCmd(); |
| 894 GPU_CLIENT_LOG("returned " << *result); | 890 GPU_CLIENT_LOG("returned " << *result); |
| 895 return *result; | 891 return *result; |
| 896 } | 892 } |
| 897 | 893 |
| 898 void LineWidth(GLfloat width) { | 894 void LineWidth(GLfloat width) { |
| 899 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 895 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 900 GPU_CLIENT_LOG("[" << this << "] glLineWidth(" << width << ")"); | 896 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glLineWidth(" << width << ")"); |
| 901 helper_->LineWidth(width); | 897 helper_->LineWidth(width); |
| 902 } | 898 } |
| 903 | 899 |
| 904 void LinkProgram(GLuint program); | 900 void LinkProgram(GLuint program); |
| 905 | 901 |
| 906 void PixelStorei(GLenum pname, GLint param); | 902 void PixelStorei(GLenum pname, GLint param); |
| 907 | 903 |
| 908 void PolygonOffset(GLfloat factor, GLfloat units) { | 904 void PolygonOffset(GLfloat factor, GLfloat units) { |
| 909 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 905 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 910 GPU_CLIENT_LOG("[" << this << "] glPolygonOffset(" << factor << ", " << units
<< ")"); // NOLINT | 906 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glPolygonOffset(" << factor << ", "
<< units << ")"); // NOLINT |
| 911 helper_->PolygonOffset(factor, units); | 907 helper_->PolygonOffset(factor, units); |
| 912 } | 908 } |
| 913 | 909 |
| 914 void ReadPixels( | 910 void ReadPixels( |
| 915 GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, | 911 GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, |
| 916 void* pixels); | 912 void* pixels); |
| 917 | 913 |
| 918 void ReleaseShaderCompiler() { | 914 void ReleaseShaderCompiler() { |
| 919 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 915 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 920 GPU_CLIENT_LOG("[" << this << "] glReleaseShaderCompiler(" << ")"); | 916 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glReleaseShaderCompiler(" << ")"); |
| 921 helper_->ReleaseShaderCompiler(); | 917 helper_->ReleaseShaderCompiler(); |
| 922 } | 918 } |
| 923 | 919 |
| 924 void RenderbufferStorage( | 920 void RenderbufferStorage( |
| 925 GLenum target, GLenum internalformat, GLsizei width, GLsizei height) { | 921 GLenum target, GLenum internalformat, GLsizei width, GLsizei height) { |
| 926 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 922 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 927 GPU_CLIENT_LOG("[" << this << "] glRenderbufferStorage(" << GLES2Util::GetStri
ngRenderBufferTarget(target) << ", " << GLES2Util::GetStringRenderBufferFormat(i
nternalformat) << ", " << width << ", " << height << ")"); // NOLINT | 923 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glRenderbufferStorage(" << GLES2Uti
l::GetStringRenderBufferTarget(target) << ", " << GLES2Util::GetStringRenderBuff
erFormat(internalformat) << ", " << width << ", " << height << ")"); // NOLINT |
| 928 if (width < 0) { | 924 if (width < 0) { |
| 929 SetGLError(GL_INVALID_VALUE, "glRenderbufferStorage", "width < 0"); | 925 SetGLError(GL_INVALID_VALUE, "glRenderbufferStorage", "width < 0"); |
| 930 return; | 926 return; |
| 931 } | 927 } |
| 932 if (height < 0) { | 928 if (height < 0) { |
| 933 SetGLError(GL_INVALID_VALUE, "glRenderbufferStorage", "height < 0"); | 929 SetGLError(GL_INVALID_VALUE, "glRenderbufferStorage", "height < 0"); |
| 934 return; | 930 return; |
| 935 } | 931 } |
| 936 helper_->RenderbufferStorage(target, internalformat, width, height); | 932 helper_->RenderbufferStorage(target, internalformat, width, height); |
| 937 } | 933 } |
| 938 | 934 |
| 939 void SampleCoverage(GLclampf value, GLboolean invert) { | 935 void SampleCoverage(GLclampf value, GLboolean invert) { |
| 940 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 936 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 941 GPU_CLIENT_LOG("[" << this << "] glSampleCoverage(" << value << ", " << GLES2U
til::GetStringBool(invert) << ")"); // NOLINT | 937 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glSampleCoverage(" << value << ", "
<< GLES2Util::GetStringBool(invert) << ")"); // NOLINT |
| 942 helper_->SampleCoverage(value, invert); | 938 helper_->SampleCoverage(value, invert); |
| 943 } | 939 } |
| 944 | 940 |
| 945 void Scissor(GLint x, GLint y, GLsizei width, GLsizei height) { | 941 void Scissor(GLint x, GLint y, GLsizei width, GLsizei height) { |
| 946 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 942 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 947 GPU_CLIENT_LOG("[" << this << "] glScissor(" << x << ", " << y << ", " << widt
h << ", " << height << ")"); // NOLINT | 943 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glScissor(" << x << ", " << y << ",
" << width << ", " << height << ")"); // NOLINT |
| 948 if (width < 0) { | 944 if (width < 0) { |
| 949 SetGLError(GL_INVALID_VALUE, "glScissor", "width < 0"); | 945 SetGLError(GL_INVALID_VALUE, "glScissor", "width < 0"); |
| 950 return; | 946 return; |
| 951 } | 947 } |
| 952 if (height < 0) { | 948 if (height < 0) { |
| 953 SetGLError(GL_INVALID_VALUE, "glScissor", "height < 0"); | 949 SetGLError(GL_INVALID_VALUE, "glScissor", "height < 0"); |
| 954 return; | 950 return; |
| 955 } | 951 } |
| 956 helper_->Scissor(x, y, width, height); | 952 helper_->Scissor(x, y, width, height); |
| 957 } | 953 } |
| 958 | 954 |
| 959 void ShaderBinary( | 955 void ShaderBinary( |
| 960 GLsizei n, const GLuint* shaders, GLenum binaryformat, const void* binary, | 956 GLsizei n, const GLuint* shaders, GLenum binaryformat, const void* binary, |
| 961 GLsizei length); | 957 GLsizei length); |
| 962 | 958 |
| 963 void ShaderSource( | 959 void ShaderSource( |
| 964 GLuint shader, GLsizei count, const char** str, const GLint* length); | 960 GLuint shader, GLsizei count, const char** str, const GLint* length); |
| 965 | 961 |
| 966 void StencilFunc(GLenum func, GLint ref, GLuint mask) { | 962 void StencilFunc(GLenum func, GLint ref, GLuint mask) { |
| 967 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 963 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 968 GPU_CLIENT_LOG("[" << this << "] glStencilFunc(" << GLES2Util::GetStringCmpFun
ction(func) << ", " << ref << ", " << mask << ")"); // NOLINT | 964 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glStencilFunc(" << GLES2Util::GetSt
ringCmpFunction(func) << ", " << ref << ", " << mask << ")"); // NOLINT |
| 969 helper_->StencilFunc(func, ref, mask); | 965 helper_->StencilFunc(func, ref, mask); |
| 970 } | 966 } |
| 971 | 967 |
| 972 void StencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask) { | 968 void StencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask) { |
| 973 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 969 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 974 GPU_CLIENT_LOG("[" << this << "] glStencilFuncSeparate(" << GLES2Util::GetStri
ngFaceType(face) << ", " << GLES2Util::GetStringCmpFunction(func) << ", " << ref
<< ", " << mask << ")"); // NOLINT | 970 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glStencilFuncSeparate(" << GLES2Uti
l::GetStringFaceType(face) << ", " << GLES2Util::GetStringCmpFunction(func) << "
, " << ref << ", " << mask << ")"); // NOLINT |
| 975 helper_->StencilFuncSeparate(face, func, ref, mask); | 971 helper_->StencilFuncSeparate(face, func, ref, mask); |
| 976 } | 972 } |
| 977 | 973 |
| 978 void StencilMask(GLuint mask) { | 974 void StencilMask(GLuint mask) { |
| 979 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 975 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 980 GPU_CLIENT_LOG("[" << this << "] glStencilMask(" << mask << ")"); | 976 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glStencilMask(" << mask << ")"); |
| 981 helper_->StencilMask(mask); | 977 helper_->StencilMask(mask); |
| 982 } | 978 } |
| 983 | 979 |
| 984 void StencilMaskSeparate(GLenum face, GLuint mask) { | 980 void StencilMaskSeparate(GLenum face, GLuint mask) { |
| 985 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 981 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 986 GPU_CLIENT_LOG("[" << this << "] glStencilMaskSeparate(" << GLES2Util::GetStri
ngFaceType(face) << ", " << mask << ")"); // NOLINT | 982 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glStencilMaskSeparate(" << GLES2Uti
l::GetStringFaceType(face) << ", " << mask << ")"); // NOLINT |
| 987 helper_->StencilMaskSeparate(face, mask); | 983 helper_->StencilMaskSeparate(face, mask); |
| 988 } | 984 } |
| 989 | 985 |
| 990 void StencilOp(GLenum fail, GLenum zfail, GLenum zpass) { | 986 void StencilOp(GLenum fail, GLenum zfail, GLenum zpass) { |
| 991 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 987 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 992 GPU_CLIENT_LOG("[" << this << "] glStencilOp(" << GLES2Util::GetStringStencilO
p(fail) << ", " << GLES2Util::GetStringStencilOp(zfail) << ", " << GLES2Util::Ge
tStringStencilOp(zpass) << ")"); // NOLINT | 988 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glStencilOp(" << GLES2Util::GetStri
ngStencilOp(fail) << ", " << GLES2Util::GetStringStencilOp(zfail) << ", " << GLE
S2Util::GetStringStencilOp(zpass) << ")"); // NOLINT |
| 993 helper_->StencilOp(fail, zfail, zpass); | 989 helper_->StencilOp(fail, zfail, zpass); |
| 994 } | 990 } |
| 995 | 991 |
| 996 void StencilOpSeparate(GLenum face, GLenum fail, GLenum zfail, GLenum zpass) { | 992 void StencilOpSeparate(GLenum face, GLenum fail, GLenum zfail, GLenum zpass) { |
| 997 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 993 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 998 GPU_CLIENT_LOG("[" << this << "] glStencilOpSeparate(" << GLES2Util::GetString
FaceType(face) << ", " << GLES2Util::GetStringStencilOp(fail) << ", " << GLES2Ut
il::GetStringStencilOp(zfail) << ", " << GLES2Util::GetStringStencilOp(zpass) <<
")"); // NOLINT | 994 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glStencilOpSeparate(" << GLES2Util:
:GetStringFaceType(face) << ", " << GLES2Util::GetStringStencilOp(fail) << ", "
<< GLES2Util::GetStringStencilOp(zfail) << ", " << GLES2Util::GetStringStencilOp
(zpass) << ")"); // NOLINT |
| 999 helper_->StencilOpSeparate(face, fail, zfail, zpass); | 995 helper_->StencilOpSeparate(face, fail, zfail, zpass); |
| 1000 } | 996 } |
| 1001 | 997 |
| 1002 void TexImage2D( | 998 void TexImage2D( |
| 1003 GLenum target, GLint level, GLint internalformat, GLsizei width, | 999 GLenum target, GLint level, GLint internalformat, GLsizei width, |
| 1004 GLsizei height, GLint border, GLenum format, GLenum type, | 1000 GLsizei height, GLint border, GLenum format, GLenum type, |
| 1005 const void* pixels); | 1001 const void* pixels); |
| 1006 | 1002 |
| 1007 void TexParameterf(GLenum target, GLenum pname, GLfloat param) { | 1003 void TexParameterf(GLenum target, GLenum pname, GLfloat param) { |
| 1008 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 1004 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 1009 GPU_CLIENT_LOG("[" << this << "] glTexParameterf(" << GLES2Util::GetStringText
ureBindTarget(target) << ", " << GLES2Util::GetStringTextureParameter(pname) <<
", " << param << ")"); // NOLINT | 1005 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glTexParameterf(" << GLES2Util::Get
StringTextureBindTarget(target) << ", " << GLES2Util::GetStringTextureParameter(
pname) << ", " << param << ")"); // NOLINT |
| 1010 helper_->TexParameterf(target, pname, param); | 1006 helper_->TexParameterf(target, pname, param); |
| 1011 } | 1007 } |
| 1012 | 1008 |
| 1013 void TexParameterfv(GLenum target, GLenum pname, const GLfloat* params) { | 1009 void TexParameterfv(GLenum target, GLenum pname, const GLfloat* params) { |
| 1014 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 1010 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 1015 GPU_CLIENT_LOG("[" << this << "] glTexParameterfv(" << GLES2Util::GetStringTex
tureBindTarget(target) << ", " << GLES2Util::GetStringTextureParameter(pname) <<
", " << static_cast<const void*>(params) << ")"); // NOLINT | 1011 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glTexParameterfv(" << GLES2Util::Ge
tStringTextureBindTarget(target) << ", " << GLES2Util::GetStringTextureParameter
(pname) << ", " << static_cast<const void*>(params) << ")"); // NOLINT |
| 1016 GPU_CLIENT_LOG("values: " << params[0]); | 1012 GPU_CLIENT_LOG("values: " << params[0]); |
| 1017 helper_->TexParameterfvImmediate(target, pname, params); | 1013 helper_->TexParameterfvImmediate(target, pname, params); |
| 1018 } | 1014 } |
| 1019 | 1015 |
| 1020 void TexParameteri(GLenum target, GLenum pname, GLint param) { | 1016 void TexParameteri(GLenum target, GLenum pname, GLint param) { |
| 1021 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 1017 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 1022 GPU_CLIENT_LOG("[" << this << "] glTexParameteri(" << GLES2Util::GetStringText
ureBindTarget(target) << ", " << GLES2Util::GetStringTextureParameter(pname) <<
", " << param << ")"); // NOLINT | 1018 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glTexParameteri(" << GLES2Util::Get
StringTextureBindTarget(target) << ", " << GLES2Util::GetStringTextureParameter(
pname) << ", " << param << ")"); // NOLINT |
| 1023 helper_->TexParameteri(target, pname, param); | 1019 helper_->TexParameteri(target, pname, param); |
| 1024 } | 1020 } |
| 1025 | 1021 |
| 1026 void TexParameteriv(GLenum target, GLenum pname, const GLint* params) { | 1022 void TexParameteriv(GLenum target, GLenum pname, const GLint* params) { |
| 1027 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 1023 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 1028 GPU_CLIENT_LOG("[" << this << "] glTexParameteriv(" << GLES2Util::GetStringTex
tureBindTarget(target) << ", " << GLES2Util::GetStringTextureParameter(pname) <<
", " << static_cast<const void*>(params) << ")"); // NOLINT | 1024 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glTexParameteriv(" << GLES2Util::Ge
tStringTextureBindTarget(target) << ", " << GLES2Util::GetStringTextureParameter
(pname) << ", " << static_cast<const void*>(params) << ")"); // NOLINT |
| 1029 GPU_CLIENT_LOG("values: " << params[0]); | 1025 GPU_CLIENT_LOG("values: " << params[0]); |
| 1030 helper_->TexParameterivImmediate(target, pname, params); | 1026 helper_->TexParameterivImmediate(target, pname, params); |
| 1031 } | 1027 } |
| 1032 | 1028 |
| 1033 void TexSubImage2D( | 1029 void TexSubImage2D( |
| 1034 GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, | 1030 GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, |
| 1035 GLsizei height, GLenum format, GLenum type, const void* pixels); | 1031 GLsizei height, GLenum format, GLenum type, const void* pixels); |
| 1036 | 1032 |
| 1037 void Uniform1f(GLint location, GLfloat x) { | 1033 void Uniform1f(GLint location, GLfloat x) { |
| 1038 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 1034 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 1039 GPU_CLIENT_LOG("[" << this << "] glUniform1f(" << location << ", " << x << ")"
); // NOLINT | 1035 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glUniform1f(" << location << ", " <
< x << ")"); // NOLINT |
| 1040 helper_->Uniform1f(location, x); | 1036 helper_->Uniform1f(location, x); |
| 1041 } | 1037 } |
| 1042 | 1038 |
| 1043 void Uniform1fv(GLint location, GLsizei count, const GLfloat* v) { | 1039 void Uniform1fv(GLint location, GLsizei count, const GLfloat* v) { |
| 1044 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 1040 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 1045 GPU_CLIENT_LOG("[" << this << "] glUniform1fv(" << location << ", " << count <
< ", " << static_cast<const void*>(v) << ")"); // NOLINT | 1041 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glUniform1fv(" << location << ", "
<< count << ", " << static_cast<const void*>(v) << ")"); // NOLINT |
| 1046 GPU_CLIENT_LOG_CODE_BLOCK({ | 1042 GPU_CLIENT_LOG_CODE_BLOCK({ |
| 1047 for (GLsizei i = 0; i < count; ++i) { | 1043 for (GLsizei i = 0; i < count; ++i) { |
| 1048 GPU_CLIENT_LOG(" " << i << ": " << v[0 + i * 1]); | 1044 GPU_CLIENT_LOG(" " << i << ": " << v[0 + i * 1]); |
| 1049 } | 1045 } |
| 1050 }); | 1046 }); |
| 1051 if (count < 0) { | 1047 if (count < 0) { |
| 1052 SetGLError(GL_INVALID_VALUE, "glUniform1fv", "count < 0"); | 1048 SetGLError(GL_INVALID_VALUE, "glUniform1fv", "count < 0"); |
| 1053 return; | 1049 return; |
| 1054 } | 1050 } |
| 1055 helper_->Uniform1fvImmediate(location, count, v); | 1051 helper_->Uniform1fvImmediate(location, count, v); |
| 1056 } | 1052 } |
| 1057 | 1053 |
| 1058 void Uniform1i(GLint location, GLint x) { | 1054 void Uniform1i(GLint location, GLint x) { |
| 1059 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 1055 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 1060 GPU_CLIENT_LOG("[" << this << "] glUniform1i(" << location << ", " << x << ")"
); // NOLINT | 1056 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glUniform1i(" << location << ", " <
< x << ")"); // NOLINT |
| 1061 helper_->Uniform1i(location, x); | 1057 helper_->Uniform1i(location, x); |
| 1062 } | 1058 } |
| 1063 | 1059 |
| 1064 void Uniform1iv(GLint location, GLsizei count, const GLint* v) { | 1060 void Uniform1iv(GLint location, GLsizei count, const GLint* v) { |
| 1065 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 1061 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 1066 GPU_CLIENT_LOG("[" << this << "] glUniform1iv(" << location << ", " << count <
< ", " << static_cast<const void*>(v) << ")"); // NOLINT | 1062 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glUniform1iv(" << location << ", "
<< count << ", " << static_cast<const void*>(v) << ")"); // NOLINT |
| 1067 GPU_CLIENT_LOG_CODE_BLOCK({ | 1063 GPU_CLIENT_LOG_CODE_BLOCK({ |
| 1068 for (GLsizei i = 0; i < count; ++i) { | 1064 for (GLsizei i = 0; i < count; ++i) { |
| 1069 GPU_CLIENT_LOG(" " << i << ": " << v[0 + i * 1]); | 1065 GPU_CLIENT_LOG(" " << i << ": " << v[0 + i * 1]); |
| 1070 } | 1066 } |
| 1071 }); | 1067 }); |
| 1072 if (count < 0) { | 1068 if (count < 0) { |
| 1073 SetGLError(GL_INVALID_VALUE, "glUniform1iv", "count < 0"); | 1069 SetGLError(GL_INVALID_VALUE, "glUniform1iv", "count < 0"); |
| 1074 return; | 1070 return; |
| 1075 } | 1071 } |
| 1076 helper_->Uniform1ivImmediate(location, count, v); | 1072 helper_->Uniform1ivImmediate(location, count, v); |
| 1077 } | 1073 } |
| 1078 | 1074 |
| 1079 void Uniform2f(GLint location, GLfloat x, GLfloat y) { | 1075 void Uniform2f(GLint location, GLfloat x, GLfloat y) { |
| 1080 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 1076 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 1081 GPU_CLIENT_LOG("[" << this << "] glUniform2f(" << location << ", " << x << ",
" << y << ")"); // NOLINT | 1077 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glUniform2f(" << location << ", " <
< x << ", " << y << ")"); // NOLINT |
| 1082 helper_->Uniform2f(location, x, y); | 1078 helper_->Uniform2f(location, x, y); |
| 1083 } | 1079 } |
| 1084 | 1080 |
| 1085 void Uniform2fv(GLint location, GLsizei count, const GLfloat* v) { | 1081 void Uniform2fv(GLint location, GLsizei count, const GLfloat* v) { |
| 1086 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 1082 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 1087 GPU_CLIENT_LOG("[" << this << "] glUniform2fv(" << location << ", " << count <
< ", " << static_cast<const void*>(v) << ")"); // NOLINT | 1083 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glUniform2fv(" << location << ", "
<< count << ", " << static_cast<const void*>(v) << ")"); // NOLINT |
| 1088 GPU_CLIENT_LOG_CODE_BLOCK({ | 1084 GPU_CLIENT_LOG_CODE_BLOCK({ |
| 1089 for (GLsizei i = 0; i < count; ++i) { | 1085 for (GLsizei i = 0; i < count; ++i) { |
| 1090 GPU_CLIENT_LOG(" " << i << ": " << v[0 + i * 2] << ", " << v[1 + i * 2])
; // NOLINT | 1086 GPU_CLIENT_LOG(" " << i << ": " << v[0 + i * 2] << ", " << v[1 + i * 2])
; // NOLINT |
| 1091 } | 1087 } |
| 1092 }); | 1088 }); |
| 1093 if (count < 0) { | 1089 if (count < 0) { |
| 1094 SetGLError(GL_INVALID_VALUE, "glUniform2fv", "count < 0"); | 1090 SetGLError(GL_INVALID_VALUE, "glUniform2fv", "count < 0"); |
| 1095 return; | 1091 return; |
| 1096 } | 1092 } |
| 1097 helper_->Uniform2fvImmediate(location, count, v); | 1093 helper_->Uniform2fvImmediate(location, count, v); |
| 1098 } | 1094 } |
| 1099 | 1095 |
| 1100 void Uniform2i(GLint location, GLint x, GLint y) { | 1096 void Uniform2i(GLint location, GLint x, GLint y) { |
| 1101 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 1097 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 1102 GPU_CLIENT_LOG("[" << this << "] glUniform2i(" << location << ", " << x << ",
" << y << ")"); // NOLINT | 1098 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glUniform2i(" << location << ", " <
< x << ", " << y << ")"); // NOLINT |
| 1103 helper_->Uniform2i(location, x, y); | 1099 helper_->Uniform2i(location, x, y); |
| 1104 } | 1100 } |
| 1105 | 1101 |
| 1106 void Uniform2iv(GLint location, GLsizei count, const GLint* v) { | 1102 void Uniform2iv(GLint location, GLsizei count, const GLint* v) { |
| 1107 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 1103 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 1108 GPU_CLIENT_LOG("[" << this << "] glUniform2iv(" << location << ", " << count <
< ", " << static_cast<const void*>(v) << ")"); // NOLINT | 1104 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glUniform2iv(" << location << ", "
<< count << ", " << static_cast<const void*>(v) << ")"); // NOLINT |
| 1109 GPU_CLIENT_LOG_CODE_BLOCK({ | 1105 GPU_CLIENT_LOG_CODE_BLOCK({ |
| 1110 for (GLsizei i = 0; i < count; ++i) { | 1106 for (GLsizei i = 0; i < count; ++i) { |
| 1111 GPU_CLIENT_LOG(" " << i << ": " << v[0 + i * 2] << ", " << v[1 + i * 2])
; // NOLINT | 1107 GPU_CLIENT_LOG(" " << i << ": " << v[0 + i * 2] << ", " << v[1 + i * 2])
; // NOLINT |
| 1112 } | 1108 } |
| 1113 }); | 1109 }); |
| 1114 if (count < 0) { | 1110 if (count < 0) { |
| 1115 SetGLError(GL_INVALID_VALUE, "glUniform2iv", "count < 0"); | 1111 SetGLError(GL_INVALID_VALUE, "glUniform2iv", "count < 0"); |
| 1116 return; | 1112 return; |
| 1117 } | 1113 } |
| 1118 helper_->Uniform2ivImmediate(location, count, v); | 1114 helper_->Uniform2ivImmediate(location, count, v); |
| 1119 } | 1115 } |
| 1120 | 1116 |
| 1121 void Uniform3f(GLint location, GLfloat x, GLfloat y, GLfloat z) { | 1117 void Uniform3f(GLint location, GLfloat x, GLfloat y, GLfloat z) { |
| 1122 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 1118 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 1123 GPU_CLIENT_LOG("[" << this << "] glUniform3f(" << location << ", " << x << ",
" << y << ", " << z << ")"); // NOLINT | 1119 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glUniform3f(" << location << ", " <
< x << ", " << y << ", " << z << ")"); // NOLINT |
| 1124 helper_->Uniform3f(location, x, y, z); | 1120 helper_->Uniform3f(location, x, y, z); |
| 1125 } | 1121 } |
| 1126 | 1122 |
| 1127 void Uniform3fv(GLint location, GLsizei count, const GLfloat* v) { | 1123 void Uniform3fv(GLint location, GLsizei count, const GLfloat* v) { |
| 1128 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 1124 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 1129 GPU_CLIENT_LOG("[" << this << "] glUniform3fv(" << location << ", " << count <
< ", " << static_cast<const void*>(v) << ")"); // NOLINT | 1125 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glUniform3fv(" << location << ", "
<< count << ", " << static_cast<const void*>(v) << ")"); // NOLINT |
| 1130 GPU_CLIENT_LOG_CODE_BLOCK({ | 1126 GPU_CLIENT_LOG_CODE_BLOCK({ |
| 1131 for (GLsizei i = 0; i < count; ++i) { | 1127 for (GLsizei i = 0; i < count; ++i) { |
| 1132 GPU_CLIENT_LOG(" " << i << ": " << v[0 + i * 3] << ", " << v[1 + i * 3]
<< ", " << v[2 + i * 3]); // NOLINT | 1128 GPU_CLIENT_LOG(" " << i << ": " << v[0 + i * 3] << ", " << v[1 + i * 3]
<< ", " << v[2 + i * 3]); // NOLINT |
| 1133 } | 1129 } |
| 1134 }); | 1130 }); |
| 1135 if (count < 0) { | 1131 if (count < 0) { |
| 1136 SetGLError(GL_INVALID_VALUE, "glUniform3fv", "count < 0"); | 1132 SetGLError(GL_INVALID_VALUE, "glUniform3fv", "count < 0"); |
| 1137 return; | 1133 return; |
| 1138 } | 1134 } |
| 1139 helper_->Uniform3fvImmediate(location, count, v); | 1135 helper_->Uniform3fvImmediate(location, count, v); |
| 1140 } | 1136 } |
| 1141 | 1137 |
| 1142 void Uniform3i(GLint location, GLint x, GLint y, GLint z) { | 1138 void Uniform3i(GLint location, GLint x, GLint y, GLint z) { |
| 1143 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 1139 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 1144 GPU_CLIENT_LOG("[" << this << "] glUniform3i(" << location << ", " << x << ",
" << y << ", " << z << ")"); // NOLINT | 1140 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glUniform3i(" << location << ", " <
< x << ", " << y << ", " << z << ")"); // NOLINT |
| 1145 helper_->Uniform3i(location, x, y, z); | 1141 helper_->Uniform3i(location, x, y, z); |
| 1146 } | 1142 } |
| 1147 | 1143 |
| 1148 void Uniform3iv(GLint location, GLsizei count, const GLint* v) { | 1144 void Uniform3iv(GLint location, GLsizei count, const GLint* v) { |
| 1149 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 1145 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 1150 GPU_CLIENT_LOG("[" << this << "] glUniform3iv(" << location << ", " << count <
< ", " << static_cast<const void*>(v) << ")"); // NOLINT | 1146 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glUniform3iv(" << location << ", "
<< count << ", " << static_cast<const void*>(v) << ")"); // NOLINT |
| 1151 GPU_CLIENT_LOG_CODE_BLOCK({ | 1147 GPU_CLIENT_LOG_CODE_BLOCK({ |
| 1152 for (GLsizei i = 0; i < count; ++i) { | 1148 for (GLsizei i = 0; i < count; ++i) { |
| 1153 GPU_CLIENT_LOG(" " << i << ": " << v[0 + i * 3] << ", " << v[1 + i * 3]
<< ", " << v[2 + i * 3]); // NOLINT | 1149 GPU_CLIENT_LOG(" " << i << ": " << v[0 + i * 3] << ", " << v[1 + i * 3]
<< ", " << v[2 + i * 3]); // NOLINT |
| 1154 } | 1150 } |
| 1155 }); | 1151 }); |
| 1156 if (count < 0) { | 1152 if (count < 0) { |
| 1157 SetGLError(GL_INVALID_VALUE, "glUniform3iv", "count < 0"); | 1153 SetGLError(GL_INVALID_VALUE, "glUniform3iv", "count < 0"); |
| 1158 return; | 1154 return; |
| 1159 } | 1155 } |
| 1160 helper_->Uniform3ivImmediate(location, count, v); | 1156 helper_->Uniform3ivImmediate(location, count, v); |
| 1161 } | 1157 } |
| 1162 | 1158 |
| 1163 void Uniform4f(GLint location, GLfloat x, GLfloat y, GLfloat z, GLfloat w) { | 1159 void Uniform4f(GLint location, GLfloat x, GLfloat y, GLfloat z, GLfloat w) { |
| 1164 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 1160 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 1165 GPU_CLIENT_LOG("[" << this << "] glUniform4f(" << location << ", " << x << ",
" << y << ", " << z << ", " << w << ")"); // NOLINT | 1161 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glUniform4f(" << location << ", " <
< x << ", " << y << ", " << z << ", " << w << ")"); // NOLINT |
| 1166 helper_->Uniform4f(location, x, y, z, w); | 1162 helper_->Uniform4f(location, x, y, z, w); |
| 1167 } | 1163 } |
| 1168 | 1164 |
| 1169 void Uniform4fv(GLint location, GLsizei count, const GLfloat* v) { | 1165 void Uniform4fv(GLint location, GLsizei count, const GLfloat* v) { |
| 1170 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 1166 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 1171 GPU_CLIENT_LOG("[" << this << "] glUniform4fv(" << location << ", " << count <
< ", " << static_cast<const void*>(v) << ")"); // NOLINT | 1167 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glUniform4fv(" << location << ", "
<< count << ", " << static_cast<const void*>(v) << ")"); // NOLINT |
| 1172 GPU_CLIENT_LOG_CODE_BLOCK({ | 1168 GPU_CLIENT_LOG_CODE_BLOCK({ |
| 1173 for (GLsizei i = 0; i < count; ++i) { | 1169 for (GLsizei i = 0; i < count; ++i) { |
| 1174 GPU_CLIENT_LOG(" " << i << ": " << v[0 + i * 4] << ", " << v[1 + i * 4]
<< ", " << v[2 + i * 4] << ", " << v[3 + i * 4]); // NOLINT | 1170 GPU_CLIENT_LOG(" " << i << ": " << v[0 + i * 4] << ", " << v[1 + i * 4]
<< ", " << v[2 + i * 4] << ", " << v[3 + i * 4]); // NOLINT |
| 1175 } | 1171 } |
| 1176 }); | 1172 }); |
| 1177 if (count < 0) { | 1173 if (count < 0) { |
| 1178 SetGLError(GL_INVALID_VALUE, "glUniform4fv", "count < 0"); | 1174 SetGLError(GL_INVALID_VALUE, "glUniform4fv", "count < 0"); |
| 1179 return; | 1175 return; |
| 1180 } | 1176 } |
| 1181 helper_->Uniform4fvImmediate(location, count, v); | 1177 helper_->Uniform4fvImmediate(location, count, v); |
| 1182 } | 1178 } |
| 1183 | 1179 |
| 1184 void Uniform4i(GLint location, GLint x, GLint y, GLint z, GLint w) { | 1180 void Uniform4i(GLint location, GLint x, GLint y, GLint z, GLint w) { |
| 1185 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 1181 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 1186 GPU_CLIENT_LOG("[" << this << "] glUniform4i(" << location << ", " << x << ",
" << y << ", " << z << ", " << w << ")"); // NOLINT | 1182 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glUniform4i(" << location << ", " <
< x << ", " << y << ", " << z << ", " << w << ")"); // NOLINT |
| 1187 helper_->Uniform4i(location, x, y, z, w); | 1183 helper_->Uniform4i(location, x, y, z, w); |
| 1188 } | 1184 } |
| 1189 | 1185 |
| 1190 void Uniform4iv(GLint location, GLsizei count, const GLint* v) { | 1186 void Uniform4iv(GLint location, GLsizei count, const GLint* v) { |
| 1191 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 1187 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 1192 GPU_CLIENT_LOG("[" << this << "] glUniform4iv(" << location << ", " << count <
< ", " << static_cast<const void*>(v) << ")"); // NOLINT | 1188 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glUniform4iv(" << location << ", "
<< count << ", " << static_cast<const void*>(v) << ")"); // NOLINT |
| 1193 GPU_CLIENT_LOG_CODE_BLOCK({ | 1189 GPU_CLIENT_LOG_CODE_BLOCK({ |
| 1194 for (GLsizei i = 0; i < count; ++i) { | 1190 for (GLsizei i = 0; i < count; ++i) { |
| 1195 GPU_CLIENT_LOG(" " << i << ": " << v[0 + i * 4] << ", " << v[1 + i * 4]
<< ", " << v[2 + i * 4] << ", " << v[3 + i * 4]); // NOLINT | 1191 GPU_CLIENT_LOG(" " << i << ": " << v[0 + i * 4] << ", " << v[1 + i * 4]
<< ", " << v[2 + i * 4] << ", " << v[3 + i * 4]); // NOLINT |
| 1196 } | 1192 } |
| 1197 }); | 1193 }); |
| 1198 if (count < 0) { | 1194 if (count < 0) { |
| 1199 SetGLError(GL_INVALID_VALUE, "glUniform4iv", "count < 0"); | 1195 SetGLError(GL_INVALID_VALUE, "glUniform4iv", "count < 0"); |
| 1200 return; | 1196 return; |
| 1201 } | 1197 } |
| 1202 helper_->Uniform4ivImmediate(location, count, v); | 1198 helper_->Uniform4ivImmediate(location, count, v); |
| 1203 } | 1199 } |
| 1204 | 1200 |
| 1205 void UniformMatrix2fv( | 1201 void UniformMatrix2fv( |
| 1206 GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) { | 1202 GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) { |
| 1207 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 1203 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 1208 GPU_CLIENT_LOG("[" << this << "] glUniformMatrix2fv(" << location << ", " << c
ount << ", " << GLES2Util::GetStringBool(transpose) << ", " << static_cast<const
void*>(value) << ")"); // NOLINT | 1204 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glUniformMatrix2fv(" << location <<
", " << count << ", " << GLES2Util::GetStringBool(transpose) << ", " << static_
cast<const void*>(value) << ")"); // NOLINT |
| 1209 GPU_CLIENT_LOG_CODE_BLOCK({ | 1205 GPU_CLIENT_LOG_CODE_BLOCK({ |
| 1210 for (GLsizei i = 0; i < count; ++i) { | 1206 for (GLsizei i = 0; i < count; ++i) { |
| 1211 GPU_CLIENT_LOG(" " << i << ": " << value[0 + i * 4] << ", " << value[1 +
i * 4] << ", " << value[2 + i * 4] << ", " << value[3 + i * 4]); // NOLINT | 1207 GPU_CLIENT_LOG(" " << i << ": " << value[0 + i * 4] << ", " << value[1 +
i * 4] << ", " << value[2 + i * 4] << ", " << value[3 + i * 4]); // NOLINT |
| 1212 } | 1208 } |
| 1213 }); | 1209 }); |
| 1214 if (count < 0) { | 1210 if (count < 0) { |
| 1215 SetGLError(GL_INVALID_VALUE, "glUniformMatrix2fv", "count < 0"); | 1211 SetGLError(GL_INVALID_VALUE, "glUniformMatrix2fv", "count < 0"); |
| 1216 return; | 1212 return; |
| 1217 } | 1213 } |
| 1218 helper_->UniformMatrix2fvImmediate(location, count, transpose, value); | 1214 helper_->UniformMatrix2fvImmediate(location, count, transpose, value); |
| 1219 } | 1215 } |
| 1220 | 1216 |
| 1221 void UniformMatrix3fv( | 1217 void UniformMatrix3fv( |
| 1222 GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) { | 1218 GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) { |
| 1223 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 1219 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 1224 GPU_CLIENT_LOG("[" << this << "] glUniformMatrix3fv(" << location << ", " << c
ount << ", " << GLES2Util::GetStringBool(transpose) << ", " << static_cast<const
void*>(value) << ")"); // NOLINT | 1220 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glUniformMatrix3fv(" << location <<
", " << count << ", " << GLES2Util::GetStringBool(transpose) << ", " << static_
cast<const void*>(value) << ")"); // NOLINT |
| 1225 GPU_CLIENT_LOG_CODE_BLOCK({ | 1221 GPU_CLIENT_LOG_CODE_BLOCK({ |
| 1226 for (GLsizei i = 0; i < count; ++i) { | 1222 for (GLsizei i = 0; i < count; ++i) { |
| 1227 GPU_CLIENT_LOG(" " << i << ": " << value[0 + i * 9] << ", " << value[1 +
i * 9] << ", " << value[2 + i * 9] << ", " << value[3 + i * 9] << ", " << value
[4 + i * 9] << ", " << value[5 + i * 9] << ", " << value[6 + i * 9] << ", " << v
alue[7 + i * 9] << ", " << value[8 + i * 9]); // NOLINT | 1223 GPU_CLIENT_LOG(" " << i << ": " << value[0 + i * 9] << ", " << value[1 +
i * 9] << ", " << value[2 + i * 9] << ", " << value[3 + i * 9] << ", " << value
[4 + i * 9] << ", " << value[5 + i * 9] << ", " << value[6 + i * 9] << ", " << v
alue[7 + i * 9] << ", " << value[8 + i * 9]); // NOLINT |
| 1228 } | 1224 } |
| 1229 }); | 1225 }); |
| 1230 if (count < 0) { | 1226 if (count < 0) { |
| 1231 SetGLError(GL_INVALID_VALUE, "glUniformMatrix3fv", "count < 0"); | 1227 SetGLError(GL_INVALID_VALUE, "glUniformMatrix3fv", "count < 0"); |
| 1232 return; | 1228 return; |
| 1233 } | 1229 } |
| 1234 helper_->UniformMatrix3fvImmediate(location, count, transpose, value); | 1230 helper_->UniformMatrix3fvImmediate(location, count, transpose, value); |
| 1235 } | 1231 } |
| 1236 | 1232 |
| 1237 void UniformMatrix4fv( | 1233 void UniformMatrix4fv( |
| 1238 GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) { | 1234 GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) { |
| 1239 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 1235 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 1240 GPU_CLIENT_LOG("[" << this << "] glUniformMatrix4fv(" << location << ", " << c
ount << ", " << GLES2Util::GetStringBool(transpose) << ", " << static_cast<const
void*>(value) << ")"); // NOLINT | 1236 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glUniformMatrix4fv(" << location <<
", " << count << ", " << GLES2Util::GetStringBool(transpose) << ", " << static_
cast<const void*>(value) << ")"); // NOLINT |
| 1241 GPU_CLIENT_LOG_CODE_BLOCK({ | 1237 GPU_CLIENT_LOG_CODE_BLOCK({ |
| 1242 for (GLsizei i = 0; i < count; ++i) { | 1238 for (GLsizei i = 0; i < count; ++i) { |
| 1243 GPU_CLIENT_LOG(" " << i << ": " << value[0 + i * 16] << ", " << value[1
+ i * 16] << ", " << value[2 + i * 16] << ", " << value[3 + i * 16] << ", " << v
alue[4 + i * 16] << ", " << value[5 + i * 16] << ", " << value[6 + i * 16] << ",
" << value[7 + i * 16] << ", " << value[8 + i * 16] << ", " << value[9 + i * 16
] << ", " << value[10 + i * 16] << ", " << value[11 + i * 16] << ", " << value[1
2 + i * 16] << ", " << value[13 + i * 16] << ", " << value[14 + i * 16] << ", "
<< value[15 + i * 16]); // NOLINT | 1239 GPU_CLIENT_LOG(" " << i << ": " << value[0 + i * 16] << ", " << value[1
+ i * 16] << ", " << value[2 + i * 16] << ", " << value[3 + i * 16] << ", " << v
alue[4 + i * 16] << ", " << value[5 + i * 16] << ", " << value[6 + i * 16] << ",
" << value[7 + i * 16] << ", " << value[8 + i * 16] << ", " << value[9 + i * 16
] << ", " << value[10 + i * 16] << ", " << value[11 + i * 16] << ", " << value[1
2 + i * 16] << ", " << value[13 + i * 16] << ", " << value[14 + i * 16] << ", "
<< value[15 + i * 16]); // NOLINT |
| 1244 } | 1240 } |
| 1245 }); | 1241 }); |
| 1246 if (count < 0) { | 1242 if (count < 0) { |
| 1247 SetGLError(GL_INVALID_VALUE, "glUniformMatrix4fv", "count < 0"); | 1243 SetGLError(GL_INVALID_VALUE, "glUniformMatrix4fv", "count < 0"); |
| 1248 return; | 1244 return; |
| 1249 } | 1245 } |
| 1250 helper_->UniformMatrix4fvImmediate(location, count, transpose, value); | 1246 helper_->UniformMatrix4fvImmediate(location, count, transpose, value); |
| 1251 } | 1247 } |
| 1252 | 1248 |
| 1253 void UseProgram(GLuint program) { | 1249 void UseProgram(GLuint program) { |
| 1254 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 1250 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 1255 GPU_CLIENT_LOG("[" << this << "] glUseProgram(" << program << ")"); | 1251 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glUseProgram(" << program << ")"); |
| 1256 helper_->UseProgram(program); | 1252 helper_->UseProgram(program); |
| 1257 } | 1253 } |
| 1258 | 1254 |
| 1259 void ValidateProgram(GLuint program) { | 1255 void ValidateProgram(GLuint program) { |
| 1260 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 1256 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 1261 GPU_CLIENT_LOG("[" << this << "] glValidateProgram(" << program << ")"); | 1257 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glValidateProgram(" << program << "
)"); // NOLINT |
| 1262 helper_->ValidateProgram(program); | 1258 helper_->ValidateProgram(program); |
| 1263 } | 1259 } |
| 1264 | 1260 |
| 1265 void VertexAttrib1f(GLuint indx, GLfloat x) { | 1261 void VertexAttrib1f(GLuint indx, GLfloat x) { |
| 1266 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 1262 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 1267 GPU_CLIENT_LOG("[" << this << "] glVertexAttrib1f(" << indx << ", " << x << ")
"); // NOLINT | 1263 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glVertexAttrib1f(" << indx << ", "
<< x << ")"); // NOLINT |
| 1268 helper_->VertexAttrib1f(indx, x); | 1264 helper_->VertexAttrib1f(indx, x); |
| 1269 } | 1265 } |
| 1270 | 1266 |
| 1271 void VertexAttrib1fv(GLuint indx, const GLfloat* values) { | 1267 void VertexAttrib1fv(GLuint indx, const GLfloat* values) { |
| 1272 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 1268 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 1273 GPU_CLIENT_LOG("[" << this << "] glVertexAttrib1fv(" << indx << ", " << static
_cast<const void*>(values) << ")"); // NOLINT | 1269 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glVertexAttrib1fv(" << indx << ", "
<< static_cast<const void*>(values) << ")"); // NOLINT |
| 1274 GPU_CLIENT_LOG("values: " << values[0]); | 1270 GPU_CLIENT_LOG("values: " << values[0]); |
| 1275 helper_->VertexAttrib1fvImmediate(indx, values); | 1271 helper_->VertexAttrib1fvImmediate(indx, values); |
| 1276 } | 1272 } |
| 1277 | 1273 |
| 1278 void VertexAttrib2f(GLuint indx, GLfloat x, GLfloat y) { | 1274 void VertexAttrib2f(GLuint indx, GLfloat x, GLfloat y) { |
| 1279 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 1275 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 1280 GPU_CLIENT_LOG("[" << this << "] glVertexAttrib2f(" << indx << ", " << x << ",
" << y << ")"); // NOLINT | 1276 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glVertexAttrib2f(" << indx << ", "
<< x << ", " << y << ")"); // NOLINT |
| 1281 helper_->VertexAttrib2f(indx, x, y); | 1277 helper_->VertexAttrib2f(indx, x, y); |
| 1282 } | 1278 } |
| 1283 | 1279 |
| 1284 void VertexAttrib2fv(GLuint indx, const GLfloat* values) { | 1280 void VertexAttrib2fv(GLuint indx, const GLfloat* values) { |
| 1285 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 1281 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 1286 GPU_CLIENT_LOG("[" << this << "] glVertexAttrib2fv(" << indx << ", " << static
_cast<const void*>(values) << ")"); // NOLINT | 1282 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glVertexAttrib2fv(" << indx << ", "
<< static_cast<const void*>(values) << ")"); // NOLINT |
| 1287 GPU_CLIENT_LOG("values: " << values[0] << ", " << values[1]); | 1283 GPU_CLIENT_LOG("values: " << values[0] << ", " << values[1]); |
| 1288 helper_->VertexAttrib2fvImmediate(indx, values); | 1284 helper_->VertexAttrib2fvImmediate(indx, values); |
| 1289 } | 1285 } |
| 1290 | 1286 |
| 1291 void VertexAttrib3f(GLuint indx, GLfloat x, GLfloat y, GLfloat z) { | 1287 void VertexAttrib3f(GLuint indx, GLfloat x, GLfloat y, GLfloat z) { |
| 1292 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 1288 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 1293 GPU_CLIENT_LOG("[" << this << "] glVertexAttrib3f(" << indx << ", " << x << ",
" << y << ", " << z << ")"); // NOLINT | 1289 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glVertexAttrib3f(" << indx << ", "
<< x << ", " << y << ", " << z << ")"); // NOLINT |
| 1294 helper_->VertexAttrib3f(indx, x, y, z); | 1290 helper_->VertexAttrib3f(indx, x, y, z); |
| 1295 } | 1291 } |
| 1296 | 1292 |
| 1297 void VertexAttrib3fv(GLuint indx, const GLfloat* values) { | 1293 void VertexAttrib3fv(GLuint indx, const GLfloat* values) { |
| 1298 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 1294 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 1299 GPU_CLIENT_LOG("[" << this << "] glVertexAttrib3fv(" << indx << ", " << static
_cast<const void*>(values) << ")"); // NOLINT | 1295 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glVertexAttrib3fv(" << indx << ", "
<< static_cast<const void*>(values) << ")"); // NOLINT |
| 1300 GPU_CLIENT_LOG("values: " << values[0] << ", " << values[1] << ", " << values[
2]); // NOLINT | 1296 GPU_CLIENT_LOG("values: " << values[0] << ", " << values[1] << ", " << values[
2]); // NOLINT |
| 1301 helper_->VertexAttrib3fvImmediate(indx, values); | 1297 helper_->VertexAttrib3fvImmediate(indx, values); |
| 1302 } | 1298 } |
| 1303 | 1299 |
| 1304 void VertexAttrib4f(GLuint indx, GLfloat x, GLfloat y, GLfloat z, GLfloat w) { | 1300 void VertexAttrib4f(GLuint indx, GLfloat x, GLfloat y, GLfloat z, GLfloat w) { |
| 1305 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 1301 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 1306 GPU_CLIENT_LOG("[" << this << "] glVertexAttrib4f(" << indx << ", " << x << ",
" << y << ", " << z << ", " << w << ")"); // NOLINT | 1302 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glVertexAttrib4f(" << indx << ", "
<< x << ", " << y << ", " << z << ", " << w << ")"); // NOLINT |
| 1307 helper_->VertexAttrib4f(indx, x, y, z, w); | 1303 helper_->VertexAttrib4f(indx, x, y, z, w); |
| 1308 } | 1304 } |
| 1309 | 1305 |
| 1310 void VertexAttrib4fv(GLuint indx, const GLfloat* values) { | 1306 void VertexAttrib4fv(GLuint indx, const GLfloat* values) { |
| 1311 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 1307 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 1312 GPU_CLIENT_LOG("[" << this << "] glVertexAttrib4fv(" << indx << ", " << static
_cast<const void*>(values) << ")"); // NOLINT | 1308 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glVertexAttrib4fv(" << indx << ", "
<< static_cast<const void*>(values) << ")"); // NOLINT |
| 1313 GPU_CLIENT_LOG("values: " << values[0] << ", " << values[1] << ", " << values[
2] << ", " << values[3]); // NOLINT | 1309 GPU_CLIENT_LOG("values: " << values[0] << ", " << values[1] << ", " << values[
2] << ", " << values[3]); // NOLINT |
| 1314 helper_->VertexAttrib4fvImmediate(indx, values); | 1310 helper_->VertexAttrib4fvImmediate(indx, values); |
| 1315 } | 1311 } |
| 1316 | 1312 |
| 1317 void VertexAttribPointer( | 1313 void VertexAttribPointer( |
| 1318 GLuint indx, GLint size, GLenum type, GLboolean normalized, GLsizei stride, | 1314 GLuint indx, GLint size, GLenum type, GLboolean normalized, GLsizei stride, |
| 1319 const void* ptr); | 1315 const void* ptr); |
| 1320 | 1316 |
| 1321 void Viewport(GLint x, GLint y, GLsizei width, GLsizei height) { | 1317 void Viewport(GLint x, GLint y, GLsizei width, GLsizei height) { |
| 1322 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 1318 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 1323 GPU_CLIENT_LOG("[" << this << "] glViewport(" << x << ", " << y << ", " << wid
th << ", " << height << ")"); // NOLINT | 1319 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glViewport(" << x << ", " << y << "
, " << width << ", " << height << ")"); // NOLINT |
| 1324 if (width < 0) { | 1320 if (width < 0) { |
| 1325 SetGLError(GL_INVALID_VALUE, "glViewport", "width < 0"); | 1321 SetGLError(GL_INVALID_VALUE, "glViewport", "width < 0"); |
| 1326 return; | 1322 return; |
| 1327 } | 1323 } |
| 1328 if (height < 0) { | 1324 if (height < 0) { |
| 1329 SetGLError(GL_INVALID_VALUE, "glViewport", "height < 0"); | 1325 SetGLError(GL_INVALID_VALUE, "glViewport", "height < 0"); |
| 1330 return; | 1326 return; |
| 1331 } | 1327 } |
| 1332 helper_->Viewport(x, y, width, height); | 1328 helper_->Viewport(x, y, width, height); |
| 1333 } | 1329 } |
| 1334 | 1330 |
| 1335 void BlitFramebufferEXT( | 1331 void BlitFramebufferEXT( |
| 1336 GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, | 1332 GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, |
| 1337 GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter) { | 1333 GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter) { |
| 1338 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 1334 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 1339 GPU_CLIENT_LOG("[" << this << "] glBlitFramebufferEXT(" << srcX0 << ", " << sr
cY0 << ", " << srcX1 << ", " << srcY1 << ", " << dstX0 << ", " << dstY0 << ", "
<< dstX1 << ", " << dstY1 << ", " << mask << ", " << GLES2Util::GetStringBlitFil
ter(filter) << ")"); // NOLINT | 1335 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glBlitFramebufferEXT(" << srcX0 <<
", " << srcY0 << ", " << srcX1 << ", " << srcY1 << ", " << dstX0 << ", " << dstY
0 << ", " << dstX1 << ", " << dstY1 << ", " << mask << ", " << GLES2Util::GetStr
ingBlitFilter(filter) << ")"); // NOLINT |
| 1340 helper_->BlitFramebufferEXT( | 1336 helper_->BlitFramebufferEXT( |
| 1341 srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter); | 1337 srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter); |
| 1342 } | 1338 } |
| 1343 | 1339 |
| 1344 void RenderbufferStorageMultisampleEXT( | 1340 void RenderbufferStorageMultisampleEXT( |
| 1345 GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, | 1341 GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, |
| 1346 GLsizei height) { | 1342 GLsizei height) { |
| 1347 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 1343 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 1348 GPU_CLIENT_LOG("[" << this << "] glRenderbufferStorageMultisampleEXT(" << GLES
2Util::GetStringRenderBufferTarget(target) << ", " << samples << ", " << GLES2Ut
il::GetStringRenderBufferFormat(internalformat) << ", " << width << ", " << heig
ht << ")"); // NOLINT | 1344 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glRenderbufferStorageMultisampleEXT
(" << GLES2Util::GetStringRenderBufferTarget(target) << ", " << samples << ", "
<< GLES2Util::GetStringRenderBufferFormat(internalformat) << ", " << width << ",
" << height << ")"); // NOLINT |
| 1349 if (samples < 0) { | 1345 if (samples < 0) { |
| 1350 SetGLError( | 1346 SetGLError( |
| 1351 GL_INVALID_VALUE, "glRenderbufferStorageMultisampleEXT", "samples < 0"); | 1347 GL_INVALID_VALUE, "glRenderbufferStorageMultisampleEXT", "samples < 0"); |
| 1352 return; | 1348 return; |
| 1353 } | 1349 } |
| 1354 if (width < 0) { | 1350 if (width < 0) { |
| 1355 SetGLError( | 1351 SetGLError( |
| 1356 GL_INVALID_VALUE, "glRenderbufferStorageMultisampleEXT", "width < 0"); | 1352 GL_INVALID_VALUE, "glRenderbufferStorageMultisampleEXT", "width < 0"); |
| 1357 return; | 1353 return; |
| 1358 } | 1354 } |
| 1359 if (height < 0) { | 1355 if (height < 0) { |
| 1360 SetGLError( | 1356 SetGLError( |
| 1361 GL_INVALID_VALUE, "glRenderbufferStorageMultisampleEXT", "height < 0"); | 1357 GL_INVALID_VALUE, "glRenderbufferStorageMultisampleEXT", "height < 0"); |
| 1362 return; | 1358 return; |
| 1363 } | 1359 } |
| 1364 helper_->RenderbufferStorageMultisampleEXT( | 1360 helper_->RenderbufferStorageMultisampleEXT( |
| 1365 target, samples, internalformat, width, height); | 1361 target, samples, internalformat, width, height); |
| 1366 } | 1362 } |
| 1367 | 1363 |
| 1368 void TexStorage2DEXT( | 1364 void TexStorage2DEXT( |
| 1369 GLenum target, GLsizei levels, GLenum internalFormat, GLsizei width, | 1365 GLenum target, GLsizei levels, GLenum internalFormat, GLsizei width, |
| 1370 GLsizei height) { | 1366 GLsizei height) { |
| 1371 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 1367 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 1372 GPU_CLIENT_LOG("[" << this << "] glTexStorage2DEXT(" << GLES2Util::GetStringTe
xtureTarget(target) << ", " << levels << ", " << GLES2Util::GetStringTextureInte
rnalFormatStorage(internalFormat) << ", " << width << ", " << height << ")"); /
/ NOLINT | 1368 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glTexStorage2DEXT(" << GLES2Util::G
etStringTextureTarget(target) << ", " << levels << ", " << GLES2Util::GetStringT
extureInternalFormatStorage(internalFormat) << ", " << width << ", " << height <
< ")"); // NOLINT |
| 1373 if (levels < 0) { | 1369 if (levels < 0) { |
| 1374 SetGLError(GL_INVALID_VALUE, "glTexStorage2DEXT", "levels < 0"); | 1370 SetGLError(GL_INVALID_VALUE, "glTexStorage2DEXT", "levels < 0"); |
| 1375 return; | 1371 return; |
| 1376 } | 1372 } |
| 1377 if (width < 0) { | 1373 if (width < 0) { |
| 1378 SetGLError(GL_INVALID_VALUE, "glTexStorage2DEXT", "width < 0"); | 1374 SetGLError(GL_INVALID_VALUE, "glTexStorage2DEXT", "width < 0"); |
| 1379 return; | 1375 return; |
| 1380 } | 1376 } |
| 1381 if (height < 0) { | 1377 if (height < 0) { |
| 1382 SetGLError(GL_INVALID_VALUE, "glTexStorage2DEXT", "height < 0"); | 1378 SetGLError(GL_INVALID_VALUE, "glTexStorage2DEXT", "height < 0"); |
| 1383 return; | 1379 return; |
| 1384 } | 1380 } |
| 1385 helper_->TexStorage2DEXT(target, levels, internalFormat, width, height); | 1381 helper_->TexStorage2DEXT(target, levels, internalFormat, width, height); |
| 1386 } | 1382 } |
| 1387 | 1383 |
| 1388 void GenQueriesEXT(GLsizei n, GLuint* queries) { | 1384 void GenQueriesEXT(GLsizei n, GLuint* queries) { |
| 1389 GPU_CLIENT_LOG("[" << this << "] glGenQueriesEXT(" << n << ", " << static_cast
<const void*>(queries) << ")"); // NOLINT | 1385 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glGenQueriesEXT(" << n << ", " << s
tatic_cast<const void*>(queries) << ")"); // NOLINT |
| 1390 if (n < 0) { | 1386 if (n < 0) { |
| 1391 SetGLError(GL_INVALID_VALUE, "glGenQueriesEXT", "n < 0"); | 1387 SetGLError(GL_INVALID_VALUE, "glGenQueriesEXT", "n < 0"); |
| 1392 return; | 1388 return; |
| 1393 } | 1389 } |
| 1394 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 1390 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 1395 GetIdHandler(id_namespaces::kQueries)-> | 1391 GetIdHandler(id_namespaces::kQueries)-> |
| 1396 MakeIds(this, 0, n, queries); | 1392 MakeIds(this, 0, n, queries); |
| 1397 helper_->GenQueriesEXTImmediate(n, queries); | 1393 helper_->GenQueriesEXTImmediate(n, queries); |
| 1398 GPU_CLIENT_LOG_CODE_BLOCK({ | 1394 GPU_CLIENT_LOG_CODE_BLOCK({ |
| 1399 for (GLsizei i = 0; i < n; ++i) { | 1395 for (GLsizei i = 0; i < n; ++i) { |
| 1400 GPU_CLIENT_LOG(" " << i << ": " << queries[i]); | 1396 GPU_CLIENT_LOG(" " << i << ": " << queries[i]); |
| 1401 } | 1397 } |
| 1402 }); | 1398 }); |
| 1403 } | 1399 } |
| 1404 | 1400 |
| 1405 void DeleteQueriesEXT(GLsizei n, const GLuint* queries) { | 1401 void DeleteQueriesEXT(GLsizei n, const GLuint* queries) { |
| 1406 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 1402 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 1407 GPU_CLIENT_LOG("[" << this << "] glDeleteQueriesEXT(" << n << ", " << static_c
ast<const void*>(queries) << ")"); // NOLINT | 1403 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glDeleteQueriesEXT(" << n << ", " <
< static_cast<const void*>(queries) << ")"); // NOLINT |
| 1408 GPU_CLIENT_LOG_CODE_BLOCK({ | 1404 GPU_CLIENT_LOG_CODE_BLOCK({ |
| 1409 for (GLsizei i = 0; i < n; ++i) { | 1405 for (GLsizei i = 0; i < n; ++i) { |
| 1410 GPU_CLIENT_LOG(" " << i << ": " << queries[i]); | 1406 GPU_CLIENT_LOG(" " << i << ": " << queries[i]); |
| 1411 } | 1407 } |
| 1412 }); | 1408 }); |
| 1413 GPU_CLIENT_DCHECK_CODE_BLOCK({ | 1409 GPU_CLIENT_DCHECK_CODE_BLOCK({ |
| 1414 for (GLsizei i = 0; i < n; ++i) { | 1410 for (GLsizei i = 0; i < n; ++i) { |
| 1415 GPU_DCHECK(queries[i] != 0); | 1411 GPU_DCHECK(queries[i] != 0); |
| 1416 } | 1412 } |
| 1417 }); | 1413 }); |
| (...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1479 void GetProgramInfoCHROMIUM( | 1475 void GetProgramInfoCHROMIUM( |
| 1480 GLuint program, GLsizei bufsize, GLsizei* size, void* info); | 1476 GLuint program, GLsizei bufsize, GLsizei* size, void* info); |
| 1481 | 1477 |
| 1482 GLuint CreateStreamTextureCHROMIUM(GLuint texture); | 1478 GLuint CreateStreamTextureCHROMIUM(GLuint texture); |
| 1483 | 1479 |
| 1484 void DestroyStreamTextureCHROMIUM(GLuint texture); | 1480 void DestroyStreamTextureCHROMIUM(GLuint texture); |
| 1485 | 1481 |
| 1486 void GetTranslatedShaderSourceANGLE( | 1482 void GetTranslatedShaderSourceANGLE( |
| 1487 GLuint shader, GLsizei bufsize, GLsizei* length, char* source) { | 1483 GLuint shader, GLsizei bufsize, GLsizei* length, char* source) { |
| 1488 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 1484 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 1489 GPU_CLIENT_VALIDATE_DESTINATION_INITALIZATION(GLsizei, length); | 1485 GPU_CLIENT_VALIDATE_DESTINATION_OPTIONAL_INITALIZATION(GLsizei, length); |
| 1490 GPU_CLIENT_LOG("[" << this << "] glGetTranslatedShaderSourceANGLE" << "(" | 1486 GPU_CLIENT_LOG("[" << GetLogPrefix() |
| 1487 << "] glGetTranslatedShaderSourceANGLE" << "(" |
| 1491 << shader << ", " | 1488 << shader << ", " |
| 1492 << bufsize << ", " | 1489 << bufsize << ", " |
| 1493 << static_cast<void*>(length) << ", " | 1490 << static_cast<void*>(length) << ", " |
| 1494 << static_cast<void*>(source) << ")"); | 1491 << static_cast<void*>(source) << ")"); |
| 1495 helper_->SetBucketSize(kResultBucketId, 0); | 1492 helper_->SetBucketSize(kResultBucketId, 0); |
| 1496 helper_->GetTranslatedShaderSourceANGLE(shader, kResultBucketId); | 1493 helper_->GetTranslatedShaderSourceANGLE(shader, kResultBucketId); |
| 1497 std::string str; | 1494 std::string str; |
| 1498 GLsizei max_size = 0; | 1495 GLsizei max_size = 0; |
| 1499 if (GetBucketAsString(kResultBucketId, &str)) { | 1496 if (GetBucketAsString(kResultBucketId, &str)) { |
| 1500 if (bufsize > 0) { | 1497 if (bufsize > 0) { |
| 1501 max_size = | 1498 max_size = |
| 1502 std::min(static_cast<size_t>(bufsize) - 1, str.size()); | 1499 std::min(static_cast<size_t>(bufsize) - 1, str.size()); |
| 1503 memcpy(source, str.c_str(), max_size); | 1500 memcpy(source, str.c_str(), max_size); |
| 1504 source[max_size] = '\0'; | 1501 source[max_size] = '\0'; |
| 1505 GPU_CLIENT_LOG("------\n" << source << "\n------"); | 1502 GPU_CLIENT_LOG("------\n" << source << "\n------"); |
| 1506 } | 1503 } |
| 1507 } | 1504 } |
| 1508 if (length != NULL) { | 1505 if (length != NULL) { |
| 1509 *length = max_size; | 1506 *length = max_size; |
| 1510 } | 1507 } |
| 1511 } | 1508 } |
| 1512 void PostSubBufferCHROMIUM(GLint x, GLint y, GLint width, GLint height); | 1509 void PostSubBufferCHROMIUM(GLint x, GLint y, GLint width, GLint height); |
| 1513 | 1510 |
| 1514 void TexImageIOSurface2DCHROMIUM( | 1511 void TexImageIOSurface2DCHROMIUM( |
| 1515 GLenum target, GLsizei width, GLsizei height, GLuint ioSurfaceId, | 1512 GLenum target, GLsizei width, GLsizei height, GLuint ioSurfaceId, |
| 1516 GLuint plane) { | 1513 GLuint plane) { |
| 1517 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 1514 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 1518 GPU_CLIENT_LOG("[" << this << "] glTexImageIOSurface2DCHROMIUM(" << GLES2Util:
:GetStringTextureBindTarget(target) << ", " << width << ", " << height << ", " <
< ioSurfaceId << ", " << plane << ")"); // NOLINT | 1515 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glTexImageIOSurface2DCHROMIUM(" <<
GLES2Util::GetStringTextureBindTarget(target) << ", " << width << ", " << height
<< ", " << ioSurfaceId << ", " << plane << ")"); // NOLINT |
| 1519 if (width < 0) { | 1516 if (width < 0) { |
| 1520 SetGLError(GL_INVALID_VALUE, "glTexImageIOSurface2DCHROMIUM", "width < 0"); | 1517 SetGLError(GL_INVALID_VALUE, "glTexImageIOSurface2DCHROMIUM", "width < 0"); |
| 1521 return; | 1518 return; |
| 1522 } | 1519 } |
| 1523 if (height < 0) { | 1520 if (height < 0) { |
| 1524 SetGLError( | 1521 SetGLError( |
| 1525 GL_INVALID_VALUE, "glTexImageIOSurface2DCHROMIUM", "height < 0"); | 1522 GL_INVALID_VALUE, "glTexImageIOSurface2DCHROMIUM", "height < 0"); |
| 1526 return; | 1523 return; |
| 1527 } | 1524 } |
| 1528 helper_->TexImageIOSurface2DCHROMIUM( | 1525 helper_->TexImageIOSurface2DCHROMIUM( |
| 1529 target, width, height, ioSurfaceId, plane); | 1526 target, width, height, ioSurfaceId, plane); |
| 1530 } | 1527 } |
| 1531 | 1528 |
| 1532 void CopyTextureCHROMIUM( | 1529 void CopyTextureCHROMIUM( |
| 1533 GLenum target, GLenum source_id, GLenum dest_id, GLint level, | 1530 GLenum target, GLenum source_id, GLenum dest_id, GLint level, |
| 1534 GLint internalformat) { | 1531 GLint internalformat) { |
| 1535 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 1532 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 1536 GPU_CLIENT_LOG("[" << this << "] glCopyTextureCHROMIUM(" << GLES2Util::GetStri
ngEnum(target) << ", " << GLES2Util::GetStringEnum(source_id) << ", " << GLES2Ut
il::GetStringEnum(dest_id) << ", " << level << ", " << internalformat << ")");
// NOLINT | 1533 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glCopyTextureCHROMIUM(" << GLES2Uti
l::GetStringEnum(target) << ", " << GLES2Util::GetStringEnum(source_id) << ", "
<< GLES2Util::GetStringEnum(dest_id) << ", " << level << ", " << internalformat
<< ")"); // NOLINT |
| 1537 helper_->CopyTextureCHROMIUM( | 1534 helper_->CopyTextureCHROMIUM( |
| 1538 target, source_id, dest_id, level, internalformat); | 1535 target, source_id, dest_id, level, internalformat); |
| 1539 } | 1536 } |
| 1540 | 1537 |
| 1541 void DrawArraysInstancedANGLE( | 1538 void DrawArraysInstancedANGLE( |
| 1542 GLenum mode, GLint first, GLsizei count, GLsizei primcount); | 1539 GLenum mode, GLint first, GLsizei count, GLsizei primcount); |
| 1543 | 1540 |
| 1544 void DrawElementsInstancedANGLE( | 1541 void DrawElementsInstancedANGLE( |
| 1545 GLenum mode, GLsizei count, GLenum type, const void* indices, | 1542 GLenum mode, GLsizei count, GLenum type, const void* indices, |
| 1546 GLsizei primcount); | 1543 GLsizei primcount); |
| 1547 | 1544 |
| 1548 void VertexAttribDivisorANGLE(GLuint index, GLuint divisor); | 1545 void VertexAttribDivisorANGLE(GLuint index, GLuint divisor); |
| 1549 | 1546 |
| 1550 void GenMailboxCHROMIUM(GLbyte* mailbox); | 1547 void GenMailboxCHROMIUM(GLbyte* mailbox); |
| 1551 | 1548 |
| 1552 void ProduceTextureCHROMIUM(GLenum target, const GLbyte* mailbox) { | 1549 void ProduceTextureCHROMIUM(GLenum target, const GLbyte* mailbox) { |
| 1553 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 1550 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 1554 GPU_CLIENT_LOG("[" << this << "] glProduceTextureCHROMIUM(" << GLES2Util::GetS
tringTextureTarget(target) << ", " << static_cast<const void*>(mailbox) << ")");
// NOLINT | 1551 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glProduceTextureCHROMIUM(" << GLES2
Util::GetStringTextureTarget(target) << ", " << static_cast<const void*>(mailbox
) << ")"); // NOLINT |
| 1555 GPU_CLIENT_LOG("values: " << mailbox[0] << ", " << mailbox[1] << ", " << mailb
ox[2] << ", " << mailbox[3] << ", " << mailbox[4] << ", " << mailbox[5] << ", "
<< mailbox[6] << ", " << mailbox[7] << ", " << mailbox[8] << ", " << mailbox[9]
<< ", " << mailbox[10] << ", " << mailbox[11] << ", " << mailbox[12] << ", " <<
mailbox[13] << ", " << mailbox[14] << ", " << mailbox[15] << ", " << mailbox[16]
<< ", " << mailbox[17] << ", " << mailbox[18] << ", " << mailbox[19] << ", " <<
mailbox[20] << ", " << mailbox[21] << ", " << mailbox[22] << ", " << mailbox[23
] << ", " << mailbox[24] << ", " << mailbox[25] << ", " << mailbox[26] << ", " <
< mailbox[27] << ", " << mailbox[28] << ", " << mailbox[29] << ", " << mailbox[3
0] << ", " << mailbox[31] << ", " << mailbox[32] << ", " << mailbox[33] << ", "
<< mailbox[34] << ", " << mailbox[35] << ", " << mailbox[36] << ", " << mailbox[
37] << ", " << mailbox[38] << ", " << mailbox[39] << ", " << mailbox[40] << ", "
<< mailbox[41] << ", " << mailbox[42] << ", " << mailbox[43] << ", " << mailbox
[44] << ", " << mailbox[45] << ", " << mailbox[46] << ", " << mailbox[47] << ",
" << mailbox[48] << ", " << mailbox[49] << ", " << mailbox[50] << ", " << mailbo
x[51] << ", " << mailbox[52] << ", " << mailbox[53] << ", " << mailbox[54] << ",
" << mailbox[55] << ", " << mailbox[56] << ", " << mailbox[57] << ", " << mailb
ox[58] << ", " << mailbox[59] << ", " << mailbox[60] << ", " << mailbox[61] << "
, " << mailbox[62] << ", " << mailbox[63]); // NOLINT | 1552 GPU_CLIENT_LOG("values: " << mailbox[0] << ", " << mailbox[1] << ", " << mailb
ox[2] << ", " << mailbox[3] << ", " << mailbox[4] << ", " << mailbox[5] << ", "
<< mailbox[6] << ", " << mailbox[7] << ", " << mailbox[8] << ", " << mailbox[9]
<< ", " << mailbox[10] << ", " << mailbox[11] << ", " << mailbox[12] << ", " <<
mailbox[13] << ", " << mailbox[14] << ", " << mailbox[15] << ", " << mailbox[16]
<< ", " << mailbox[17] << ", " << mailbox[18] << ", " << mailbox[19] << ", " <<
mailbox[20] << ", " << mailbox[21] << ", " << mailbox[22] << ", " << mailbox[23
] << ", " << mailbox[24] << ", " << mailbox[25] << ", " << mailbox[26] << ", " <
< mailbox[27] << ", " << mailbox[28] << ", " << mailbox[29] << ", " << mailbox[3
0] << ", " << mailbox[31] << ", " << mailbox[32] << ", " << mailbox[33] << ", "
<< mailbox[34] << ", " << mailbox[35] << ", " << mailbox[36] << ", " << mailbox[
37] << ", " << mailbox[38] << ", " << mailbox[39] << ", " << mailbox[40] << ", "
<< mailbox[41] << ", " << mailbox[42] << ", " << mailbox[43] << ", " << mailbox
[44] << ", " << mailbox[45] << ", " << mailbox[46] << ", " << mailbox[47] << ",
" << mailbox[48] << ", " << mailbox[49] << ", " << mailbox[50] << ", " << mailbo
x[51] << ", " << mailbox[52] << ", " << mailbox[53] << ", " << mailbox[54] << ",
" << mailbox[55] << ", " << mailbox[56] << ", " << mailbox[57] << ", " << mailb
ox[58] << ", " << mailbox[59] << ", " << mailbox[60] << ", " << mailbox[61] << "
, " << mailbox[62] << ", " << mailbox[63]); // NOLINT |
| 1556 helper_->ProduceTextureCHROMIUMImmediate(target, mailbox); | 1553 helper_->ProduceTextureCHROMIUMImmediate(target, mailbox); |
| 1557 } | 1554 } |
| 1558 | 1555 |
| 1559 void ConsumeTextureCHROMIUM(GLenum target, const GLbyte* mailbox) { | 1556 void ConsumeTextureCHROMIUM(GLenum target, const GLbyte* mailbox) { |
| 1560 GPU_CLIENT_SINGLE_THREAD_CHECK(); | 1557 GPU_CLIENT_SINGLE_THREAD_CHECK(); |
| 1561 GPU_CLIENT_LOG("[" << this << "] glConsumeTextureCHROMIUM(" << GLES2Util::GetS
tringTextureTarget(target) << ", " << static_cast<const void*>(mailbox) << ")");
// NOLINT | 1558 GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glConsumeTextureCHROMIUM(" << GLES2
Util::GetStringTextureTarget(target) << ", " << static_cast<const void*>(mailbox
) << ")"); // NOLINT |
| 1562 GPU_CLIENT_LOG("values: " << mailbox[0] << ", " << mailbox[1] << ", " << mailb
ox[2] << ", " << mailbox[3] << ", " << mailbox[4] << ", " << mailbox[5] << ", "
<< mailbox[6] << ", " << mailbox[7] << ", " << mailbox[8] << ", " << mailbox[9]
<< ", " << mailbox[10] << ", " << mailbox[11] << ", " << mailbox[12] << ", " <<
mailbox[13] << ", " << mailbox[14] << ", " << mailbox[15] << ", " << mailbox[16]
<< ", " << mailbox[17] << ", " << mailbox[18] << ", " << mailbox[19] << ", " <<
mailbox[20] << ", " << mailbox[21] << ", " << mailbox[22] << ", " << mailbox[23
] << ", " << mailbox[24] << ", " << mailbox[25] << ", " << mailbox[26] << ", " <
< mailbox[27] << ", " << mailbox[28] << ", " << mailbox[29] << ", " << mailbox[3
0] << ", " << mailbox[31] << ", " << mailbox[32] << ", " << mailbox[33] << ", "
<< mailbox[34] << ", " << mailbox[35] << ", " << mailbox[36] << ", " << mailbox[
37] << ", " << mailbox[38] << ", " << mailbox[39] << ", " << mailbox[40] << ", "
<< mailbox[41] << ", " << mailbox[42] << ", " << mailbox[43] << ", " << mailbox
[44] << ", " << mailbox[45] << ", " << mailbox[46] << ", " << mailbox[47] << ",
" << mailbox[48] << ", " << mailbox[49] << ", " << mailbox[50] << ", " << mailbo
x[51] << ", " << mailbox[52] << ", " << mailbox[53] << ", " << mailbox[54] << ",
" << mailbox[55] << ", " << mailbox[56] << ", " << mailbox[57] << ", " << mailb
ox[58] << ", " << mailbox[59] << ", " << mailbox[60] << ", " << mailbox[61] << "
, " << mailbox[62] << ", " << mailbox[63]); // NOLINT | 1559 GPU_CLIENT_LOG("values: " << mailbox[0] << ", " << mailbox[1] << ", " << mailb
ox[2] << ", " << mailbox[3] << ", " << mailbox[4] << ", " << mailbox[5] << ", "
<< mailbox[6] << ", " << mailbox[7] << ", " << mailbox[8] << ", " << mailbox[9]
<< ", " << mailbox[10] << ", " << mailbox[11] << ", " << mailbox[12] << ", " <<
mailbox[13] << ", " << mailbox[14] << ", " << mailbox[15] << ", " << mailbox[16]
<< ", " << mailbox[17] << ", " << mailbox[18] << ", " << mailbox[19] << ", " <<
mailbox[20] << ", " << mailbox[21] << ", " << mailbox[22] << ", " << mailbox[23
] << ", " << mailbox[24] << ", " << mailbox[25] << ", " << mailbox[26] << ", " <
< mailbox[27] << ", " << mailbox[28] << ", " << mailbox[29] << ", " << mailbox[3
0] << ", " << mailbox[31] << ", " << mailbox[32] << ", " << mailbox[33] << ", "
<< mailbox[34] << ", " << mailbox[35] << ", " << mailbox[36] << ", " << mailbox[
37] << ", " << mailbox[38] << ", " << mailbox[39] << ", " << mailbox[40] << ", "
<< mailbox[41] << ", " << mailbox[42] << ", " << mailbox[43] << ", " << mailbox
[44] << ", " << mailbox[45] << ", " << mailbox[46] << ", " << mailbox[47] << ",
" << mailbox[48] << ", " << mailbox[49] << ", " << mailbox[50] << ", " << mailbo
x[51] << ", " << mailbox[52] << ", " << mailbox[53] << ", " << mailbox[54] << ",
" << mailbox[55] << ", " << mailbox[56] << ", " << mailbox[57] << ", " << mailb
ox[58] << ", " << mailbox[59] << ", " << mailbox[60] << ", " << mailbox[61] << "
, " << mailbox[62] << ", " << mailbox[63]); // NOLINT |
| 1563 helper_->ConsumeTextureCHROMIUMImmediate(target, mailbox); | 1560 helper_->ConsumeTextureCHROMIUMImmediate(target, mailbox); |
| 1564 } | 1561 } |
| 1565 | 1562 |
| 1566 void BindUniformLocationCHROMIUM( | 1563 void BindUniformLocationCHROMIUM( |
| 1567 GLuint program, GLint location, const char* name); | 1564 GLuint program, GLint location, const char* name); |
| 1568 | 1565 |
| 1569 #endif // GPU_COMMAND_BUFFER_CLIENT_GLES2_IMPLEMENTATION_AUTOGEN_H_ | 1566 #endif // GPU_COMMAND_BUFFER_CLIENT_GLES2_IMPLEMENTATION_AUTOGEN_H_ |
| 1570 | 1567 |
| OLD | NEW |