1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 
5 // This file is auto-generated from
6 // gpu/command_buffer/build_gles2_cmd_buffer.py
7 // It's formatted by clang-format using chromium coding style:
8 //    clang-format -i -style=chromium filename
9 // DO NOT EDIT!
10 
11 // This file is included by gles2_trace_implementation.cc
12 #ifndef GPU_COMMAND_BUFFER_CLIENT_GLES2_TRACE_IMPLEMENTATION_IMPL_AUTOGEN_H_
13 #define GPU_COMMAND_BUFFER_CLIENT_GLES2_TRACE_IMPLEMENTATION_IMPL_AUTOGEN_H_
14 
ActiveTexture(GLenum texture)15 void GLES2TraceImplementation::ActiveTexture(GLenum texture) {
16   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::ActiveTexture");
17   gl_->ActiveTexture(texture);
18 }
19 
AttachShader(GLuint program,GLuint shader)20 void GLES2TraceImplementation::AttachShader(GLuint program, GLuint shader) {
21   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::AttachShader");
22   gl_->AttachShader(program, shader);
23 }
24 
BindAttribLocation(GLuint program,GLuint index,const char * name)25 void GLES2TraceImplementation::BindAttribLocation(GLuint program,
26                                                   GLuint index,
27                                                   const char* name) {
28   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::BindAttribLocation");
29   gl_->BindAttribLocation(program, index, name);
30 }
31 
BindBuffer(GLenum target,GLuint buffer)32 void GLES2TraceImplementation::BindBuffer(GLenum target, GLuint buffer) {
33   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::BindBuffer");
34   gl_->BindBuffer(target, buffer);
35 }
36 
BindBufferBase(GLenum target,GLuint index,GLuint buffer)37 void GLES2TraceImplementation::BindBufferBase(GLenum target,
38                                               GLuint index,
39                                               GLuint buffer) {
40   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::BindBufferBase");
41   gl_->BindBufferBase(target, index, buffer);
42 }
43 
BindBufferRange(GLenum target,GLuint index,GLuint buffer,GLintptr offset,GLsizeiptr size)44 void GLES2TraceImplementation::BindBufferRange(GLenum target,
45                                                GLuint index,
46                                                GLuint buffer,
47                                                GLintptr offset,
48                                                GLsizeiptr size) {
49   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::BindBufferRange");
50   gl_->BindBufferRange(target, index, buffer, offset, size);
51 }
52 
BindFramebuffer(GLenum target,GLuint framebuffer)53 void GLES2TraceImplementation::BindFramebuffer(GLenum target,
54                                                GLuint framebuffer) {
55   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::BindFramebuffer");
56   gl_->BindFramebuffer(target, framebuffer);
57 }
58 
BindRenderbuffer(GLenum target,GLuint renderbuffer)59 void GLES2TraceImplementation::BindRenderbuffer(GLenum target,
60                                                 GLuint renderbuffer) {
61   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::BindRenderbuffer");
62   gl_->BindRenderbuffer(target, renderbuffer);
63 }
64 
BindSampler(GLuint unit,GLuint sampler)65 void GLES2TraceImplementation::BindSampler(GLuint unit, GLuint sampler) {
66   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::BindSampler");
67   gl_->BindSampler(unit, sampler);
68 }
69 
BindTexture(GLenum target,GLuint texture)70 void GLES2TraceImplementation::BindTexture(GLenum target, GLuint texture) {
71   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::BindTexture");
72   gl_->BindTexture(target, texture);
73 }
74 
BindTransformFeedback(GLenum target,GLuint transformfeedback)75 void GLES2TraceImplementation::BindTransformFeedback(GLenum target,
76                                                      GLuint transformfeedback) {
77   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::BindTransformFeedback");
78   gl_->BindTransformFeedback(target, transformfeedback);
79 }
80 
BlendColor(GLclampf red,GLclampf green,GLclampf blue,GLclampf alpha)81 void GLES2TraceImplementation::BlendColor(GLclampf red,
82                                           GLclampf green,
83                                           GLclampf blue,
84                                           GLclampf alpha) {
85   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::BlendColor");
86   gl_->BlendColor(red, green, blue, alpha);
87 }
88 
BlendEquation(GLenum mode)89 void GLES2TraceImplementation::BlendEquation(GLenum mode) {
90   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::BlendEquation");
91   gl_->BlendEquation(mode);
92 }
93 
BlendEquationSeparate(GLenum modeRGB,GLenum modeAlpha)94 void GLES2TraceImplementation::BlendEquationSeparate(GLenum modeRGB,
95                                                      GLenum modeAlpha) {
96   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::BlendEquationSeparate");
97   gl_->BlendEquationSeparate(modeRGB, modeAlpha);
98 }
99 
BlendFunc(GLenum sfactor,GLenum dfactor)100 void GLES2TraceImplementation::BlendFunc(GLenum sfactor, GLenum dfactor) {
101   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::BlendFunc");
102   gl_->BlendFunc(sfactor, dfactor);
103 }
104 
BlendFuncSeparate(GLenum srcRGB,GLenum dstRGB,GLenum srcAlpha,GLenum dstAlpha)105 void GLES2TraceImplementation::BlendFuncSeparate(GLenum srcRGB,
106                                                  GLenum dstRGB,
107                                                  GLenum srcAlpha,
108                                                  GLenum dstAlpha) {
109   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::BlendFuncSeparate");
110   gl_->BlendFuncSeparate(srcRGB, dstRGB, srcAlpha, dstAlpha);
111 }
112 
BufferData(GLenum target,GLsizeiptr size,const void * data,GLenum usage)113 void GLES2TraceImplementation::BufferData(GLenum target,
114                                           GLsizeiptr size,
115                                           const void* data,
116                                           GLenum usage) {
117   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::BufferData");
118   gl_->BufferData(target, size, data, usage);
119 }
120 
BufferSubData(GLenum target,GLintptr offset,GLsizeiptr size,const void * data)121 void GLES2TraceImplementation::BufferSubData(GLenum target,
122                                              GLintptr offset,
123                                              GLsizeiptr size,
124                                              const void* data) {
125   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::BufferSubData");
126   gl_->BufferSubData(target, offset, size, data);
127 }
128 
CheckFramebufferStatus(GLenum target)129 GLenum GLES2TraceImplementation::CheckFramebufferStatus(GLenum target) {
130   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::CheckFramebufferStatus");
131   return gl_->CheckFramebufferStatus(target);
132 }
133 
Clear(GLbitfield mask)134 void GLES2TraceImplementation::Clear(GLbitfield mask) {
135   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::Clear");
136   gl_->Clear(mask);
137 }
138 
ClearBufferfi(GLenum buffer,GLint drawbuffers,GLfloat depth,GLint stencil)139 void GLES2TraceImplementation::ClearBufferfi(GLenum buffer,
140                                              GLint drawbuffers,
141                                              GLfloat depth,
142                                              GLint stencil) {
143   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::ClearBufferfi");
144   gl_->ClearBufferfi(buffer, drawbuffers, depth, stencil);
145 }
146 
ClearBufferfv(GLenum buffer,GLint drawbuffers,const GLfloat * value)147 void GLES2TraceImplementation::ClearBufferfv(GLenum buffer,
148                                              GLint drawbuffers,
149                                              const GLfloat* value) {
150   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::ClearBufferfv");
151   gl_->ClearBufferfv(buffer, drawbuffers, value);
152 }
153 
ClearBufferiv(GLenum buffer,GLint drawbuffers,const GLint * value)154 void GLES2TraceImplementation::ClearBufferiv(GLenum buffer,
155                                              GLint drawbuffers,
156                                              const GLint* value) {
157   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::ClearBufferiv");
158   gl_->ClearBufferiv(buffer, drawbuffers, value);
159 }
160 
ClearBufferuiv(GLenum buffer,GLint drawbuffers,const GLuint * value)161 void GLES2TraceImplementation::ClearBufferuiv(GLenum buffer,
162                                               GLint drawbuffers,
163                                               const GLuint* value) {
164   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::ClearBufferuiv");
165   gl_->ClearBufferuiv(buffer, drawbuffers, value);
166 }
167 
ClearColor(GLclampf red,GLclampf green,GLclampf blue,GLclampf alpha)168 void GLES2TraceImplementation::ClearColor(GLclampf red,
169                                           GLclampf green,
170                                           GLclampf blue,
171                                           GLclampf alpha) {
172   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::ClearColor");
173   gl_->ClearColor(red, green, blue, alpha);
174 }
175 
ClearDepthf(GLclampf depth)176 void GLES2TraceImplementation::ClearDepthf(GLclampf depth) {
177   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::ClearDepthf");
178   gl_->ClearDepthf(depth);
179 }
180 
ClearStencil(GLint s)181 void GLES2TraceImplementation::ClearStencil(GLint s) {
182   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::ClearStencil");
183   gl_->ClearStencil(s);
184 }
185 
ClientWaitSync(GLsync sync,GLbitfield flags,GLuint64 timeout)186 GLenum GLES2TraceImplementation::ClientWaitSync(GLsync sync,
187                                                 GLbitfield flags,
188                                                 GLuint64 timeout) {
189   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::ClientWaitSync");
190   return gl_->ClientWaitSync(sync, flags, timeout);
191 }
192 
ColorMask(GLboolean red,GLboolean green,GLboolean blue,GLboolean alpha)193 void GLES2TraceImplementation::ColorMask(GLboolean red,
194                                          GLboolean green,
195                                          GLboolean blue,
196                                          GLboolean alpha) {
197   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::ColorMask");
198   gl_->ColorMask(red, green, blue, alpha);
199 }
200 
CompileShader(GLuint shader)201 void GLES2TraceImplementation::CompileShader(GLuint shader) {
202   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::CompileShader");
203   gl_->CompileShader(shader);
204 }
205 
CompressedTexImage2D(GLenum target,GLint level,GLenum internalformat,GLsizei width,GLsizei height,GLint border,GLsizei imageSize,const void * data)206 void GLES2TraceImplementation::CompressedTexImage2D(GLenum target,
207                                                     GLint level,
208                                                     GLenum internalformat,
209                                                     GLsizei width,
210                                                     GLsizei height,
211                                                     GLint border,
212                                                     GLsizei imageSize,
213                                                     const void* data) {
214   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::CompressedTexImage2D");
215   gl_->CompressedTexImage2D(target, level, internalformat, width, height,
216                             border, imageSize, data);
217 }
218 
CompressedTexSubImage2D(GLenum target,GLint level,GLint xoffset,GLint yoffset,GLsizei width,GLsizei height,GLenum format,GLsizei imageSize,const void * data)219 void GLES2TraceImplementation::CompressedTexSubImage2D(GLenum target,
220                                                        GLint level,
221                                                        GLint xoffset,
222                                                        GLint yoffset,
223                                                        GLsizei width,
224                                                        GLsizei height,
225                                                        GLenum format,
226                                                        GLsizei imageSize,
227                                                        const void* data) {
228   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::CompressedTexSubImage2D");
229   gl_->CompressedTexSubImage2D(target, level, xoffset, yoffset, width, height,
230                                format, imageSize, data);
231 }
232 
CompressedTexImage3D(GLenum target,GLint level,GLenum internalformat,GLsizei width,GLsizei height,GLsizei depth,GLint border,GLsizei imageSize,const void * data)233 void GLES2TraceImplementation::CompressedTexImage3D(GLenum target,
234                                                     GLint level,
235                                                     GLenum internalformat,
236                                                     GLsizei width,
237                                                     GLsizei height,
238                                                     GLsizei depth,
239                                                     GLint border,
240                                                     GLsizei imageSize,
241                                                     const void* data) {
242   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::CompressedTexImage3D");
243   gl_->CompressedTexImage3D(target, level, internalformat, width, height, depth,
244                             border, imageSize, data);
245 }
246 
CompressedTexSubImage3D(GLenum target,GLint level,GLint xoffset,GLint yoffset,GLint zoffset,GLsizei width,GLsizei height,GLsizei depth,GLenum format,GLsizei imageSize,const void * data)247 void GLES2TraceImplementation::CompressedTexSubImage3D(GLenum target,
248                                                        GLint level,
249                                                        GLint xoffset,
250                                                        GLint yoffset,
251                                                        GLint zoffset,
252                                                        GLsizei width,
253                                                        GLsizei height,
254                                                        GLsizei depth,
255                                                        GLenum format,
256                                                        GLsizei imageSize,
257                                                        const void* data) {
258   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::CompressedTexSubImage3D");
259   gl_->CompressedTexSubImage3D(target, level, xoffset, yoffset, zoffset, width,
260                                height, depth, format, imageSize, data);
261 }
262 
CopyBufferSubData(GLenum readtarget,GLenum writetarget,GLintptr readoffset,GLintptr writeoffset,GLsizeiptr size)263 void GLES2TraceImplementation::CopyBufferSubData(GLenum readtarget,
264                                                  GLenum writetarget,
265                                                  GLintptr readoffset,
266                                                  GLintptr writeoffset,
267                                                  GLsizeiptr size) {
268   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::CopyBufferSubData");
269   gl_->CopyBufferSubData(readtarget, writetarget, readoffset, writeoffset,
270                          size);
271 }
272 
CopyTexImage2D(GLenum target,GLint level,GLenum internalformat,GLint x,GLint y,GLsizei width,GLsizei height,GLint border)273 void GLES2TraceImplementation::CopyTexImage2D(GLenum target,
274                                               GLint level,
275                                               GLenum internalformat,
276                                               GLint x,
277                                               GLint y,
278                                               GLsizei width,
279                                               GLsizei height,
280                                               GLint border) {
281   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::CopyTexImage2D");
282   gl_->CopyTexImage2D(target, level, internalformat, x, y, width, height,
283                       border);
284 }
285 
CopyTexSubImage2D(GLenum target,GLint level,GLint xoffset,GLint yoffset,GLint x,GLint y,GLsizei width,GLsizei height)286 void GLES2TraceImplementation::CopyTexSubImage2D(GLenum target,
287                                                  GLint level,
288                                                  GLint xoffset,
289                                                  GLint yoffset,
290                                                  GLint x,
291                                                  GLint y,
292                                                  GLsizei width,
293                                                  GLsizei height) {
294   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::CopyTexSubImage2D");
295   gl_->CopyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height);
296 }
297 
CopyTexSubImage3D(GLenum target,GLint level,GLint xoffset,GLint yoffset,GLint zoffset,GLint x,GLint y,GLsizei width,GLsizei height)298 void GLES2TraceImplementation::CopyTexSubImage3D(GLenum target,
299                                                  GLint level,
300                                                  GLint xoffset,
301                                                  GLint yoffset,
302                                                  GLint zoffset,
303                                                  GLint x,
304                                                  GLint y,
305                                                  GLsizei width,
306                                                  GLsizei height) {
307   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::CopyTexSubImage3D");
308   gl_->CopyTexSubImage3D(target, level, xoffset, yoffset, zoffset, x, y, width,
309                          height);
310 }
311 
CreateProgram()312 GLuint GLES2TraceImplementation::CreateProgram() {
313   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::CreateProgram");
314   return gl_->CreateProgram();
315 }
316 
CreateShader(GLenum type)317 GLuint GLES2TraceImplementation::CreateShader(GLenum type) {
318   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::CreateShader");
319   return gl_->CreateShader(type);
320 }
321 
CullFace(GLenum mode)322 void GLES2TraceImplementation::CullFace(GLenum mode) {
323   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::CullFace");
324   gl_->CullFace(mode);
325 }
326 
DeleteBuffers(GLsizei n,const GLuint * buffers)327 void GLES2TraceImplementation::DeleteBuffers(GLsizei n, const GLuint* buffers) {
328   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::DeleteBuffers");
329   gl_->DeleteBuffers(n, buffers);
330 }
331 
DeleteFramebuffers(GLsizei n,const GLuint * framebuffers)332 void GLES2TraceImplementation::DeleteFramebuffers(GLsizei n,
333                                                   const GLuint* framebuffers) {
334   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::DeleteFramebuffers");
335   gl_->DeleteFramebuffers(n, framebuffers);
336 }
337 
DeleteProgram(GLuint program)338 void GLES2TraceImplementation::DeleteProgram(GLuint program) {
339   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::DeleteProgram");
340   gl_->DeleteProgram(program);
341 }
342 
DeleteRenderbuffers(GLsizei n,const GLuint * renderbuffers)343 void GLES2TraceImplementation::DeleteRenderbuffers(
344     GLsizei n,
345     const GLuint* renderbuffers) {
346   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::DeleteRenderbuffers");
347   gl_->DeleteRenderbuffers(n, renderbuffers);
348 }
349 
DeleteSamplers(GLsizei n,const GLuint * samplers)350 void GLES2TraceImplementation::DeleteSamplers(GLsizei n,
351                                               const GLuint* samplers) {
352   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::DeleteSamplers");
353   gl_->DeleteSamplers(n, samplers);
354 }
355 
DeleteSync(GLsync sync)356 void GLES2TraceImplementation::DeleteSync(GLsync sync) {
357   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::DeleteSync");
358   gl_->DeleteSync(sync);
359 }
360 
DeleteShader(GLuint shader)361 void GLES2TraceImplementation::DeleteShader(GLuint shader) {
362   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::DeleteShader");
363   gl_->DeleteShader(shader);
364 }
365 
DeleteTextures(GLsizei n,const GLuint * textures)366 void GLES2TraceImplementation::DeleteTextures(GLsizei n,
367                                               const GLuint* textures) {
368   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::DeleteTextures");
369   gl_->DeleteTextures(n, textures);
370 }
371 
DeleteTransformFeedbacks(GLsizei n,const GLuint * ids)372 void GLES2TraceImplementation::DeleteTransformFeedbacks(GLsizei n,
373                                                         const GLuint* ids) {
374   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::DeleteTransformFeedbacks");
375   gl_->DeleteTransformFeedbacks(n, ids);
376 }
377 
DepthFunc(GLenum func)378 void GLES2TraceImplementation::DepthFunc(GLenum func) {
379   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::DepthFunc");
380   gl_->DepthFunc(func);
381 }
382 
DepthMask(GLboolean flag)383 void GLES2TraceImplementation::DepthMask(GLboolean flag) {
384   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::DepthMask");
385   gl_->DepthMask(flag);
386 }
387 
DepthRangef(GLclampf zNear,GLclampf zFar)388 void GLES2TraceImplementation::DepthRangef(GLclampf zNear, GLclampf zFar) {
389   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::DepthRangef");
390   gl_->DepthRangef(zNear, zFar);
391 }
392 
DetachShader(GLuint program,GLuint shader)393 void GLES2TraceImplementation::DetachShader(GLuint program, GLuint shader) {
394   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::DetachShader");
395   gl_->DetachShader(program, shader);
396 }
397 
Disable(GLenum cap)398 void GLES2TraceImplementation::Disable(GLenum cap) {
399   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::Disable");
400   gl_->Disable(cap);
401 }
402 
DisableVertexAttribArray(GLuint index)403 void GLES2TraceImplementation::DisableVertexAttribArray(GLuint index) {
404   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::DisableVertexAttribArray");
405   gl_->DisableVertexAttribArray(index);
406 }
407 
DrawArrays(GLenum mode,GLint first,GLsizei count)408 void GLES2TraceImplementation::DrawArrays(GLenum mode,
409                                           GLint first,
410                                           GLsizei count) {
411   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::DrawArrays");
412   gl_->DrawArrays(mode, first, count);
413 }
414 
DrawElements(GLenum mode,GLsizei count,GLenum type,const void * indices)415 void GLES2TraceImplementation::DrawElements(GLenum mode,
416                                             GLsizei count,
417                                             GLenum type,
418                                             const void* indices) {
419   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::DrawElements");
420   gl_->DrawElements(mode, count, type, indices);
421 }
422 
DrawRangeElements(GLenum mode,GLuint start,GLuint end,GLsizei count,GLenum type,const void * indices)423 void GLES2TraceImplementation::DrawRangeElements(GLenum mode,
424                                                  GLuint start,
425                                                  GLuint end,
426                                                  GLsizei count,
427                                                  GLenum type,
428                                                  const void* indices) {
429   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::DrawRangeElements");
430   gl_->DrawRangeElements(mode, start, end, count, type, indices);
431 }
432 
Enable(GLenum cap)433 void GLES2TraceImplementation::Enable(GLenum cap) {
434   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::Enable");
435   gl_->Enable(cap);
436 }
437 
EnableVertexAttribArray(GLuint index)438 void GLES2TraceImplementation::EnableVertexAttribArray(GLuint index) {
439   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::EnableVertexAttribArray");
440   gl_->EnableVertexAttribArray(index);
441 }
442 
FenceSync(GLenum condition,GLbitfield flags)443 GLsync GLES2TraceImplementation::FenceSync(GLenum condition, GLbitfield flags) {
444   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::FenceSync");
445   return gl_->FenceSync(condition, flags);
446 }
447 
Finish()448 void GLES2TraceImplementation::Finish() {
449   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::Finish");
450   gl_->Finish();
451 }
452 
Flush()453 void GLES2TraceImplementation::Flush() {
454   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::Flush");
455   gl_->Flush();
456 }
457 
FramebufferRenderbuffer(GLenum target,GLenum attachment,GLenum renderbuffertarget,GLuint renderbuffer)458 void GLES2TraceImplementation::FramebufferRenderbuffer(
459     GLenum target,
460     GLenum attachment,
461     GLenum renderbuffertarget,
462     GLuint renderbuffer) {
463   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::FramebufferRenderbuffer");
464   gl_->FramebufferRenderbuffer(target, attachment, renderbuffertarget,
465                                renderbuffer);
466 }
467 
FramebufferTexture2D(GLenum target,GLenum attachment,GLenum textarget,GLuint texture,GLint level)468 void GLES2TraceImplementation::FramebufferTexture2D(GLenum target,
469                                                     GLenum attachment,
470                                                     GLenum textarget,
471                                                     GLuint texture,
472                                                     GLint level) {
473   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::FramebufferTexture2D");
474   gl_->FramebufferTexture2D(target, attachment, textarget, texture, level);
475 }
476 
FramebufferTextureLayer(GLenum target,GLenum attachment,GLuint texture,GLint level,GLint layer)477 void GLES2TraceImplementation::FramebufferTextureLayer(GLenum target,
478                                                        GLenum attachment,
479                                                        GLuint texture,
480                                                        GLint level,
481                                                        GLint layer) {
482   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::FramebufferTextureLayer");
483   gl_->FramebufferTextureLayer(target, attachment, texture, level, layer);
484 }
485 
FrontFace(GLenum mode)486 void GLES2TraceImplementation::FrontFace(GLenum mode) {
487   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::FrontFace");
488   gl_->FrontFace(mode);
489 }
490 
GenBuffers(GLsizei n,GLuint * buffers)491 void GLES2TraceImplementation::GenBuffers(GLsizei n, GLuint* buffers) {
492   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GenBuffers");
493   gl_->GenBuffers(n, buffers);
494 }
495 
GenerateMipmap(GLenum target)496 void GLES2TraceImplementation::GenerateMipmap(GLenum target) {
497   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GenerateMipmap");
498   gl_->GenerateMipmap(target);
499 }
500 
GenFramebuffers(GLsizei n,GLuint * framebuffers)501 void GLES2TraceImplementation::GenFramebuffers(GLsizei n,
502                                                GLuint* framebuffers) {
503   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GenFramebuffers");
504   gl_->GenFramebuffers(n, framebuffers);
505 }
506 
GenRenderbuffers(GLsizei n,GLuint * renderbuffers)507 void GLES2TraceImplementation::GenRenderbuffers(GLsizei n,
508                                                 GLuint* renderbuffers) {
509   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GenRenderbuffers");
510   gl_->GenRenderbuffers(n, renderbuffers);
511 }
512 
GenSamplers(GLsizei n,GLuint * samplers)513 void GLES2TraceImplementation::GenSamplers(GLsizei n, GLuint* samplers) {
514   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GenSamplers");
515   gl_->GenSamplers(n, samplers);
516 }
517 
GenTextures(GLsizei n,GLuint * textures)518 void GLES2TraceImplementation::GenTextures(GLsizei n, GLuint* textures) {
519   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GenTextures");
520   gl_->GenTextures(n, textures);
521 }
522 
GenTransformFeedbacks(GLsizei n,GLuint * ids)523 void GLES2TraceImplementation::GenTransformFeedbacks(GLsizei n, GLuint* ids) {
524   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GenTransformFeedbacks");
525   gl_->GenTransformFeedbacks(n, ids);
526 }
527 
GetActiveAttrib(GLuint program,GLuint index,GLsizei bufsize,GLsizei * length,GLint * size,GLenum * type,char * name)528 void GLES2TraceImplementation::GetActiveAttrib(GLuint program,
529                                                GLuint index,
530                                                GLsizei bufsize,
531                                                GLsizei* length,
532                                                GLint* size,
533                                                GLenum* type,
534                                                char* name) {
535   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GetActiveAttrib");
536   gl_->GetActiveAttrib(program, index, bufsize, length, size, type, name);
537 }
538 
GetActiveUniform(GLuint program,GLuint index,GLsizei bufsize,GLsizei * length,GLint * size,GLenum * type,char * name)539 void GLES2TraceImplementation::GetActiveUniform(GLuint program,
540                                                 GLuint index,
541                                                 GLsizei bufsize,
542                                                 GLsizei* length,
543                                                 GLint* size,
544                                                 GLenum* type,
545                                                 char* name) {
546   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GetActiveUniform");
547   gl_->GetActiveUniform(program, index, bufsize, length, size, type, name);
548 }
549 
GetActiveUniformBlockiv(GLuint program,GLuint index,GLenum pname,GLint * params)550 void GLES2TraceImplementation::GetActiveUniformBlockiv(GLuint program,
551                                                        GLuint index,
552                                                        GLenum pname,
553                                                        GLint* params) {
554   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GetActiveUniformBlockiv");
555   gl_->GetActiveUniformBlockiv(program, index, pname, params);
556 }
557 
GetActiveUniformBlockName(GLuint program,GLuint index,GLsizei bufsize,GLsizei * length,char * name)558 void GLES2TraceImplementation::GetActiveUniformBlockName(GLuint program,
559                                                          GLuint index,
560                                                          GLsizei bufsize,
561                                                          GLsizei* length,
562                                                          char* name) {
563   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GetActiveUniformBlockName");
564   gl_->GetActiveUniformBlockName(program, index, bufsize, length, name);
565 }
566 
GetActiveUniformsiv(GLuint program,GLsizei count,const GLuint * indices,GLenum pname,GLint * params)567 void GLES2TraceImplementation::GetActiveUniformsiv(GLuint program,
568                                                    GLsizei count,
569                                                    const GLuint* indices,
570                                                    GLenum pname,
571                                                    GLint* params) {
572   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GetActiveUniformsiv");
573   gl_->GetActiveUniformsiv(program, count, indices, pname, params);
574 }
575 
GetAttachedShaders(GLuint program,GLsizei maxcount,GLsizei * count,GLuint * shaders)576 void GLES2TraceImplementation::GetAttachedShaders(GLuint program,
577                                                   GLsizei maxcount,
578                                                   GLsizei* count,
579                                                   GLuint* shaders) {
580   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GetAttachedShaders");
581   gl_->GetAttachedShaders(program, maxcount, count, shaders);
582 }
583 
GetAttribLocation(GLuint program,const char * name)584 GLint GLES2TraceImplementation::GetAttribLocation(GLuint program,
585                                                   const char* name) {
586   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GetAttribLocation");
587   return gl_->GetAttribLocation(program, name);
588 }
589 
GetBooleanv(GLenum pname,GLboolean * params)590 void GLES2TraceImplementation::GetBooleanv(GLenum pname, GLboolean* params) {
591   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GetBooleanv");
592   gl_->GetBooleanv(pname, params);
593 }
594 
GetBufferParameteri64v(GLenum target,GLenum pname,GLint64 * params)595 void GLES2TraceImplementation::GetBufferParameteri64v(GLenum target,
596                                                       GLenum pname,
597                                                       GLint64* params) {
598   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GetBufferParameteri64v");
599   gl_->GetBufferParameteri64v(target, pname, params);
600 }
601 
GetBufferParameteriv(GLenum target,GLenum pname,GLint * params)602 void GLES2TraceImplementation::GetBufferParameteriv(GLenum target,
603                                                     GLenum pname,
604                                                     GLint* params) {
605   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GetBufferParameteriv");
606   gl_->GetBufferParameteriv(target, pname, params);
607 }
608 
GetError()609 GLenum GLES2TraceImplementation::GetError() {
610   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GetError");
611   return gl_->GetError();
612 }
613 
GetFloatv(GLenum pname,GLfloat * params)614 void GLES2TraceImplementation::GetFloatv(GLenum pname, GLfloat* params) {
615   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GetFloatv");
616   gl_->GetFloatv(pname, params);
617 }
618 
GetFragDataLocation(GLuint program,const char * name)619 GLint GLES2TraceImplementation::GetFragDataLocation(GLuint program,
620                                                     const char* name) {
621   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GetFragDataLocation");
622   return gl_->GetFragDataLocation(program, name);
623 }
624 
GetFramebufferAttachmentParameteriv(GLenum target,GLenum attachment,GLenum pname,GLint * params)625 void GLES2TraceImplementation::GetFramebufferAttachmentParameteriv(
626     GLenum target,
627     GLenum attachment,
628     GLenum pname,
629     GLint* params) {
630   TRACE_EVENT_BINARY_EFFICIENT0(
631       "gpu", "GLES2Trace::GetFramebufferAttachmentParameteriv");
632   gl_->GetFramebufferAttachmentParameteriv(target, attachment, pname, params);
633 }
634 
GetInteger64v(GLenum pname,GLint64 * params)635 void GLES2TraceImplementation::GetInteger64v(GLenum pname, GLint64* params) {
636   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GetInteger64v");
637   gl_->GetInteger64v(pname, params);
638 }
639 
GetIntegeri_v(GLenum pname,GLuint index,GLint * data)640 void GLES2TraceImplementation::GetIntegeri_v(GLenum pname,
641                                              GLuint index,
642                                              GLint* data) {
643   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GetIntegeri_v");
644   gl_->GetIntegeri_v(pname, index, data);
645 }
646 
GetInteger64i_v(GLenum pname,GLuint index,GLint64 * data)647 void GLES2TraceImplementation::GetInteger64i_v(GLenum pname,
648                                                GLuint index,
649                                                GLint64* data) {
650   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GetInteger64i_v");
651   gl_->GetInteger64i_v(pname, index, data);
652 }
653 
GetIntegerv(GLenum pname,GLint * params)654 void GLES2TraceImplementation::GetIntegerv(GLenum pname, GLint* params) {
655   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GetIntegerv");
656   gl_->GetIntegerv(pname, params);
657 }
658 
GetInternalformativ(GLenum target,GLenum format,GLenum pname,GLsizei bufSize,GLint * params)659 void GLES2TraceImplementation::GetInternalformativ(GLenum target,
660                                                    GLenum format,
661                                                    GLenum pname,
662                                                    GLsizei bufSize,
663                                                    GLint* params) {
664   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GetInternalformativ");
665   gl_->GetInternalformativ(target, format, pname, bufSize, params);
666 }
667 
GetProgramiv(GLuint program,GLenum pname,GLint * params)668 void GLES2TraceImplementation::GetProgramiv(GLuint program,
669                                             GLenum pname,
670                                             GLint* params) {
671   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GetProgramiv");
672   gl_->GetProgramiv(program, pname, params);
673 }
674 
GetProgramInfoLog(GLuint program,GLsizei bufsize,GLsizei * length,char * infolog)675 void GLES2TraceImplementation::GetProgramInfoLog(GLuint program,
676                                                  GLsizei bufsize,
677                                                  GLsizei* length,
678                                                  char* infolog) {
679   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GetProgramInfoLog");
680   gl_->GetProgramInfoLog(program, bufsize, length, infolog);
681 }
682 
GetRenderbufferParameteriv(GLenum target,GLenum pname,GLint * params)683 void GLES2TraceImplementation::GetRenderbufferParameteriv(GLenum target,
684                                                           GLenum pname,
685                                                           GLint* params) {
686   TRACE_EVENT_BINARY_EFFICIENT0("gpu",
687                                 "GLES2Trace::GetRenderbufferParameteriv");
688   gl_->GetRenderbufferParameteriv(target, pname, params);
689 }
690 
GetSamplerParameterfv(GLuint sampler,GLenum pname,GLfloat * params)691 void GLES2TraceImplementation::GetSamplerParameterfv(GLuint sampler,
692                                                      GLenum pname,
693                                                      GLfloat* params) {
694   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GetSamplerParameterfv");
695   gl_->GetSamplerParameterfv(sampler, pname, params);
696 }
697 
GetSamplerParameteriv(GLuint sampler,GLenum pname,GLint * params)698 void GLES2TraceImplementation::GetSamplerParameteriv(GLuint sampler,
699                                                      GLenum pname,
700                                                      GLint* params) {
701   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GetSamplerParameteriv");
702   gl_->GetSamplerParameteriv(sampler, pname, params);
703 }
704 
GetShaderiv(GLuint shader,GLenum pname,GLint * params)705 void GLES2TraceImplementation::GetShaderiv(GLuint shader,
706                                            GLenum pname,
707                                            GLint* params) {
708   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GetShaderiv");
709   gl_->GetShaderiv(shader, pname, params);
710 }
711 
GetShaderInfoLog(GLuint shader,GLsizei bufsize,GLsizei * length,char * infolog)712 void GLES2TraceImplementation::GetShaderInfoLog(GLuint shader,
713                                                 GLsizei bufsize,
714                                                 GLsizei* length,
715                                                 char* infolog) {
716   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GetShaderInfoLog");
717   gl_->GetShaderInfoLog(shader, bufsize, length, infolog);
718 }
719 
GetShaderPrecisionFormat(GLenum shadertype,GLenum precisiontype,GLint * range,GLint * precision)720 void GLES2TraceImplementation::GetShaderPrecisionFormat(GLenum shadertype,
721                                                         GLenum precisiontype,
722                                                         GLint* range,
723                                                         GLint* precision) {
724   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GetShaderPrecisionFormat");
725   gl_->GetShaderPrecisionFormat(shadertype, precisiontype, range, precision);
726 }
727 
GetShaderSource(GLuint shader,GLsizei bufsize,GLsizei * length,char * source)728 void GLES2TraceImplementation::GetShaderSource(GLuint shader,
729                                                GLsizei bufsize,
730                                                GLsizei* length,
731                                                char* source) {
732   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GetShaderSource");
733   gl_->GetShaderSource(shader, bufsize, length, source);
734 }
735 
GetString(GLenum name)736 const GLubyte* GLES2TraceImplementation::GetString(GLenum name) {
737   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GetString");
738   return gl_->GetString(name);
739 }
740 
GetStringi(GLenum name,GLuint index)741 const GLubyte* GLES2TraceImplementation::GetStringi(GLenum name, GLuint index) {
742   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GetStringi");
743   return gl_->GetStringi(name, index);
744 }
745 
GetSynciv(GLsync sync,GLenum pname,GLsizei bufsize,GLsizei * length,GLint * values)746 void GLES2TraceImplementation::GetSynciv(GLsync sync,
747                                          GLenum pname,
748                                          GLsizei bufsize,
749                                          GLsizei* length,
750                                          GLint* values) {
751   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GetSynciv");
752   gl_->GetSynciv(sync, pname, bufsize, length, values);
753 }
754 
GetTexParameterfv(GLenum target,GLenum pname,GLfloat * params)755 void GLES2TraceImplementation::GetTexParameterfv(GLenum target,
756                                                  GLenum pname,
757                                                  GLfloat* params) {
758   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GetTexParameterfv");
759   gl_->GetTexParameterfv(target, pname, params);
760 }
761 
GetTexParameteriv(GLenum target,GLenum pname,GLint * params)762 void GLES2TraceImplementation::GetTexParameteriv(GLenum target,
763                                                  GLenum pname,
764                                                  GLint* params) {
765   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GetTexParameteriv");
766   gl_->GetTexParameteriv(target, pname, params);
767 }
768 
GetTransformFeedbackVarying(GLuint program,GLuint index,GLsizei bufsize,GLsizei * length,GLsizei * size,GLenum * type,char * name)769 void GLES2TraceImplementation::GetTransformFeedbackVarying(GLuint program,
770                                                            GLuint index,
771                                                            GLsizei bufsize,
772                                                            GLsizei* length,
773                                                            GLsizei* size,
774                                                            GLenum* type,
775                                                            char* name) {
776   TRACE_EVENT_BINARY_EFFICIENT0("gpu",
777                                 "GLES2Trace::GetTransformFeedbackVarying");
778   gl_->GetTransformFeedbackVarying(program, index, bufsize, length, size, type,
779                                    name);
780 }
781 
GetUniformBlockIndex(GLuint program,const char * name)782 GLuint GLES2TraceImplementation::GetUniformBlockIndex(GLuint program,
783                                                       const char* name) {
784   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GetUniformBlockIndex");
785   return gl_->GetUniformBlockIndex(program, name);
786 }
787 
GetUniformfv(GLuint program,GLint location,GLfloat * params)788 void GLES2TraceImplementation::GetUniformfv(GLuint program,
789                                             GLint location,
790                                             GLfloat* params) {
791   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GetUniformfv");
792   gl_->GetUniformfv(program, location, params);
793 }
794 
GetUniformiv(GLuint program,GLint location,GLint * params)795 void GLES2TraceImplementation::GetUniformiv(GLuint program,
796                                             GLint location,
797                                             GLint* params) {
798   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GetUniformiv");
799   gl_->GetUniformiv(program, location, params);
800 }
801 
GetUniformuiv(GLuint program,GLint location,GLuint * params)802 void GLES2TraceImplementation::GetUniformuiv(GLuint program,
803                                              GLint location,
804                                              GLuint* params) {
805   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GetUniformuiv");
806   gl_->GetUniformuiv(program, location, params);
807 }
808 
GetUniformIndices(GLuint program,GLsizei count,const char * const * names,GLuint * indices)809 void GLES2TraceImplementation::GetUniformIndices(GLuint program,
810                                                  GLsizei count,
811                                                  const char* const* names,
812                                                  GLuint* indices) {
813   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GetUniformIndices");
814   gl_->GetUniformIndices(program, count, names, indices);
815 }
816 
GetUniformLocation(GLuint program,const char * name)817 GLint GLES2TraceImplementation::GetUniformLocation(GLuint program,
818                                                    const char* name) {
819   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GetUniformLocation");
820   return gl_->GetUniformLocation(program, name);
821 }
822 
GetVertexAttribfv(GLuint index,GLenum pname,GLfloat * params)823 void GLES2TraceImplementation::GetVertexAttribfv(GLuint index,
824                                                  GLenum pname,
825                                                  GLfloat* params) {
826   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GetVertexAttribfv");
827   gl_->GetVertexAttribfv(index, pname, params);
828 }
829 
GetVertexAttribiv(GLuint index,GLenum pname,GLint * params)830 void GLES2TraceImplementation::GetVertexAttribiv(GLuint index,
831                                                  GLenum pname,
832                                                  GLint* params) {
833   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GetVertexAttribiv");
834   gl_->GetVertexAttribiv(index, pname, params);
835 }
836 
GetVertexAttribIiv(GLuint index,GLenum pname,GLint * params)837 void GLES2TraceImplementation::GetVertexAttribIiv(GLuint index,
838                                                   GLenum pname,
839                                                   GLint* params) {
840   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GetVertexAttribIiv");
841   gl_->GetVertexAttribIiv(index, pname, params);
842 }
843 
GetVertexAttribIuiv(GLuint index,GLenum pname,GLuint * params)844 void GLES2TraceImplementation::GetVertexAttribIuiv(GLuint index,
845                                                    GLenum pname,
846                                                    GLuint* params) {
847   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GetVertexAttribIuiv");
848   gl_->GetVertexAttribIuiv(index, pname, params);
849 }
850 
GetVertexAttribPointerv(GLuint index,GLenum pname,void ** pointer)851 void GLES2TraceImplementation::GetVertexAttribPointerv(GLuint index,
852                                                        GLenum pname,
853                                                        void** pointer) {
854   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GetVertexAttribPointerv");
855   gl_->GetVertexAttribPointerv(index, pname, pointer);
856 }
857 
Hint(GLenum target,GLenum mode)858 void GLES2TraceImplementation::Hint(GLenum target, GLenum mode) {
859   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::Hint");
860   gl_->Hint(target, mode);
861 }
862 
InvalidateFramebuffer(GLenum target,GLsizei count,const GLenum * attachments)863 void GLES2TraceImplementation::InvalidateFramebuffer(
864     GLenum target,
865     GLsizei count,
866     const GLenum* attachments) {
867   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::InvalidateFramebuffer");
868   gl_->InvalidateFramebuffer(target, count, attachments);
869 }
870 
InvalidateSubFramebuffer(GLenum target,GLsizei count,const GLenum * attachments,GLint x,GLint y,GLsizei width,GLsizei height)871 void GLES2TraceImplementation::InvalidateSubFramebuffer(
872     GLenum target,
873     GLsizei count,
874     const GLenum* attachments,
875     GLint x,
876     GLint y,
877     GLsizei width,
878     GLsizei height) {
879   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::InvalidateSubFramebuffer");
880   gl_->InvalidateSubFramebuffer(target, count, attachments, x, y, width,
881                                 height);
882 }
883 
IsBuffer(GLuint buffer)884 GLboolean GLES2TraceImplementation::IsBuffer(GLuint buffer) {
885   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::IsBuffer");
886   return gl_->IsBuffer(buffer);
887 }
888 
IsEnabled(GLenum cap)889 GLboolean GLES2TraceImplementation::IsEnabled(GLenum cap) {
890   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::IsEnabled");
891   return gl_->IsEnabled(cap);
892 }
893 
IsFramebuffer(GLuint framebuffer)894 GLboolean GLES2TraceImplementation::IsFramebuffer(GLuint framebuffer) {
895   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::IsFramebuffer");
896   return gl_->IsFramebuffer(framebuffer);
897 }
898 
IsProgram(GLuint program)899 GLboolean GLES2TraceImplementation::IsProgram(GLuint program) {
900   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::IsProgram");
901   return gl_->IsProgram(program);
902 }
903 
IsRenderbuffer(GLuint renderbuffer)904 GLboolean GLES2TraceImplementation::IsRenderbuffer(GLuint renderbuffer) {
905   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::IsRenderbuffer");
906   return gl_->IsRenderbuffer(renderbuffer);
907 }
908 
IsSampler(GLuint sampler)909 GLboolean GLES2TraceImplementation::IsSampler(GLuint sampler) {
910   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::IsSampler");
911   return gl_->IsSampler(sampler);
912 }
913 
IsShader(GLuint shader)914 GLboolean GLES2TraceImplementation::IsShader(GLuint shader) {
915   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::IsShader");
916   return gl_->IsShader(shader);
917 }
918 
IsSync(GLsync sync)919 GLboolean GLES2TraceImplementation::IsSync(GLsync sync) {
920   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::IsSync");
921   return gl_->IsSync(sync);
922 }
923 
IsTexture(GLuint texture)924 GLboolean GLES2TraceImplementation::IsTexture(GLuint texture) {
925   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::IsTexture");
926   return gl_->IsTexture(texture);
927 }
928 
IsTransformFeedback(GLuint transformfeedback)929 GLboolean GLES2TraceImplementation::IsTransformFeedback(
930     GLuint transformfeedback) {
931   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::IsTransformFeedback");
932   return gl_->IsTransformFeedback(transformfeedback);
933 }
934 
LineWidth(GLfloat width)935 void GLES2TraceImplementation::LineWidth(GLfloat width) {
936   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::LineWidth");
937   gl_->LineWidth(width);
938 }
939 
LinkProgram(GLuint program)940 void GLES2TraceImplementation::LinkProgram(GLuint program) {
941   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::LinkProgram");
942   gl_->LinkProgram(program);
943 }
944 
PauseTransformFeedback()945 void GLES2TraceImplementation::PauseTransformFeedback() {
946   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::PauseTransformFeedback");
947   gl_->PauseTransformFeedback();
948 }
949 
PixelStorei(GLenum pname,GLint param)950 void GLES2TraceImplementation::PixelStorei(GLenum pname, GLint param) {
951   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::PixelStorei");
952   gl_->PixelStorei(pname, param);
953 }
954 
PolygonOffset(GLfloat factor,GLfloat units)955 void GLES2TraceImplementation::PolygonOffset(GLfloat factor, GLfloat units) {
956   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::PolygonOffset");
957   gl_->PolygonOffset(factor, units);
958 }
959 
ReadBuffer(GLenum src)960 void GLES2TraceImplementation::ReadBuffer(GLenum src) {
961   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::ReadBuffer");
962   gl_->ReadBuffer(src);
963 }
964 
ReadPixels(GLint x,GLint y,GLsizei width,GLsizei height,GLenum format,GLenum type,void * pixels)965 void GLES2TraceImplementation::ReadPixels(GLint x,
966                                           GLint y,
967                                           GLsizei width,
968                                           GLsizei height,
969                                           GLenum format,
970                                           GLenum type,
971                                           void* pixels) {
972   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::ReadPixels");
973   gl_->ReadPixels(x, y, width, height, format, type, pixels);
974 }
975 
ReleaseShaderCompiler()976 void GLES2TraceImplementation::ReleaseShaderCompiler() {
977   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::ReleaseShaderCompiler");
978   gl_->ReleaseShaderCompiler();
979 }
980 
RenderbufferStorage(GLenum target,GLenum internalformat,GLsizei width,GLsizei height)981 void GLES2TraceImplementation::RenderbufferStorage(GLenum target,
982                                                    GLenum internalformat,
983                                                    GLsizei width,
984                                                    GLsizei height) {
985   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::RenderbufferStorage");
986   gl_->RenderbufferStorage(target, internalformat, width, height);
987 }
988 
ResumeTransformFeedback()989 void GLES2TraceImplementation::ResumeTransformFeedback() {
990   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::ResumeTransformFeedback");
991   gl_->ResumeTransformFeedback();
992 }
993 
SampleCoverage(GLclampf value,GLboolean invert)994 void GLES2TraceImplementation::SampleCoverage(GLclampf value,
995                                               GLboolean invert) {
996   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::SampleCoverage");
997   gl_->SampleCoverage(value, invert);
998 }
999 
SamplerParameterf(GLuint sampler,GLenum pname,GLfloat param)1000 void GLES2TraceImplementation::SamplerParameterf(GLuint sampler,
1001                                                  GLenum pname,
1002                                                  GLfloat param) {
1003   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::SamplerParameterf");
1004   gl_->SamplerParameterf(sampler, pname, param);
1005 }
1006 
SamplerParameterfv(GLuint sampler,GLenum pname,const GLfloat * params)1007 void GLES2TraceImplementation::SamplerParameterfv(GLuint sampler,
1008                                                   GLenum pname,
1009                                                   const GLfloat* params) {
1010   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::SamplerParameterfv");
1011   gl_->SamplerParameterfv(sampler, pname, params);
1012 }
1013 
SamplerParameteri(GLuint sampler,GLenum pname,GLint param)1014 void GLES2TraceImplementation::SamplerParameteri(GLuint sampler,
1015                                                  GLenum pname,
1016                                                  GLint param) {
1017   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::SamplerParameteri");
1018   gl_->SamplerParameteri(sampler, pname, param);
1019 }
1020 
SamplerParameteriv(GLuint sampler,GLenum pname,const GLint * params)1021 void GLES2TraceImplementation::SamplerParameteriv(GLuint sampler,
1022                                                   GLenum pname,
1023                                                   const GLint* params) {
1024   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::SamplerParameteriv");
1025   gl_->SamplerParameteriv(sampler, pname, params);
1026 }
1027 
Scissor(GLint x,GLint y,GLsizei width,GLsizei height)1028 void GLES2TraceImplementation::Scissor(GLint x,
1029                                        GLint y,
1030                                        GLsizei width,
1031                                        GLsizei height) {
1032   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::Scissor");
1033   gl_->Scissor(x, y, width, height);
1034 }
1035 
ShaderBinary(GLsizei n,const GLuint * shaders,GLenum binaryformat,const void * binary,GLsizei length)1036 void GLES2TraceImplementation::ShaderBinary(GLsizei n,
1037                                             const GLuint* shaders,
1038                                             GLenum binaryformat,
1039                                             const void* binary,
1040                                             GLsizei length) {
1041   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::ShaderBinary");
1042   gl_->ShaderBinary(n, shaders, binaryformat, binary, length);
1043 }
1044 
ShaderSource(GLuint shader,GLsizei count,const GLchar * const * str,const GLint * length)1045 void GLES2TraceImplementation::ShaderSource(GLuint shader,
1046                                             GLsizei count,
1047                                             const GLchar* const* str,
1048                                             const GLint* length) {
1049   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::ShaderSource");
1050   gl_->ShaderSource(shader, count, str, length);
1051 }
1052 
ShallowFinishCHROMIUM()1053 void GLES2TraceImplementation::ShallowFinishCHROMIUM() {
1054   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::ShallowFinishCHROMIUM");
1055   gl_->ShallowFinishCHROMIUM();
1056 }
1057 
ShallowFlushCHROMIUM()1058 void GLES2TraceImplementation::ShallowFlushCHROMIUM() {
1059   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::ShallowFlushCHROMIUM");
1060   gl_->ShallowFlushCHROMIUM();
1061 }
1062 
OrderingBarrierCHROMIUM()1063 void GLES2TraceImplementation::OrderingBarrierCHROMIUM() {
1064   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::OrderingBarrierCHROMIUM");
1065   gl_->OrderingBarrierCHROMIUM();
1066 }
1067 
MultiDrawArraysWEBGL(GLenum mode,const GLint * firsts,const GLsizei * counts,GLsizei drawcount)1068 void GLES2TraceImplementation::MultiDrawArraysWEBGL(GLenum mode,
1069                                                     const GLint* firsts,
1070                                                     const GLsizei* counts,
1071                                                     GLsizei drawcount) {
1072   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::MultiDrawArraysWEBGL");
1073   gl_->MultiDrawArraysWEBGL(mode, firsts, counts, drawcount);
1074 }
1075 
MultiDrawArraysInstancedWEBGL(GLenum mode,const GLint * firsts,const GLsizei * counts,const GLsizei * instance_counts,GLsizei drawcount)1076 void GLES2TraceImplementation::MultiDrawArraysInstancedWEBGL(
1077     GLenum mode,
1078     const GLint* firsts,
1079     const GLsizei* counts,
1080     const GLsizei* instance_counts,
1081     GLsizei drawcount) {
1082   TRACE_EVENT_BINARY_EFFICIENT0("gpu",
1083                                 "GLES2Trace::MultiDrawArraysInstancedWEBGL");
1084   gl_->MultiDrawArraysInstancedWEBGL(mode, firsts, counts, instance_counts,
1085                                      drawcount);
1086 }
1087 
MultiDrawArraysInstancedBaseInstanceWEBGL(GLenum mode,const GLint * firsts,const GLsizei * counts,const GLsizei * instance_counts,const GLuint * baseinstances,GLsizei drawcount)1088 void GLES2TraceImplementation::MultiDrawArraysInstancedBaseInstanceWEBGL(
1089     GLenum mode,
1090     const GLint* firsts,
1091     const GLsizei* counts,
1092     const GLsizei* instance_counts,
1093     const GLuint* baseinstances,
1094     GLsizei drawcount) {
1095   TRACE_EVENT_BINARY_EFFICIENT0(
1096       "gpu", "GLES2Trace::MultiDrawArraysInstancedBaseInstanceWEBGL");
1097   gl_->MultiDrawArraysInstancedBaseInstanceWEBGL(
1098       mode, firsts, counts, instance_counts, baseinstances, drawcount);
1099 }
1100 
MultiDrawElementsWEBGL(GLenum mode,const GLsizei * counts,GLenum type,const GLsizei * offsets,GLsizei drawcount)1101 void GLES2TraceImplementation::MultiDrawElementsWEBGL(GLenum mode,
1102                                                       const GLsizei* counts,
1103                                                       GLenum type,
1104                                                       const GLsizei* offsets,
1105                                                       GLsizei drawcount) {
1106   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::MultiDrawElementsWEBGL");
1107   gl_->MultiDrawElementsWEBGL(mode, counts, type, offsets, drawcount);
1108 }
1109 
MultiDrawElementsInstancedWEBGL(GLenum mode,const GLsizei * counts,GLenum type,const GLsizei * offsets,const GLsizei * instance_counts,GLsizei drawcount)1110 void GLES2TraceImplementation::MultiDrawElementsInstancedWEBGL(
1111     GLenum mode,
1112     const GLsizei* counts,
1113     GLenum type,
1114     const GLsizei* offsets,
1115     const GLsizei* instance_counts,
1116     GLsizei drawcount) {
1117   TRACE_EVENT_BINARY_EFFICIENT0("gpu",
1118                                 "GLES2Trace::MultiDrawElementsInstancedWEBGL");
1119   gl_->MultiDrawElementsInstancedWEBGL(mode, counts, type, offsets,
1120                                        instance_counts, drawcount);
1121 }
1122 
1123 void GLES2TraceImplementation::
MultiDrawElementsInstancedBaseVertexBaseInstanceWEBGL(GLenum mode,const GLsizei * counts,GLenum type,const GLsizei * offsets,const GLsizei * instance_counts,const GLint * basevertices,const GLuint * baseinstances,GLsizei drawcount)1124     MultiDrawElementsInstancedBaseVertexBaseInstanceWEBGL(
1125         GLenum mode,
1126         const GLsizei* counts,
1127         GLenum type,
1128         const GLsizei* offsets,
1129         const GLsizei* instance_counts,
1130         const GLint* basevertices,
1131         const GLuint* baseinstances,
1132         GLsizei drawcount) {
1133   TRACE_EVENT_BINARY_EFFICIENT0(
1134       "gpu",
1135       "GLES2Trace::MultiDrawElementsInstancedBaseVertexBaseInstanceWEBGL");
1136   gl_->MultiDrawElementsInstancedBaseVertexBaseInstanceWEBGL(
1137       mode, counts, type, offsets, instance_counts, basevertices, baseinstances,
1138       drawcount);
1139 }
1140 
StencilFunc(GLenum func,GLint ref,GLuint mask)1141 void GLES2TraceImplementation::StencilFunc(GLenum func,
1142                                            GLint ref,
1143                                            GLuint mask) {
1144   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::StencilFunc");
1145   gl_->StencilFunc(func, ref, mask);
1146 }
1147 
StencilFuncSeparate(GLenum face,GLenum func,GLint ref,GLuint mask)1148 void GLES2TraceImplementation::StencilFuncSeparate(GLenum face,
1149                                                    GLenum func,
1150                                                    GLint ref,
1151                                                    GLuint mask) {
1152   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::StencilFuncSeparate");
1153   gl_->StencilFuncSeparate(face, func, ref, mask);
1154 }
1155 
StencilMask(GLuint mask)1156 void GLES2TraceImplementation::StencilMask(GLuint mask) {
1157   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::StencilMask");
1158   gl_->StencilMask(mask);
1159 }
1160 
StencilMaskSeparate(GLenum face,GLuint mask)1161 void GLES2TraceImplementation::StencilMaskSeparate(GLenum face, GLuint mask) {
1162   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::StencilMaskSeparate");
1163   gl_->StencilMaskSeparate(face, mask);
1164 }
1165 
StencilOp(GLenum fail,GLenum zfail,GLenum zpass)1166 void GLES2TraceImplementation::StencilOp(GLenum fail,
1167                                          GLenum zfail,
1168                                          GLenum zpass) {
1169   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::StencilOp");
1170   gl_->StencilOp(fail, zfail, zpass);
1171 }
1172 
StencilOpSeparate(GLenum face,GLenum fail,GLenum zfail,GLenum zpass)1173 void GLES2TraceImplementation::StencilOpSeparate(GLenum face,
1174                                                  GLenum fail,
1175                                                  GLenum zfail,
1176                                                  GLenum zpass) {
1177   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::StencilOpSeparate");
1178   gl_->StencilOpSeparate(face, fail, zfail, zpass);
1179 }
1180 
TexImage2D(GLenum target,GLint level,GLint internalformat,GLsizei width,GLsizei height,GLint border,GLenum format,GLenum type,const void * pixels)1181 void GLES2TraceImplementation::TexImage2D(GLenum target,
1182                                           GLint level,
1183                                           GLint internalformat,
1184                                           GLsizei width,
1185                                           GLsizei height,
1186                                           GLint border,
1187                                           GLenum format,
1188                                           GLenum type,
1189                                           const void* pixels) {
1190   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::TexImage2D");
1191   gl_->TexImage2D(target, level, internalformat, width, height, border, format,
1192                   type, pixels);
1193 }
1194 
TexImage3D(GLenum target,GLint level,GLint internalformat,GLsizei width,GLsizei height,GLsizei depth,GLint border,GLenum format,GLenum type,const void * pixels)1195 void GLES2TraceImplementation::TexImage3D(GLenum target,
1196                                           GLint level,
1197                                           GLint internalformat,
1198                                           GLsizei width,
1199                                           GLsizei height,
1200                                           GLsizei depth,
1201                                           GLint border,
1202                                           GLenum format,
1203                                           GLenum type,
1204                                           const void* pixels) {
1205   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::TexImage3D");
1206   gl_->TexImage3D(target, level, internalformat, width, height, depth, border,
1207                   format, type, pixels);
1208 }
1209 
TexParameterf(GLenum target,GLenum pname,GLfloat param)1210 void GLES2TraceImplementation::TexParameterf(GLenum target,
1211                                              GLenum pname,
1212                                              GLfloat param) {
1213   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::TexParameterf");
1214   gl_->TexParameterf(target, pname, param);
1215 }
1216 
TexParameterfv(GLenum target,GLenum pname,const GLfloat * params)1217 void GLES2TraceImplementation::TexParameterfv(GLenum target,
1218                                               GLenum pname,
1219                                               const GLfloat* params) {
1220   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::TexParameterfv");
1221   gl_->TexParameterfv(target, pname, params);
1222 }
1223 
TexParameteri(GLenum target,GLenum pname,GLint param)1224 void GLES2TraceImplementation::TexParameteri(GLenum target,
1225                                              GLenum pname,
1226                                              GLint param) {
1227   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::TexParameteri");
1228   gl_->TexParameteri(target, pname, param);
1229 }
1230 
TexParameteriv(GLenum target,GLenum pname,const GLint * params)1231 void GLES2TraceImplementation::TexParameteriv(GLenum target,
1232                                               GLenum pname,
1233                                               const GLint* params) {
1234   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::TexParameteriv");
1235   gl_->TexParameteriv(target, pname, params);
1236 }
1237 
TexStorage3D(GLenum target,GLsizei levels,GLenum internalFormat,GLsizei width,GLsizei height,GLsizei depth)1238 void GLES2TraceImplementation::TexStorage3D(GLenum target,
1239                                             GLsizei levels,
1240                                             GLenum internalFormat,
1241                                             GLsizei width,
1242                                             GLsizei height,
1243                                             GLsizei depth) {
1244   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::TexStorage3D");
1245   gl_->TexStorage3D(target, levels, internalFormat, width, height, depth);
1246 }
1247 
TexSubImage2D(GLenum target,GLint level,GLint xoffset,GLint yoffset,GLsizei width,GLsizei height,GLenum format,GLenum type,const void * pixels)1248 void GLES2TraceImplementation::TexSubImage2D(GLenum target,
1249                                              GLint level,
1250                                              GLint xoffset,
1251                                              GLint yoffset,
1252                                              GLsizei width,
1253                                              GLsizei height,
1254                                              GLenum format,
1255                                              GLenum type,
1256                                              const void* pixels) {
1257   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::TexSubImage2D");
1258   gl_->TexSubImage2D(target, level, xoffset, yoffset, width, height, format,
1259                      type, pixels);
1260 }
1261 
TexSubImage3D(GLenum target,GLint level,GLint xoffset,GLint yoffset,GLint zoffset,GLsizei width,GLsizei height,GLsizei depth,GLenum format,GLenum type,const void * pixels)1262 void GLES2TraceImplementation::TexSubImage3D(GLenum target,
1263                                              GLint level,
1264                                              GLint xoffset,
1265                                              GLint yoffset,
1266                                              GLint zoffset,
1267                                              GLsizei width,
1268                                              GLsizei height,
1269                                              GLsizei depth,
1270                                              GLenum format,
1271                                              GLenum type,
1272                                              const void* pixels) {
1273   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::TexSubImage3D");
1274   gl_->TexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height,
1275                      depth, format, type, pixels);
1276 }
1277 
TransformFeedbackVaryings(GLuint program,GLsizei count,const char * const * varyings,GLenum buffermode)1278 void GLES2TraceImplementation::TransformFeedbackVaryings(
1279     GLuint program,
1280     GLsizei count,
1281     const char* const* varyings,
1282     GLenum buffermode) {
1283   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::TransformFeedbackVaryings");
1284   gl_->TransformFeedbackVaryings(program, count, varyings, buffermode);
1285 }
1286 
Uniform1f(GLint location,GLfloat x)1287 void GLES2TraceImplementation::Uniform1f(GLint location, GLfloat x) {
1288   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::Uniform1f");
1289   gl_->Uniform1f(location, x);
1290 }
1291 
Uniform1fv(GLint location,GLsizei count,const GLfloat * v)1292 void GLES2TraceImplementation::Uniform1fv(GLint location,
1293                                           GLsizei count,
1294                                           const GLfloat* v) {
1295   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::Uniform1fv");
1296   gl_->Uniform1fv(location, count, v);
1297 }
1298 
Uniform1i(GLint location,GLint x)1299 void GLES2TraceImplementation::Uniform1i(GLint location, GLint x) {
1300   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::Uniform1i");
1301   gl_->Uniform1i(location, x);
1302 }
1303 
Uniform1iv(GLint location,GLsizei count,const GLint * v)1304 void GLES2TraceImplementation::Uniform1iv(GLint location,
1305                                           GLsizei count,
1306                                           const GLint* v) {
1307   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::Uniform1iv");
1308   gl_->Uniform1iv(location, count, v);
1309 }
1310 
Uniform1ui(GLint location,GLuint x)1311 void GLES2TraceImplementation::Uniform1ui(GLint location, GLuint x) {
1312   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::Uniform1ui");
1313   gl_->Uniform1ui(location, x);
1314 }
1315 
Uniform1uiv(GLint location,GLsizei count,const GLuint * v)1316 void GLES2TraceImplementation::Uniform1uiv(GLint location,
1317                                            GLsizei count,
1318                                            const GLuint* v) {
1319   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::Uniform1uiv");
1320   gl_->Uniform1uiv(location, count, v);
1321 }
1322 
Uniform2f(GLint location,GLfloat x,GLfloat y)1323 void GLES2TraceImplementation::Uniform2f(GLint location, GLfloat x, GLfloat y) {
1324   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::Uniform2f");
1325   gl_->Uniform2f(location, x, y);
1326 }
1327 
Uniform2fv(GLint location,GLsizei count,const GLfloat * v)1328 void GLES2TraceImplementation::Uniform2fv(GLint location,
1329                                           GLsizei count,
1330                                           const GLfloat* v) {
1331   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::Uniform2fv");
1332   gl_->Uniform2fv(location, count, v);
1333 }
1334 
Uniform2i(GLint location,GLint x,GLint y)1335 void GLES2TraceImplementation::Uniform2i(GLint location, GLint x, GLint y) {
1336   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::Uniform2i");
1337   gl_->Uniform2i(location, x, y);
1338 }
1339 
Uniform2iv(GLint location,GLsizei count,const GLint * v)1340 void GLES2TraceImplementation::Uniform2iv(GLint location,
1341                                           GLsizei count,
1342                                           const GLint* v) {
1343   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::Uniform2iv");
1344   gl_->Uniform2iv(location, count, v);
1345 }
1346 
Uniform2ui(GLint location,GLuint x,GLuint y)1347 void GLES2TraceImplementation::Uniform2ui(GLint location, GLuint x, GLuint y) {
1348   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::Uniform2ui");
1349   gl_->Uniform2ui(location, x, y);
1350 }
1351 
Uniform2uiv(GLint location,GLsizei count,const GLuint * v)1352 void GLES2TraceImplementation::Uniform2uiv(GLint location,
1353                                            GLsizei count,
1354                                            const GLuint* v) {
1355   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::Uniform2uiv");
1356   gl_->Uniform2uiv(location, count, v);
1357 }
1358 
Uniform3f(GLint location,GLfloat x,GLfloat y,GLfloat z)1359 void GLES2TraceImplementation::Uniform3f(GLint location,
1360                                          GLfloat x,
1361                                          GLfloat y,
1362                                          GLfloat z) {
1363   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::Uniform3f");
1364   gl_->Uniform3f(location, x, y, z);
1365 }
1366 
Uniform3fv(GLint location,GLsizei count,const GLfloat * v)1367 void GLES2TraceImplementation::Uniform3fv(GLint location,
1368                                           GLsizei count,
1369                                           const GLfloat* v) {
1370   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::Uniform3fv");
1371   gl_->Uniform3fv(location, count, v);
1372 }
1373 
Uniform3i(GLint location,GLint x,GLint y,GLint z)1374 void GLES2TraceImplementation::Uniform3i(GLint location,
1375                                          GLint x,
1376                                          GLint y,
1377                                          GLint z) {
1378   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::Uniform3i");
1379   gl_->Uniform3i(location, x, y, z);
1380 }
1381 
Uniform3iv(GLint location,GLsizei count,const GLint * v)1382 void GLES2TraceImplementation::Uniform3iv(GLint location,
1383                                           GLsizei count,
1384                                           const GLint* v) {
1385   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::Uniform3iv");
1386   gl_->Uniform3iv(location, count, v);
1387 }
1388 
Uniform3ui(GLint location,GLuint x,GLuint y,GLuint z)1389 void GLES2TraceImplementation::Uniform3ui(GLint location,
1390                                           GLuint x,
1391                                           GLuint y,
1392                                           GLuint z) {
1393   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::Uniform3ui");
1394   gl_->Uniform3ui(location, x, y, z);
1395 }
1396 
Uniform3uiv(GLint location,GLsizei count,const GLuint * v)1397 void GLES2TraceImplementation::Uniform3uiv(GLint location,
1398                                            GLsizei count,
1399                                            const GLuint* v) {
1400   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::Uniform3uiv");
1401   gl_->Uniform3uiv(location, count, v);
1402 }
1403 
Uniform4f(GLint location,GLfloat x,GLfloat y,GLfloat z,GLfloat w)1404 void GLES2TraceImplementation::Uniform4f(GLint location,
1405                                          GLfloat x,
1406                                          GLfloat y,
1407                                          GLfloat z,
1408                                          GLfloat w) {
1409   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::Uniform4f");
1410   gl_->Uniform4f(location, x, y, z, w);
1411 }
1412 
Uniform4fv(GLint location,GLsizei count,const GLfloat * v)1413 void GLES2TraceImplementation::Uniform4fv(GLint location,
1414                                           GLsizei count,
1415                                           const GLfloat* v) {
1416   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::Uniform4fv");
1417   gl_->Uniform4fv(location, count, v);
1418 }
1419 
Uniform4i(GLint location,GLint x,GLint y,GLint z,GLint w)1420 void GLES2TraceImplementation::Uniform4i(GLint location,
1421                                          GLint x,
1422                                          GLint y,
1423                                          GLint z,
1424                                          GLint w) {
1425   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::Uniform4i");
1426   gl_->Uniform4i(location, x, y, z, w);
1427 }
1428 
Uniform4iv(GLint location,GLsizei count,const GLint * v)1429 void GLES2TraceImplementation::Uniform4iv(GLint location,
1430                                           GLsizei count,
1431                                           const GLint* v) {
1432   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::Uniform4iv");
1433   gl_->Uniform4iv(location, count, v);
1434 }
1435 
Uniform4ui(GLint location,GLuint x,GLuint y,GLuint z,GLuint w)1436 void GLES2TraceImplementation::Uniform4ui(GLint location,
1437                                           GLuint x,
1438                                           GLuint y,
1439                                           GLuint z,
1440                                           GLuint w) {
1441   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::Uniform4ui");
1442   gl_->Uniform4ui(location, x, y, z, w);
1443 }
1444 
Uniform4uiv(GLint location,GLsizei count,const GLuint * v)1445 void GLES2TraceImplementation::Uniform4uiv(GLint location,
1446                                            GLsizei count,
1447                                            const GLuint* v) {
1448   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::Uniform4uiv");
1449   gl_->Uniform4uiv(location, count, v);
1450 }
1451 
UniformBlockBinding(GLuint program,GLuint index,GLuint binding)1452 void GLES2TraceImplementation::UniformBlockBinding(GLuint program,
1453                                                    GLuint index,
1454                                                    GLuint binding) {
1455   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::UniformBlockBinding");
1456   gl_->UniformBlockBinding(program, index, binding);
1457 }
1458 
UniformMatrix2fv(GLint location,GLsizei count,GLboolean transpose,const GLfloat * value)1459 void GLES2TraceImplementation::UniformMatrix2fv(GLint location,
1460                                                 GLsizei count,
1461                                                 GLboolean transpose,
1462                                                 const GLfloat* value) {
1463   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::UniformMatrix2fv");
1464   gl_->UniformMatrix2fv(location, count, transpose, value);
1465 }
1466 
UniformMatrix2x3fv(GLint location,GLsizei count,GLboolean transpose,const GLfloat * value)1467 void GLES2TraceImplementation::UniformMatrix2x3fv(GLint location,
1468                                                   GLsizei count,
1469                                                   GLboolean transpose,
1470                                                   const GLfloat* value) {
1471   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::UniformMatrix2x3fv");
1472   gl_->UniformMatrix2x3fv(location, count, transpose, value);
1473 }
1474 
UniformMatrix2x4fv(GLint location,GLsizei count,GLboolean transpose,const GLfloat * value)1475 void GLES2TraceImplementation::UniformMatrix2x4fv(GLint location,
1476                                                   GLsizei count,
1477                                                   GLboolean transpose,
1478                                                   const GLfloat* value) {
1479   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::UniformMatrix2x4fv");
1480   gl_->UniformMatrix2x4fv(location, count, transpose, value);
1481 }
1482 
UniformMatrix3fv(GLint location,GLsizei count,GLboolean transpose,const GLfloat * value)1483 void GLES2TraceImplementation::UniformMatrix3fv(GLint location,
1484                                                 GLsizei count,
1485                                                 GLboolean transpose,
1486                                                 const GLfloat* value) {
1487   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::UniformMatrix3fv");
1488   gl_->UniformMatrix3fv(location, count, transpose, value);
1489 }
1490 
UniformMatrix3x2fv(GLint location,GLsizei count,GLboolean transpose,const GLfloat * value)1491 void GLES2TraceImplementation::UniformMatrix3x2fv(GLint location,
1492                                                   GLsizei count,
1493                                                   GLboolean transpose,
1494                                                   const GLfloat* value) {
1495   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::UniformMatrix3x2fv");
1496   gl_->UniformMatrix3x2fv(location, count, transpose, value);
1497 }
1498 
UniformMatrix3x4fv(GLint location,GLsizei count,GLboolean transpose,const GLfloat * value)1499 void GLES2TraceImplementation::UniformMatrix3x4fv(GLint location,
1500                                                   GLsizei count,
1501                                                   GLboolean transpose,
1502                                                   const GLfloat* value) {
1503   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::UniformMatrix3x4fv");
1504   gl_->UniformMatrix3x4fv(location, count, transpose, value);
1505 }
1506 
UniformMatrix4fv(GLint location,GLsizei count,GLboolean transpose,const GLfloat * value)1507 void GLES2TraceImplementation::UniformMatrix4fv(GLint location,
1508                                                 GLsizei count,
1509                                                 GLboolean transpose,
1510                                                 const GLfloat* value) {
1511   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::UniformMatrix4fv");
1512   gl_->UniformMatrix4fv(location, count, transpose, value);
1513 }
1514 
UniformMatrix4x2fv(GLint location,GLsizei count,GLboolean transpose,const GLfloat * value)1515 void GLES2TraceImplementation::UniformMatrix4x2fv(GLint location,
1516                                                   GLsizei count,
1517                                                   GLboolean transpose,
1518                                                   const GLfloat* value) {
1519   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::UniformMatrix4x2fv");
1520   gl_->UniformMatrix4x2fv(location, count, transpose, value);
1521 }
1522 
UniformMatrix4x3fv(GLint location,GLsizei count,GLboolean transpose,const GLfloat * value)1523 void GLES2TraceImplementation::UniformMatrix4x3fv(GLint location,
1524                                                   GLsizei count,
1525                                                   GLboolean transpose,
1526                                                   const GLfloat* value) {
1527   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::UniformMatrix4x3fv");
1528   gl_->UniformMatrix4x3fv(location, count, transpose, value);
1529 }
1530 
UseProgram(GLuint program)1531 void GLES2TraceImplementation::UseProgram(GLuint program) {
1532   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::UseProgram");
1533   gl_->UseProgram(program);
1534 }
1535 
ValidateProgram(GLuint program)1536 void GLES2TraceImplementation::ValidateProgram(GLuint program) {
1537   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::ValidateProgram");
1538   gl_->ValidateProgram(program);
1539 }
1540 
VertexAttrib1f(GLuint indx,GLfloat x)1541 void GLES2TraceImplementation::VertexAttrib1f(GLuint indx, GLfloat x) {
1542   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::VertexAttrib1f");
1543   gl_->VertexAttrib1f(indx, x);
1544 }
1545 
VertexAttrib1fv(GLuint indx,const GLfloat * values)1546 void GLES2TraceImplementation::VertexAttrib1fv(GLuint indx,
1547                                                const GLfloat* values) {
1548   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::VertexAttrib1fv");
1549   gl_->VertexAttrib1fv(indx, values);
1550 }
1551 
VertexAttrib2f(GLuint indx,GLfloat x,GLfloat y)1552 void GLES2TraceImplementation::VertexAttrib2f(GLuint indx,
1553                                               GLfloat x,
1554                                               GLfloat y) {
1555   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::VertexAttrib2f");
1556   gl_->VertexAttrib2f(indx, x, y);
1557 }
1558 
VertexAttrib2fv(GLuint indx,const GLfloat * values)1559 void GLES2TraceImplementation::VertexAttrib2fv(GLuint indx,
1560                                                const GLfloat* values) {
1561   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::VertexAttrib2fv");
1562   gl_->VertexAttrib2fv(indx, values);
1563 }
1564 
VertexAttrib3f(GLuint indx,GLfloat x,GLfloat y,GLfloat z)1565 void GLES2TraceImplementation::VertexAttrib3f(GLuint indx,
1566                                               GLfloat x,
1567                                               GLfloat y,
1568                                               GLfloat z) {
1569   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::VertexAttrib3f");
1570   gl_->VertexAttrib3f(indx, x, y, z);
1571 }
1572 
VertexAttrib3fv(GLuint indx,const GLfloat * values)1573 void GLES2TraceImplementation::VertexAttrib3fv(GLuint indx,
1574                                                const GLfloat* values) {
1575   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::VertexAttrib3fv");
1576   gl_->VertexAttrib3fv(indx, values);
1577 }
1578 
VertexAttrib4f(GLuint indx,GLfloat x,GLfloat y,GLfloat z,GLfloat w)1579 void GLES2TraceImplementation::VertexAttrib4f(GLuint indx,
1580                                               GLfloat x,
1581                                               GLfloat y,
1582                                               GLfloat z,
1583                                               GLfloat w) {
1584   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::VertexAttrib4f");
1585   gl_->VertexAttrib4f(indx, x, y, z, w);
1586 }
1587 
VertexAttrib4fv(GLuint indx,const GLfloat * values)1588 void GLES2TraceImplementation::VertexAttrib4fv(GLuint indx,
1589                                                const GLfloat* values) {
1590   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::VertexAttrib4fv");
1591   gl_->VertexAttrib4fv(indx, values);
1592 }
1593 
VertexAttribI4i(GLuint indx,GLint x,GLint y,GLint z,GLint w)1594 void GLES2TraceImplementation::VertexAttribI4i(GLuint indx,
1595                                                GLint x,
1596                                                GLint y,
1597                                                GLint z,
1598                                                GLint w) {
1599   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::VertexAttribI4i");
1600   gl_->VertexAttribI4i(indx, x, y, z, w);
1601 }
1602 
VertexAttribI4iv(GLuint indx,const GLint * values)1603 void GLES2TraceImplementation::VertexAttribI4iv(GLuint indx,
1604                                                 const GLint* values) {
1605   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::VertexAttribI4iv");
1606   gl_->VertexAttribI4iv(indx, values);
1607 }
1608 
VertexAttribI4ui(GLuint indx,GLuint x,GLuint y,GLuint z,GLuint w)1609 void GLES2TraceImplementation::VertexAttribI4ui(GLuint indx,
1610                                                 GLuint x,
1611                                                 GLuint y,
1612                                                 GLuint z,
1613                                                 GLuint w) {
1614   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::VertexAttribI4ui");
1615   gl_->VertexAttribI4ui(indx, x, y, z, w);
1616 }
1617 
VertexAttribI4uiv(GLuint indx,const GLuint * values)1618 void GLES2TraceImplementation::VertexAttribI4uiv(GLuint indx,
1619                                                  const GLuint* values) {
1620   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::VertexAttribI4uiv");
1621   gl_->VertexAttribI4uiv(indx, values);
1622 }
1623 
VertexAttribIPointer(GLuint indx,GLint size,GLenum type,GLsizei stride,const void * ptr)1624 void GLES2TraceImplementation::VertexAttribIPointer(GLuint indx,
1625                                                     GLint size,
1626                                                     GLenum type,
1627                                                     GLsizei stride,
1628                                                     const void* ptr) {
1629   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::VertexAttribIPointer");
1630   gl_->VertexAttribIPointer(indx, size, type, stride, ptr);
1631 }
1632 
VertexAttribPointer(GLuint indx,GLint size,GLenum type,GLboolean normalized,GLsizei stride,const void * ptr)1633 void GLES2TraceImplementation::VertexAttribPointer(GLuint indx,
1634                                                    GLint size,
1635                                                    GLenum type,
1636                                                    GLboolean normalized,
1637                                                    GLsizei stride,
1638                                                    const void* ptr) {
1639   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::VertexAttribPointer");
1640   gl_->VertexAttribPointer(indx, size, type, normalized, stride, ptr);
1641 }
1642 
Viewport(GLint x,GLint y,GLsizei width,GLsizei height)1643 void GLES2TraceImplementation::Viewport(GLint x,
1644                                         GLint y,
1645                                         GLsizei width,
1646                                         GLsizei height) {
1647   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::Viewport");
1648   gl_->Viewport(x, y, width, height);
1649 }
1650 
WaitSync(GLsync sync,GLbitfield flags,GLuint64 timeout)1651 void GLES2TraceImplementation::WaitSync(GLsync sync,
1652                                         GLbitfield flags,
1653                                         GLuint64 timeout) {
1654   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::WaitSync");
1655   gl_->WaitSync(sync, flags, timeout);
1656 }
1657 
BlitFramebufferCHROMIUM(GLint srcX0,GLint srcY0,GLint srcX1,GLint srcY1,GLint dstX0,GLint dstY0,GLint dstX1,GLint dstY1,GLbitfield mask,GLenum filter)1658 void GLES2TraceImplementation::BlitFramebufferCHROMIUM(GLint srcX0,
1659                                                        GLint srcY0,
1660                                                        GLint srcX1,
1661                                                        GLint srcY1,
1662                                                        GLint dstX0,
1663                                                        GLint dstY0,
1664                                                        GLint dstX1,
1665                                                        GLint dstY1,
1666                                                        GLbitfield mask,
1667                                                        GLenum filter) {
1668   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::BlitFramebufferCHROMIUM");
1669   gl_->BlitFramebufferCHROMIUM(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1,
1670                                dstY1, mask, filter);
1671 }
1672 
RenderbufferStorageMultisampleCHROMIUM(GLenum target,GLsizei samples,GLenum internalformat,GLsizei width,GLsizei height)1673 void GLES2TraceImplementation::RenderbufferStorageMultisampleCHROMIUM(
1674     GLenum target,
1675     GLsizei samples,
1676     GLenum internalformat,
1677     GLsizei width,
1678     GLsizei height) {
1679   TRACE_EVENT_BINARY_EFFICIENT0(
1680       "gpu", "GLES2Trace::RenderbufferStorageMultisampleCHROMIUM");
1681   gl_->RenderbufferStorageMultisampleCHROMIUM(target, samples, internalformat,
1682                                               width, height);
1683 }
1684 
RenderbufferStorageMultisampleAdvancedAMD(GLenum target,GLsizei samples,GLsizei storageSamples,GLenum internalformat,GLsizei width,GLsizei height)1685 void GLES2TraceImplementation::RenderbufferStorageMultisampleAdvancedAMD(
1686     GLenum target,
1687     GLsizei samples,
1688     GLsizei storageSamples,
1689     GLenum internalformat,
1690     GLsizei width,
1691     GLsizei height) {
1692   TRACE_EVENT_BINARY_EFFICIENT0(
1693       "gpu", "GLES2Trace::RenderbufferStorageMultisampleAdvancedAMD");
1694   gl_->RenderbufferStorageMultisampleAdvancedAMD(
1695       target, samples, storageSamples, internalformat, width, height);
1696 }
1697 
RenderbufferStorageMultisampleEXT(GLenum target,GLsizei samples,GLenum internalformat,GLsizei width,GLsizei height)1698 void GLES2TraceImplementation::RenderbufferStorageMultisampleEXT(
1699     GLenum target,
1700     GLsizei samples,
1701     GLenum internalformat,
1702     GLsizei width,
1703     GLsizei height) {
1704   TRACE_EVENT_BINARY_EFFICIENT0(
1705       "gpu", "GLES2Trace::RenderbufferStorageMultisampleEXT");
1706   gl_->RenderbufferStorageMultisampleEXT(target, samples, internalformat, width,
1707                                          height);
1708 }
1709 
FramebufferTexture2DMultisampleEXT(GLenum target,GLenum attachment,GLenum textarget,GLuint texture,GLint level,GLsizei samples)1710 void GLES2TraceImplementation::FramebufferTexture2DMultisampleEXT(
1711     GLenum target,
1712     GLenum attachment,
1713     GLenum textarget,
1714     GLuint texture,
1715     GLint level,
1716     GLsizei samples) {
1717   TRACE_EVENT_BINARY_EFFICIENT0(
1718       "gpu", "GLES2Trace::FramebufferTexture2DMultisampleEXT");
1719   gl_->FramebufferTexture2DMultisampleEXT(target, attachment, textarget,
1720                                           texture, level, samples);
1721 }
1722 
TexStorage2DEXT(GLenum target,GLsizei levels,GLenum internalFormat,GLsizei width,GLsizei height)1723 void GLES2TraceImplementation::TexStorage2DEXT(GLenum target,
1724                                                GLsizei levels,
1725                                                GLenum internalFormat,
1726                                                GLsizei width,
1727                                                GLsizei height) {
1728   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::TexStorage2DEXT");
1729   gl_->TexStorage2DEXT(target, levels, internalFormat, width, height);
1730 }
1731 
GenQueriesEXT(GLsizei n,GLuint * queries)1732 void GLES2TraceImplementation::GenQueriesEXT(GLsizei n, GLuint* queries) {
1733   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GenQueriesEXT");
1734   gl_->GenQueriesEXT(n, queries);
1735 }
1736 
DeleteQueriesEXT(GLsizei n,const GLuint * queries)1737 void GLES2TraceImplementation::DeleteQueriesEXT(GLsizei n,
1738                                                 const GLuint* queries) {
1739   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::DeleteQueriesEXT");
1740   gl_->DeleteQueriesEXT(n, queries);
1741 }
1742 
QueryCounterEXT(GLuint id,GLenum target)1743 void GLES2TraceImplementation::QueryCounterEXT(GLuint id, GLenum target) {
1744   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::QueryCounterEXT");
1745   gl_->QueryCounterEXT(id, target);
1746 }
1747 
IsQueryEXT(GLuint id)1748 GLboolean GLES2TraceImplementation::IsQueryEXT(GLuint id) {
1749   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::IsQueryEXT");
1750   return gl_->IsQueryEXT(id);
1751 }
1752 
BeginQueryEXT(GLenum target,GLuint id)1753 void GLES2TraceImplementation::BeginQueryEXT(GLenum target, GLuint id) {
1754   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::BeginQueryEXT");
1755   gl_->BeginQueryEXT(target, id);
1756 }
1757 
BeginTransformFeedback(GLenum primitivemode)1758 void GLES2TraceImplementation::BeginTransformFeedback(GLenum primitivemode) {
1759   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::BeginTransformFeedback");
1760   gl_->BeginTransformFeedback(primitivemode);
1761 }
1762 
EndQueryEXT(GLenum target)1763 void GLES2TraceImplementation::EndQueryEXT(GLenum target) {
1764   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::EndQueryEXT");
1765   gl_->EndQueryEXT(target);
1766 }
1767 
EndTransformFeedback()1768 void GLES2TraceImplementation::EndTransformFeedback() {
1769   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::EndTransformFeedback");
1770   gl_->EndTransformFeedback();
1771 }
1772 
GetQueryivEXT(GLenum target,GLenum pname,GLint * params)1773 void GLES2TraceImplementation::GetQueryivEXT(GLenum target,
1774                                              GLenum pname,
1775                                              GLint* params) {
1776   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GetQueryivEXT");
1777   gl_->GetQueryivEXT(target, pname, params);
1778 }
1779 
GetQueryObjectivEXT(GLuint id,GLenum pname,GLint * params)1780 void GLES2TraceImplementation::GetQueryObjectivEXT(GLuint id,
1781                                                    GLenum pname,
1782                                                    GLint* params) {
1783   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GetQueryObjectivEXT");
1784   gl_->GetQueryObjectivEXT(id, pname, params);
1785 }
1786 
GetQueryObjectuivEXT(GLuint id,GLenum pname,GLuint * params)1787 void GLES2TraceImplementation::GetQueryObjectuivEXT(GLuint id,
1788                                                     GLenum pname,
1789                                                     GLuint* params) {
1790   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GetQueryObjectuivEXT");
1791   gl_->GetQueryObjectuivEXT(id, pname, params);
1792 }
1793 
GetQueryObjecti64vEXT(GLuint id,GLenum pname,GLint64 * params)1794 void GLES2TraceImplementation::GetQueryObjecti64vEXT(GLuint id,
1795                                                      GLenum pname,
1796                                                      GLint64* params) {
1797   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GetQueryObjecti64vEXT");
1798   gl_->GetQueryObjecti64vEXT(id, pname, params);
1799 }
1800 
GetQueryObjectui64vEXT(GLuint id,GLenum pname,GLuint64 * params)1801 void GLES2TraceImplementation::GetQueryObjectui64vEXT(GLuint id,
1802                                                       GLenum pname,
1803                                                       GLuint64* params) {
1804   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GetQueryObjectui64vEXT");
1805   gl_->GetQueryObjectui64vEXT(id, pname, params);
1806 }
1807 
SetDisjointValueSyncCHROMIUM()1808 void GLES2TraceImplementation::SetDisjointValueSyncCHROMIUM() {
1809   TRACE_EVENT_BINARY_EFFICIENT0("gpu",
1810                                 "GLES2Trace::SetDisjointValueSyncCHROMIUM");
1811   gl_->SetDisjointValueSyncCHROMIUM();
1812 }
1813 
InsertEventMarkerEXT(GLsizei length,const GLchar * marker)1814 void GLES2TraceImplementation::InsertEventMarkerEXT(GLsizei length,
1815                                                     const GLchar* marker) {
1816   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::InsertEventMarkerEXT");
1817   gl_->InsertEventMarkerEXT(length, marker);
1818 }
1819 
PushGroupMarkerEXT(GLsizei length,const GLchar * marker)1820 void GLES2TraceImplementation::PushGroupMarkerEXT(GLsizei length,
1821                                                   const GLchar* marker) {
1822   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::PushGroupMarkerEXT");
1823   gl_->PushGroupMarkerEXT(length, marker);
1824 }
1825 
PopGroupMarkerEXT()1826 void GLES2TraceImplementation::PopGroupMarkerEXT() {
1827   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::PopGroupMarkerEXT");
1828   gl_->PopGroupMarkerEXT();
1829 }
1830 
GenVertexArraysOES(GLsizei n,GLuint * arrays)1831 void GLES2TraceImplementation::GenVertexArraysOES(GLsizei n, GLuint* arrays) {
1832   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GenVertexArraysOES");
1833   gl_->GenVertexArraysOES(n, arrays);
1834 }
1835 
DeleteVertexArraysOES(GLsizei n,const GLuint * arrays)1836 void GLES2TraceImplementation::DeleteVertexArraysOES(GLsizei n,
1837                                                      const GLuint* arrays) {
1838   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::DeleteVertexArraysOES");
1839   gl_->DeleteVertexArraysOES(n, arrays);
1840 }
1841 
IsVertexArrayOES(GLuint array)1842 GLboolean GLES2TraceImplementation::IsVertexArrayOES(GLuint array) {
1843   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::IsVertexArrayOES");
1844   return gl_->IsVertexArrayOES(array);
1845 }
1846 
BindVertexArrayOES(GLuint array)1847 void GLES2TraceImplementation::BindVertexArrayOES(GLuint array) {
1848   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::BindVertexArrayOES");
1849   gl_->BindVertexArrayOES(array);
1850 }
1851 
FramebufferParameteri(GLenum target,GLenum pname,GLint param)1852 void GLES2TraceImplementation::FramebufferParameteri(GLenum target,
1853                                                      GLenum pname,
1854                                                      GLint param) {
1855   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::FramebufferParameteri");
1856   gl_->FramebufferParameteri(target, pname, param);
1857 }
1858 
BindImageTexture(GLuint unit,GLuint texture,GLint level,GLboolean layered,GLint layer,GLenum access,GLenum format)1859 void GLES2TraceImplementation::BindImageTexture(GLuint unit,
1860                                                 GLuint texture,
1861                                                 GLint level,
1862                                                 GLboolean layered,
1863                                                 GLint layer,
1864                                                 GLenum access,
1865                                                 GLenum format) {
1866   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::BindImageTexture");
1867   gl_->BindImageTexture(unit, texture, level, layered, layer, access, format);
1868 }
1869 
DispatchCompute(GLuint num_groups_x,GLuint num_groups_y,GLuint num_groups_z)1870 void GLES2TraceImplementation::DispatchCompute(GLuint num_groups_x,
1871                                                GLuint num_groups_y,
1872                                                GLuint num_groups_z) {
1873   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::DispatchCompute");
1874   gl_->DispatchCompute(num_groups_x, num_groups_y, num_groups_z);
1875 }
1876 
DispatchComputeIndirect(GLintptr offset)1877 void GLES2TraceImplementation::DispatchComputeIndirect(GLintptr offset) {
1878   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::DispatchComputeIndirect");
1879   gl_->DispatchComputeIndirect(offset);
1880 }
1881 
DrawArraysIndirect(GLenum mode,const void * offset)1882 void GLES2TraceImplementation::DrawArraysIndirect(GLenum mode,
1883                                                   const void* offset) {
1884   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::DrawArraysIndirect");
1885   gl_->DrawArraysIndirect(mode, offset);
1886 }
1887 
DrawElementsIndirect(GLenum mode,GLenum type,const void * offset)1888 void GLES2TraceImplementation::DrawElementsIndirect(GLenum mode,
1889                                                     GLenum type,
1890                                                     const void* offset) {
1891   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::DrawElementsIndirect");
1892   gl_->DrawElementsIndirect(mode, type, offset);
1893 }
1894 
GetProgramInterfaceiv(GLuint program,GLenum program_interface,GLenum pname,GLint * params)1895 void GLES2TraceImplementation::GetProgramInterfaceiv(GLuint program,
1896                                                      GLenum program_interface,
1897                                                      GLenum pname,
1898                                                      GLint* params) {
1899   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GetProgramInterfaceiv");
1900   gl_->GetProgramInterfaceiv(program, program_interface, pname, params);
1901 }
1902 
GetProgramResourceIndex(GLuint program,GLenum program_interface,const char * name)1903 GLuint GLES2TraceImplementation::GetProgramResourceIndex(
1904     GLuint program,
1905     GLenum program_interface,
1906     const char* name) {
1907   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GetProgramResourceIndex");
1908   return gl_->GetProgramResourceIndex(program, program_interface, name);
1909 }
1910 
GetProgramResourceName(GLuint program,GLenum program_interface,GLuint index,GLsizei bufsize,GLsizei * length,char * name)1911 void GLES2TraceImplementation::GetProgramResourceName(GLuint program,
1912                                                       GLenum program_interface,
1913                                                       GLuint index,
1914                                                       GLsizei bufsize,
1915                                                       GLsizei* length,
1916                                                       char* name) {
1917   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GetProgramResourceName");
1918   gl_->GetProgramResourceName(program, program_interface, index, bufsize,
1919                               length, name);
1920 }
1921 
GetProgramResourceiv(GLuint program,GLenum program_interface,GLuint index,GLsizei prop_count,const GLenum * props,GLsizei bufsize,GLsizei * length,GLint * params)1922 void GLES2TraceImplementation::GetProgramResourceiv(GLuint program,
1923                                                     GLenum program_interface,
1924                                                     GLuint index,
1925                                                     GLsizei prop_count,
1926                                                     const GLenum* props,
1927                                                     GLsizei bufsize,
1928                                                     GLsizei* length,
1929                                                     GLint* params) {
1930   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GetProgramResourceiv");
1931   gl_->GetProgramResourceiv(program, program_interface, index, prop_count,
1932                             props, bufsize, length, params);
1933 }
1934 
GetProgramResourceLocation(GLuint program,GLenum program_interface,const char * name)1935 GLint GLES2TraceImplementation::GetProgramResourceLocation(
1936     GLuint program,
1937     GLenum program_interface,
1938     const char* name) {
1939   TRACE_EVENT_BINARY_EFFICIENT0("gpu",
1940                                 "GLES2Trace::GetProgramResourceLocation");
1941   return gl_->GetProgramResourceLocation(program, program_interface, name);
1942 }
1943 
MemoryBarrierEXT(GLbitfield barriers)1944 void GLES2TraceImplementation::MemoryBarrierEXT(GLbitfield barriers) {
1945   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::MemoryBarrierEXT");
1946   gl_->MemoryBarrierEXT(barriers);
1947 }
1948 
MemoryBarrierByRegion(GLbitfield barriers)1949 void GLES2TraceImplementation::MemoryBarrierByRegion(GLbitfield barriers) {
1950   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::MemoryBarrierByRegion");
1951   gl_->MemoryBarrierByRegion(barriers);
1952 }
1953 
SwapBuffers(GLuint64 swap_id,GLbitfield flags)1954 void GLES2TraceImplementation::SwapBuffers(GLuint64 swap_id, GLbitfield flags) {
1955   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::SwapBuffers");
1956   gl_->SwapBuffers(swap_id, flags);
1957 }
1958 
GetMaxValueInBufferCHROMIUM(GLuint buffer_id,GLsizei count,GLenum type,GLuint offset)1959 GLuint GLES2TraceImplementation::GetMaxValueInBufferCHROMIUM(GLuint buffer_id,
1960                                                              GLsizei count,
1961                                                              GLenum type,
1962                                                              GLuint offset) {
1963   TRACE_EVENT_BINARY_EFFICIENT0("gpu",
1964                                 "GLES2Trace::GetMaxValueInBufferCHROMIUM");
1965   return gl_->GetMaxValueInBufferCHROMIUM(buffer_id, count, type, offset);
1966 }
1967 
EnableFeatureCHROMIUM(const char * feature)1968 GLboolean GLES2TraceImplementation::EnableFeatureCHROMIUM(const char* feature) {
1969   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::EnableFeatureCHROMIUM");
1970   return gl_->EnableFeatureCHROMIUM(feature);
1971 }
1972 
MapBufferCHROMIUM(GLuint target,GLenum access)1973 void* GLES2TraceImplementation::MapBufferCHROMIUM(GLuint target,
1974                                                   GLenum access) {
1975   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::MapBufferCHROMIUM");
1976   return gl_->MapBufferCHROMIUM(target, access);
1977 }
1978 
UnmapBufferCHROMIUM(GLuint target)1979 GLboolean GLES2TraceImplementation::UnmapBufferCHROMIUM(GLuint target) {
1980   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::UnmapBufferCHROMIUM");
1981   return gl_->UnmapBufferCHROMIUM(target);
1982 }
1983 
MapBufferSubDataCHROMIUM(GLuint target,GLintptr offset,GLsizeiptr size,GLenum access)1984 void* GLES2TraceImplementation::MapBufferSubDataCHROMIUM(GLuint target,
1985                                                          GLintptr offset,
1986                                                          GLsizeiptr size,
1987                                                          GLenum access) {
1988   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::MapBufferSubDataCHROMIUM");
1989   return gl_->MapBufferSubDataCHROMIUM(target, offset, size, access);
1990 }
1991 
UnmapBufferSubDataCHROMIUM(const void * mem)1992 void GLES2TraceImplementation::UnmapBufferSubDataCHROMIUM(const void* mem) {
1993   TRACE_EVENT_BINARY_EFFICIENT0("gpu",
1994                                 "GLES2Trace::UnmapBufferSubDataCHROMIUM");
1995   gl_->UnmapBufferSubDataCHROMIUM(mem);
1996 }
1997 
MapBufferRange(GLenum target,GLintptr offset,GLsizeiptr size,GLbitfield access)1998 void* GLES2TraceImplementation::MapBufferRange(GLenum target,
1999                                                GLintptr offset,
2000                                                GLsizeiptr size,
2001                                                GLbitfield access) {
2002   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::MapBufferRange");
2003   return gl_->MapBufferRange(target, offset, size, access);
2004 }
2005 
UnmapBuffer(GLenum target)2006 GLboolean GLES2TraceImplementation::UnmapBuffer(GLenum target) {
2007   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::UnmapBuffer");
2008   return gl_->UnmapBuffer(target);
2009 }
2010 
FlushMappedBufferRange(GLenum target,GLintptr offset,GLsizeiptr size)2011 void GLES2TraceImplementation::FlushMappedBufferRange(GLenum target,
2012                                                       GLintptr offset,
2013                                                       GLsizeiptr size) {
2014   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::FlushMappedBufferRange");
2015   gl_->FlushMappedBufferRange(target, offset, size);
2016 }
2017 
MapTexSubImage2DCHROMIUM(GLenum target,GLint level,GLint xoffset,GLint yoffset,GLsizei width,GLsizei height,GLenum format,GLenum type,GLenum access)2018 void* GLES2TraceImplementation::MapTexSubImage2DCHROMIUM(GLenum target,
2019                                                          GLint level,
2020                                                          GLint xoffset,
2021                                                          GLint yoffset,
2022                                                          GLsizei width,
2023                                                          GLsizei height,
2024                                                          GLenum format,
2025                                                          GLenum type,
2026                                                          GLenum access) {
2027   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::MapTexSubImage2DCHROMIUM");
2028   return gl_->MapTexSubImage2DCHROMIUM(target, level, xoffset, yoffset, width,
2029                                        height, format, type, access);
2030 }
2031 
UnmapTexSubImage2DCHROMIUM(const void * mem)2032 void GLES2TraceImplementation::UnmapTexSubImage2DCHROMIUM(const void* mem) {
2033   TRACE_EVENT_BINARY_EFFICIENT0("gpu",
2034                                 "GLES2Trace::UnmapTexSubImage2DCHROMIUM");
2035   gl_->UnmapTexSubImage2DCHROMIUM(mem);
2036 }
2037 
ResizeCHROMIUM(GLuint width,GLuint height,GLfloat scale_factor,GLcolorSpace color_space,GLboolean alpha)2038 void GLES2TraceImplementation::ResizeCHROMIUM(GLuint width,
2039                                               GLuint height,
2040                                               GLfloat scale_factor,
2041                                               GLcolorSpace color_space,
2042                                               GLboolean alpha) {
2043   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::ResizeCHROMIUM");
2044   gl_->ResizeCHROMIUM(width, height, scale_factor, color_space, alpha);
2045 }
2046 
GetRequestableExtensionsCHROMIUM()2047 const GLchar* GLES2TraceImplementation::GetRequestableExtensionsCHROMIUM() {
2048   TRACE_EVENT_BINARY_EFFICIENT0("gpu",
2049                                 "GLES2Trace::GetRequestableExtensionsCHROMIUM");
2050   return gl_->GetRequestableExtensionsCHROMIUM();
2051 }
2052 
RequestExtensionCHROMIUM(const char * extension)2053 void GLES2TraceImplementation::RequestExtensionCHROMIUM(const char* extension) {
2054   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::RequestExtensionCHROMIUM");
2055   gl_->RequestExtensionCHROMIUM(extension);
2056 }
2057 
GetProgramInfoCHROMIUM(GLuint program,GLsizei bufsize,GLsizei * size,void * info)2058 void GLES2TraceImplementation::GetProgramInfoCHROMIUM(GLuint program,
2059                                                       GLsizei bufsize,
2060                                                       GLsizei* size,
2061                                                       void* info) {
2062   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GetProgramInfoCHROMIUM");
2063   gl_->GetProgramInfoCHROMIUM(program, bufsize, size, info);
2064 }
2065 
GetUniformBlocksCHROMIUM(GLuint program,GLsizei bufsize,GLsizei * size,void * info)2066 void GLES2TraceImplementation::GetUniformBlocksCHROMIUM(GLuint program,
2067                                                         GLsizei bufsize,
2068                                                         GLsizei* size,
2069                                                         void* info) {
2070   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GetUniformBlocksCHROMIUM");
2071   gl_->GetUniformBlocksCHROMIUM(program, bufsize, size, info);
2072 }
2073 
GetTransformFeedbackVaryingsCHROMIUM(GLuint program,GLsizei bufsize,GLsizei * size,void * info)2074 void GLES2TraceImplementation::GetTransformFeedbackVaryingsCHROMIUM(
2075     GLuint program,
2076     GLsizei bufsize,
2077     GLsizei* size,
2078     void* info) {
2079   TRACE_EVENT_BINARY_EFFICIENT0(
2080       "gpu", "GLES2Trace::GetTransformFeedbackVaryingsCHROMIUM");
2081   gl_->GetTransformFeedbackVaryingsCHROMIUM(program, bufsize, size, info);
2082 }
2083 
GetUniformsES3CHROMIUM(GLuint program,GLsizei bufsize,GLsizei * size,void * info)2084 void GLES2TraceImplementation::GetUniformsES3CHROMIUM(GLuint program,
2085                                                       GLsizei bufsize,
2086                                                       GLsizei* size,
2087                                                       void* info) {
2088   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GetUniformsES3CHROMIUM");
2089   gl_->GetUniformsES3CHROMIUM(program, bufsize, size, info);
2090 }
2091 
CreateImageCHROMIUM(ClientBuffer buffer,GLsizei width,GLsizei height,GLenum internalformat)2092 GLuint GLES2TraceImplementation::CreateImageCHROMIUM(ClientBuffer buffer,
2093                                                      GLsizei width,
2094                                                      GLsizei height,
2095                                                      GLenum internalformat) {
2096   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::CreateImageCHROMIUM");
2097   return gl_->CreateImageCHROMIUM(buffer, width, height, internalformat);
2098 }
2099 
DestroyImageCHROMIUM(GLuint image_id)2100 void GLES2TraceImplementation::DestroyImageCHROMIUM(GLuint image_id) {
2101   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::DestroyImageCHROMIUM");
2102   gl_->DestroyImageCHROMIUM(image_id);
2103 }
2104 
DescheduleUntilFinishedCHROMIUM()2105 void GLES2TraceImplementation::DescheduleUntilFinishedCHROMIUM() {
2106   TRACE_EVENT_BINARY_EFFICIENT0("gpu",
2107                                 "GLES2Trace::DescheduleUntilFinishedCHROMIUM");
2108   gl_->DescheduleUntilFinishedCHROMIUM();
2109 }
2110 
GetTranslatedShaderSourceANGLE(GLuint shader,GLsizei bufsize,GLsizei * length,char * source)2111 void GLES2TraceImplementation::GetTranslatedShaderSourceANGLE(GLuint shader,
2112                                                               GLsizei bufsize,
2113                                                               GLsizei* length,
2114                                                               char* source) {
2115   TRACE_EVENT_BINARY_EFFICIENT0("gpu",
2116                                 "GLES2Trace::GetTranslatedShaderSourceANGLE");
2117   gl_->GetTranslatedShaderSourceANGLE(shader, bufsize, length, source);
2118 }
2119 
PostSubBufferCHROMIUM(GLuint64 swap_id,GLint x,GLint y,GLint width,GLint height,GLbitfield flags)2120 void GLES2TraceImplementation::PostSubBufferCHROMIUM(GLuint64 swap_id,
2121                                                      GLint x,
2122                                                      GLint y,
2123                                                      GLint width,
2124                                                      GLint height,
2125                                                      GLbitfield flags) {
2126   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::PostSubBufferCHROMIUM");
2127   gl_->PostSubBufferCHROMIUM(swap_id, x, y, width, height, flags);
2128 }
2129 
CopyTextureCHROMIUM(GLuint source_id,GLint source_level,GLenum dest_target,GLuint dest_id,GLint dest_level,GLint internalformat,GLenum dest_type,GLboolean unpack_flip_y,GLboolean unpack_premultiply_alpha,GLboolean unpack_unmultiply_alpha)2130 void GLES2TraceImplementation::CopyTextureCHROMIUM(
2131     GLuint source_id,
2132     GLint source_level,
2133     GLenum dest_target,
2134     GLuint dest_id,
2135     GLint dest_level,
2136     GLint internalformat,
2137     GLenum dest_type,
2138     GLboolean unpack_flip_y,
2139     GLboolean unpack_premultiply_alpha,
2140     GLboolean unpack_unmultiply_alpha) {
2141   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::CopyTextureCHROMIUM");
2142   gl_->CopyTextureCHROMIUM(source_id, source_level, dest_target, dest_id,
2143                            dest_level, internalformat, dest_type, unpack_flip_y,
2144                            unpack_premultiply_alpha, unpack_unmultiply_alpha);
2145 }
2146 
CopySubTextureCHROMIUM(GLuint source_id,GLint source_level,GLenum dest_target,GLuint dest_id,GLint dest_level,GLint xoffset,GLint yoffset,GLint x,GLint y,GLsizei width,GLsizei height,GLboolean unpack_flip_y,GLboolean unpack_premultiply_alpha,GLboolean unpack_unmultiply_alpha)2147 void GLES2TraceImplementation::CopySubTextureCHROMIUM(
2148     GLuint source_id,
2149     GLint source_level,
2150     GLenum dest_target,
2151     GLuint dest_id,
2152     GLint dest_level,
2153     GLint xoffset,
2154     GLint yoffset,
2155     GLint x,
2156     GLint y,
2157     GLsizei width,
2158     GLsizei height,
2159     GLboolean unpack_flip_y,
2160     GLboolean unpack_premultiply_alpha,
2161     GLboolean unpack_unmultiply_alpha) {
2162   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::CopySubTextureCHROMIUM");
2163   gl_->CopySubTextureCHROMIUM(source_id, source_level, dest_target, dest_id,
2164                               dest_level, xoffset, yoffset, x, y, width, height,
2165                               unpack_flip_y, unpack_premultiply_alpha,
2166                               unpack_unmultiply_alpha);
2167 }
2168 
DrawArraysInstancedANGLE(GLenum mode,GLint first,GLsizei count,GLsizei primcount)2169 void GLES2TraceImplementation::DrawArraysInstancedANGLE(GLenum mode,
2170                                                         GLint first,
2171                                                         GLsizei count,
2172                                                         GLsizei primcount) {
2173   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::DrawArraysInstancedANGLE");
2174   gl_->DrawArraysInstancedANGLE(mode, first, count, primcount);
2175 }
2176 
DrawArraysInstancedBaseInstanceANGLE(GLenum mode,GLint first,GLsizei count,GLsizei primcount,GLuint baseinstance)2177 void GLES2TraceImplementation::DrawArraysInstancedBaseInstanceANGLE(
2178     GLenum mode,
2179     GLint first,
2180     GLsizei count,
2181     GLsizei primcount,
2182     GLuint baseinstance) {
2183   TRACE_EVENT_BINARY_EFFICIENT0(
2184       "gpu", "GLES2Trace::DrawArraysInstancedBaseInstanceANGLE");
2185   gl_->DrawArraysInstancedBaseInstanceANGLE(mode, first, count, primcount,
2186                                             baseinstance);
2187 }
2188 
DrawElementsInstancedANGLE(GLenum mode,GLsizei count,GLenum type,const void * indices,GLsizei primcount)2189 void GLES2TraceImplementation::DrawElementsInstancedANGLE(GLenum mode,
2190                                                           GLsizei count,
2191                                                           GLenum type,
2192                                                           const void* indices,
2193                                                           GLsizei primcount) {
2194   TRACE_EVENT_BINARY_EFFICIENT0("gpu",
2195                                 "GLES2Trace::DrawElementsInstancedANGLE");
2196   gl_->DrawElementsInstancedANGLE(mode, count, type, indices, primcount);
2197 }
2198 
DrawElementsInstancedBaseVertexBaseInstanceANGLE(GLenum mode,GLsizei count,GLenum type,const void * indices,GLsizei primcount,GLint basevertex,GLuint baseinstance)2199 void GLES2TraceImplementation::DrawElementsInstancedBaseVertexBaseInstanceANGLE(
2200     GLenum mode,
2201     GLsizei count,
2202     GLenum type,
2203     const void* indices,
2204     GLsizei primcount,
2205     GLint basevertex,
2206     GLuint baseinstance) {
2207   TRACE_EVENT_BINARY_EFFICIENT0(
2208       "gpu", "GLES2Trace::DrawElementsInstancedBaseVertexBaseInstanceANGLE");
2209   gl_->DrawElementsInstancedBaseVertexBaseInstanceANGLE(
2210       mode, count, type, indices, primcount, basevertex, baseinstance);
2211 }
2212 
VertexAttribDivisorANGLE(GLuint index,GLuint divisor)2213 void GLES2TraceImplementation::VertexAttribDivisorANGLE(GLuint index,
2214                                                         GLuint divisor) {
2215   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::VertexAttribDivisorANGLE");
2216   gl_->VertexAttribDivisorANGLE(index, divisor);
2217 }
2218 
ProduceTextureDirectCHROMIUM(GLuint texture,GLbyte * mailbox)2219 void GLES2TraceImplementation::ProduceTextureDirectCHROMIUM(GLuint texture,
2220                                                             GLbyte* mailbox) {
2221   TRACE_EVENT_BINARY_EFFICIENT0("gpu",
2222                                 "GLES2Trace::ProduceTextureDirectCHROMIUM");
2223   gl_->ProduceTextureDirectCHROMIUM(texture, mailbox);
2224 }
2225 
CreateAndConsumeTextureCHROMIUM(const GLbyte * mailbox)2226 GLuint GLES2TraceImplementation::CreateAndConsumeTextureCHROMIUM(
2227     const GLbyte* mailbox) {
2228   TRACE_EVENT_BINARY_EFFICIENT0("gpu",
2229                                 "GLES2Trace::CreateAndConsumeTextureCHROMIUM");
2230   return gl_->CreateAndConsumeTextureCHROMIUM(mailbox);
2231 }
2232 
BindUniformLocationCHROMIUM(GLuint program,GLint location,const char * name)2233 void GLES2TraceImplementation::BindUniformLocationCHROMIUM(GLuint program,
2234                                                            GLint location,
2235                                                            const char* name) {
2236   TRACE_EVENT_BINARY_EFFICIENT0("gpu",
2237                                 "GLES2Trace::BindUniformLocationCHROMIUM");
2238   gl_->BindUniformLocationCHROMIUM(program, location, name);
2239 }
2240 
BindTexImage2DCHROMIUM(GLenum target,GLint imageId)2241 void GLES2TraceImplementation::BindTexImage2DCHROMIUM(GLenum target,
2242                                                       GLint imageId) {
2243   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::BindTexImage2DCHROMIUM");
2244   gl_->BindTexImage2DCHROMIUM(target, imageId);
2245 }
2246 
BindTexImage2DWithInternalformatCHROMIUM(GLenum target,GLenum internalformat,GLint imageId)2247 void GLES2TraceImplementation::BindTexImage2DWithInternalformatCHROMIUM(
2248     GLenum target,
2249     GLenum internalformat,
2250     GLint imageId) {
2251   TRACE_EVENT_BINARY_EFFICIENT0(
2252       "gpu", "GLES2Trace::BindTexImage2DWithInternalformatCHROMIUM");
2253   gl_->BindTexImage2DWithInternalformatCHROMIUM(target, internalformat,
2254                                                 imageId);
2255 }
2256 
ReleaseTexImage2DCHROMIUM(GLenum target,GLint imageId)2257 void GLES2TraceImplementation::ReleaseTexImage2DCHROMIUM(GLenum target,
2258                                                          GLint imageId) {
2259   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::ReleaseTexImage2DCHROMIUM");
2260   gl_->ReleaseTexImage2DCHROMIUM(target, imageId);
2261 }
2262 
TraceBeginCHROMIUM(const char * category_name,const char * trace_name)2263 void GLES2TraceImplementation::TraceBeginCHROMIUM(const char* category_name,
2264                                                   const char* trace_name) {
2265   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::TraceBeginCHROMIUM");
2266   gl_->TraceBeginCHROMIUM(category_name, trace_name);
2267 }
2268 
TraceEndCHROMIUM()2269 void GLES2TraceImplementation::TraceEndCHROMIUM() {
2270   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::TraceEndCHROMIUM");
2271   gl_->TraceEndCHROMIUM();
2272 }
2273 
DiscardFramebufferEXT(GLenum target,GLsizei count,const GLenum * attachments)2274 void GLES2TraceImplementation::DiscardFramebufferEXT(
2275     GLenum target,
2276     GLsizei count,
2277     const GLenum* attachments) {
2278   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::DiscardFramebufferEXT");
2279   gl_->DiscardFramebufferEXT(target, count, attachments);
2280 }
2281 
LoseContextCHROMIUM(GLenum current,GLenum other)2282 void GLES2TraceImplementation::LoseContextCHROMIUM(GLenum current,
2283                                                    GLenum other) {
2284   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::LoseContextCHROMIUM");
2285   gl_->LoseContextCHROMIUM(current, other);
2286 }
2287 
UnpremultiplyAndDitherCopyCHROMIUM(GLuint source_id,GLuint dest_id,GLint x,GLint y,GLsizei width,GLsizei height)2288 void GLES2TraceImplementation::UnpremultiplyAndDitherCopyCHROMIUM(
2289     GLuint source_id,
2290     GLuint dest_id,
2291     GLint x,
2292     GLint y,
2293     GLsizei width,
2294     GLsizei height) {
2295   TRACE_EVENT_BINARY_EFFICIENT0(
2296       "gpu", "GLES2Trace::UnpremultiplyAndDitherCopyCHROMIUM");
2297   gl_->UnpremultiplyAndDitherCopyCHROMIUM(source_id, dest_id, x, y, width,
2298                                           height);
2299 }
2300 
DrawBuffersEXT(GLsizei count,const GLenum * bufs)2301 void GLES2TraceImplementation::DrawBuffersEXT(GLsizei count,
2302                                               const GLenum* bufs) {
2303   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::DrawBuffersEXT");
2304   gl_->DrawBuffersEXT(count, bufs);
2305 }
2306 
DiscardBackbufferCHROMIUM()2307 void GLES2TraceImplementation::DiscardBackbufferCHROMIUM() {
2308   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::DiscardBackbufferCHROMIUM");
2309   gl_->DiscardBackbufferCHROMIUM();
2310 }
2311 
ScheduleOverlayPlaneCHROMIUM(GLint plane_z_order,GLenum plane_transform,GLuint overlay_texture_id,GLint bounds_x,GLint bounds_y,GLint bounds_width,GLint bounds_height,GLfloat uv_x,GLfloat uv_y,GLfloat uv_width,GLfloat uv_height,GLboolean enable_blend,GLuint gpu_fence_id)2312 void GLES2TraceImplementation::ScheduleOverlayPlaneCHROMIUM(
2313     GLint plane_z_order,
2314     GLenum plane_transform,
2315     GLuint overlay_texture_id,
2316     GLint bounds_x,
2317     GLint bounds_y,
2318     GLint bounds_width,
2319     GLint bounds_height,
2320     GLfloat uv_x,
2321     GLfloat uv_y,
2322     GLfloat uv_width,
2323     GLfloat uv_height,
2324     GLboolean enable_blend,
2325     GLuint gpu_fence_id) {
2326   TRACE_EVENT_BINARY_EFFICIENT0("gpu",
2327                                 "GLES2Trace::ScheduleOverlayPlaneCHROMIUM");
2328   gl_->ScheduleOverlayPlaneCHROMIUM(
2329       plane_z_order, plane_transform, overlay_texture_id, bounds_x, bounds_y,
2330       bounds_width, bounds_height, uv_x, uv_y, uv_width, uv_height,
2331       enable_blend, gpu_fence_id);
2332 }
2333 
ScheduleCALayerSharedStateCHROMIUM(GLfloat opacity,GLboolean is_clipped,const GLfloat * clip_rect,const GLfloat * rounded_corner_bounds,GLint sorting_context_id,const GLfloat * transform)2334 void GLES2TraceImplementation::ScheduleCALayerSharedStateCHROMIUM(
2335     GLfloat opacity,
2336     GLboolean is_clipped,
2337     const GLfloat* clip_rect,
2338     const GLfloat* rounded_corner_bounds,
2339     GLint sorting_context_id,
2340     const GLfloat* transform) {
2341   TRACE_EVENT_BINARY_EFFICIENT0(
2342       "gpu", "GLES2Trace::ScheduleCALayerSharedStateCHROMIUM");
2343   gl_->ScheduleCALayerSharedStateCHROMIUM(opacity, is_clipped, clip_rect,
2344                                           rounded_corner_bounds,
2345                                           sorting_context_id, transform);
2346 }
2347 
ScheduleCALayerCHROMIUM(GLuint contents_texture_id,const GLfloat * contents_rect,GLuint background_color,GLuint edge_aa_mask,const GLfloat * bounds_rect,GLuint filter)2348 void GLES2TraceImplementation::ScheduleCALayerCHROMIUM(
2349     GLuint contents_texture_id,
2350     const GLfloat* contents_rect,
2351     GLuint background_color,
2352     GLuint edge_aa_mask,
2353     const GLfloat* bounds_rect,
2354     GLuint filter) {
2355   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::ScheduleCALayerCHROMIUM");
2356   gl_->ScheduleCALayerCHROMIUM(contents_texture_id, contents_rect,
2357                                background_color, edge_aa_mask, bounds_rect,
2358                                filter);
2359 }
2360 
ScheduleCALayerInUseQueryCHROMIUM(GLsizei count,const GLuint * textures)2361 void GLES2TraceImplementation::ScheduleCALayerInUseQueryCHROMIUM(
2362     GLsizei count,
2363     const GLuint* textures) {
2364   TRACE_EVENT_BINARY_EFFICIENT0(
2365       "gpu", "GLES2Trace::ScheduleCALayerInUseQueryCHROMIUM");
2366   gl_->ScheduleCALayerInUseQueryCHROMIUM(count, textures);
2367 }
2368 
CommitOverlayPlanesCHROMIUM(GLuint64 swap_id,GLbitfield flags)2369 void GLES2TraceImplementation::CommitOverlayPlanesCHROMIUM(GLuint64 swap_id,
2370                                                            GLbitfield flags) {
2371   TRACE_EVENT_BINARY_EFFICIENT0("gpu",
2372                                 "GLES2Trace::CommitOverlayPlanesCHROMIUM");
2373   gl_->CommitOverlayPlanesCHROMIUM(swap_id, flags);
2374 }
2375 
FlushDriverCachesCHROMIUM()2376 void GLES2TraceImplementation::FlushDriverCachesCHROMIUM() {
2377   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::FlushDriverCachesCHROMIUM");
2378   gl_->FlushDriverCachesCHROMIUM();
2379 }
2380 
GetLastFlushIdCHROMIUM()2381 GLuint GLES2TraceImplementation::GetLastFlushIdCHROMIUM() {
2382   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GetLastFlushIdCHROMIUM");
2383   return gl_->GetLastFlushIdCHROMIUM();
2384 }
2385 
ScheduleDCLayerCHROMIUM(GLuint texture_0,GLuint texture_1,GLint z_order,GLint content_x,GLint content_y,GLint content_width,GLint content_height,GLint quad_x,GLint quad_y,GLint quad_width,GLint quad_height,GLfloat transform_c1r1,GLfloat transform_c2r1,GLfloat transform_c1r2,GLfloat transform_c2r2,GLfloat transform_tx,GLfloat transform_ty,GLboolean is_clipped,GLint clip_x,GLint clip_y,GLint clip_width,GLint clip_height,GLuint protected_video_type)2386 void GLES2TraceImplementation::ScheduleDCLayerCHROMIUM(
2387     GLuint texture_0,
2388     GLuint texture_1,
2389     GLint z_order,
2390     GLint content_x,
2391     GLint content_y,
2392     GLint content_width,
2393     GLint content_height,
2394     GLint quad_x,
2395     GLint quad_y,
2396     GLint quad_width,
2397     GLint quad_height,
2398     GLfloat transform_c1r1,
2399     GLfloat transform_c2r1,
2400     GLfloat transform_c1r2,
2401     GLfloat transform_c2r2,
2402     GLfloat transform_tx,
2403     GLfloat transform_ty,
2404     GLboolean is_clipped,
2405     GLint clip_x,
2406     GLint clip_y,
2407     GLint clip_width,
2408     GLint clip_height,
2409     GLuint protected_video_type) {
2410   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::ScheduleDCLayerCHROMIUM");
2411   gl_->ScheduleDCLayerCHROMIUM(
2412       texture_0, texture_1, z_order, content_x, content_y, content_width,
2413       content_height, quad_x, quad_y, quad_width, quad_height, transform_c1r1,
2414       transform_c2r1, transform_c1r2, transform_c2r2, transform_tx,
2415       transform_ty, is_clipped, clip_x, clip_y, clip_width, clip_height,
2416       protected_video_type);
2417 }
2418 
SetActiveURLCHROMIUM(const char * url)2419 void GLES2TraceImplementation::SetActiveURLCHROMIUM(const char* url) {
2420   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::SetActiveURLCHROMIUM");
2421   gl_->SetActiveURLCHROMIUM(url);
2422 }
2423 
ContextVisibilityHintCHROMIUM(GLboolean visibility)2424 void GLES2TraceImplementation::ContextVisibilityHintCHROMIUM(
2425     GLboolean visibility) {
2426   TRACE_EVENT_BINARY_EFFICIENT0("gpu",
2427                                 "GLES2Trace::ContextVisibilityHintCHROMIUM");
2428   gl_->ContextVisibilityHintCHROMIUM(visibility);
2429 }
2430 
CoverageModulationCHROMIUM(GLenum components)2431 void GLES2TraceImplementation::CoverageModulationCHROMIUM(GLenum components) {
2432   TRACE_EVENT_BINARY_EFFICIENT0("gpu",
2433                                 "GLES2Trace::CoverageModulationCHROMIUM");
2434   gl_->CoverageModulationCHROMIUM(components);
2435 }
2436 
GetGraphicsResetStatusKHR()2437 GLenum GLES2TraceImplementation::GetGraphicsResetStatusKHR() {
2438   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GetGraphicsResetStatusKHR");
2439   return gl_->GetGraphicsResetStatusKHR();
2440 }
2441 
BlendBarrierKHR()2442 void GLES2TraceImplementation::BlendBarrierKHR() {
2443   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::BlendBarrierKHR");
2444   gl_->BlendBarrierKHR();
2445 }
2446 
BindFragDataLocationIndexedEXT(GLuint program,GLuint colorNumber,GLuint index,const char * name)2447 void GLES2TraceImplementation::BindFragDataLocationIndexedEXT(
2448     GLuint program,
2449     GLuint colorNumber,
2450     GLuint index,
2451     const char* name) {
2452   TRACE_EVENT_BINARY_EFFICIENT0("gpu",
2453                                 "GLES2Trace::BindFragDataLocationIndexedEXT");
2454   gl_->BindFragDataLocationIndexedEXT(program, colorNumber, index, name);
2455 }
2456 
BindFragDataLocationEXT(GLuint program,GLuint colorNumber,const char * name)2457 void GLES2TraceImplementation::BindFragDataLocationEXT(GLuint program,
2458                                                        GLuint colorNumber,
2459                                                        const char* name) {
2460   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::BindFragDataLocationEXT");
2461   gl_->BindFragDataLocationEXT(program, colorNumber, name);
2462 }
2463 
GetFragDataIndexEXT(GLuint program,const char * name)2464 GLint GLES2TraceImplementation::GetFragDataIndexEXT(GLuint program,
2465                                                     const char* name) {
2466   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GetFragDataIndexEXT");
2467   return gl_->GetFragDataIndexEXT(program, name);
2468 }
2469 
UniformMatrix4fvStreamTextureMatrixCHROMIUM(GLint location,GLboolean transpose,const GLfloat * transform)2470 void GLES2TraceImplementation::UniformMatrix4fvStreamTextureMatrixCHROMIUM(
2471     GLint location,
2472     GLboolean transpose,
2473     const GLfloat* transform) {
2474   TRACE_EVENT_BINARY_EFFICIENT0(
2475       "gpu", "GLES2Trace::UniformMatrix4fvStreamTextureMatrixCHROMIUM");
2476   gl_->UniformMatrix4fvStreamTextureMatrixCHROMIUM(location, transpose,
2477                                                    transform);
2478 }
2479 
OverlayPromotionHintCHROMIUM(GLuint texture,GLboolean promotion_hint,GLint display_x,GLint display_y,GLint display_width,GLint display_height)2480 void GLES2TraceImplementation::OverlayPromotionHintCHROMIUM(
2481     GLuint texture,
2482     GLboolean promotion_hint,
2483     GLint display_x,
2484     GLint display_y,
2485     GLint display_width,
2486     GLint display_height) {
2487   TRACE_EVENT_BINARY_EFFICIENT0("gpu",
2488                                 "GLES2Trace::OverlayPromotionHintCHROMIUM");
2489   gl_->OverlayPromotionHintCHROMIUM(texture, promotion_hint, display_x,
2490                                     display_y, display_width, display_height);
2491 }
2492 
SwapBuffersWithBoundsCHROMIUM(GLuint64 swap_id,GLsizei count,const GLint * rects,GLbitfield flags)2493 void GLES2TraceImplementation::SwapBuffersWithBoundsCHROMIUM(GLuint64 swap_id,
2494                                                              GLsizei count,
2495                                                              const GLint* rects,
2496                                                              GLbitfield flags) {
2497   TRACE_EVENT_BINARY_EFFICIENT0("gpu",
2498                                 "GLES2Trace::SwapBuffersWithBoundsCHROMIUM");
2499   gl_->SwapBuffersWithBoundsCHROMIUM(swap_id, count, rects, flags);
2500 }
2501 
SetDrawRectangleCHROMIUM(GLint x,GLint y,GLint width,GLint height)2502 void GLES2TraceImplementation::SetDrawRectangleCHROMIUM(GLint x,
2503                                                         GLint y,
2504                                                         GLint width,
2505                                                         GLint height) {
2506   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::SetDrawRectangleCHROMIUM");
2507   gl_->SetDrawRectangleCHROMIUM(x, y, width, height);
2508 }
2509 
SetEnableDCLayersCHROMIUM(GLboolean enabled)2510 void GLES2TraceImplementation::SetEnableDCLayersCHROMIUM(GLboolean enabled) {
2511   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::SetEnableDCLayersCHROMIUM");
2512   gl_->SetEnableDCLayersCHROMIUM(enabled);
2513 }
2514 
InitializeDiscardableTextureCHROMIUM(GLuint texture_id)2515 void GLES2TraceImplementation::InitializeDiscardableTextureCHROMIUM(
2516     GLuint texture_id) {
2517   TRACE_EVENT_BINARY_EFFICIENT0(
2518       "gpu", "GLES2Trace::InitializeDiscardableTextureCHROMIUM");
2519   gl_->InitializeDiscardableTextureCHROMIUM(texture_id);
2520 }
2521 
UnlockDiscardableTextureCHROMIUM(GLuint texture_id)2522 void GLES2TraceImplementation::UnlockDiscardableTextureCHROMIUM(
2523     GLuint texture_id) {
2524   TRACE_EVENT_BINARY_EFFICIENT0("gpu",
2525                                 "GLES2Trace::UnlockDiscardableTextureCHROMIUM");
2526   gl_->UnlockDiscardableTextureCHROMIUM(texture_id);
2527 }
2528 
LockDiscardableTextureCHROMIUM(GLuint texture_id)2529 bool GLES2TraceImplementation::LockDiscardableTextureCHROMIUM(
2530     GLuint texture_id) {
2531   TRACE_EVENT_BINARY_EFFICIENT0("gpu",
2532                                 "GLES2Trace::LockDiscardableTextureCHROMIUM");
2533   return gl_->LockDiscardableTextureCHROMIUM(texture_id);
2534 }
2535 
TexStorage2DImageCHROMIUM(GLenum target,GLenum internalFormat,GLenum bufferUsage,GLsizei width,GLsizei height)2536 void GLES2TraceImplementation::TexStorage2DImageCHROMIUM(GLenum target,
2537                                                          GLenum internalFormat,
2538                                                          GLenum bufferUsage,
2539                                                          GLsizei width,
2540                                                          GLsizei height) {
2541   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::TexStorage2DImageCHROMIUM");
2542   gl_->TexStorage2DImageCHROMIUM(target, internalFormat, bufferUsage, width,
2543                                  height);
2544 }
2545 
SetColorSpaceMetadataCHROMIUM(GLuint texture_id,GLcolorSpace color_space)2546 void GLES2TraceImplementation::SetColorSpaceMetadataCHROMIUM(
2547     GLuint texture_id,
2548     GLcolorSpace color_space) {
2549   TRACE_EVENT_BINARY_EFFICIENT0("gpu",
2550                                 "GLES2Trace::SetColorSpaceMetadataCHROMIUM");
2551   gl_->SetColorSpaceMetadataCHROMIUM(texture_id, color_space);
2552 }
2553 
WindowRectanglesEXT(GLenum mode,GLsizei count,const GLint * box)2554 void GLES2TraceImplementation::WindowRectanglesEXT(GLenum mode,
2555                                                    GLsizei count,
2556                                                    const GLint* box) {
2557   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::WindowRectanglesEXT");
2558   gl_->WindowRectanglesEXT(mode, count, box);
2559 }
2560 
CreateGpuFenceCHROMIUM()2561 GLuint GLES2TraceImplementation::CreateGpuFenceCHROMIUM() {
2562   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::CreateGpuFenceCHROMIUM");
2563   return gl_->CreateGpuFenceCHROMIUM();
2564 }
2565 
CreateClientGpuFenceCHROMIUM(ClientGpuFence source)2566 GLuint GLES2TraceImplementation::CreateClientGpuFenceCHROMIUM(
2567     ClientGpuFence source) {
2568   TRACE_EVENT_BINARY_EFFICIENT0("gpu",
2569                                 "GLES2Trace::CreateClientGpuFenceCHROMIUM");
2570   return gl_->CreateClientGpuFenceCHROMIUM(source);
2571 }
2572 
WaitGpuFenceCHROMIUM(GLuint gpu_fence_id)2573 void GLES2TraceImplementation::WaitGpuFenceCHROMIUM(GLuint gpu_fence_id) {
2574   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::WaitGpuFenceCHROMIUM");
2575   gl_->WaitGpuFenceCHROMIUM(gpu_fence_id);
2576 }
2577 
DestroyGpuFenceCHROMIUM(GLuint gpu_fence_id)2578 void GLES2TraceImplementation::DestroyGpuFenceCHROMIUM(GLuint gpu_fence_id) {
2579   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::DestroyGpuFenceCHROMIUM");
2580   gl_->DestroyGpuFenceCHROMIUM(gpu_fence_id);
2581 }
2582 
InvalidateReadbackBufferShadowDataCHROMIUM(GLuint buffer_id)2583 void GLES2TraceImplementation::InvalidateReadbackBufferShadowDataCHROMIUM(
2584     GLuint buffer_id) {
2585   TRACE_EVENT_BINARY_EFFICIENT0(
2586       "gpu", "GLES2Trace::InvalidateReadbackBufferShadowDataCHROMIUM");
2587   gl_->InvalidateReadbackBufferShadowDataCHROMIUM(buffer_id);
2588 }
2589 
FramebufferTextureMultiviewOVR(GLenum target,GLenum attachment,GLuint texture,GLint level,GLint baseViewIndex,GLsizei numViews)2590 void GLES2TraceImplementation::FramebufferTextureMultiviewOVR(
2591     GLenum target,
2592     GLenum attachment,
2593     GLuint texture,
2594     GLint level,
2595     GLint baseViewIndex,
2596     GLsizei numViews) {
2597   TRACE_EVENT_BINARY_EFFICIENT0("gpu",
2598                                 "GLES2Trace::FramebufferTextureMultiviewOVR");
2599   gl_->FramebufferTextureMultiviewOVR(target, attachment, texture, level,
2600                                       baseViewIndex, numViews);
2601 }
2602 
MaxShaderCompilerThreadsKHR(GLuint count)2603 void GLES2TraceImplementation::MaxShaderCompilerThreadsKHR(GLuint count) {
2604   TRACE_EVENT_BINARY_EFFICIENT0("gpu",
2605                                 "GLES2Trace::MaxShaderCompilerThreadsKHR");
2606   gl_->MaxShaderCompilerThreadsKHR(count);
2607 }
2608 
CreateAndTexStorage2DSharedImageCHROMIUM(const GLbyte * mailbox)2609 GLuint GLES2TraceImplementation::CreateAndTexStorage2DSharedImageCHROMIUM(
2610     const GLbyte* mailbox) {
2611   TRACE_EVENT_BINARY_EFFICIENT0(
2612       "gpu", "GLES2Trace::CreateAndTexStorage2DSharedImageCHROMIUM");
2613   return gl_->CreateAndTexStorage2DSharedImageCHROMIUM(mailbox);
2614 }
2615 
2616 GLuint GLES2TraceImplementation::
CreateAndTexStorage2DSharedImageWithInternalFormatCHROMIUM(const GLbyte * mailbox,GLenum internalformat)2617     CreateAndTexStorage2DSharedImageWithInternalFormatCHROMIUM(
2618         const GLbyte* mailbox,
2619         GLenum internalformat) {
2620   TRACE_EVENT_BINARY_EFFICIENT0(
2621       "gpu",
2622       "GLES2Trace::CreateAndTexStorage2DSharedImageWithInternalFormatCHROMIUM");
2623   return gl_->CreateAndTexStorage2DSharedImageWithInternalFormatCHROMIUM(
2624       mailbox, internalformat);
2625 }
2626 
BeginSharedImageAccessDirectCHROMIUM(GLuint texture,GLenum mode)2627 void GLES2TraceImplementation::BeginSharedImageAccessDirectCHROMIUM(
2628     GLuint texture,
2629     GLenum mode) {
2630   TRACE_EVENT_BINARY_EFFICIENT0(
2631       "gpu", "GLES2Trace::BeginSharedImageAccessDirectCHROMIUM");
2632   gl_->BeginSharedImageAccessDirectCHROMIUM(texture, mode);
2633 }
2634 
EndSharedImageAccessDirectCHROMIUM(GLuint texture)2635 void GLES2TraceImplementation::EndSharedImageAccessDirectCHROMIUM(
2636     GLuint texture) {
2637   TRACE_EVENT_BINARY_EFFICIENT0(
2638       "gpu", "GLES2Trace::EndSharedImageAccessDirectCHROMIUM");
2639   gl_->EndSharedImageAccessDirectCHROMIUM(texture);
2640 }
2641 
BeginBatchReadAccessSharedImageCHROMIUM()2642 void GLES2TraceImplementation::BeginBatchReadAccessSharedImageCHROMIUM() {
2643   TRACE_EVENT_BINARY_EFFICIENT0(
2644       "gpu", "GLES2Trace::BeginBatchReadAccessSharedImageCHROMIUM");
2645   gl_->BeginBatchReadAccessSharedImageCHROMIUM();
2646 }
2647 
EndBatchReadAccessSharedImageCHROMIUM()2648 void GLES2TraceImplementation::EndBatchReadAccessSharedImageCHROMIUM() {
2649   TRACE_EVENT_BINARY_EFFICIENT0(
2650       "gpu", "GLES2Trace::EndBatchReadAccessSharedImageCHROMIUM");
2651   gl_->EndBatchReadAccessSharedImageCHROMIUM();
2652 }
2653 
2654 #endif  // GPU_COMMAND_BUFFER_CLIENT_GLES2_TRACE_IMPLEMENTATION_IMPL_AUTOGEN_H_
2655