Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(158)

Side by Side Diff: gpu/command_buffer/client/gles2_implementation_autogen.h

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

Powered by Google App Engine
This is Rietveld 408576698