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

Side by Side Diff: ui/gl/gl_bindings_autogen_gl.cc

Issue 862133002: Update from https://crrev.com/312398 (Closed) Base URL: git@github.com:domokit/mojo.git@master
Patch Set: Created 5 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
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 // ui/gl/generate_bindings.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 #include <string>
12
13 #include "base/debug/trace_event.h"
14 #include "ui/gl/gl_bindings.h"
15 #include "ui/gl/gl_context.h"
16 #include "ui/gl/gl_enums.h"
17 #include "ui/gl/gl_gl_api_implementation.h"
18 #include "ui/gl/gl_implementation.h"
19 #include "ui/gl/gl_version_info.h"
20
21 namespace gfx {
22
23 static bool g_debugBindingsInitialized;
24 DriverGL g_driver_gl;
25
26 void glBeginQueryARBNotBound(GLenum target, GLuint id) {
27 NOTREACHED();
28 }
29 void glBindFramebufferEXTNotBound(GLenum target, GLuint framebuffer) {
30 NOTREACHED();
31 }
32 void glBindRenderbufferEXTNotBound(GLenum target, GLuint renderbuffer) {
33 NOTREACHED();
34 }
35 void glBindVertexArrayOESNotBound(GLuint array) {
36 NOTREACHED();
37 }
38 void glBlendBarrierKHRNotBound(void) {
39 NOTREACHED();
40 }
41 void glBlitFramebufferANGLENotBound(GLint srcX0,
42 GLint srcY0,
43 GLint srcX1,
44 GLint srcY1,
45 GLint dstX0,
46 GLint dstY0,
47 GLint dstX1,
48 GLint dstY1,
49 GLbitfield mask,
50 GLenum filter) {
51 NOTREACHED();
52 }
53 void glBlitFramebufferEXTNotBound(GLint srcX0,
54 GLint srcY0,
55 GLint srcX1,
56 GLint srcY1,
57 GLint dstX0,
58 GLint dstY0,
59 GLint dstX1,
60 GLint dstY1,
61 GLbitfield mask,
62 GLenum filter) {
63 NOTREACHED();
64 }
65 GLenum glCheckFramebufferStatusEXTNotBound(GLenum target) {
66 NOTREACHED();
67 return 0;
68 }
69 void glDeleteBuffersARBNotBound(GLsizei n, const GLuint* buffers) {
70 NOTREACHED();
71 }
72 void glDeleteFramebuffersEXTNotBound(GLsizei n, const GLuint* framebuffers) {
73 NOTREACHED();
74 }
75 void glDeleteQueriesARBNotBound(GLsizei n, const GLuint* ids) {
76 NOTREACHED();
77 }
78 void glDeleteRenderbuffersEXTNotBound(GLsizei n, const GLuint* renderbuffers) {
79 NOTREACHED();
80 }
81 void glDeleteVertexArraysOESNotBound(GLsizei n, const GLuint* arrays) {
82 NOTREACHED();
83 }
84 void glDrawArraysInstancedANGLENotBound(GLenum mode,
85 GLint first,
86 GLsizei count,
87 GLsizei primcount) {
88 NOTREACHED();
89 }
90 void glDrawBuffersARBNotBound(GLsizei n, const GLenum* bufs) {
91 NOTREACHED();
92 }
93 void glDrawElementsInstancedANGLENotBound(GLenum mode,
94 GLsizei count,
95 GLenum type,
96 const void* indices,
97 GLsizei primcount) {
98 NOTREACHED();
99 }
100 void glEndQueryARBNotBound(GLenum target) {
101 NOTREACHED();
102 }
103 void glFramebufferRenderbufferEXTNotBound(GLenum target,
104 GLenum attachment,
105 GLenum renderbuffertarget,
106 GLuint renderbuffer) {
107 NOTREACHED();
108 }
109 void glFramebufferTexture2DEXTNotBound(GLenum target,
110 GLenum attachment,
111 GLenum textarget,
112 GLuint texture,
113 GLint level) {
114 NOTREACHED();
115 }
116 void glGenBuffersARBNotBound(GLsizei n, GLuint* buffers) {
117 NOTREACHED();
118 }
119 void glGenerateMipmapEXTNotBound(GLenum target) {
120 NOTREACHED();
121 }
122 void glGenFramebuffersEXTNotBound(GLsizei n, GLuint* framebuffers) {
123 NOTREACHED();
124 }
125 void glGenQueriesARBNotBound(GLsizei n, GLuint* ids) {
126 NOTREACHED();
127 }
128 void glGenRenderbuffersEXTNotBound(GLsizei n, GLuint* renderbuffers) {
129 NOTREACHED();
130 }
131 void glGenVertexArraysOESNotBound(GLsizei n, GLuint* arrays) {
132 NOTREACHED();
133 }
134 void glGetFramebufferAttachmentParameterivEXTNotBound(GLenum target,
135 GLenum attachment,
136 GLenum pname,
137 GLint* params) {
138 NOTREACHED();
139 }
140 GLenum glGetGraphicsResetStatusARBNotBound(void) {
141 NOTREACHED();
142 return 0;
143 }
144 void glGetProgramBinaryNotBound(GLuint program,
145 GLsizei bufSize,
146 GLsizei* length,
147 GLenum* binaryFormat,
148 GLvoid* binary) {
149 NOTREACHED();
150 }
151 void glGetQueryivARBNotBound(GLenum target, GLenum pname, GLint* params) {
152 NOTREACHED();
153 }
154 void glGetQueryObjectivARBNotBound(GLuint id, GLenum pname, GLint* params) {
155 NOTREACHED();
156 }
157 void glGetQueryObjectui64vNotBound(GLuint id, GLenum pname, GLuint64* params) {
158 NOTREACHED();
159 }
160 void glGetQueryObjectuivARBNotBound(GLuint id, GLenum pname, GLuint* params) {
161 NOTREACHED();
162 }
163 void glGetRenderbufferParameterivEXTNotBound(GLenum target,
164 GLenum pname,
165 GLint* params) {
166 NOTREACHED();
167 }
168 GLboolean glIsFramebufferEXTNotBound(GLuint framebuffer) {
169 NOTREACHED();
170 return 0;
171 }
172 GLboolean glIsQueryARBNotBound(GLuint query) {
173 NOTREACHED();
174 return 0;
175 }
176 GLboolean glIsRenderbufferEXTNotBound(GLuint renderbuffer) {
177 NOTREACHED();
178 return 0;
179 }
180 GLboolean glIsVertexArrayOESNotBound(GLuint array) {
181 NOTREACHED();
182 return 0;
183 }
184 void* glMapBufferNotBound(GLenum target, GLenum access) {
185 NOTREACHED();
186 return 0;
187 }
188 void* glMapBufferRangeNotBound(GLenum target,
189 GLintptr offset,
190 GLsizeiptr length,
191 GLbitfield access) {
192 NOTREACHED();
193 return 0;
194 }
195 void glProgramBinaryNotBound(GLuint program,
196 GLenum binaryFormat,
197 const GLvoid* binary,
198 GLsizei length) {
199 NOTREACHED();
200 }
201 void glQueryCounterNotBound(GLuint id, GLenum target) {
202 NOTREACHED();
203 }
204 void glRenderbufferStorageEXTNotBound(GLenum target,
205 GLenum internalformat,
206 GLsizei width,
207 GLsizei height) {
208 NOTREACHED();
209 }
210 void glRenderbufferStorageMultisampleANGLENotBound(GLenum target,
211 GLsizei samples,
212 GLenum internalformat,
213 GLsizei width,
214 GLsizei height) {
215 NOTREACHED();
216 }
217 void glRenderbufferStorageMultisampleEXTNotBound(GLenum target,
218 GLsizei samples,
219 GLenum internalformat,
220 GLsizei width,
221 GLsizei height) {
222 NOTREACHED();
223 }
224 void glTexStorage2DEXTNotBound(GLenum target,
225 GLsizei levels,
226 GLenum internalformat,
227 GLsizei width,
228 GLsizei height) {
229 NOTREACHED();
230 }
231 GLboolean glUnmapBufferNotBound(GLenum target) {
232 NOTREACHED();
233 return 0;
234 }
235 void glVertexAttribDivisorANGLENotBound(GLuint index, GLuint divisor) {
236 NOTREACHED();
237 }
238
239 void DriverGL::InitializeStaticBindings() {
240 fn.glActiveTextureFn = reinterpret_cast<glActiveTextureProc>(
241 GetGLProcAddress("glActiveTexture"));
242 fn.glAttachShaderFn =
243 reinterpret_cast<glAttachShaderProc>(GetGLProcAddress("glAttachShader"));
244 fn.glBeginQueryFn =
245 reinterpret_cast<glBeginQueryProc>(GetGLProcAddress("glBeginQuery"));
246 fn.glBeginQueryARBFn =
247 reinterpret_cast<glBeginQueryARBProc>(glBeginQueryARBNotBound);
248 fn.glBeginTransformFeedbackFn =
249 reinterpret_cast<glBeginTransformFeedbackProc>(
250 GetGLProcAddress("glBeginTransformFeedback"));
251 fn.glBindAttribLocationFn = reinterpret_cast<glBindAttribLocationProc>(
252 GetGLProcAddress("glBindAttribLocation"));
253 fn.glBindBufferFn =
254 reinterpret_cast<glBindBufferProc>(GetGLProcAddress("glBindBuffer"));
255 fn.glBindBufferBaseFn = reinterpret_cast<glBindBufferBaseProc>(
256 GetGLProcAddress("glBindBufferBase"));
257 fn.glBindBufferRangeFn = reinterpret_cast<glBindBufferRangeProc>(
258 GetGLProcAddress("glBindBufferRange"));
259 fn.glBindFragDataLocationFn = reinterpret_cast<glBindFragDataLocationProc>(
260 GetGLProcAddress("glBindFragDataLocation"));
261 fn.glBindFragDataLocationIndexedFn =
262 reinterpret_cast<glBindFragDataLocationIndexedProc>(
263 GetGLProcAddress("glBindFragDataLocationIndexed"));
264 fn.glBindFramebufferEXTFn =
265 reinterpret_cast<glBindFramebufferEXTProc>(glBindFramebufferEXTNotBound);
266 fn.glBindRenderbufferEXTFn = reinterpret_cast<glBindRenderbufferEXTProc>(
267 glBindRenderbufferEXTNotBound);
268 fn.glBindSamplerFn =
269 reinterpret_cast<glBindSamplerProc>(GetGLProcAddress("glBindSampler"));
270 fn.glBindTextureFn =
271 reinterpret_cast<glBindTextureProc>(GetGLProcAddress("glBindTexture"));
272 fn.glBindTransformFeedbackFn = reinterpret_cast<glBindTransformFeedbackProc>(
273 GetGLProcAddress("glBindTransformFeedback"));
274 fn.glBindVertexArrayOESFn =
275 reinterpret_cast<glBindVertexArrayOESProc>(glBindVertexArrayOESNotBound);
276 fn.glBlendBarrierKHRFn =
277 reinterpret_cast<glBlendBarrierKHRProc>(glBlendBarrierKHRNotBound);
278 fn.glBlendColorFn =
279 reinterpret_cast<glBlendColorProc>(GetGLProcAddress("glBlendColor"));
280 fn.glBlendEquationFn = reinterpret_cast<glBlendEquationProc>(
281 GetGLProcAddress("glBlendEquation"));
282 fn.glBlendEquationSeparateFn = reinterpret_cast<glBlendEquationSeparateProc>(
283 GetGLProcAddress("glBlendEquationSeparate"));
284 fn.glBlendFuncFn =
285 reinterpret_cast<glBlendFuncProc>(GetGLProcAddress("glBlendFunc"));
286 fn.glBlendFuncSeparateFn = reinterpret_cast<glBlendFuncSeparateProc>(
287 GetGLProcAddress("glBlendFuncSeparate"));
288 fn.glBlitFramebufferFn = reinterpret_cast<glBlitFramebufferProc>(
289 GetGLProcAddress("glBlitFramebuffer"));
290 fn.glBlitFramebufferANGLEFn = reinterpret_cast<glBlitFramebufferANGLEProc>(
291 glBlitFramebufferANGLENotBound);
292 fn.glBlitFramebufferEXTFn =
293 reinterpret_cast<glBlitFramebufferEXTProc>(glBlitFramebufferEXTNotBound);
294 fn.glBufferDataFn =
295 reinterpret_cast<glBufferDataProc>(GetGLProcAddress("glBufferData"));
296 fn.glBufferSubDataFn = reinterpret_cast<glBufferSubDataProc>(
297 GetGLProcAddress("glBufferSubData"));
298 fn.glCheckFramebufferStatusEXTFn =
299 reinterpret_cast<glCheckFramebufferStatusEXTProc>(
300 glCheckFramebufferStatusEXTNotBound);
301 fn.glClearFn = reinterpret_cast<glClearProc>(GetGLProcAddress("glClear"));
302 fn.glClearBufferfiFn = reinterpret_cast<glClearBufferfiProc>(
303 GetGLProcAddress("glClearBufferfi"));
304 fn.glClearBufferfvFn = reinterpret_cast<glClearBufferfvProc>(
305 GetGLProcAddress("glClearBufferfv"));
306 fn.glClearBufferivFn = reinterpret_cast<glClearBufferivProc>(
307 GetGLProcAddress("glClearBufferiv"));
308 fn.glClearBufferuivFn = reinterpret_cast<glClearBufferuivProc>(
309 GetGLProcAddress("glClearBufferuiv"));
310 fn.glClearColorFn =
311 reinterpret_cast<glClearColorProc>(GetGLProcAddress("glClearColor"));
312 fn.glClearDepthFn =
313 reinterpret_cast<glClearDepthProc>(GetGLProcAddress("glClearDepth"));
314 fn.glClearDepthfFn =
315 reinterpret_cast<glClearDepthfProc>(GetGLProcAddress("glClearDepthf"));
316 fn.glClearStencilFn =
317 reinterpret_cast<glClearStencilProc>(GetGLProcAddress("glClearStencil"));
318 fn.glClientWaitSyncFn = reinterpret_cast<glClientWaitSyncProc>(
319 GetGLProcAddress("glClientWaitSync"));
320 fn.glColorMaskFn =
321 reinterpret_cast<glColorMaskProc>(GetGLProcAddress("glColorMask"));
322 fn.glCompileShaderFn = reinterpret_cast<glCompileShaderProc>(
323 GetGLProcAddress("glCompileShader"));
324 fn.glCompressedTexImage2DFn = reinterpret_cast<glCompressedTexImage2DProc>(
325 GetGLProcAddress("glCompressedTexImage2D"));
326 fn.glCompressedTexImage3DFn = reinterpret_cast<glCompressedTexImage3DProc>(
327 GetGLProcAddress("glCompressedTexImage3D"));
328 fn.glCompressedTexSubImage2DFn =
329 reinterpret_cast<glCompressedTexSubImage2DProc>(
330 GetGLProcAddress("glCompressedTexSubImage2D"));
331 fn.glCopyBufferSubDataFn = reinterpret_cast<glCopyBufferSubDataProc>(
332 GetGLProcAddress("glCopyBufferSubData"));
333 fn.glCopyTexImage2DFn = reinterpret_cast<glCopyTexImage2DProc>(
334 GetGLProcAddress("glCopyTexImage2D"));
335 fn.glCopyTexSubImage2DFn = reinterpret_cast<glCopyTexSubImage2DProc>(
336 GetGLProcAddress("glCopyTexSubImage2D"));
337 fn.glCopyTexSubImage3DFn = reinterpret_cast<glCopyTexSubImage3DProc>(
338 GetGLProcAddress("glCopyTexSubImage3D"));
339 fn.glCreateProgramFn = reinterpret_cast<glCreateProgramProc>(
340 GetGLProcAddress("glCreateProgram"));
341 fn.glCreateShaderFn =
342 reinterpret_cast<glCreateShaderProc>(GetGLProcAddress("glCreateShader"));
343 fn.glCullFaceFn =
344 reinterpret_cast<glCullFaceProc>(GetGLProcAddress("glCullFace"));
345 fn.glDeleteBuffersARBFn =
346 reinterpret_cast<glDeleteBuffersARBProc>(glDeleteBuffersARBNotBound);
347 fn.glDeleteFencesAPPLEFn = reinterpret_cast<glDeleteFencesAPPLEProc>(
348 GetGLProcAddress("glDeleteFencesAPPLE"));
349 fn.glDeleteFencesNVFn = reinterpret_cast<glDeleteFencesNVProc>(
350 GetGLProcAddress("glDeleteFencesNV"));
351 fn.glDeleteFramebuffersEXTFn = reinterpret_cast<glDeleteFramebuffersEXTProc>(
352 glDeleteFramebuffersEXTNotBound);
353 fn.glDeleteProgramFn = reinterpret_cast<glDeleteProgramProc>(
354 GetGLProcAddress("glDeleteProgram"));
355 fn.glDeleteQueriesFn = reinterpret_cast<glDeleteQueriesProc>(
356 GetGLProcAddress("glDeleteQueries"));
357 fn.glDeleteQueriesARBFn =
358 reinterpret_cast<glDeleteQueriesARBProc>(glDeleteQueriesARBNotBound);
359 fn.glDeleteRenderbuffersEXTFn =
360 reinterpret_cast<glDeleteRenderbuffersEXTProc>(
361 glDeleteRenderbuffersEXTNotBound);
362 fn.glDeleteSamplersFn = reinterpret_cast<glDeleteSamplersProc>(
363 GetGLProcAddress("glDeleteSamplers"));
364 fn.glDeleteShaderFn =
365 reinterpret_cast<glDeleteShaderProc>(GetGLProcAddress("glDeleteShader"));
366 fn.glDeleteSyncFn =
367 reinterpret_cast<glDeleteSyncProc>(GetGLProcAddress("glDeleteSync"));
368 fn.glDeleteTexturesFn = reinterpret_cast<glDeleteTexturesProc>(
369 GetGLProcAddress("glDeleteTextures"));
370 fn.glDeleteTransformFeedbacksFn =
371 reinterpret_cast<glDeleteTransformFeedbacksProc>(
372 GetGLProcAddress("glDeleteTransformFeedbacks"));
373 fn.glDeleteVertexArraysOESFn = reinterpret_cast<glDeleteVertexArraysOESProc>(
374 glDeleteVertexArraysOESNotBound);
375 fn.glDepthFuncFn =
376 reinterpret_cast<glDepthFuncProc>(GetGLProcAddress("glDepthFunc"));
377 fn.glDepthMaskFn =
378 reinterpret_cast<glDepthMaskProc>(GetGLProcAddress("glDepthMask"));
379 fn.glDepthRangeFn =
380 reinterpret_cast<glDepthRangeProc>(GetGLProcAddress("glDepthRange"));
381 fn.glDepthRangefFn =
382 reinterpret_cast<glDepthRangefProc>(GetGLProcAddress("glDepthRangef"));
383 fn.glDetachShaderFn =
384 reinterpret_cast<glDetachShaderProc>(GetGLProcAddress("glDetachShader"));
385 fn.glDisableFn =
386 reinterpret_cast<glDisableProc>(GetGLProcAddress("glDisable"));
387 fn.glDisableVertexAttribArrayFn =
388 reinterpret_cast<glDisableVertexAttribArrayProc>(
389 GetGLProcAddress("glDisableVertexAttribArray"));
390 fn.glDiscardFramebufferEXTFn = reinterpret_cast<glDiscardFramebufferEXTProc>(
391 GetGLProcAddress("glDiscardFramebufferEXT"));
392 fn.glDrawArraysFn =
393 reinterpret_cast<glDrawArraysProc>(GetGLProcAddress("glDrawArrays"));
394 fn.glDrawArraysInstancedANGLEFn =
395 reinterpret_cast<glDrawArraysInstancedANGLEProc>(
396 glDrawArraysInstancedANGLENotBound);
397 fn.glDrawBufferFn =
398 reinterpret_cast<glDrawBufferProc>(GetGLProcAddress("glDrawBuffer"));
399 fn.glDrawBuffersARBFn =
400 reinterpret_cast<glDrawBuffersARBProc>(glDrawBuffersARBNotBound);
401 fn.glDrawElementsFn =
402 reinterpret_cast<glDrawElementsProc>(GetGLProcAddress("glDrawElements"));
403 fn.glDrawElementsInstancedANGLEFn =
404 reinterpret_cast<glDrawElementsInstancedANGLEProc>(
405 glDrawElementsInstancedANGLENotBound);
406 fn.glDrawRangeElementsFn = reinterpret_cast<glDrawRangeElementsProc>(
407 GetGLProcAddress("glDrawRangeElements"));
408 fn.glEGLImageTargetRenderbufferStorageOESFn =
409 reinterpret_cast<glEGLImageTargetRenderbufferStorageOESProc>(
410 GetGLProcAddress("glEGLImageTargetRenderbufferStorageOES"));
411 fn.glEGLImageTargetTexture2DOESFn =
412 reinterpret_cast<glEGLImageTargetTexture2DOESProc>(
413 GetGLProcAddress("glEGLImageTargetTexture2DOES"));
414 fn.glEnableFn = reinterpret_cast<glEnableProc>(GetGLProcAddress("glEnable"));
415 fn.glEnableVertexAttribArrayFn =
416 reinterpret_cast<glEnableVertexAttribArrayProc>(
417 GetGLProcAddress("glEnableVertexAttribArray"));
418 fn.glEndQueryFn =
419 reinterpret_cast<glEndQueryProc>(GetGLProcAddress("glEndQuery"));
420 fn.glEndQueryARBFn =
421 reinterpret_cast<glEndQueryARBProc>(glEndQueryARBNotBound);
422 fn.glEndTransformFeedbackFn = reinterpret_cast<glEndTransformFeedbackProc>(
423 GetGLProcAddress("glEndTransformFeedback"));
424 fn.glFenceSyncFn =
425 reinterpret_cast<glFenceSyncProc>(GetGLProcAddress("glFenceSync"));
426 fn.glFinishFn = reinterpret_cast<glFinishProc>(GetGLProcAddress("glFinish"));
427 fn.glFinishFenceAPPLEFn = reinterpret_cast<glFinishFenceAPPLEProc>(
428 GetGLProcAddress("glFinishFenceAPPLE"));
429 fn.glFinishFenceNVFn = reinterpret_cast<glFinishFenceNVProc>(
430 GetGLProcAddress("glFinishFenceNV"));
431 fn.glFlushFn = reinterpret_cast<glFlushProc>(GetGLProcAddress("glFlush"));
432 fn.glFlushMappedBufferRangeFn =
433 reinterpret_cast<glFlushMappedBufferRangeProc>(
434 GetGLProcAddress("glFlushMappedBufferRange"));
435 fn.glFramebufferRenderbufferEXTFn =
436 reinterpret_cast<glFramebufferRenderbufferEXTProc>(
437 glFramebufferRenderbufferEXTNotBound);
438 fn.glFramebufferTexture2DEXTFn =
439 reinterpret_cast<glFramebufferTexture2DEXTProc>(
440 glFramebufferTexture2DEXTNotBound);
441 fn.glFramebufferTexture2DMultisampleEXTFn =
442 reinterpret_cast<glFramebufferTexture2DMultisampleEXTProc>(
443 GetGLProcAddress("glFramebufferTexture2DMultisampleEXT"));
444 fn.glFramebufferTexture2DMultisampleIMGFn =
445 reinterpret_cast<glFramebufferTexture2DMultisampleIMGProc>(
446 GetGLProcAddress("glFramebufferTexture2DMultisampleIMG"));
447 fn.glFramebufferTextureLayerFn =
448 reinterpret_cast<glFramebufferTextureLayerProc>(
449 GetGLProcAddress("glFramebufferTextureLayer"));
450 fn.glFrontFaceFn =
451 reinterpret_cast<glFrontFaceProc>(GetGLProcAddress("glFrontFace"));
452 fn.glGenBuffersARBFn =
453 reinterpret_cast<glGenBuffersARBProc>(glGenBuffersARBNotBound);
454 fn.glGenerateMipmapEXTFn =
455 reinterpret_cast<glGenerateMipmapEXTProc>(glGenerateMipmapEXTNotBound);
456 fn.glGenFencesAPPLEFn = reinterpret_cast<glGenFencesAPPLEProc>(
457 GetGLProcAddress("glGenFencesAPPLE"));
458 fn.glGenFencesNVFn =
459 reinterpret_cast<glGenFencesNVProc>(GetGLProcAddress("glGenFencesNV"));
460 fn.glGenFramebuffersEXTFn =
461 reinterpret_cast<glGenFramebuffersEXTProc>(glGenFramebuffersEXTNotBound);
462 fn.glGenQueriesFn =
463 reinterpret_cast<glGenQueriesProc>(GetGLProcAddress("glGenQueries"));
464 fn.glGenQueriesARBFn =
465 reinterpret_cast<glGenQueriesARBProc>(glGenQueriesARBNotBound);
466 fn.glGenRenderbuffersEXTFn = reinterpret_cast<glGenRenderbuffersEXTProc>(
467 glGenRenderbuffersEXTNotBound);
468 fn.glGenSamplersFn =
469 reinterpret_cast<glGenSamplersProc>(GetGLProcAddress("glGenSamplers"));
470 fn.glGenTexturesFn =
471 reinterpret_cast<glGenTexturesProc>(GetGLProcAddress("glGenTextures"));
472 fn.glGenTransformFeedbacksFn = reinterpret_cast<glGenTransformFeedbacksProc>(
473 GetGLProcAddress("glGenTransformFeedbacks"));
474 fn.glGenVertexArraysOESFn =
475 reinterpret_cast<glGenVertexArraysOESProc>(glGenVertexArraysOESNotBound);
476 fn.glGetActiveAttribFn = reinterpret_cast<glGetActiveAttribProc>(
477 GetGLProcAddress("glGetActiveAttrib"));
478 fn.glGetActiveUniformFn = reinterpret_cast<glGetActiveUniformProc>(
479 GetGLProcAddress("glGetActiveUniform"));
480 fn.glGetActiveUniformBlockivFn =
481 reinterpret_cast<glGetActiveUniformBlockivProc>(
482 GetGLProcAddress("glGetActiveUniformBlockiv"));
483 fn.glGetActiveUniformBlockNameFn =
484 reinterpret_cast<glGetActiveUniformBlockNameProc>(
485 GetGLProcAddress("glGetActiveUniformBlockName"));
486 fn.glGetActiveUniformsivFn = reinterpret_cast<glGetActiveUniformsivProc>(
487 GetGLProcAddress("glGetActiveUniformsiv"));
488 fn.glGetAttachedShadersFn = reinterpret_cast<glGetAttachedShadersProc>(
489 GetGLProcAddress("glGetAttachedShaders"));
490 fn.glGetAttribLocationFn = reinterpret_cast<glGetAttribLocationProc>(
491 GetGLProcAddress("glGetAttribLocation"));
492 fn.glGetBooleanvFn =
493 reinterpret_cast<glGetBooleanvProc>(GetGLProcAddress("glGetBooleanv"));
494 fn.glGetBufferParameterivFn = reinterpret_cast<glGetBufferParameterivProc>(
495 GetGLProcAddress("glGetBufferParameteriv"));
496 fn.glGetErrorFn =
497 reinterpret_cast<glGetErrorProc>(GetGLProcAddress("glGetError"));
498 fn.glGetFenceivNVFn =
499 reinterpret_cast<glGetFenceivNVProc>(GetGLProcAddress("glGetFenceivNV"));
500 fn.glGetFloatvFn =
501 reinterpret_cast<glGetFloatvProc>(GetGLProcAddress("glGetFloatv"));
502 fn.glGetFragDataLocationFn = reinterpret_cast<glGetFragDataLocationProc>(
503 GetGLProcAddress("glGetFragDataLocation"));
504 fn.glGetFramebufferAttachmentParameterivEXTFn =
505 reinterpret_cast<glGetFramebufferAttachmentParameterivEXTProc>(
506 glGetFramebufferAttachmentParameterivEXTNotBound);
507 fn.glGetGraphicsResetStatusARBFn =
508 reinterpret_cast<glGetGraphicsResetStatusARBProc>(
509 glGetGraphicsResetStatusARBNotBound);
510 fn.glGetInteger64i_vFn = reinterpret_cast<glGetInteger64i_vProc>(
511 GetGLProcAddress("glGetInteger64i_v"));
512 fn.glGetInteger64vFn = reinterpret_cast<glGetInteger64vProc>(
513 GetGLProcAddress("glGetInteger64v"));
514 fn.glGetIntegeri_vFn = reinterpret_cast<glGetIntegeri_vProc>(
515 GetGLProcAddress("glGetIntegeri_v"));
516 fn.glGetIntegervFn =
517 reinterpret_cast<glGetIntegervProc>(GetGLProcAddress("glGetIntegerv"));
518 fn.glGetInternalformativFn = reinterpret_cast<glGetInternalformativProc>(
519 GetGLProcAddress("glGetInternalformativ"));
520 fn.glGetProgramBinaryFn =
521 reinterpret_cast<glGetProgramBinaryProc>(glGetProgramBinaryNotBound);
522 fn.glGetProgramInfoLogFn = reinterpret_cast<glGetProgramInfoLogProc>(
523 GetGLProcAddress("glGetProgramInfoLog"));
524 fn.glGetProgramivFn =
525 reinterpret_cast<glGetProgramivProc>(GetGLProcAddress("glGetProgramiv"));
526 fn.glGetQueryivFn =
527 reinterpret_cast<glGetQueryivProc>(GetGLProcAddress("glGetQueryiv"));
528 fn.glGetQueryivARBFn =
529 reinterpret_cast<glGetQueryivARBProc>(glGetQueryivARBNotBound);
530 fn.glGetQueryObjecti64vFn = reinterpret_cast<glGetQueryObjecti64vProc>(
531 GetGLProcAddress("glGetQueryObjecti64v"));
532 fn.glGetQueryObjectivFn = reinterpret_cast<glGetQueryObjectivProc>(
533 GetGLProcAddress("glGetQueryObjectiv"));
534 fn.glGetQueryObjectivARBFn = reinterpret_cast<glGetQueryObjectivARBProc>(
535 glGetQueryObjectivARBNotBound);
536 fn.glGetQueryObjectui64vFn = reinterpret_cast<glGetQueryObjectui64vProc>(
537 glGetQueryObjectui64vNotBound);
538 fn.glGetQueryObjectuivFn = reinterpret_cast<glGetQueryObjectuivProc>(
539 GetGLProcAddress("glGetQueryObjectuiv"));
540 fn.glGetQueryObjectuivARBFn = reinterpret_cast<glGetQueryObjectuivARBProc>(
541 glGetQueryObjectuivARBNotBound);
542 fn.glGetRenderbufferParameterivEXTFn =
543 reinterpret_cast<glGetRenderbufferParameterivEXTProc>(
544 glGetRenderbufferParameterivEXTNotBound);
545 fn.glGetSamplerParameterfvFn = reinterpret_cast<glGetSamplerParameterfvProc>(
546 GetGLProcAddress("glGetSamplerParameterfv"));
547 fn.glGetSamplerParameterivFn = reinterpret_cast<glGetSamplerParameterivProc>(
548 GetGLProcAddress("glGetSamplerParameteriv"));
549 fn.glGetShaderInfoLogFn = reinterpret_cast<glGetShaderInfoLogProc>(
550 GetGLProcAddress("glGetShaderInfoLog"));
551 fn.glGetShaderivFn =
552 reinterpret_cast<glGetShaderivProc>(GetGLProcAddress("glGetShaderiv"));
553 fn.glGetShaderPrecisionFormatFn =
554 reinterpret_cast<glGetShaderPrecisionFormatProc>(
555 GetGLProcAddress("glGetShaderPrecisionFormat"));
556 fn.glGetShaderSourceFn = reinterpret_cast<glGetShaderSourceProc>(
557 GetGLProcAddress("glGetShaderSource"));
558 fn.glGetStringFn =
559 reinterpret_cast<glGetStringProc>(GetGLProcAddress("glGetString"));
560 fn.glGetSyncivFn =
561 reinterpret_cast<glGetSyncivProc>(GetGLProcAddress("glGetSynciv"));
562 fn.glGetTexLevelParameterfvFn =
563 reinterpret_cast<glGetTexLevelParameterfvProc>(
564 GetGLProcAddress("glGetTexLevelParameterfv"));
565 fn.glGetTexLevelParameterivFn =
566 reinterpret_cast<glGetTexLevelParameterivProc>(
567 GetGLProcAddress("glGetTexLevelParameteriv"));
568 fn.glGetTexParameterfvFn = reinterpret_cast<glGetTexParameterfvProc>(
569 GetGLProcAddress("glGetTexParameterfv"));
570 fn.glGetTexParameterivFn = reinterpret_cast<glGetTexParameterivProc>(
571 GetGLProcAddress("glGetTexParameteriv"));
572 fn.glGetTransformFeedbackVaryingFn =
573 reinterpret_cast<glGetTransformFeedbackVaryingProc>(
574 GetGLProcAddress("glGetTransformFeedbackVarying"));
575 fn.glGetTranslatedShaderSourceANGLEFn =
576 reinterpret_cast<glGetTranslatedShaderSourceANGLEProc>(
577 GetGLProcAddress("glGetTranslatedShaderSourceANGLE"));
578 fn.glGetUniformBlockIndexFn = reinterpret_cast<glGetUniformBlockIndexProc>(
579 GetGLProcAddress("glGetUniformBlockIndex"));
580 fn.glGetUniformfvFn =
581 reinterpret_cast<glGetUniformfvProc>(GetGLProcAddress("glGetUniformfv"));
582 fn.glGetUniformIndicesFn = reinterpret_cast<glGetUniformIndicesProc>(
583 GetGLProcAddress("glGetUniformIndices"));
584 fn.glGetUniformivFn =
585 reinterpret_cast<glGetUniformivProc>(GetGLProcAddress("glGetUniformiv"));
586 fn.glGetUniformLocationFn = reinterpret_cast<glGetUniformLocationProc>(
587 GetGLProcAddress("glGetUniformLocation"));
588 fn.glGetVertexAttribfvFn = reinterpret_cast<glGetVertexAttribfvProc>(
589 GetGLProcAddress("glGetVertexAttribfv"));
590 fn.glGetVertexAttribivFn = reinterpret_cast<glGetVertexAttribivProc>(
591 GetGLProcAddress("glGetVertexAttribiv"));
592 fn.glGetVertexAttribPointervFn =
593 reinterpret_cast<glGetVertexAttribPointervProc>(
594 GetGLProcAddress("glGetVertexAttribPointerv"));
595 fn.glHintFn = reinterpret_cast<glHintProc>(GetGLProcAddress("glHint"));
596 fn.glInsertEventMarkerEXTFn = reinterpret_cast<glInsertEventMarkerEXTProc>(
597 GetGLProcAddress("glInsertEventMarkerEXT"));
598 fn.glInvalidateFramebufferFn = reinterpret_cast<glInvalidateFramebufferProc>(
599 GetGLProcAddress("glInvalidateFramebuffer"));
600 fn.glInvalidateSubFramebufferFn =
601 reinterpret_cast<glInvalidateSubFramebufferProc>(
602 GetGLProcAddress("glInvalidateSubFramebuffer"));
603 fn.glIsBufferFn =
604 reinterpret_cast<glIsBufferProc>(GetGLProcAddress("glIsBuffer"));
605 fn.glIsEnabledFn =
606 reinterpret_cast<glIsEnabledProc>(GetGLProcAddress("glIsEnabled"));
607 fn.glIsFenceAPPLEFn =
608 reinterpret_cast<glIsFenceAPPLEProc>(GetGLProcAddress("glIsFenceAPPLE"));
609 fn.glIsFenceNVFn =
610 reinterpret_cast<glIsFenceNVProc>(GetGLProcAddress("glIsFenceNV"));
611 fn.glIsFramebufferEXTFn =
612 reinterpret_cast<glIsFramebufferEXTProc>(glIsFramebufferEXTNotBound);
613 fn.glIsProgramFn =
614 reinterpret_cast<glIsProgramProc>(GetGLProcAddress("glIsProgram"));
615 fn.glIsQueryFn =
616 reinterpret_cast<glIsQueryProc>(GetGLProcAddress("glIsQuery"));
617 fn.glIsQueryARBFn = reinterpret_cast<glIsQueryARBProc>(glIsQueryARBNotBound);
618 fn.glIsRenderbufferEXTFn =
619 reinterpret_cast<glIsRenderbufferEXTProc>(glIsRenderbufferEXTNotBound);
620 fn.glIsSamplerFn =
621 reinterpret_cast<glIsSamplerProc>(GetGLProcAddress("glIsSampler"));
622 fn.glIsShaderFn =
623 reinterpret_cast<glIsShaderProc>(GetGLProcAddress("glIsShader"));
624 fn.glIsSyncFn = reinterpret_cast<glIsSyncProc>(GetGLProcAddress("glIsSync"));
625 fn.glIsTextureFn =
626 reinterpret_cast<glIsTextureProc>(GetGLProcAddress("glIsTexture"));
627 fn.glIsTransformFeedbackFn = reinterpret_cast<glIsTransformFeedbackProc>(
628 GetGLProcAddress("glIsTransformFeedback"));
629 fn.glIsVertexArrayOESFn =
630 reinterpret_cast<glIsVertexArrayOESProc>(glIsVertexArrayOESNotBound);
631 fn.glLineWidthFn =
632 reinterpret_cast<glLineWidthProc>(GetGLProcAddress("glLineWidth"));
633 fn.glLinkProgramFn =
634 reinterpret_cast<glLinkProgramProc>(GetGLProcAddress("glLinkProgram"));
635 fn.glMapBufferFn = reinterpret_cast<glMapBufferProc>(glMapBufferNotBound);
636 fn.glMapBufferRangeFn =
637 reinterpret_cast<glMapBufferRangeProc>(glMapBufferRangeNotBound);
638 fn.glMatrixLoadfEXTFn = reinterpret_cast<glMatrixLoadfEXTProc>(
639 GetGLProcAddress("glMatrixLoadfEXT"));
640 fn.glMatrixLoadIdentityEXTFn = reinterpret_cast<glMatrixLoadIdentityEXTProc>(
641 GetGLProcAddress("glMatrixLoadIdentityEXT"));
642 fn.glPauseTransformFeedbackFn =
643 reinterpret_cast<glPauseTransformFeedbackProc>(
644 GetGLProcAddress("glPauseTransformFeedback"));
645 fn.glPixelStoreiFn =
646 reinterpret_cast<glPixelStoreiProc>(GetGLProcAddress("glPixelStorei"));
647 fn.glPointParameteriFn = reinterpret_cast<glPointParameteriProc>(
648 GetGLProcAddress("glPointParameteri"));
649 fn.glPolygonOffsetFn = reinterpret_cast<glPolygonOffsetProc>(
650 GetGLProcAddress("glPolygonOffset"));
651 fn.glPopGroupMarkerEXTFn = reinterpret_cast<glPopGroupMarkerEXTProc>(
652 GetGLProcAddress("glPopGroupMarkerEXT"));
653 fn.glProgramBinaryFn =
654 reinterpret_cast<glProgramBinaryProc>(glProgramBinaryNotBound);
655 fn.glProgramParameteriFn = reinterpret_cast<glProgramParameteriProc>(
656 GetGLProcAddress("glProgramParameteri"));
657 fn.glPushGroupMarkerEXTFn = reinterpret_cast<glPushGroupMarkerEXTProc>(
658 GetGLProcAddress("glPushGroupMarkerEXT"));
659 fn.glQueryCounterFn =
660 reinterpret_cast<glQueryCounterProc>(glQueryCounterNotBound);
661 fn.glReadBufferFn =
662 reinterpret_cast<glReadBufferProc>(GetGLProcAddress("glReadBuffer"));
663 fn.glReadPixelsFn =
664 reinterpret_cast<glReadPixelsProc>(GetGLProcAddress("glReadPixels"));
665 fn.glReleaseShaderCompilerFn = reinterpret_cast<glReleaseShaderCompilerProc>(
666 GetGLProcAddress("glReleaseShaderCompiler"));
667 fn.glRenderbufferStorageEXTFn =
668 reinterpret_cast<glRenderbufferStorageEXTProc>(
669 glRenderbufferStorageEXTNotBound);
670 fn.glRenderbufferStorageMultisampleFn =
671 reinterpret_cast<glRenderbufferStorageMultisampleProc>(
672 GetGLProcAddress("glRenderbufferStorageMultisample"));
673 fn.glRenderbufferStorageMultisampleANGLEFn =
674 reinterpret_cast<glRenderbufferStorageMultisampleANGLEProc>(
675 glRenderbufferStorageMultisampleANGLENotBound);
676 fn.glRenderbufferStorageMultisampleEXTFn =
677 reinterpret_cast<glRenderbufferStorageMultisampleEXTProc>(
678 glRenderbufferStorageMultisampleEXTNotBound);
679 fn.glRenderbufferStorageMultisampleIMGFn =
680 reinterpret_cast<glRenderbufferStorageMultisampleIMGProc>(
681 GetGLProcAddress("glRenderbufferStorageMultisampleIMG"));
682 fn.glResumeTransformFeedbackFn =
683 reinterpret_cast<glResumeTransformFeedbackProc>(
684 GetGLProcAddress("glResumeTransformFeedback"));
685 fn.glSampleCoverageFn = reinterpret_cast<glSampleCoverageProc>(
686 GetGLProcAddress("glSampleCoverage"));
687 fn.glSamplerParameterfFn = reinterpret_cast<glSamplerParameterfProc>(
688 GetGLProcAddress("glSamplerParameterf"));
689 fn.glSamplerParameterfvFn = reinterpret_cast<glSamplerParameterfvProc>(
690 GetGLProcAddress("glSamplerParameterfv"));
691 fn.glSamplerParameteriFn = reinterpret_cast<glSamplerParameteriProc>(
692 GetGLProcAddress("glSamplerParameteri"));
693 fn.glSamplerParameterivFn = reinterpret_cast<glSamplerParameterivProc>(
694 GetGLProcAddress("glSamplerParameteriv"));
695 fn.glScissorFn =
696 reinterpret_cast<glScissorProc>(GetGLProcAddress("glScissor"));
697 fn.glSetFenceAPPLEFn = reinterpret_cast<glSetFenceAPPLEProc>(
698 GetGLProcAddress("glSetFenceAPPLE"));
699 fn.glSetFenceNVFn =
700 reinterpret_cast<glSetFenceNVProc>(GetGLProcAddress("glSetFenceNV"));
701 fn.glShaderBinaryFn =
702 reinterpret_cast<glShaderBinaryProc>(GetGLProcAddress("glShaderBinary"));
703 fn.glShaderSourceFn =
704 reinterpret_cast<glShaderSourceProc>(GetGLProcAddress("glShaderSource"));
705 fn.glStencilFuncFn =
706 reinterpret_cast<glStencilFuncProc>(GetGLProcAddress("glStencilFunc"));
707 fn.glStencilFuncSeparateFn = reinterpret_cast<glStencilFuncSeparateProc>(
708 GetGLProcAddress("glStencilFuncSeparate"));
709 fn.glStencilMaskFn =
710 reinterpret_cast<glStencilMaskProc>(GetGLProcAddress("glStencilMask"));
711 fn.glStencilMaskSeparateFn = reinterpret_cast<glStencilMaskSeparateProc>(
712 GetGLProcAddress("glStencilMaskSeparate"));
713 fn.glStencilOpFn =
714 reinterpret_cast<glStencilOpProc>(GetGLProcAddress("glStencilOp"));
715 fn.glStencilOpSeparateFn = reinterpret_cast<glStencilOpSeparateProc>(
716 GetGLProcAddress("glStencilOpSeparate"));
717 fn.glTestFenceAPPLEFn = reinterpret_cast<glTestFenceAPPLEProc>(
718 GetGLProcAddress("glTestFenceAPPLE"));
719 fn.glTestFenceNVFn =
720 reinterpret_cast<glTestFenceNVProc>(GetGLProcAddress("glTestFenceNV"));
721 fn.glTexImage2DFn =
722 reinterpret_cast<glTexImage2DProc>(GetGLProcAddress("glTexImage2D"));
723 fn.glTexImage3DFn =
724 reinterpret_cast<glTexImage3DProc>(GetGLProcAddress("glTexImage3D"));
725 fn.glTexParameterfFn = reinterpret_cast<glTexParameterfProc>(
726 GetGLProcAddress("glTexParameterf"));
727 fn.glTexParameterfvFn = reinterpret_cast<glTexParameterfvProc>(
728 GetGLProcAddress("glTexParameterfv"));
729 fn.glTexParameteriFn = reinterpret_cast<glTexParameteriProc>(
730 GetGLProcAddress("glTexParameteri"));
731 fn.glTexParameterivFn = reinterpret_cast<glTexParameterivProc>(
732 GetGLProcAddress("glTexParameteriv"));
733 fn.glTexStorage2DEXTFn =
734 reinterpret_cast<glTexStorage2DEXTProc>(glTexStorage2DEXTNotBound);
735 fn.glTexStorage3DFn =
736 reinterpret_cast<glTexStorage3DProc>(GetGLProcAddress("glTexStorage3D"));
737 fn.glTexSubImage2DFn = reinterpret_cast<glTexSubImage2DProc>(
738 GetGLProcAddress("glTexSubImage2D"));
739 fn.glTransformFeedbackVaryingsFn =
740 reinterpret_cast<glTransformFeedbackVaryingsProc>(
741 GetGLProcAddress("glTransformFeedbackVaryings"));
742 fn.glUniform1fFn =
743 reinterpret_cast<glUniform1fProc>(GetGLProcAddress("glUniform1f"));
744 fn.glUniform1fvFn =
745 reinterpret_cast<glUniform1fvProc>(GetGLProcAddress("glUniform1fv"));
746 fn.glUniform1iFn =
747 reinterpret_cast<glUniform1iProc>(GetGLProcAddress("glUniform1i"));
748 fn.glUniform1ivFn =
749 reinterpret_cast<glUniform1ivProc>(GetGLProcAddress("glUniform1iv"));
750 fn.glUniform1uiFn =
751 reinterpret_cast<glUniform1uiProc>(GetGLProcAddress("glUniform1ui"));
752 fn.glUniform1uivFn =
753 reinterpret_cast<glUniform1uivProc>(GetGLProcAddress("glUniform1uiv"));
754 fn.glUniform2fFn =
755 reinterpret_cast<glUniform2fProc>(GetGLProcAddress("glUniform2f"));
756 fn.glUniform2fvFn =
757 reinterpret_cast<glUniform2fvProc>(GetGLProcAddress("glUniform2fv"));
758 fn.glUniform2iFn =
759 reinterpret_cast<glUniform2iProc>(GetGLProcAddress("glUniform2i"));
760 fn.glUniform2ivFn =
761 reinterpret_cast<glUniform2ivProc>(GetGLProcAddress("glUniform2iv"));
762 fn.glUniform2uiFn =
763 reinterpret_cast<glUniform2uiProc>(GetGLProcAddress("glUniform2ui"));
764 fn.glUniform2uivFn =
765 reinterpret_cast<glUniform2uivProc>(GetGLProcAddress("glUniform2uiv"));
766 fn.glUniform3fFn =
767 reinterpret_cast<glUniform3fProc>(GetGLProcAddress("glUniform3f"));
768 fn.glUniform3fvFn =
769 reinterpret_cast<glUniform3fvProc>(GetGLProcAddress("glUniform3fv"));
770 fn.glUniform3iFn =
771 reinterpret_cast<glUniform3iProc>(GetGLProcAddress("glUniform3i"));
772 fn.glUniform3ivFn =
773 reinterpret_cast<glUniform3ivProc>(GetGLProcAddress("glUniform3iv"));
774 fn.glUniform3uiFn =
775 reinterpret_cast<glUniform3uiProc>(GetGLProcAddress("glUniform3ui"));
776 fn.glUniform3uivFn =
777 reinterpret_cast<glUniform3uivProc>(GetGLProcAddress("glUniform3uiv"));
778 fn.glUniform4fFn =
779 reinterpret_cast<glUniform4fProc>(GetGLProcAddress("glUniform4f"));
780 fn.glUniform4fvFn =
781 reinterpret_cast<glUniform4fvProc>(GetGLProcAddress("glUniform4fv"));
782 fn.glUniform4iFn =
783 reinterpret_cast<glUniform4iProc>(GetGLProcAddress("glUniform4i"));
784 fn.glUniform4ivFn =
785 reinterpret_cast<glUniform4ivProc>(GetGLProcAddress("glUniform4iv"));
786 fn.glUniform4uiFn =
787 reinterpret_cast<glUniform4uiProc>(GetGLProcAddress("glUniform4ui"));
788 fn.glUniform4uivFn =
789 reinterpret_cast<glUniform4uivProc>(GetGLProcAddress("glUniform4uiv"));
790 fn.glUniformBlockBindingFn = reinterpret_cast<glUniformBlockBindingProc>(
791 GetGLProcAddress("glUniformBlockBinding"));
792 fn.glUniformMatrix2fvFn = reinterpret_cast<glUniformMatrix2fvProc>(
793 GetGLProcAddress("glUniformMatrix2fv"));
794 fn.glUniformMatrix2x3fvFn = reinterpret_cast<glUniformMatrix2x3fvProc>(
795 GetGLProcAddress("glUniformMatrix2x3fv"));
796 fn.glUniformMatrix2x4fvFn = reinterpret_cast<glUniformMatrix2x4fvProc>(
797 GetGLProcAddress("glUniformMatrix2x4fv"));
798 fn.glUniformMatrix3fvFn = reinterpret_cast<glUniformMatrix3fvProc>(
799 GetGLProcAddress("glUniformMatrix3fv"));
800 fn.glUniformMatrix3x2fvFn = reinterpret_cast<glUniformMatrix3x2fvProc>(
801 GetGLProcAddress("glUniformMatrix3x2fv"));
802 fn.glUniformMatrix3x4fvFn = reinterpret_cast<glUniformMatrix3x4fvProc>(
803 GetGLProcAddress("glUniformMatrix3x4fv"));
804 fn.glUniformMatrix4fvFn = reinterpret_cast<glUniformMatrix4fvProc>(
805 GetGLProcAddress("glUniformMatrix4fv"));
806 fn.glUniformMatrix4x2fvFn = reinterpret_cast<glUniformMatrix4x2fvProc>(
807 GetGLProcAddress("glUniformMatrix4x2fv"));
808 fn.glUniformMatrix4x3fvFn = reinterpret_cast<glUniformMatrix4x3fvProc>(
809 GetGLProcAddress("glUniformMatrix4x3fv"));
810 fn.glUnmapBufferFn =
811 reinterpret_cast<glUnmapBufferProc>(glUnmapBufferNotBound);
812 fn.glUseProgramFn =
813 reinterpret_cast<glUseProgramProc>(GetGLProcAddress("glUseProgram"));
814 fn.glValidateProgramFn = reinterpret_cast<glValidateProgramProc>(
815 GetGLProcAddress("glValidateProgram"));
816 fn.glVertexAttrib1fFn = reinterpret_cast<glVertexAttrib1fProc>(
817 GetGLProcAddress("glVertexAttrib1f"));
818 fn.glVertexAttrib1fvFn = reinterpret_cast<glVertexAttrib1fvProc>(
819 GetGLProcAddress("glVertexAttrib1fv"));
820 fn.glVertexAttrib2fFn = reinterpret_cast<glVertexAttrib2fProc>(
821 GetGLProcAddress("glVertexAttrib2f"));
822 fn.glVertexAttrib2fvFn = reinterpret_cast<glVertexAttrib2fvProc>(
823 GetGLProcAddress("glVertexAttrib2fv"));
824 fn.glVertexAttrib3fFn = reinterpret_cast<glVertexAttrib3fProc>(
825 GetGLProcAddress("glVertexAttrib3f"));
826 fn.glVertexAttrib3fvFn = reinterpret_cast<glVertexAttrib3fvProc>(
827 GetGLProcAddress("glVertexAttrib3fv"));
828 fn.glVertexAttrib4fFn = reinterpret_cast<glVertexAttrib4fProc>(
829 GetGLProcAddress("glVertexAttrib4f"));
830 fn.glVertexAttrib4fvFn = reinterpret_cast<glVertexAttrib4fvProc>(
831 GetGLProcAddress("glVertexAttrib4fv"));
832 fn.glVertexAttribDivisorANGLEFn =
833 reinterpret_cast<glVertexAttribDivisorANGLEProc>(
834 glVertexAttribDivisorANGLENotBound);
835 fn.glVertexAttribI4iFn = reinterpret_cast<glVertexAttribI4iProc>(
836 GetGLProcAddress("glVertexAttribI4i"));
837 fn.glVertexAttribI4ivFn = reinterpret_cast<glVertexAttribI4ivProc>(
838 GetGLProcAddress("glVertexAttribI4iv"));
839 fn.glVertexAttribI4uiFn = reinterpret_cast<glVertexAttribI4uiProc>(
840 GetGLProcAddress("glVertexAttribI4ui"));
841 fn.glVertexAttribI4uivFn = reinterpret_cast<glVertexAttribI4uivProc>(
842 GetGLProcAddress("glVertexAttribI4uiv"));
843 fn.glVertexAttribIPointerFn = reinterpret_cast<glVertexAttribIPointerProc>(
844 GetGLProcAddress("glVertexAttribIPointer"));
845 fn.glVertexAttribPointerFn = reinterpret_cast<glVertexAttribPointerProc>(
846 GetGLProcAddress("glVertexAttribPointer"));
847 fn.glViewportFn =
848 reinterpret_cast<glViewportProc>(GetGLProcAddress("glViewport"));
849 fn.glWaitSyncFn =
850 reinterpret_cast<glWaitSyncProc>(GetGLProcAddress("glWaitSync"));
851 }
852
853 void DriverGL::InitializeDynamicBindings(GLContext* context) {
854 DCHECK(context && context->IsCurrent(NULL));
855 const GLVersionInfo* ver = context->GetVersionInfo();
856 ALLOW_UNUSED_LOCAL(ver);
857 std::string extensions = context->GetExtensions() + " ";
858 ALLOW_UNUSED_LOCAL(extensions);
859
860 ext.b_GL_ANGLE_framebuffer_blit =
861 extensions.find("GL_ANGLE_framebuffer_blit ") != std::string::npos;
862 ext.b_GL_ANGLE_framebuffer_multisample =
863 extensions.find("GL_ANGLE_framebuffer_multisample ") != std::string::npos;
864 ext.b_GL_ANGLE_instanced_arrays =
865 extensions.find("GL_ANGLE_instanced_arrays ") != std::string::npos;
866 ext.b_GL_ANGLE_translated_shader_source =
867 extensions.find("GL_ANGLE_translated_shader_source ") !=
868 std::string::npos;
869 ext.b_GL_APPLE_fence =
870 extensions.find("GL_APPLE_fence ") != std::string::npos;
871 ext.b_GL_APPLE_vertex_array_object =
872 extensions.find("GL_APPLE_vertex_array_object ") != std::string::npos;
873 ext.b_GL_ARB_ES2_compatibility =
874 extensions.find("GL_ARB_ES2_compatibility ") != std::string::npos;
875 ext.b_GL_ARB_blend_func_extended =
876 extensions.find("GL_ARB_blend_func_extended ") != std::string::npos;
877 ext.b_GL_ARB_copy_buffer =
878 extensions.find("GL_ARB_copy_buffer ") != std::string::npos;
879 ext.b_GL_ARB_draw_buffers =
880 extensions.find("GL_ARB_draw_buffers ") != std::string::npos;
881 ext.b_GL_ARB_draw_instanced =
882 extensions.find("GL_ARB_draw_instanced ") != std::string::npos;
883 ext.b_GL_ARB_framebuffer_object =
884 extensions.find("GL_ARB_framebuffer_object ") != std::string::npos;
885 ext.b_GL_ARB_get_program_binary =
886 extensions.find("GL_ARB_get_program_binary ") != std::string::npos;
887 ext.b_GL_ARB_instanced_arrays =
888 extensions.find("GL_ARB_instanced_arrays ") != std::string::npos;
889 ext.b_GL_ARB_internalformat_query =
890 extensions.find("GL_ARB_internalformat_query ") != std::string::npos;
891 ext.b_GL_ARB_invalidate_subdata =
892 extensions.find("GL_ARB_invalidate_subdata ") != std::string::npos;
893 ext.b_GL_ARB_map_buffer_range =
894 extensions.find("GL_ARB_map_buffer_range ") != std::string::npos;
895 ext.b_GL_ARB_occlusion_query =
896 extensions.find("GL_ARB_occlusion_query ") != std::string::npos;
897 ext.b_GL_ARB_robustness =
898 extensions.find("GL_ARB_robustness ") != std::string::npos;
899 ext.b_GL_ARB_sampler_objects =
900 extensions.find("GL_ARB_sampler_objects ") != std::string::npos;
901 ext.b_GL_ARB_sync = extensions.find("GL_ARB_sync ") != std::string::npos;
902 ext.b_GL_ARB_texture_storage =
903 extensions.find("GL_ARB_texture_storage ") != std::string::npos;
904 ext.b_GL_ARB_timer_query =
905 extensions.find("GL_ARB_timer_query ") != std::string::npos;
906 ext.b_GL_ARB_transform_feedback2 =
907 extensions.find("GL_ARB_transform_feedback2 ") != std::string::npos;
908 ext.b_GL_ARB_uniform_buffer_object =
909 extensions.find("GL_ARB_uniform_buffer_object ") != std::string::npos;
910 ext.b_GL_ARB_vertex_array_object =
911 extensions.find("GL_ARB_vertex_array_object ") != std::string::npos;
912 ext.b_GL_ARB_vertex_buffer_object =
913 extensions.find("GL_ARB_vertex_buffer_object ") != std::string::npos;
914 ext.b_GL_EXT_debug_marker =
915 extensions.find("GL_EXT_debug_marker ") != std::string::npos;
916 ext.b_GL_EXT_direct_state_access =
917 extensions.find("GL_EXT_direct_state_access ") != std::string::npos;
918 ext.b_GL_EXT_discard_framebuffer =
919 extensions.find("GL_EXT_discard_framebuffer ") != std::string::npos;
920 ext.b_GL_EXT_disjoint_timer_query =
921 extensions.find("GL_EXT_disjoint_timer_query ") != std::string::npos;
922 ext.b_GL_EXT_draw_buffers =
923 extensions.find("GL_EXT_draw_buffers ") != std::string::npos;
924 ext.b_GL_EXT_framebuffer_blit =
925 extensions.find("GL_EXT_framebuffer_blit ") != std::string::npos;
926 ext.b_GL_EXT_framebuffer_multisample =
927 extensions.find("GL_EXT_framebuffer_multisample ") != std::string::npos;
928 ext.b_GL_EXT_framebuffer_object =
929 extensions.find("GL_EXT_framebuffer_object ") != std::string::npos;
930 ext.b_GL_EXT_map_buffer_range =
931 extensions.find("GL_EXT_map_buffer_range ") != std::string::npos;
932 ext.b_GL_EXT_multisampled_render_to_texture =
933 extensions.find("GL_EXT_multisampled_render_to_texture ") !=
934 std::string::npos;
935 ext.b_GL_EXT_robustness =
936 extensions.find("GL_EXT_robustness ") != std::string::npos;
937 ext.b_GL_EXT_texture_storage =
938 extensions.find("GL_EXT_texture_storage ") != std::string::npos;
939 ext.b_GL_EXT_timer_query =
940 extensions.find("GL_EXT_timer_query ") != std::string::npos;
941 ext.b_GL_IMG_multisampled_render_to_texture =
942 extensions.find("GL_IMG_multisampled_render_to_texture ") !=
943 std::string::npos;
944 ext.b_GL_KHR_blend_equation_advanced =
945 extensions.find("GL_KHR_blend_equation_advanced ") != std::string::npos;
946 ext.b_GL_KHR_robustness =
947 extensions.find("GL_KHR_robustness ") != std::string::npos;
948 ext.b_GL_NV_blend_equation_advanced =
949 extensions.find("GL_NV_blend_equation_advanced ") != std::string::npos;
950 ext.b_GL_NV_fence = extensions.find("GL_NV_fence ") != std::string::npos;
951 ext.b_GL_NV_path_rendering =
952 extensions.find("GL_NV_path_rendering ") != std::string::npos;
953 ext.b_GL_OES_EGL_image =
954 extensions.find("GL_OES_EGL_image ") != std::string::npos;
955 ext.b_GL_OES_get_program_binary =
956 extensions.find("GL_OES_get_program_binary ") != std::string::npos;
957 ext.b_GL_OES_mapbuffer =
958 extensions.find("GL_OES_mapbuffer ") != std::string::npos;
959 ext.b_GL_OES_vertex_array_object =
960 extensions.find("GL_OES_vertex_array_object ") != std::string::npos;
961
962 fn.glBeginQueryARBFn = 0;
963 debug_fn.glBeginQueryARBFn = 0;
964 if (ext.b_GL_ARB_occlusion_query) {
965 fn.glBeginQueryARBFn = reinterpret_cast<glBeginQueryARBProc>(
966 GetGLProcAddress("glBeginQueryARB"));
967 }
968 if (!fn.glBeginQueryARBFn) {
969 fn.glBeginQueryARBFn = reinterpret_cast<glBeginQueryARBProc>(
970 GetGLProcAddress("glBeginQueryEXT"));
971 }
972
973 fn.glBindFramebufferEXTFn = 0;
974 debug_fn.glBindFramebufferEXTFn = 0;
975 if (ext.b_GL_EXT_framebuffer_object) {
976 fn.glBindFramebufferEXTFn = reinterpret_cast<glBindFramebufferEXTProc>(
977 GetGLProcAddress("glBindFramebufferEXT"));
978 }
979 if (!fn.glBindFramebufferEXTFn) {
980 fn.glBindFramebufferEXTFn = reinterpret_cast<glBindFramebufferEXTProc>(
981 GetGLProcAddress("glBindFramebuffer"));
982 }
983
984 fn.glBindRenderbufferEXTFn = 0;
985 debug_fn.glBindRenderbufferEXTFn = 0;
986 if (ext.b_GL_EXT_framebuffer_object) {
987 fn.glBindRenderbufferEXTFn = reinterpret_cast<glBindRenderbufferEXTProc>(
988 GetGLProcAddress("glBindRenderbufferEXT"));
989 }
990 if (!fn.glBindRenderbufferEXTFn) {
991 fn.glBindRenderbufferEXTFn = reinterpret_cast<glBindRenderbufferEXTProc>(
992 GetGLProcAddress("glBindRenderbuffer"));
993 }
994
995 fn.glBindVertexArrayOESFn = 0;
996 debug_fn.glBindVertexArrayOESFn = 0;
997 if ((ver->is_gl3 || ver->is_gl4 || ver->is_es3) ||
998 ext.b_GL_ARB_vertex_array_object) {
999 fn.glBindVertexArrayOESFn = reinterpret_cast<glBindVertexArrayOESProc>(
1000 GetGLProcAddress("glBindVertexArray"));
1001 }
1002 if (!fn.glBindVertexArrayOESFn && (ext.b_GL_OES_vertex_array_object)) {
1003 fn.glBindVertexArrayOESFn = reinterpret_cast<glBindVertexArrayOESProc>(
1004 GetGLProcAddress("glBindVertexArrayOES"));
1005 }
1006 if (!fn.glBindVertexArrayOESFn) {
1007 fn.glBindVertexArrayOESFn = reinterpret_cast<glBindVertexArrayOESProc>(
1008 GetGLProcAddress("glBindVertexArrayAPPLE"));
1009 }
1010
1011 fn.glBlendBarrierKHRFn = 0;
1012 debug_fn.glBlendBarrierKHRFn = 0;
1013 if (ext.b_GL_NV_blend_equation_advanced) {
1014 fn.glBlendBarrierKHRFn = reinterpret_cast<glBlendBarrierKHRProc>(
1015 GetGLProcAddress("glBlendBarrierNV"));
1016 }
1017 if (!fn.glBlendBarrierKHRFn) {
1018 fn.glBlendBarrierKHRFn = reinterpret_cast<glBlendBarrierKHRProc>(
1019 GetGLProcAddress("glBlendBarrierKHR"));
1020 }
1021
1022 fn.glBlitFramebufferANGLEFn = 0;
1023 debug_fn.glBlitFramebufferANGLEFn = 0;
1024 if (ext.b_GL_ANGLE_framebuffer_blit) {
1025 fn.glBlitFramebufferANGLEFn = reinterpret_cast<glBlitFramebufferANGLEProc>(
1026 GetGLProcAddress("glBlitFramebufferANGLE"));
1027 }
1028 if (!fn.glBlitFramebufferANGLEFn) {
1029 fn.glBlitFramebufferANGLEFn = reinterpret_cast<glBlitFramebufferANGLEProc>(
1030 GetGLProcAddress("glBlitFramebuffer"));
1031 }
1032
1033 fn.glBlitFramebufferEXTFn = 0;
1034 debug_fn.glBlitFramebufferEXTFn = 0;
1035 if (ext.b_GL_EXT_framebuffer_blit) {
1036 fn.glBlitFramebufferEXTFn = reinterpret_cast<glBlitFramebufferEXTProc>(
1037 GetGLProcAddress("glBlitFramebufferEXT"));
1038 }
1039 if (!fn.glBlitFramebufferEXTFn) {
1040 fn.glBlitFramebufferEXTFn = reinterpret_cast<glBlitFramebufferEXTProc>(
1041 GetGLProcAddress("glBlitFramebuffer"));
1042 }
1043
1044 fn.glCheckFramebufferStatusEXTFn = 0;
1045 debug_fn.glCheckFramebufferStatusEXTFn = 0;
1046 if (ext.b_GL_EXT_framebuffer_object) {
1047 fn.glCheckFramebufferStatusEXTFn =
1048 reinterpret_cast<glCheckFramebufferStatusEXTProc>(
1049 GetGLProcAddress("glCheckFramebufferStatusEXT"));
1050 }
1051 if (!fn.glCheckFramebufferStatusEXTFn) {
1052 fn.glCheckFramebufferStatusEXTFn =
1053 reinterpret_cast<glCheckFramebufferStatusEXTProc>(
1054 GetGLProcAddress("glCheckFramebufferStatus"));
1055 }
1056
1057 fn.glDeleteBuffersARBFn = 0;
1058 debug_fn.glDeleteBuffersARBFn = 0;
1059 if (ext.b_GL_ARB_vertex_buffer_object) {
1060 fn.glDeleteBuffersARBFn = reinterpret_cast<glDeleteBuffersARBProc>(
1061 GetGLProcAddress("glDeleteBuffersARB"));
1062 }
1063 if (!fn.glDeleteBuffersARBFn) {
1064 fn.glDeleteBuffersARBFn = reinterpret_cast<glDeleteBuffersARBProc>(
1065 GetGLProcAddress("glDeleteBuffers"));
1066 }
1067
1068 fn.glDeleteFramebuffersEXTFn = 0;
1069 debug_fn.glDeleteFramebuffersEXTFn = 0;
1070 if (ext.b_GL_EXT_framebuffer_object) {
1071 fn.glDeleteFramebuffersEXTFn =
1072 reinterpret_cast<glDeleteFramebuffersEXTProc>(
1073 GetGLProcAddress("glDeleteFramebuffersEXT"));
1074 }
1075 if (!fn.glDeleteFramebuffersEXTFn) {
1076 fn.glDeleteFramebuffersEXTFn =
1077 reinterpret_cast<glDeleteFramebuffersEXTProc>(
1078 GetGLProcAddress("glDeleteFramebuffers"));
1079 }
1080
1081 fn.glDeleteQueriesARBFn = 0;
1082 debug_fn.glDeleteQueriesARBFn = 0;
1083 if (ext.b_GL_ARB_occlusion_query) {
1084 fn.glDeleteQueriesARBFn = reinterpret_cast<glDeleteQueriesARBProc>(
1085 GetGLProcAddress("glDeleteQueriesARB"));
1086 }
1087 if (!fn.glDeleteQueriesARBFn) {
1088 fn.glDeleteQueriesARBFn = reinterpret_cast<glDeleteQueriesARBProc>(
1089 GetGLProcAddress("glDeleteQueriesEXT"));
1090 }
1091
1092 fn.glDeleteRenderbuffersEXTFn = 0;
1093 debug_fn.glDeleteRenderbuffersEXTFn = 0;
1094 if (ext.b_GL_EXT_framebuffer_object) {
1095 fn.glDeleteRenderbuffersEXTFn =
1096 reinterpret_cast<glDeleteRenderbuffersEXTProc>(
1097 GetGLProcAddress("glDeleteRenderbuffersEXT"));
1098 }
1099 if (!fn.glDeleteRenderbuffersEXTFn) {
1100 fn.glDeleteRenderbuffersEXTFn =
1101 reinterpret_cast<glDeleteRenderbuffersEXTProc>(
1102 GetGLProcAddress("glDeleteRenderbuffers"));
1103 }
1104
1105 fn.glDeleteVertexArraysOESFn = 0;
1106 debug_fn.glDeleteVertexArraysOESFn = 0;
1107 if ((ver->is_gl3 || ver->is_gl4 || ver->is_es3) ||
1108 ext.b_GL_ARB_vertex_array_object) {
1109 fn.glDeleteVertexArraysOESFn =
1110 reinterpret_cast<glDeleteVertexArraysOESProc>(
1111 GetGLProcAddress("glDeleteVertexArrays"));
1112 }
1113 if (!fn.glDeleteVertexArraysOESFn && (ext.b_GL_OES_vertex_array_object)) {
1114 fn.glDeleteVertexArraysOESFn =
1115 reinterpret_cast<glDeleteVertexArraysOESProc>(
1116 GetGLProcAddress("glDeleteVertexArraysOES"));
1117 }
1118 if (!fn.glDeleteVertexArraysOESFn) {
1119 fn.glDeleteVertexArraysOESFn =
1120 reinterpret_cast<glDeleteVertexArraysOESProc>(
1121 GetGLProcAddress("glDeleteVertexArraysAPPLE"));
1122 }
1123
1124 fn.glDrawArraysInstancedANGLEFn = 0;
1125 debug_fn.glDrawArraysInstancedANGLEFn = 0;
1126 if (ext.b_GL_ARB_draw_instanced) {
1127 fn.glDrawArraysInstancedANGLEFn =
1128 reinterpret_cast<glDrawArraysInstancedANGLEProc>(
1129 GetGLProcAddress("glDrawArraysInstancedARB"));
1130 }
1131 if (!fn.glDrawArraysInstancedANGLEFn && (ext.b_GL_ANGLE_instanced_arrays)) {
1132 fn.glDrawArraysInstancedANGLEFn =
1133 reinterpret_cast<glDrawArraysInstancedANGLEProc>(
1134 GetGLProcAddress("glDrawArraysInstancedANGLE"));
1135 }
1136 if (!fn.glDrawArraysInstancedANGLEFn) {
1137 fn.glDrawArraysInstancedANGLEFn =
1138 reinterpret_cast<glDrawArraysInstancedANGLEProc>(
1139 GetGLProcAddress("glDrawArraysInstanced"));
1140 }
1141
1142 fn.glDrawBuffersARBFn = 0;
1143 debug_fn.glDrawBuffersARBFn = 0;
1144 if (ext.b_GL_ARB_draw_buffers) {
1145 fn.glDrawBuffersARBFn = reinterpret_cast<glDrawBuffersARBProc>(
1146 GetGLProcAddress("glDrawBuffersARB"));
1147 }
1148 if (!fn.glDrawBuffersARBFn && (ext.b_GL_EXT_draw_buffers)) {
1149 fn.glDrawBuffersARBFn = reinterpret_cast<glDrawBuffersARBProc>(
1150 GetGLProcAddress("glDrawBuffersEXT"));
1151 }
1152 if (!fn.glDrawBuffersARBFn) {
1153 fn.glDrawBuffersARBFn = reinterpret_cast<glDrawBuffersARBProc>(
1154 GetGLProcAddress("glDrawBuffers"));
1155 }
1156
1157 fn.glDrawElementsInstancedANGLEFn = 0;
1158 debug_fn.glDrawElementsInstancedANGLEFn = 0;
1159 if (ext.b_GL_ARB_draw_instanced) {
1160 fn.glDrawElementsInstancedANGLEFn =
1161 reinterpret_cast<glDrawElementsInstancedANGLEProc>(
1162 GetGLProcAddress("glDrawElementsInstancedARB"));
1163 }
1164 if (!fn.glDrawElementsInstancedANGLEFn && (ext.b_GL_ANGLE_instanced_arrays)) {
1165 fn.glDrawElementsInstancedANGLEFn =
1166 reinterpret_cast<glDrawElementsInstancedANGLEProc>(
1167 GetGLProcAddress("glDrawElementsInstancedANGLE"));
1168 }
1169 if (!fn.glDrawElementsInstancedANGLEFn) {
1170 fn.glDrawElementsInstancedANGLEFn =
1171 reinterpret_cast<glDrawElementsInstancedANGLEProc>(
1172 GetGLProcAddress("glDrawElementsInstanced"));
1173 }
1174
1175 fn.glEndQueryARBFn = 0;
1176 debug_fn.glEndQueryARBFn = 0;
1177 if (ext.b_GL_ARB_occlusion_query) {
1178 fn.glEndQueryARBFn =
1179 reinterpret_cast<glEndQueryARBProc>(GetGLProcAddress("glEndQueryARB"));
1180 }
1181 if (!fn.glEndQueryARBFn) {
1182 fn.glEndQueryARBFn =
1183 reinterpret_cast<glEndQueryARBProc>(GetGLProcAddress("glEndQueryEXT"));
1184 }
1185
1186 fn.glFramebufferRenderbufferEXTFn = 0;
1187 debug_fn.glFramebufferRenderbufferEXTFn = 0;
1188 if (ext.b_GL_EXT_framebuffer_object) {
1189 fn.glFramebufferRenderbufferEXTFn =
1190 reinterpret_cast<glFramebufferRenderbufferEXTProc>(
1191 GetGLProcAddress("glFramebufferRenderbufferEXT"));
1192 }
1193 if (!fn.glFramebufferRenderbufferEXTFn) {
1194 fn.glFramebufferRenderbufferEXTFn =
1195 reinterpret_cast<glFramebufferRenderbufferEXTProc>(
1196 GetGLProcAddress("glFramebufferRenderbuffer"));
1197 }
1198
1199 fn.glFramebufferTexture2DEXTFn = 0;
1200 debug_fn.glFramebufferTexture2DEXTFn = 0;
1201 if (ext.b_GL_EXT_framebuffer_object) {
1202 fn.glFramebufferTexture2DEXTFn =
1203 reinterpret_cast<glFramebufferTexture2DEXTProc>(
1204 GetGLProcAddress("glFramebufferTexture2DEXT"));
1205 }
1206 if (!fn.glFramebufferTexture2DEXTFn) {
1207 fn.glFramebufferTexture2DEXTFn =
1208 reinterpret_cast<glFramebufferTexture2DEXTProc>(
1209 GetGLProcAddress("glFramebufferTexture2D"));
1210 }
1211
1212 fn.glGenBuffersARBFn = 0;
1213 debug_fn.glGenBuffersARBFn = 0;
1214 if (ext.b_GL_ARB_vertex_buffer_object) {
1215 fn.glGenBuffersARBFn = reinterpret_cast<glGenBuffersARBProc>(
1216 GetGLProcAddress("glGenBuffersARB"));
1217 }
1218 if (!fn.glGenBuffersARBFn) {
1219 fn.glGenBuffersARBFn =
1220 reinterpret_cast<glGenBuffersARBProc>(GetGLProcAddress("glGenBuffers"));
1221 }
1222
1223 fn.glGenerateMipmapEXTFn = 0;
1224 debug_fn.glGenerateMipmapEXTFn = 0;
1225 if (ext.b_GL_EXT_framebuffer_object) {
1226 fn.glGenerateMipmapEXTFn = reinterpret_cast<glGenerateMipmapEXTProc>(
1227 GetGLProcAddress("glGenerateMipmapEXT"));
1228 }
1229 if (!fn.glGenerateMipmapEXTFn) {
1230 fn.glGenerateMipmapEXTFn = reinterpret_cast<glGenerateMipmapEXTProc>(
1231 GetGLProcAddress("glGenerateMipmap"));
1232 }
1233
1234 fn.glGenFramebuffersEXTFn = 0;
1235 debug_fn.glGenFramebuffersEXTFn = 0;
1236 if (ext.b_GL_EXT_framebuffer_object) {
1237 fn.glGenFramebuffersEXTFn = reinterpret_cast<glGenFramebuffersEXTProc>(
1238 GetGLProcAddress("glGenFramebuffersEXT"));
1239 }
1240 if (!fn.glGenFramebuffersEXTFn) {
1241 fn.glGenFramebuffersEXTFn = reinterpret_cast<glGenFramebuffersEXTProc>(
1242 GetGLProcAddress("glGenFramebuffers"));
1243 }
1244
1245 fn.glGenQueriesARBFn = 0;
1246 debug_fn.glGenQueriesARBFn = 0;
1247 if (ext.b_GL_ARB_occlusion_query) {
1248 fn.glGenQueriesARBFn = reinterpret_cast<glGenQueriesARBProc>(
1249 GetGLProcAddress("glGenQueriesARB"));
1250 }
1251 if (!fn.glGenQueriesARBFn) {
1252 fn.glGenQueriesARBFn = reinterpret_cast<glGenQueriesARBProc>(
1253 GetGLProcAddress("glGenQueriesEXT"));
1254 }
1255
1256 fn.glGenRenderbuffersEXTFn = 0;
1257 debug_fn.glGenRenderbuffersEXTFn = 0;
1258 if (ext.b_GL_EXT_framebuffer_object) {
1259 fn.glGenRenderbuffersEXTFn = reinterpret_cast<glGenRenderbuffersEXTProc>(
1260 GetGLProcAddress("glGenRenderbuffersEXT"));
1261 }
1262 if (!fn.glGenRenderbuffersEXTFn) {
1263 fn.glGenRenderbuffersEXTFn = reinterpret_cast<glGenRenderbuffersEXTProc>(
1264 GetGLProcAddress("glGenRenderbuffers"));
1265 }
1266
1267 fn.glGenVertexArraysOESFn = 0;
1268 debug_fn.glGenVertexArraysOESFn = 0;
1269 if ((ver->is_gl3 || ver->is_gl4 || ver->is_es3) ||
1270 ext.b_GL_ARB_vertex_array_object) {
1271 fn.glGenVertexArraysOESFn = reinterpret_cast<glGenVertexArraysOESProc>(
1272 GetGLProcAddress("glGenVertexArrays"));
1273 }
1274 if (!fn.glGenVertexArraysOESFn && (ext.b_GL_OES_vertex_array_object)) {
1275 fn.glGenVertexArraysOESFn = reinterpret_cast<glGenVertexArraysOESProc>(
1276 GetGLProcAddress("glGenVertexArraysOES"));
1277 }
1278 if (!fn.glGenVertexArraysOESFn) {
1279 fn.glGenVertexArraysOESFn = reinterpret_cast<glGenVertexArraysOESProc>(
1280 GetGLProcAddress("glGenVertexArraysAPPLE"));
1281 }
1282
1283 fn.glGetFramebufferAttachmentParameterivEXTFn = 0;
1284 debug_fn.glGetFramebufferAttachmentParameterivEXTFn = 0;
1285 if (ext.b_GL_EXT_framebuffer_object) {
1286 fn.glGetFramebufferAttachmentParameterivEXTFn =
1287 reinterpret_cast<glGetFramebufferAttachmentParameterivEXTProc>(
1288 GetGLProcAddress("glGetFramebufferAttachmentParameterivEXT"));
1289 }
1290 if (!fn.glGetFramebufferAttachmentParameterivEXTFn) {
1291 fn.glGetFramebufferAttachmentParameterivEXTFn =
1292 reinterpret_cast<glGetFramebufferAttachmentParameterivEXTProc>(
1293 GetGLProcAddress("glGetFramebufferAttachmentParameteriv"));
1294 }
1295
1296 fn.glGetGraphicsResetStatusARBFn = 0;
1297 debug_fn.glGetGraphicsResetStatusARBFn = 0;
1298 if (ext.b_GL_ARB_robustness) {
1299 fn.glGetGraphicsResetStatusARBFn =
1300 reinterpret_cast<glGetGraphicsResetStatusARBProc>(
1301 GetGLProcAddress("glGetGraphicsResetStatusARB"));
1302 }
1303 if (!fn.glGetGraphicsResetStatusARBFn && (ext.b_GL_KHR_robustness)) {
1304 fn.glGetGraphicsResetStatusARBFn =
1305 reinterpret_cast<glGetGraphicsResetStatusARBProc>(
1306 GetGLProcAddress("glGetGraphicsResetStatusKHR"));
1307 }
1308 if (!fn.glGetGraphicsResetStatusARBFn && (ext.b_GL_EXT_robustness)) {
1309 fn.glGetGraphicsResetStatusARBFn =
1310 reinterpret_cast<glGetGraphicsResetStatusARBProc>(
1311 GetGLProcAddress("glGetGraphicsResetStatusEXT"));
1312 }
1313 if (!fn.glGetGraphicsResetStatusARBFn) {
1314 fn.glGetGraphicsResetStatusARBFn =
1315 reinterpret_cast<glGetGraphicsResetStatusARBProc>(
1316 GetGLProcAddress("glGetGraphicsResetStatus"));
1317 }
1318
1319 fn.glGetProgramBinaryFn = 0;
1320 debug_fn.glGetProgramBinaryFn = 0;
1321 if (ext.b_GL_OES_get_program_binary) {
1322 fn.glGetProgramBinaryFn = reinterpret_cast<glGetProgramBinaryProc>(
1323 GetGLProcAddress("glGetProgramBinaryOES"));
1324 }
1325 if (!fn.glGetProgramBinaryFn) {
1326 fn.glGetProgramBinaryFn = reinterpret_cast<glGetProgramBinaryProc>(
1327 GetGLProcAddress("glGetProgramBinary"));
1328 }
1329
1330 fn.glGetQueryivARBFn = 0;
1331 debug_fn.glGetQueryivARBFn = 0;
1332 if (ext.b_GL_ARB_occlusion_query) {
1333 fn.glGetQueryivARBFn = reinterpret_cast<glGetQueryivARBProc>(
1334 GetGLProcAddress("glGetQueryivARB"));
1335 }
1336 if (!fn.glGetQueryivARBFn) {
1337 fn.glGetQueryivARBFn = reinterpret_cast<glGetQueryivARBProc>(
1338 GetGLProcAddress("glGetQueryivEXT"));
1339 }
1340
1341 fn.glGetQueryObjectivARBFn = 0;
1342 debug_fn.glGetQueryObjectivARBFn = 0;
1343 if (ext.b_GL_ARB_occlusion_query) {
1344 fn.glGetQueryObjectivARBFn = reinterpret_cast<glGetQueryObjectivARBProc>(
1345 GetGLProcAddress("glGetQueryObjectivARB"));
1346 }
1347 if (!fn.glGetQueryObjectivARBFn) {
1348 fn.glGetQueryObjectivARBFn = reinterpret_cast<glGetQueryObjectivARBProc>(
1349 GetGLProcAddress("glGetQueryObjectivEXT"));
1350 }
1351
1352 fn.glGetQueryObjectui64vFn = 0;
1353 debug_fn.glGetQueryObjectui64vFn = 0;
1354 if (ext.b_GL_ARB_timer_query) {
1355 fn.glGetQueryObjectui64vFn = reinterpret_cast<glGetQueryObjectui64vProc>(
1356 GetGLProcAddress("glGetQueryObjectui64v"));
1357 }
1358 if (!fn.glGetQueryObjectui64vFn) {
1359 fn.glGetQueryObjectui64vFn = reinterpret_cast<glGetQueryObjectui64vProc>(
1360 GetGLProcAddress("glGetQueryObjectui64vEXT"));
1361 }
1362
1363 fn.glGetQueryObjectuivARBFn = 0;
1364 debug_fn.glGetQueryObjectuivARBFn = 0;
1365 if (ext.b_GL_ARB_occlusion_query) {
1366 fn.glGetQueryObjectuivARBFn = reinterpret_cast<glGetQueryObjectuivARBProc>(
1367 GetGLProcAddress("glGetQueryObjectuivARB"));
1368 }
1369 if (!fn.glGetQueryObjectuivARBFn) {
1370 fn.glGetQueryObjectuivARBFn = reinterpret_cast<glGetQueryObjectuivARBProc>(
1371 GetGLProcAddress("glGetQueryObjectuivEXT"));
1372 }
1373
1374 fn.glGetRenderbufferParameterivEXTFn = 0;
1375 debug_fn.glGetRenderbufferParameterivEXTFn = 0;
1376 if (ext.b_GL_EXT_framebuffer_object) {
1377 fn.glGetRenderbufferParameterivEXTFn =
1378 reinterpret_cast<glGetRenderbufferParameterivEXTProc>(
1379 GetGLProcAddress("glGetRenderbufferParameterivEXT"));
1380 }
1381 if (!fn.glGetRenderbufferParameterivEXTFn) {
1382 fn.glGetRenderbufferParameterivEXTFn =
1383 reinterpret_cast<glGetRenderbufferParameterivEXTProc>(
1384 GetGLProcAddress("glGetRenderbufferParameteriv"));
1385 }
1386
1387 fn.glIsFramebufferEXTFn = 0;
1388 debug_fn.glIsFramebufferEXTFn = 0;
1389 if (ext.b_GL_EXT_framebuffer_object) {
1390 fn.glIsFramebufferEXTFn = reinterpret_cast<glIsFramebufferEXTProc>(
1391 GetGLProcAddress("glIsFramebufferEXT"));
1392 }
1393 if (!fn.glIsFramebufferEXTFn) {
1394 fn.glIsFramebufferEXTFn = reinterpret_cast<glIsFramebufferEXTProc>(
1395 GetGLProcAddress("glIsFramebuffer"));
1396 }
1397
1398 fn.glIsQueryARBFn = 0;
1399 debug_fn.glIsQueryARBFn = 0;
1400 if (ext.b_GL_ARB_occlusion_query) {
1401 fn.glIsQueryARBFn =
1402 reinterpret_cast<glIsQueryARBProc>(GetGLProcAddress("glIsQueryARB"));
1403 }
1404 if (!fn.glIsQueryARBFn) {
1405 fn.glIsQueryARBFn =
1406 reinterpret_cast<glIsQueryARBProc>(GetGLProcAddress("glIsQueryEXT"));
1407 }
1408
1409 fn.glIsRenderbufferEXTFn = 0;
1410 debug_fn.glIsRenderbufferEXTFn = 0;
1411 if (ext.b_GL_EXT_framebuffer_object) {
1412 fn.glIsRenderbufferEXTFn = reinterpret_cast<glIsRenderbufferEXTProc>(
1413 GetGLProcAddress("glIsRenderbufferEXT"));
1414 }
1415 if (!fn.glIsRenderbufferEXTFn) {
1416 fn.glIsRenderbufferEXTFn = reinterpret_cast<glIsRenderbufferEXTProc>(
1417 GetGLProcAddress("glIsRenderbuffer"));
1418 }
1419
1420 fn.glIsVertexArrayOESFn = 0;
1421 debug_fn.glIsVertexArrayOESFn = 0;
1422 if ((ver->is_gl3 || ver->is_gl4 || ver->is_es3) ||
1423 ext.b_GL_ARB_vertex_array_object) {
1424 fn.glIsVertexArrayOESFn = reinterpret_cast<glIsVertexArrayOESProc>(
1425 GetGLProcAddress("glIsVertexArray"));
1426 }
1427 if (!fn.glIsVertexArrayOESFn && (ext.b_GL_OES_vertex_array_object)) {
1428 fn.glIsVertexArrayOESFn = reinterpret_cast<glIsVertexArrayOESProc>(
1429 GetGLProcAddress("glIsVertexArrayOES"));
1430 }
1431 if (!fn.glIsVertexArrayOESFn) {
1432 fn.glIsVertexArrayOESFn = reinterpret_cast<glIsVertexArrayOESProc>(
1433 GetGLProcAddress("glIsVertexArrayAPPLE"));
1434 }
1435
1436 fn.glMapBufferFn = 0;
1437 debug_fn.glMapBufferFn = 0;
1438 if (ext.b_GL_OES_mapbuffer) {
1439 fn.glMapBufferFn =
1440 reinterpret_cast<glMapBufferProc>(GetGLProcAddress("glMapBufferOES"));
1441 }
1442 if (!fn.glMapBufferFn) {
1443 fn.glMapBufferFn =
1444 reinterpret_cast<glMapBufferProc>(GetGLProcAddress("glMapBuffer"));
1445 }
1446
1447 fn.glMapBufferRangeFn = 0;
1448 debug_fn.glMapBufferRangeFn = 0;
1449 if ((ver->is_gl3 || ver->is_gl4 || ver->is_es3) ||
1450 ext.b_GL_ARB_map_buffer_range) {
1451 fn.glMapBufferRangeFn = reinterpret_cast<glMapBufferRangeProc>(
1452 GetGLProcAddress("glMapBufferRange"));
1453 }
1454 if (!fn.glMapBufferRangeFn) {
1455 fn.glMapBufferRangeFn = reinterpret_cast<glMapBufferRangeProc>(
1456 GetGLProcAddress("glMapBufferRangeEXT"));
1457 }
1458
1459 fn.glProgramBinaryFn = 0;
1460 debug_fn.glProgramBinaryFn = 0;
1461 if (ext.b_GL_OES_get_program_binary) {
1462 fn.glProgramBinaryFn = reinterpret_cast<glProgramBinaryProc>(
1463 GetGLProcAddress("glProgramBinaryOES"));
1464 }
1465 if (!fn.glProgramBinaryFn) {
1466 fn.glProgramBinaryFn = reinterpret_cast<glProgramBinaryProc>(
1467 GetGLProcAddress("glProgramBinary"));
1468 }
1469
1470 fn.glQueryCounterFn = 0;
1471 debug_fn.glQueryCounterFn = 0;
1472 if (ext.b_GL_ARB_timer_query) {
1473 fn.glQueryCounterFn = reinterpret_cast<glQueryCounterProc>(
1474 GetGLProcAddress("glQueryCounter"));
1475 }
1476 if (!fn.glQueryCounterFn) {
1477 fn.glQueryCounterFn = reinterpret_cast<glQueryCounterProc>(
1478 GetGLProcAddress("glQueryCounterEXT"));
1479 }
1480
1481 fn.glRenderbufferStorageEXTFn = 0;
1482 debug_fn.glRenderbufferStorageEXTFn = 0;
1483 if (ext.b_GL_EXT_framebuffer_object) {
1484 fn.glRenderbufferStorageEXTFn =
1485 reinterpret_cast<glRenderbufferStorageEXTProc>(
1486 GetGLProcAddress("glRenderbufferStorageEXT"));
1487 }
1488 if (!fn.glRenderbufferStorageEXTFn) {
1489 fn.glRenderbufferStorageEXTFn =
1490 reinterpret_cast<glRenderbufferStorageEXTProc>(
1491 GetGLProcAddress("glRenderbufferStorage"));
1492 }
1493
1494 fn.glRenderbufferStorageMultisampleANGLEFn = 0;
1495 debug_fn.glRenderbufferStorageMultisampleANGLEFn = 0;
1496 if (ext.b_GL_ANGLE_framebuffer_multisample) {
1497 fn.glRenderbufferStorageMultisampleANGLEFn =
1498 reinterpret_cast<glRenderbufferStorageMultisampleANGLEProc>(
1499 GetGLProcAddress("glRenderbufferStorageMultisampleANGLE"));
1500 }
1501 if (!fn.glRenderbufferStorageMultisampleANGLEFn) {
1502 fn.glRenderbufferStorageMultisampleANGLEFn =
1503 reinterpret_cast<glRenderbufferStorageMultisampleANGLEProc>(
1504 GetGLProcAddress("glRenderbufferStorageMultisample"));
1505 }
1506
1507 fn.glRenderbufferStorageMultisampleEXTFn = 0;
1508 debug_fn.glRenderbufferStorageMultisampleEXTFn = 0;
1509 if ((ext.b_GL_EXT_framebuffer_multisample ||
1510 ext.b_GL_EXT_multisampled_render_to_texture)) {
1511 fn.glRenderbufferStorageMultisampleEXTFn =
1512 reinterpret_cast<glRenderbufferStorageMultisampleEXTProc>(
1513 GetGLProcAddress("glRenderbufferStorageMultisampleEXT"));
1514 }
1515 if (!fn.glRenderbufferStorageMultisampleEXTFn) {
1516 fn.glRenderbufferStorageMultisampleEXTFn =
1517 reinterpret_cast<glRenderbufferStorageMultisampleEXTProc>(
1518 GetGLProcAddress("glRenderbufferStorageMultisample"));
1519 }
1520
1521 fn.glTexStorage2DEXTFn = 0;
1522 debug_fn.glTexStorage2DEXTFn = 0;
1523 if (ver->is_es3 || ext.b_GL_ARB_texture_storage) {
1524 fn.glTexStorage2DEXTFn = reinterpret_cast<glTexStorage2DEXTProc>(
1525 GetGLProcAddress("glTexStorage2D"));
1526 }
1527 if (!fn.glTexStorage2DEXTFn) {
1528 fn.glTexStorage2DEXTFn = reinterpret_cast<glTexStorage2DEXTProc>(
1529 GetGLProcAddress("glTexStorage2DEXT"));
1530 }
1531
1532 fn.glUnmapBufferFn = 0;
1533 debug_fn.glUnmapBufferFn = 0;
1534 if (ext.b_GL_OES_mapbuffer) {
1535 fn.glUnmapBufferFn = reinterpret_cast<glUnmapBufferProc>(
1536 GetGLProcAddress("glUnmapBufferOES"));
1537 }
1538 if (!fn.glUnmapBufferFn) {
1539 fn.glUnmapBufferFn =
1540 reinterpret_cast<glUnmapBufferProc>(GetGLProcAddress("glUnmapBuffer"));
1541 }
1542
1543 fn.glVertexAttribDivisorANGLEFn = 0;
1544 debug_fn.glVertexAttribDivisorANGLEFn = 0;
1545 if (ext.b_GL_ARB_instanced_arrays) {
1546 fn.glVertexAttribDivisorANGLEFn =
1547 reinterpret_cast<glVertexAttribDivisorANGLEProc>(
1548 GetGLProcAddress("glVertexAttribDivisorARB"));
1549 }
1550 if (!fn.glVertexAttribDivisorANGLEFn && (ext.b_GL_ANGLE_instanced_arrays)) {
1551 fn.glVertexAttribDivisorANGLEFn =
1552 reinterpret_cast<glVertexAttribDivisorANGLEProc>(
1553 GetGLProcAddress("glVertexAttribDivisorANGLE"));
1554 }
1555 if (!fn.glVertexAttribDivisorANGLEFn) {
1556 fn.glVertexAttribDivisorANGLEFn =
1557 reinterpret_cast<glVertexAttribDivisorANGLEProc>(
1558 GetGLProcAddress("glVertexAttribDivisor"));
1559 }
1560
1561 if (g_debugBindingsInitialized)
1562 InitializeDebugBindings();
1563 }
1564
1565 extern "C" {
1566
1567 static void GL_BINDING_CALL Debug_glActiveTexture(GLenum texture) {
1568 GL_SERVICE_LOG("glActiveTexture"
1569 << "(" << GLEnums::GetStringEnum(texture) << ")");
1570 g_driver_gl.debug_fn.glActiveTextureFn(texture);
1571 }
1572
1573 static void GL_BINDING_CALL
1574 Debug_glAttachShader(GLuint program, GLuint shader) {
1575 GL_SERVICE_LOG("glAttachShader"
1576 << "(" << program << ", " << shader << ")");
1577 g_driver_gl.debug_fn.glAttachShaderFn(program, shader);
1578 }
1579
1580 static void GL_BINDING_CALL Debug_glBeginQuery(GLenum target, GLuint id) {
1581 GL_SERVICE_LOG("glBeginQuery"
1582 << "(" << GLEnums::GetStringEnum(target) << ", " << id << ")");
1583 g_driver_gl.debug_fn.glBeginQueryFn(target, id);
1584 }
1585
1586 static void GL_BINDING_CALL Debug_glBeginQueryARB(GLenum target, GLuint id) {
1587 GL_SERVICE_LOG("glBeginQueryARB"
1588 << "(" << GLEnums::GetStringEnum(target) << ", " << id << ")");
1589 g_driver_gl.debug_fn.glBeginQueryARBFn(target, id);
1590 }
1591
1592 static void GL_BINDING_CALL
1593 Debug_glBeginTransformFeedback(GLenum primitiveMode) {
1594 GL_SERVICE_LOG("glBeginTransformFeedback"
1595 << "(" << GLEnums::GetStringEnum(primitiveMode) << ")");
1596 g_driver_gl.debug_fn.glBeginTransformFeedbackFn(primitiveMode);
1597 }
1598
1599 static void GL_BINDING_CALL
1600 Debug_glBindAttribLocation(GLuint program, GLuint index, const char* name) {
1601 GL_SERVICE_LOG("glBindAttribLocation"
1602 << "(" << program << ", " << index << ", " << name << ")");
1603 g_driver_gl.debug_fn.glBindAttribLocationFn(program, index, name);
1604 }
1605
1606 static void GL_BINDING_CALL Debug_glBindBuffer(GLenum target, GLuint buffer) {
1607 GL_SERVICE_LOG("glBindBuffer"
1608 << "(" << GLEnums::GetStringEnum(target) << ", " << buffer
1609 << ")");
1610 g_driver_gl.debug_fn.glBindBufferFn(target, buffer);
1611 }
1612
1613 static void GL_BINDING_CALL
1614 Debug_glBindBufferBase(GLenum target, GLuint index, GLuint buffer) {
1615 GL_SERVICE_LOG("glBindBufferBase"
1616 << "(" << GLEnums::GetStringEnum(target) << ", " << index
1617 << ", " << buffer << ")");
1618 g_driver_gl.debug_fn.glBindBufferBaseFn(target, index, buffer);
1619 }
1620
1621 static void GL_BINDING_CALL Debug_glBindBufferRange(GLenum target,
1622 GLuint index,
1623 GLuint buffer,
1624 GLintptr offset,
1625 GLsizeiptr size) {
1626 GL_SERVICE_LOG("glBindBufferRange"
1627 << "(" << GLEnums::GetStringEnum(target) << ", " << index
1628 << ", " << buffer << ", " << offset << ", " << size << ")");
1629 g_driver_gl.debug_fn.glBindBufferRangeFn(target, index, buffer, offset, size);
1630 }
1631
1632 static void GL_BINDING_CALL Debug_glBindFragDataLocation(GLuint program,
1633 GLuint colorNumber,
1634 const char* name) {
1635 GL_SERVICE_LOG("glBindFragDataLocation"
1636 << "(" << program << ", " << colorNumber << ", " << name
1637 << ")");
1638 g_driver_gl.debug_fn.glBindFragDataLocationFn(program, colorNumber, name);
1639 }
1640
1641 static void GL_BINDING_CALL
1642 Debug_glBindFragDataLocationIndexed(GLuint program,
1643 GLuint colorNumber,
1644 GLuint index,
1645 const char* name) {
1646 GL_SERVICE_LOG("glBindFragDataLocationIndexed"
1647 << "(" << program << ", " << colorNumber << ", " << index
1648 << ", " << name << ")");
1649 g_driver_gl.debug_fn.glBindFragDataLocationIndexedFn(program, colorNumber,
1650 index, name);
1651 }
1652
1653 static void GL_BINDING_CALL
1654 Debug_glBindFramebufferEXT(GLenum target, GLuint framebuffer) {
1655 GL_SERVICE_LOG("glBindFramebufferEXT"
1656 << "(" << GLEnums::GetStringEnum(target) << ", " << framebuffer
1657 << ")");
1658 g_driver_gl.debug_fn.glBindFramebufferEXTFn(target, framebuffer);
1659 }
1660
1661 static void GL_BINDING_CALL
1662 Debug_glBindRenderbufferEXT(GLenum target, GLuint renderbuffer) {
1663 GL_SERVICE_LOG("glBindRenderbufferEXT"
1664 << "(" << GLEnums::GetStringEnum(target) << ", "
1665 << renderbuffer << ")");
1666 g_driver_gl.debug_fn.glBindRenderbufferEXTFn(target, renderbuffer);
1667 }
1668
1669 static void GL_BINDING_CALL Debug_glBindSampler(GLuint unit, GLuint sampler) {
1670 GL_SERVICE_LOG("glBindSampler"
1671 << "(" << unit << ", " << sampler << ")");
1672 g_driver_gl.debug_fn.glBindSamplerFn(unit, sampler);
1673 }
1674
1675 static void GL_BINDING_CALL Debug_glBindTexture(GLenum target, GLuint texture) {
1676 GL_SERVICE_LOG("glBindTexture"
1677 << "(" << GLEnums::GetStringEnum(target) << ", " << texture
1678 << ")");
1679 g_driver_gl.debug_fn.glBindTextureFn(target, texture);
1680 }
1681
1682 static void GL_BINDING_CALL
1683 Debug_glBindTransformFeedback(GLenum target, GLuint id) {
1684 GL_SERVICE_LOG("glBindTransformFeedback"
1685 << "(" << GLEnums::GetStringEnum(target) << ", " << id << ")");
1686 g_driver_gl.debug_fn.glBindTransformFeedbackFn(target, id);
1687 }
1688
1689 static void GL_BINDING_CALL Debug_glBindVertexArrayOES(GLuint array) {
1690 GL_SERVICE_LOG("glBindVertexArrayOES"
1691 << "(" << array << ")");
1692 g_driver_gl.debug_fn.glBindVertexArrayOESFn(array);
1693 }
1694
1695 static void GL_BINDING_CALL Debug_glBlendBarrierKHR(void) {
1696 GL_SERVICE_LOG("glBlendBarrierKHR"
1697 << "("
1698 << ")");
1699 g_driver_gl.debug_fn.glBlendBarrierKHRFn();
1700 }
1701
1702 static void GL_BINDING_CALL Debug_glBlendColor(GLclampf red,
1703 GLclampf green,
1704 GLclampf blue,
1705 GLclampf alpha) {
1706 GL_SERVICE_LOG("glBlendColor"
1707 << "(" << red << ", " << green << ", " << blue << ", " << alpha
1708 << ")");
1709 g_driver_gl.debug_fn.glBlendColorFn(red, green, blue, alpha);
1710 }
1711
1712 static void GL_BINDING_CALL Debug_glBlendEquation(GLenum mode) {
1713 GL_SERVICE_LOG("glBlendEquation"
1714 << "(" << GLEnums::GetStringEnum(mode) << ")");
1715 g_driver_gl.debug_fn.glBlendEquationFn(mode);
1716 }
1717
1718 static void GL_BINDING_CALL
1719 Debug_glBlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha) {
1720 GL_SERVICE_LOG("glBlendEquationSeparate"
1721 << "(" << GLEnums::GetStringEnum(modeRGB) << ", "
1722 << GLEnums::GetStringEnum(modeAlpha) << ")");
1723 g_driver_gl.debug_fn.glBlendEquationSeparateFn(modeRGB, modeAlpha);
1724 }
1725
1726 static void GL_BINDING_CALL Debug_glBlendFunc(GLenum sfactor, GLenum dfactor) {
1727 GL_SERVICE_LOG("glBlendFunc"
1728 << "(" << GLEnums::GetStringEnum(sfactor) << ", "
1729 << GLEnums::GetStringEnum(dfactor) << ")");
1730 g_driver_gl.debug_fn.glBlendFuncFn(sfactor, dfactor);
1731 }
1732
1733 static void GL_BINDING_CALL Debug_glBlendFuncSeparate(GLenum srcRGB,
1734 GLenum dstRGB,
1735 GLenum srcAlpha,
1736 GLenum dstAlpha) {
1737 GL_SERVICE_LOG("glBlendFuncSeparate"
1738 << "(" << GLEnums::GetStringEnum(srcRGB) << ", "
1739 << GLEnums::GetStringEnum(dstRGB) << ", "
1740 << GLEnums::GetStringEnum(srcAlpha) << ", "
1741 << GLEnums::GetStringEnum(dstAlpha) << ")");
1742 g_driver_gl.debug_fn.glBlendFuncSeparateFn(srcRGB, dstRGB, srcAlpha,
1743 dstAlpha);
1744 }
1745
1746 static void GL_BINDING_CALL Debug_glBlitFramebuffer(GLint srcX0,
1747 GLint srcY0,
1748 GLint srcX1,
1749 GLint srcY1,
1750 GLint dstX0,
1751 GLint dstY0,
1752 GLint dstX1,
1753 GLint dstY1,
1754 GLbitfield mask,
1755 GLenum filter) {
1756 GL_SERVICE_LOG("glBlitFramebuffer"
1757 << "(" << srcX0 << ", " << srcY0 << ", " << srcX1 << ", "
1758 << srcY1 << ", " << dstX0 << ", " << dstY0 << ", " << dstX1
1759 << ", " << dstY1 << ", " << mask << ", "
1760 << GLEnums::GetStringEnum(filter) << ")");
1761 g_driver_gl.debug_fn.glBlitFramebufferFn(srcX0, srcY0, srcX1, srcY1, dstX0,
1762 dstY0, dstX1, dstY1, mask, filter);
1763 }
1764
1765 static void GL_BINDING_CALL Debug_glBlitFramebufferANGLE(GLint srcX0,
1766 GLint srcY0,
1767 GLint srcX1,
1768 GLint srcY1,
1769 GLint dstX0,
1770 GLint dstY0,
1771 GLint dstX1,
1772 GLint dstY1,
1773 GLbitfield mask,
1774 GLenum filter) {
1775 GL_SERVICE_LOG("glBlitFramebufferANGLE"
1776 << "(" << srcX0 << ", " << srcY0 << ", " << srcX1 << ", "
1777 << srcY1 << ", " << dstX0 << ", " << dstY0 << ", " << dstX1
1778 << ", " << dstY1 << ", " << mask << ", "
1779 << GLEnums::GetStringEnum(filter) << ")");
1780 g_driver_gl.debug_fn.glBlitFramebufferANGLEFn(
1781 srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter);
1782 }
1783
1784 static void GL_BINDING_CALL Debug_glBlitFramebufferEXT(GLint srcX0,
1785 GLint srcY0,
1786 GLint srcX1,
1787 GLint srcY1,
1788 GLint dstX0,
1789 GLint dstY0,
1790 GLint dstX1,
1791 GLint dstY1,
1792 GLbitfield mask,
1793 GLenum filter) {
1794 GL_SERVICE_LOG("glBlitFramebufferEXT"
1795 << "(" << srcX0 << ", " << srcY0 << ", " << srcX1 << ", "
1796 << srcY1 << ", " << dstX0 << ", " << dstY0 << ", " << dstX1
1797 << ", " << dstY1 << ", " << mask << ", "
1798 << GLEnums::GetStringEnum(filter) << ")");
1799 g_driver_gl.debug_fn.glBlitFramebufferEXTFn(
1800 srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter);
1801 }
1802
1803 static void GL_BINDING_CALL Debug_glBufferData(GLenum target,
1804 GLsizeiptr size,
1805 const void* data,
1806 GLenum usage) {
1807 GL_SERVICE_LOG("glBufferData"
1808 << "(" << GLEnums::GetStringEnum(target) << ", " << size
1809 << ", " << static_cast<const void*>(data) << ", "
1810 << GLEnums::GetStringEnum(usage) << ")");
1811 g_driver_gl.debug_fn.glBufferDataFn(target, size, data, usage);
1812 }
1813
1814 static void GL_BINDING_CALL Debug_glBufferSubData(GLenum target,
1815 GLintptr offset,
1816 GLsizeiptr size,
1817 const void* data) {
1818 GL_SERVICE_LOG("glBufferSubData"
1819 << "(" << GLEnums::GetStringEnum(target) << ", " << offset
1820 << ", " << size << ", " << static_cast<const void*>(data)
1821 << ")");
1822 g_driver_gl.debug_fn.glBufferSubDataFn(target, offset, size, data);
1823 }
1824
1825 static GLenum GL_BINDING_CALL Debug_glCheckFramebufferStatusEXT(GLenum target) {
1826 GL_SERVICE_LOG("glCheckFramebufferStatusEXT"
1827 << "(" << GLEnums::GetStringEnum(target) << ")");
1828 GLenum result = g_driver_gl.debug_fn.glCheckFramebufferStatusEXTFn(target);
1829
1830 GL_SERVICE_LOG("GL_RESULT: " << GLEnums::GetStringEnum(result));
1831
1832 return result;
1833 }
1834
1835 static void GL_BINDING_CALL Debug_glClear(GLbitfield mask) {
1836 GL_SERVICE_LOG("glClear"
1837 << "(" << mask << ")");
1838 g_driver_gl.debug_fn.glClearFn(mask);
1839 }
1840
1841 static void GL_BINDING_CALL Debug_glClearBufferfi(GLenum buffer,
1842 GLint drawbuffer,
1843 const GLfloat depth,
1844 GLint stencil) {
1845 GL_SERVICE_LOG("glClearBufferfi"
1846 << "(" << GLEnums::GetStringEnum(buffer) << ", " << drawbuffer
1847 << ", " << depth << ", " << stencil << ")");
1848 g_driver_gl.debug_fn.glClearBufferfiFn(buffer, drawbuffer, depth, stencil);
1849 }
1850
1851 static void GL_BINDING_CALL
1852 Debug_glClearBufferfv(GLenum buffer, GLint drawbuffer, const GLfloat* value) {
1853 GL_SERVICE_LOG("glClearBufferfv"
1854 << "(" << GLEnums::GetStringEnum(buffer) << ", " << drawbuffer
1855 << ", " << static_cast<const void*>(value) << ")");
1856 g_driver_gl.debug_fn.glClearBufferfvFn(buffer, drawbuffer, value);
1857 }
1858
1859 static void GL_BINDING_CALL
1860 Debug_glClearBufferiv(GLenum buffer, GLint drawbuffer, const GLint* value) {
1861 GL_SERVICE_LOG("glClearBufferiv"
1862 << "(" << GLEnums::GetStringEnum(buffer) << ", " << drawbuffer
1863 << ", " << static_cast<const void*>(value) << ")");
1864 g_driver_gl.debug_fn.glClearBufferivFn(buffer, drawbuffer, value);
1865 }
1866
1867 static void GL_BINDING_CALL
1868 Debug_glClearBufferuiv(GLenum buffer, GLint drawbuffer, const GLuint* value) {
1869 GL_SERVICE_LOG("glClearBufferuiv"
1870 << "(" << GLEnums::GetStringEnum(buffer) << ", " << drawbuffer
1871 << ", " << static_cast<const void*>(value) << ")");
1872 g_driver_gl.debug_fn.glClearBufferuivFn(buffer, drawbuffer, value);
1873 }
1874
1875 static void GL_BINDING_CALL Debug_glClearColor(GLclampf red,
1876 GLclampf green,
1877 GLclampf blue,
1878 GLclampf alpha) {
1879 GL_SERVICE_LOG("glClearColor"
1880 << "(" << red << ", " << green << ", " << blue << ", " << alpha
1881 << ")");
1882 g_driver_gl.debug_fn.glClearColorFn(red, green, blue, alpha);
1883 }
1884
1885 static void GL_BINDING_CALL Debug_glClearDepth(GLclampd depth) {
1886 GL_SERVICE_LOG("glClearDepth"
1887 << "(" << depth << ")");
1888 g_driver_gl.debug_fn.glClearDepthFn(depth);
1889 }
1890
1891 static void GL_BINDING_CALL Debug_glClearDepthf(GLclampf depth) {
1892 GL_SERVICE_LOG("glClearDepthf"
1893 << "(" << depth << ")");
1894 g_driver_gl.debug_fn.glClearDepthfFn(depth);
1895 }
1896
1897 static void GL_BINDING_CALL Debug_glClearStencil(GLint s) {
1898 GL_SERVICE_LOG("glClearStencil"
1899 << "(" << s << ")");
1900 g_driver_gl.debug_fn.glClearStencilFn(s);
1901 }
1902
1903 static GLenum GL_BINDING_CALL
1904 Debug_glClientWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout) {
1905 GL_SERVICE_LOG("glClientWaitSync"
1906 << "(" << sync << ", " << flags << ", " << timeout << ")");
1907 GLenum result = g_driver_gl.debug_fn.glClientWaitSyncFn(sync, flags, timeout);
1908 GL_SERVICE_LOG("GL_RESULT: " << result);
1909 return result;
1910 }
1911
1912 static void GL_BINDING_CALL Debug_glColorMask(GLboolean red,
1913 GLboolean green,
1914 GLboolean blue,
1915 GLboolean alpha) {
1916 GL_SERVICE_LOG("glColorMask"
1917 << "(" << GLEnums::GetStringBool(red) << ", "
1918 << GLEnums::GetStringBool(green) << ", "
1919 << GLEnums::GetStringBool(blue) << ", "
1920 << GLEnums::GetStringBool(alpha) << ")");
1921 g_driver_gl.debug_fn.glColorMaskFn(red, green, blue, alpha);
1922 }
1923
1924 static void GL_BINDING_CALL Debug_glCompileShader(GLuint shader) {
1925 GL_SERVICE_LOG("glCompileShader"
1926 << "(" << shader << ")");
1927 g_driver_gl.debug_fn.glCompileShaderFn(shader);
1928 }
1929
1930 static void GL_BINDING_CALL Debug_glCompressedTexImage2D(GLenum target,
1931 GLint level,
1932 GLenum internalformat,
1933 GLsizei width,
1934 GLsizei height,
1935 GLint border,
1936 GLsizei imageSize,
1937 const void* data) {
1938 GL_SERVICE_LOG("glCompressedTexImage2D"
1939 << "(" << GLEnums::GetStringEnum(target) << ", " << level
1940 << ", " << GLEnums::GetStringEnum(internalformat) << ", "
1941 << width << ", " << height << ", " << border << ", "
1942 << imageSize << ", " << static_cast<const void*>(data) << ")");
1943 g_driver_gl.debug_fn.glCompressedTexImage2DFn(
1944 target, level, internalformat, width, height, border, imageSize, data);
1945 }
1946
1947 static void GL_BINDING_CALL Debug_glCompressedTexImage3D(GLenum target,
1948 GLint level,
1949 GLenum internalformat,
1950 GLsizei width,
1951 GLsizei height,
1952 GLsizei depth,
1953 GLint border,
1954 GLsizei imageSize,
1955 const void* data) {
1956 GL_SERVICE_LOG("glCompressedTexImage3D"
1957 << "(" << GLEnums::GetStringEnum(target) << ", " << level
1958 << ", " << GLEnums::GetStringEnum(internalformat) << ", "
1959 << width << ", " << height << ", " << depth << ", " << border
1960 << ", " << imageSize << ", " << static_cast<const void*>(data)
1961 << ")");
1962 g_driver_gl.debug_fn.glCompressedTexImage3DFn(target, level, internalformat,
1963 width, height, depth, border,
1964 imageSize, data);
1965 }
1966
1967 static void GL_BINDING_CALL Debug_glCompressedTexSubImage2D(GLenum target,
1968 GLint level,
1969 GLint xoffset,
1970 GLint yoffset,
1971 GLsizei width,
1972 GLsizei height,
1973 GLenum format,
1974 GLsizei imageSize,
1975 const void* data) {
1976 GL_SERVICE_LOG("glCompressedTexSubImage2D"
1977 << "(" << GLEnums::GetStringEnum(target) << ", " << level
1978 << ", " << xoffset << ", " << yoffset << ", " << width << ", "
1979 << height << ", " << GLEnums::GetStringEnum(format) << ", "
1980 << imageSize << ", " << static_cast<const void*>(data) << ")");
1981 g_driver_gl.debug_fn.glCompressedTexSubImage2DFn(
1982 target, level, xoffset, yoffset, width, height, format, imageSize, data);
1983 }
1984
1985 static void GL_BINDING_CALL Debug_glCopyBufferSubData(GLenum readTarget,
1986 GLenum writeTarget,
1987 GLintptr readOffset,
1988 GLintptr writeOffset,
1989 GLsizeiptr size) {
1990 GL_SERVICE_LOG("glCopyBufferSubData"
1991 << "(" << GLEnums::GetStringEnum(readTarget) << ", "
1992 << GLEnums::GetStringEnum(writeTarget) << ", " << readOffset
1993 << ", " << writeOffset << ", " << size << ")");
1994 g_driver_gl.debug_fn.glCopyBufferSubDataFn(readTarget, writeTarget,
1995 readOffset, writeOffset, size);
1996 }
1997
1998 static void GL_BINDING_CALL Debug_glCopyTexImage2D(GLenum target,
1999 GLint level,
2000 GLenum internalformat,
2001 GLint x,
2002 GLint y,
2003 GLsizei width,
2004 GLsizei height,
2005 GLint border) {
2006 GL_SERVICE_LOG("glCopyTexImage2D"
2007 << "(" << GLEnums::GetStringEnum(target) << ", " << level
2008 << ", " << GLEnums::GetStringEnum(internalformat) << ", " << x
2009 << ", " << y << ", " << width << ", " << height << ", "
2010 << border << ")");
2011 g_driver_gl.debug_fn.glCopyTexImage2DFn(target, level, internalformat, x, y,
2012 width, height, border);
2013 }
2014
2015 static void GL_BINDING_CALL Debug_glCopyTexSubImage2D(GLenum target,
2016 GLint level,
2017 GLint xoffset,
2018 GLint yoffset,
2019 GLint x,
2020 GLint y,
2021 GLsizei width,
2022 GLsizei height) {
2023 GL_SERVICE_LOG("glCopyTexSubImage2D"
2024 << "(" << GLEnums::GetStringEnum(target) << ", " << level
2025 << ", " << xoffset << ", " << yoffset << ", " << x << ", " << y
2026 << ", " << width << ", " << height << ")");
2027 g_driver_gl.debug_fn.glCopyTexSubImage2DFn(target, level, xoffset, yoffset, x,
2028 y, width, height);
2029 }
2030
2031 static void GL_BINDING_CALL Debug_glCopyTexSubImage3D(GLenum target,
2032 GLint level,
2033 GLint xoffset,
2034 GLint yoffset,
2035 GLint zoffset,
2036 GLint x,
2037 GLint y,
2038 GLsizei width,
2039 GLsizei height) {
2040 GL_SERVICE_LOG("glCopyTexSubImage3D"
2041 << "(" << GLEnums::GetStringEnum(target) << ", " << level
2042 << ", " << xoffset << ", " << yoffset << ", " << zoffset
2043 << ", " << x << ", " << y << ", " << width << ", " << height
2044 << ")");
2045 g_driver_gl.debug_fn.glCopyTexSubImage3DFn(target, level, xoffset, yoffset,
2046 zoffset, x, y, width, height);
2047 }
2048
2049 static GLuint GL_BINDING_CALL Debug_glCreateProgram(void) {
2050 GL_SERVICE_LOG("glCreateProgram"
2051 << "("
2052 << ")");
2053 GLuint result = g_driver_gl.debug_fn.glCreateProgramFn();
2054 GL_SERVICE_LOG("GL_RESULT: " << result);
2055 return result;
2056 }
2057
2058 static GLuint GL_BINDING_CALL Debug_glCreateShader(GLenum type) {
2059 GL_SERVICE_LOG("glCreateShader"
2060 << "(" << GLEnums::GetStringEnum(type) << ")");
2061 GLuint result = g_driver_gl.debug_fn.glCreateShaderFn(type);
2062 GL_SERVICE_LOG("GL_RESULT: " << result);
2063 return result;
2064 }
2065
2066 static void GL_BINDING_CALL Debug_glCullFace(GLenum mode) {
2067 GL_SERVICE_LOG("glCullFace"
2068 << "(" << GLEnums::GetStringEnum(mode) << ")");
2069 g_driver_gl.debug_fn.glCullFaceFn(mode);
2070 }
2071
2072 static void GL_BINDING_CALL
2073 Debug_glDeleteBuffersARB(GLsizei n, const GLuint* buffers) {
2074 GL_SERVICE_LOG("glDeleteBuffersARB"
2075 << "(" << n << ", " << static_cast<const void*>(buffers)
2076 << ")");
2077 g_driver_gl.debug_fn.glDeleteBuffersARBFn(n, buffers);
2078 }
2079
2080 static void GL_BINDING_CALL
2081 Debug_glDeleteFencesAPPLE(GLsizei n, const GLuint* fences) {
2082 GL_SERVICE_LOG("glDeleteFencesAPPLE"
2083 << "(" << n << ", " << static_cast<const void*>(fences)
2084 << ")");
2085 g_driver_gl.debug_fn.glDeleteFencesAPPLEFn(n, fences);
2086 }
2087
2088 static void GL_BINDING_CALL
2089 Debug_glDeleteFencesNV(GLsizei n, const GLuint* fences) {
2090 GL_SERVICE_LOG("glDeleteFencesNV"
2091 << "(" << n << ", " << static_cast<const void*>(fences)
2092 << ")");
2093 g_driver_gl.debug_fn.glDeleteFencesNVFn(n, fences);
2094 }
2095
2096 static void GL_BINDING_CALL
2097 Debug_glDeleteFramebuffersEXT(GLsizei n, const GLuint* framebuffers) {
2098 GL_SERVICE_LOG("glDeleteFramebuffersEXT"
2099 << "(" << n << ", " << static_cast<const void*>(framebuffers)
2100 << ")");
2101 g_driver_gl.debug_fn.glDeleteFramebuffersEXTFn(n, framebuffers);
2102 }
2103
2104 static void GL_BINDING_CALL Debug_glDeleteProgram(GLuint program) {
2105 GL_SERVICE_LOG("glDeleteProgram"
2106 << "(" << program << ")");
2107 g_driver_gl.debug_fn.glDeleteProgramFn(program);
2108 }
2109
2110 static void GL_BINDING_CALL
2111 Debug_glDeleteQueries(GLsizei n, const GLuint* ids) {
2112 GL_SERVICE_LOG("glDeleteQueries"
2113 << "(" << n << ", " << static_cast<const void*>(ids) << ")");
2114 g_driver_gl.debug_fn.glDeleteQueriesFn(n, ids);
2115 }
2116
2117 static void GL_BINDING_CALL
2118 Debug_glDeleteQueriesARB(GLsizei n, const GLuint* ids) {
2119 GL_SERVICE_LOG("glDeleteQueriesARB"
2120 << "(" << n << ", " << static_cast<const void*>(ids) << ")");
2121 g_driver_gl.debug_fn.glDeleteQueriesARBFn(n, ids);
2122 }
2123
2124 static void GL_BINDING_CALL
2125 Debug_glDeleteRenderbuffersEXT(GLsizei n, const GLuint* renderbuffers) {
2126 GL_SERVICE_LOG("glDeleteRenderbuffersEXT"
2127 << "(" << n << ", " << static_cast<const void*>(renderbuffers)
2128 << ")");
2129 g_driver_gl.debug_fn.glDeleteRenderbuffersEXTFn(n, renderbuffers);
2130 }
2131
2132 static void GL_BINDING_CALL
2133 Debug_glDeleteSamplers(GLsizei n, const GLuint* samplers) {
2134 GL_SERVICE_LOG("glDeleteSamplers"
2135 << "(" << n << ", " << static_cast<const void*>(samplers)
2136 << ")");
2137 g_driver_gl.debug_fn.glDeleteSamplersFn(n, samplers);
2138 }
2139
2140 static void GL_BINDING_CALL Debug_glDeleteShader(GLuint shader) {
2141 GL_SERVICE_LOG("glDeleteShader"
2142 << "(" << shader << ")");
2143 g_driver_gl.debug_fn.glDeleteShaderFn(shader);
2144 }
2145
2146 static void GL_BINDING_CALL Debug_glDeleteSync(GLsync sync) {
2147 GL_SERVICE_LOG("glDeleteSync"
2148 << "(" << sync << ")");
2149 g_driver_gl.debug_fn.glDeleteSyncFn(sync);
2150 }
2151
2152 static void GL_BINDING_CALL
2153 Debug_glDeleteTextures(GLsizei n, const GLuint* textures) {
2154 GL_SERVICE_LOG("glDeleteTextures"
2155 << "(" << n << ", " << static_cast<const void*>(textures)
2156 << ")");
2157 g_driver_gl.debug_fn.glDeleteTexturesFn(n, textures);
2158 }
2159
2160 static void GL_BINDING_CALL
2161 Debug_glDeleteTransformFeedbacks(GLsizei n, const GLuint* ids) {
2162 GL_SERVICE_LOG("glDeleteTransformFeedbacks"
2163 << "(" << n << ", " << static_cast<const void*>(ids) << ")");
2164 g_driver_gl.debug_fn.glDeleteTransformFeedbacksFn(n, ids);
2165 }
2166
2167 static void GL_BINDING_CALL
2168 Debug_glDeleteVertexArraysOES(GLsizei n, const GLuint* arrays) {
2169 GL_SERVICE_LOG("glDeleteVertexArraysOES"
2170 << "(" << n << ", " << static_cast<const void*>(arrays)
2171 << ")");
2172 g_driver_gl.debug_fn.glDeleteVertexArraysOESFn(n, arrays);
2173 }
2174
2175 static void GL_BINDING_CALL Debug_glDepthFunc(GLenum func) {
2176 GL_SERVICE_LOG("glDepthFunc"
2177 << "(" << GLEnums::GetStringEnum(func) << ")");
2178 g_driver_gl.debug_fn.glDepthFuncFn(func);
2179 }
2180
2181 static void GL_BINDING_CALL Debug_glDepthMask(GLboolean flag) {
2182 GL_SERVICE_LOG("glDepthMask"
2183 << "(" << GLEnums::GetStringBool(flag) << ")");
2184 g_driver_gl.debug_fn.glDepthMaskFn(flag);
2185 }
2186
2187 static void GL_BINDING_CALL Debug_glDepthRange(GLclampd zNear, GLclampd zFar) {
2188 GL_SERVICE_LOG("glDepthRange"
2189 << "(" << zNear << ", " << zFar << ")");
2190 g_driver_gl.debug_fn.glDepthRangeFn(zNear, zFar);
2191 }
2192
2193 static void GL_BINDING_CALL Debug_glDepthRangef(GLclampf zNear, GLclampf zFar) {
2194 GL_SERVICE_LOG("glDepthRangef"
2195 << "(" << zNear << ", " << zFar << ")");
2196 g_driver_gl.debug_fn.glDepthRangefFn(zNear, zFar);
2197 }
2198
2199 static void GL_BINDING_CALL
2200 Debug_glDetachShader(GLuint program, GLuint shader) {
2201 GL_SERVICE_LOG("glDetachShader"
2202 << "(" << program << ", " << shader << ")");
2203 g_driver_gl.debug_fn.glDetachShaderFn(program, shader);
2204 }
2205
2206 static void GL_BINDING_CALL Debug_glDisable(GLenum cap) {
2207 GL_SERVICE_LOG("glDisable"
2208 << "(" << GLEnums::GetStringEnum(cap) << ")");
2209 g_driver_gl.debug_fn.glDisableFn(cap);
2210 }
2211
2212 static void GL_BINDING_CALL Debug_glDisableVertexAttribArray(GLuint index) {
2213 GL_SERVICE_LOG("glDisableVertexAttribArray"
2214 << "(" << index << ")");
2215 g_driver_gl.debug_fn.glDisableVertexAttribArrayFn(index);
2216 }
2217
2218 static void GL_BINDING_CALL
2219 Debug_glDiscardFramebufferEXT(GLenum target,
2220 GLsizei numAttachments,
2221 const GLenum* attachments) {
2222 GL_SERVICE_LOG("glDiscardFramebufferEXT"
2223 << "(" << GLEnums::GetStringEnum(target) << ", "
2224 << numAttachments << ", "
2225 << static_cast<const void*>(attachments) << ")");
2226 g_driver_gl.debug_fn.glDiscardFramebufferEXTFn(target, numAttachments,
2227 attachments);
2228 }
2229
2230 static void GL_BINDING_CALL
2231 Debug_glDrawArrays(GLenum mode, GLint first, GLsizei count) {
2232 GL_SERVICE_LOG("glDrawArrays"
2233 << "(" << GLEnums::GetStringEnum(mode) << ", " << first << ", "
2234 << count << ")");
2235 g_driver_gl.debug_fn.glDrawArraysFn(mode, first, count);
2236 }
2237
2238 static void GL_BINDING_CALL
2239 Debug_glDrawArraysInstancedANGLE(GLenum mode,
2240 GLint first,
2241 GLsizei count,
2242 GLsizei primcount) {
2243 GL_SERVICE_LOG("glDrawArraysInstancedANGLE"
2244 << "(" << GLEnums::GetStringEnum(mode) << ", " << first << ", "
2245 << count << ", " << primcount << ")");
2246 g_driver_gl.debug_fn.glDrawArraysInstancedANGLEFn(mode, first, count,
2247 primcount);
2248 }
2249
2250 static void GL_BINDING_CALL Debug_glDrawBuffer(GLenum mode) {
2251 GL_SERVICE_LOG("glDrawBuffer"
2252 << "(" << GLEnums::GetStringEnum(mode) << ")");
2253 g_driver_gl.debug_fn.glDrawBufferFn(mode);
2254 }
2255
2256 static void GL_BINDING_CALL
2257 Debug_glDrawBuffersARB(GLsizei n, const GLenum* bufs) {
2258 GL_SERVICE_LOG("glDrawBuffersARB"
2259 << "(" << n << ", " << static_cast<const void*>(bufs) << ")");
2260 g_driver_gl.debug_fn.glDrawBuffersARBFn(n, bufs);
2261 }
2262
2263 static void GL_BINDING_CALL Debug_glDrawElements(GLenum mode,
2264 GLsizei count,
2265 GLenum type,
2266 const void* indices) {
2267 GL_SERVICE_LOG("glDrawElements"
2268 << "(" << GLEnums::GetStringEnum(mode) << ", " << count << ", "
2269 << GLEnums::GetStringEnum(type) << ", "
2270 << static_cast<const void*>(indices) << ")");
2271 g_driver_gl.debug_fn.glDrawElementsFn(mode, count, type, indices);
2272 }
2273
2274 static void GL_BINDING_CALL
2275 Debug_glDrawElementsInstancedANGLE(GLenum mode,
2276 GLsizei count,
2277 GLenum type,
2278 const void* indices,
2279 GLsizei primcount) {
2280 GL_SERVICE_LOG("glDrawElementsInstancedANGLE"
2281 << "(" << GLEnums::GetStringEnum(mode) << ", " << count << ", "
2282 << GLEnums::GetStringEnum(type) << ", "
2283 << static_cast<const void*>(indices) << ", " << primcount
2284 << ")");
2285 g_driver_gl.debug_fn.glDrawElementsInstancedANGLEFn(mode, count, type,
2286 indices, primcount);
2287 }
2288
2289 static void GL_BINDING_CALL Debug_glDrawRangeElements(GLenum mode,
2290 GLuint start,
2291 GLuint end,
2292 GLsizei count,
2293 GLenum type,
2294 const void* indices) {
2295 GL_SERVICE_LOG("glDrawRangeElements"
2296 << "(" << GLEnums::GetStringEnum(mode) << ", " << start << ", "
2297 << end << ", " << count << ", " << GLEnums::GetStringEnum(type)
2298 << ", " << static_cast<const void*>(indices) << ")");
2299 g_driver_gl.debug_fn.glDrawRangeElementsFn(mode, start, end, count, type,
2300 indices);
2301 }
2302
2303 static void GL_BINDING_CALL
2304 Debug_glEGLImageTargetRenderbufferStorageOES(GLenum target,
2305 GLeglImageOES image) {
2306 GL_SERVICE_LOG("glEGLImageTargetRenderbufferStorageOES"
2307 << "(" << GLEnums::GetStringEnum(target) << ", " << image
2308 << ")");
2309 g_driver_gl.debug_fn.glEGLImageTargetRenderbufferStorageOESFn(target, image);
2310 }
2311
2312 static void GL_BINDING_CALL
2313 Debug_glEGLImageTargetTexture2DOES(GLenum target, GLeglImageOES image) {
2314 GL_SERVICE_LOG("glEGLImageTargetTexture2DOES"
2315 << "(" << GLEnums::GetStringEnum(target) << ", " << image
2316 << ")");
2317 g_driver_gl.debug_fn.glEGLImageTargetTexture2DOESFn(target, image);
2318 }
2319
2320 static void GL_BINDING_CALL Debug_glEnable(GLenum cap) {
2321 GL_SERVICE_LOG("glEnable"
2322 << "(" << GLEnums::GetStringEnum(cap) << ")");
2323 g_driver_gl.debug_fn.glEnableFn(cap);
2324 }
2325
2326 static void GL_BINDING_CALL Debug_glEnableVertexAttribArray(GLuint index) {
2327 GL_SERVICE_LOG("glEnableVertexAttribArray"
2328 << "(" << index << ")");
2329 g_driver_gl.debug_fn.glEnableVertexAttribArrayFn(index);
2330 }
2331
2332 static void GL_BINDING_CALL Debug_glEndQuery(GLenum target) {
2333 GL_SERVICE_LOG("glEndQuery"
2334 << "(" << GLEnums::GetStringEnum(target) << ")");
2335 g_driver_gl.debug_fn.glEndQueryFn(target);
2336 }
2337
2338 static void GL_BINDING_CALL Debug_glEndQueryARB(GLenum target) {
2339 GL_SERVICE_LOG("glEndQueryARB"
2340 << "(" << GLEnums::GetStringEnum(target) << ")");
2341 g_driver_gl.debug_fn.glEndQueryARBFn(target);
2342 }
2343
2344 static void GL_BINDING_CALL Debug_glEndTransformFeedback(void) {
2345 GL_SERVICE_LOG("glEndTransformFeedback"
2346 << "("
2347 << ")");
2348 g_driver_gl.debug_fn.glEndTransformFeedbackFn();
2349 }
2350
2351 static GLsync GL_BINDING_CALL
2352 Debug_glFenceSync(GLenum condition, GLbitfield flags) {
2353 GL_SERVICE_LOG("glFenceSync"
2354 << "(" << GLEnums::GetStringEnum(condition) << ", " << flags
2355 << ")");
2356 GLsync result = g_driver_gl.debug_fn.glFenceSyncFn(condition, flags);
2357 GL_SERVICE_LOG("GL_RESULT: " << result);
2358 return result;
2359 }
2360
2361 static void GL_BINDING_CALL Debug_glFinish(void) {
2362 GL_SERVICE_LOG("glFinish"
2363 << "("
2364 << ")");
2365 g_driver_gl.debug_fn.glFinishFn();
2366 }
2367
2368 static void GL_BINDING_CALL Debug_glFinishFenceAPPLE(GLuint fence) {
2369 GL_SERVICE_LOG("glFinishFenceAPPLE"
2370 << "(" << fence << ")");
2371 g_driver_gl.debug_fn.glFinishFenceAPPLEFn(fence);
2372 }
2373
2374 static void GL_BINDING_CALL Debug_glFinishFenceNV(GLuint fence) {
2375 GL_SERVICE_LOG("glFinishFenceNV"
2376 << "(" << fence << ")");
2377 g_driver_gl.debug_fn.glFinishFenceNVFn(fence);
2378 }
2379
2380 static void GL_BINDING_CALL Debug_glFlush(void) {
2381 GL_SERVICE_LOG("glFlush"
2382 << "("
2383 << ")");
2384 g_driver_gl.debug_fn.glFlushFn();
2385 }
2386
2387 static void GL_BINDING_CALL Debug_glFlushMappedBufferRange(GLenum target,
2388 GLintptr offset,
2389 GLsizeiptr length) {
2390 GL_SERVICE_LOG("glFlushMappedBufferRange"
2391 << "(" << GLEnums::GetStringEnum(target) << ", " << offset
2392 << ", " << length << ")");
2393 g_driver_gl.debug_fn.glFlushMappedBufferRangeFn(target, offset, length);
2394 }
2395
2396 static void GL_BINDING_CALL
2397 Debug_glFramebufferRenderbufferEXT(GLenum target,
2398 GLenum attachment,
2399 GLenum renderbuffertarget,
2400 GLuint renderbuffer) {
2401 GL_SERVICE_LOG("glFramebufferRenderbufferEXT"
2402 << "(" << GLEnums::GetStringEnum(target) << ", "
2403 << GLEnums::GetStringEnum(attachment) << ", "
2404 << GLEnums::GetStringEnum(renderbuffertarget) << ", "
2405 << renderbuffer << ")");
2406 g_driver_gl.debug_fn.glFramebufferRenderbufferEXTFn(
2407 target, attachment, renderbuffertarget, renderbuffer);
2408 }
2409
2410 static void GL_BINDING_CALL Debug_glFramebufferTexture2DEXT(GLenum target,
2411 GLenum attachment,
2412 GLenum textarget,
2413 GLuint texture,
2414 GLint level) {
2415 GL_SERVICE_LOG("glFramebufferTexture2DEXT"
2416 << "(" << GLEnums::GetStringEnum(target) << ", "
2417 << GLEnums::GetStringEnum(attachment) << ", "
2418 << GLEnums::GetStringEnum(textarget) << ", " << texture << ", "
2419 << level << ")");
2420 g_driver_gl.debug_fn.glFramebufferTexture2DEXTFn(target, attachment,
2421 textarget, texture, level);
2422 }
2423
2424 static void GL_BINDING_CALL
2425 Debug_glFramebufferTexture2DMultisampleEXT(GLenum target,
2426 GLenum attachment,
2427 GLenum textarget,
2428 GLuint texture,
2429 GLint level,
2430 GLsizei samples) {
2431 GL_SERVICE_LOG("glFramebufferTexture2DMultisampleEXT"
2432 << "(" << GLEnums::GetStringEnum(target) << ", "
2433 << GLEnums::GetStringEnum(attachment) << ", "
2434 << GLEnums::GetStringEnum(textarget) << ", " << texture << ", "
2435 << level << ", " << samples << ")");
2436 g_driver_gl.debug_fn.glFramebufferTexture2DMultisampleEXTFn(
2437 target, attachment, textarget, texture, level, samples);
2438 }
2439
2440 static void GL_BINDING_CALL
2441 Debug_glFramebufferTexture2DMultisampleIMG(GLenum target,
2442 GLenum attachment,
2443 GLenum textarget,
2444 GLuint texture,
2445 GLint level,
2446 GLsizei samples) {
2447 GL_SERVICE_LOG("glFramebufferTexture2DMultisampleIMG"
2448 << "(" << GLEnums::GetStringEnum(target) << ", "
2449 << GLEnums::GetStringEnum(attachment) << ", "
2450 << GLEnums::GetStringEnum(textarget) << ", " << texture << ", "
2451 << level << ", " << samples << ")");
2452 g_driver_gl.debug_fn.glFramebufferTexture2DMultisampleIMGFn(
2453 target, attachment, textarget, texture, level, samples);
2454 }
2455
2456 static void GL_BINDING_CALL Debug_glFramebufferTextureLayer(GLenum target,
2457 GLenum attachment,
2458 GLuint texture,
2459 GLint level,
2460 GLint layer) {
2461 GL_SERVICE_LOG("glFramebufferTextureLayer"
2462 << "(" << GLEnums::GetStringEnum(target) << ", "
2463 << GLEnums::GetStringEnum(attachment) << ", " << texture
2464 << ", " << level << ", " << layer << ")");
2465 g_driver_gl.debug_fn.glFramebufferTextureLayerFn(target, attachment, texture,
2466 level, layer);
2467 }
2468
2469 static void GL_BINDING_CALL Debug_glFrontFace(GLenum mode) {
2470 GL_SERVICE_LOG("glFrontFace"
2471 << "(" << GLEnums::GetStringEnum(mode) << ")");
2472 g_driver_gl.debug_fn.glFrontFaceFn(mode);
2473 }
2474
2475 static void GL_BINDING_CALL Debug_glGenBuffersARB(GLsizei n, GLuint* buffers) {
2476 GL_SERVICE_LOG("glGenBuffersARB"
2477 << "(" << n << ", " << static_cast<const void*>(buffers)
2478 << ")");
2479 g_driver_gl.debug_fn.glGenBuffersARBFn(n, buffers);
2480 }
2481
2482 static void GL_BINDING_CALL Debug_glGenerateMipmapEXT(GLenum target) {
2483 GL_SERVICE_LOG("glGenerateMipmapEXT"
2484 << "(" << GLEnums::GetStringEnum(target) << ")");
2485 g_driver_gl.debug_fn.glGenerateMipmapEXTFn(target);
2486 }
2487
2488 static void GL_BINDING_CALL Debug_glGenFencesAPPLE(GLsizei n, GLuint* fences) {
2489 GL_SERVICE_LOG("glGenFencesAPPLE"
2490 << "(" << n << ", " << static_cast<const void*>(fences)
2491 << ")");
2492 g_driver_gl.debug_fn.glGenFencesAPPLEFn(n, fences);
2493 }
2494
2495 static void GL_BINDING_CALL Debug_glGenFencesNV(GLsizei n, GLuint* fences) {
2496 GL_SERVICE_LOG("glGenFencesNV"
2497 << "(" << n << ", " << static_cast<const void*>(fences)
2498 << ")");
2499 g_driver_gl.debug_fn.glGenFencesNVFn(n, fences);
2500 }
2501
2502 static void GL_BINDING_CALL
2503 Debug_glGenFramebuffersEXT(GLsizei n, GLuint* framebuffers) {
2504 GL_SERVICE_LOG("glGenFramebuffersEXT"
2505 << "(" << n << ", " << static_cast<const void*>(framebuffers)
2506 << ")");
2507 g_driver_gl.debug_fn.glGenFramebuffersEXTFn(n, framebuffers);
2508 }
2509
2510 static void GL_BINDING_CALL Debug_glGenQueries(GLsizei n, GLuint* ids) {
2511 GL_SERVICE_LOG("glGenQueries"
2512 << "(" << n << ", " << static_cast<const void*>(ids) << ")");
2513 g_driver_gl.debug_fn.glGenQueriesFn(n, ids);
2514 }
2515
2516 static void GL_BINDING_CALL Debug_glGenQueriesARB(GLsizei n, GLuint* ids) {
2517 GL_SERVICE_LOG("glGenQueriesARB"
2518 << "(" << n << ", " << static_cast<const void*>(ids) << ")");
2519 g_driver_gl.debug_fn.glGenQueriesARBFn(n, ids);
2520 }
2521
2522 static void GL_BINDING_CALL
2523 Debug_glGenRenderbuffersEXT(GLsizei n, GLuint* renderbuffers) {
2524 GL_SERVICE_LOG("glGenRenderbuffersEXT"
2525 << "(" << n << ", " << static_cast<const void*>(renderbuffers)
2526 << ")");
2527 g_driver_gl.debug_fn.glGenRenderbuffersEXTFn(n, renderbuffers);
2528 }
2529
2530 static void GL_BINDING_CALL Debug_glGenSamplers(GLsizei n, GLuint* samplers) {
2531 GL_SERVICE_LOG("glGenSamplers"
2532 << "(" << n << ", " << static_cast<const void*>(samplers)
2533 << ")");
2534 g_driver_gl.debug_fn.glGenSamplersFn(n, samplers);
2535 }
2536
2537 static void GL_BINDING_CALL Debug_glGenTextures(GLsizei n, GLuint* textures) {
2538 GL_SERVICE_LOG("glGenTextures"
2539 << "(" << n << ", " << static_cast<const void*>(textures)
2540 << ")");
2541 g_driver_gl.debug_fn.glGenTexturesFn(n, textures);
2542 }
2543
2544 static void GL_BINDING_CALL
2545 Debug_glGenTransformFeedbacks(GLsizei n, GLuint* ids) {
2546 GL_SERVICE_LOG("glGenTransformFeedbacks"
2547 << "(" << n << ", " << static_cast<const void*>(ids) << ")");
2548 g_driver_gl.debug_fn.glGenTransformFeedbacksFn(n, ids);
2549 }
2550
2551 static void GL_BINDING_CALL
2552 Debug_glGenVertexArraysOES(GLsizei n, GLuint* arrays) {
2553 GL_SERVICE_LOG("glGenVertexArraysOES"
2554 << "(" << n << ", " << static_cast<const void*>(arrays)
2555 << ")");
2556 g_driver_gl.debug_fn.glGenVertexArraysOESFn(n, arrays);
2557 }
2558
2559 static void GL_BINDING_CALL Debug_glGetActiveAttrib(GLuint program,
2560 GLuint index,
2561 GLsizei bufsize,
2562 GLsizei* length,
2563 GLint* size,
2564 GLenum* type,
2565 char* name) {
2566 GL_SERVICE_LOG("glGetActiveAttrib"
2567 << "(" << program << ", " << index << ", " << bufsize << ", "
2568 << static_cast<const void*>(length) << ", "
2569 << static_cast<const void*>(size) << ", "
2570 << static_cast<const void*>(type) << ", "
2571 << static_cast<const void*>(name) << ")");
2572 g_driver_gl.debug_fn.glGetActiveAttribFn(program, index, bufsize, length,
2573 size, type, name);
2574 }
2575
2576 static void GL_BINDING_CALL Debug_glGetActiveUniform(GLuint program,
2577 GLuint index,
2578 GLsizei bufsize,
2579 GLsizei* length,
2580 GLint* size,
2581 GLenum* type,
2582 char* name) {
2583 GL_SERVICE_LOG("glGetActiveUniform"
2584 << "(" << program << ", " << index << ", " << bufsize << ", "
2585 << static_cast<const void*>(length) << ", "
2586 << static_cast<const void*>(size) << ", "
2587 << static_cast<const void*>(type) << ", "
2588 << static_cast<const void*>(name) << ")");
2589 g_driver_gl.debug_fn.glGetActiveUniformFn(program, index, bufsize, length,
2590 size, type, name);
2591 }
2592
2593 static void GL_BINDING_CALL
2594 Debug_glGetActiveUniformBlockiv(GLuint program,
2595 GLuint uniformBlockIndex,
2596 GLenum pname,
2597 GLint* params) {
2598 GL_SERVICE_LOG("glGetActiveUniformBlockiv"
2599 << "(" << program << ", " << uniformBlockIndex << ", "
2600 << GLEnums::GetStringEnum(pname) << ", "
2601 << static_cast<const void*>(params) << ")");
2602 g_driver_gl.debug_fn.glGetActiveUniformBlockivFn(program, uniformBlockIndex,
2603 pname, params);
2604 }
2605
2606 static void GL_BINDING_CALL
2607 Debug_glGetActiveUniformBlockName(GLuint program,
2608 GLuint uniformBlockIndex,
2609 GLsizei bufSize,
2610 GLsizei* length,
2611 char* uniformBlockName) {
2612 GL_SERVICE_LOG("glGetActiveUniformBlockName"
2613 << "(" << program << ", " << uniformBlockIndex << ", "
2614 << bufSize << ", " << static_cast<const void*>(length) << ", "
2615 << static_cast<const void*>(uniformBlockName) << ")");
2616 g_driver_gl.debug_fn.glGetActiveUniformBlockNameFn(
2617 program, uniformBlockIndex, bufSize, length, uniformBlockName);
2618 }
2619
2620 static void GL_BINDING_CALL
2621 Debug_glGetActiveUniformsiv(GLuint program,
2622 GLsizei uniformCount,
2623 const GLuint* uniformIndices,
2624 GLenum pname,
2625 GLint* params) {
2626 GL_SERVICE_LOG("glGetActiveUniformsiv"
2627 << "(" << program << ", " << uniformCount << ", "
2628 << static_cast<const void*>(uniformIndices) << ", "
2629 << GLEnums::GetStringEnum(pname) << ", "
2630 << static_cast<const void*>(params) << ")");
2631 g_driver_gl.debug_fn.glGetActiveUniformsivFn(program, uniformCount,
2632 uniformIndices, pname, params);
2633 }
2634
2635 static void GL_BINDING_CALL Debug_glGetAttachedShaders(GLuint program,
2636 GLsizei maxcount,
2637 GLsizei* count,
2638 GLuint* shaders) {
2639 GL_SERVICE_LOG("glGetAttachedShaders"
2640 << "(" << program << ", " << maxcount << ", "
2641 << static_cast<const void*>(count) << ", "
2642 << static_cast<const void*>(shaders) << ")");
2643 g_driver_gl.debug_fn.glGetAttachedShadersFn(program, maxcount, count,
2644 shaders);
2645 }
2646
2647 static GLint GL_BINDING_CALL
2648 Debug_glGetAttribLocation(GLuint program, const char* name) {
2649 GL_SERVICE_LOG("glGetAttribLocation"
2650 << "(" << program << ", " << name << ")");
2651 GLint result = g_driver_gl.debug_fn.glGetAttribLocationFn(program, name);
2652 GL_SERVICE_LOG("GL_RESULT: " << result);
2653 return result;
2654 }
2655
2656 static void GL_BINDING_CALL
2657 Debug_glGetBooleanv(GLenum pname, GLboolean* params) {
2658 GL_SERVICE_LOG("glGetBooleanv"
2659 << "(" << GLEnums::GetStringEnum(pname) << ", "
2660 << static_cast<const void*>(params) << ")");
2661 g_driver_gl.debug_fn.glGetBooleanvFn(pname, params);
2662 }
2663
2664 static void GL_BINDING_CALL
2665 Debug_glGetBufferParameteriv(GLenum target, GLenum pname, GLint* params) {
2666 GL_SERVICE_LOG("glGetBufferParameteriv"
2667 << "(" << GLEnums::GetStringEnum(target) << ", "
2668 << GLEnums::GetStringEnum(pname) << ", "
2669 << static_cast<const void*>(params) << ")");
2670 g_driver_gl.debug_fn.glGetBufferParameterivFn(target, pname, params);
2671 }
2672
2673 static GLenum GL_BINDING_CALL Debug_glGetError(void) {
2674 GL_SERVICE_LOG("glGetError"
2675 << "("
2676 << ")");
2677 GLenum result = g_driver_gl.debug_fn.glGetErrorFn();
2678
2679 GL_SERVICE_LOG("GL_RESULT: " << GLEnums::GetStringError(result));
2680
2681 return result;
2682 }
2683
2684 static void GL_BINDING_CALL
2685 Debug_glGetFenceivNV(GLuint fence, GLenum pname, GLint* params) {
2686 GL_SERVICE_LOG("glGetFenceivNV"
2687 << "(" << fence << ", " << GLEnums::GetStringEnum(pname)
2688 << ", " << static_cast<const void*>(params) << ")");
2689 g_driver_gl.debug_fn.glGetFenceivNVFn(fence, pname, params);
2690 }
2691
2692 static void GL_BINDING_CALL Debug_glGetFloatv(GLenum pname, GLfloat* params) {
2693 GL_SERVICE_LOG("glGetFloatv"
2694 << "(" << GLEnums::GetStringEnum(pname) << ", "
2695 << static_cast<const void*>(params) << ")");
2696 g_driver_gl.debug_fn.glGetFloatvFn(pname, params);
2697 }
2698
2699 static GLint GL_BINDING_CALL
2700 Debug_glGetFragDataLocation(GLuint program, const char* name) {
2701 GL_SERVICE_LOG("glGetFragDataLocation"
2702 << "(" << program << ", " << name << ")");
2703 GLint result = g_driver_gl.debug_fn.glGetFragDataLocationFn(program, name);
2704 GL_SERVICE_LOG("GL_RESULT: " << result);
2705 return result;
2706 }
2707
2708 static void GL_BINDING_CALL
2709 Debug_glGetFramebufferAttachmentParameterivEXT(GLenum target,
2710 GLenum attachment,
2711 GLenum pname,
2712 GLint* params) {
2713 GL_SERVICE_LOG("glGetFramebufferAttachmentParameterivEXT"
2714 << "(" << GLEnums::GetStringEnum(target) << ", "
2715 << GLEnums::GetStringEnum(attachment) << ", "
2716 << GLEnums::GetStringEnum(pname) << ", "
2717 << static_cast<const void*>(params) << ")");
2718 g_driver_gl.debug_fn.glGetFramebufferAttachmentParameterivEXTFn(
2719 target, attachment, pname, params);
2720 }
2721
2722 static GLenum GL_BINDING_CALL Debug_glGetGraphicsResetStatusARB(void) {
2723 GL_SERVICE_LOG("glGetGraphicsResetStatusARB"
2724 << "("
2725 << ")");
2726 GLenum result = g_driver_gl.debug_fn.glGetGraphicsResetStatusARBFn();
2727 GL_SERVICE_LOG("GL_RESULT: " << result);
2728 return result;
2729 }
2730
2731 static void GL_BINDING_CALL
2732 Debug_glGetInteger64i_v(GLenum target, GLuint index, GLint64* data) {
2733 GL_SERVICE_LOG("glGetInteger64i_v"
2734 << "(" << GLEnums::GetStringEnum(target) << ", " << index
2735 << ", " << static_cast<const void*>(data) << ")");
2736 g_driver_gl.debug_fn.glGetInteger64i_vFn(target, index, data);
2737 }
2738
2739 static void GL_BINDING_CALL
2740 Debug_glGetInteger64v(GLenum pname, GLint64* params) {
2741 GL_SERVICE_LOG("glGetInteger64v"
2742 << "(" << GLEnums::GetStringEnum(pname) << ", "
2743 << static_cast<const void*>(params) << ")");
2744 g_driver_gl.debug_fn.glGetInteger64vFn(pname, params);
2745 }
2746
2747 static void GL_BINDING_CALL
2748 Debug_glGetIntegeri_v(GLenum target, GLuint index, GLint* data) {
2749 GL_SERVICE_LOG("glGetIntegeri_v"
2750 << "(" << GLEnums::GetStringEnum(target) << ", " << index
2751 << ", " << static_cast<const void*>(data) << ")");
2752 g_driver_gl.debug_fn.glGetIntegeri_vFn(target, index, data);
2753 }
2754
2755 static void GL_BINDING_CALL Debug_glGetIntegerv(GLenum pname, GLint* params) {
2756 GL_SERVICE_LOG("glGetIntegerv"
2757 << "(" << GLEnums::GetStringEnum(pname) << ", "
2758 << static_cast<const void*>(params) << ")");
2759 g_driver_gl.debug_fn.glGetIntegervFn(pname, params);
2760 }
2761
2762 static void GL_BINDING_CALL Debug_glGetInternalformativ(GLenum target,
2763 GLenum internalformat,
2764 GLenum pname,
2765 GLsizei bufSize,
2766 GLint* params) {
2767 GL_SERVICE_LOG("glGetInternalformativ"
2768 << "(" << GLEnums::GetStringEnum(target) << ", "
2769 << GLEnums::GetStringEnum(internalformat) << ", "
2770 << GLEnums::GetStringEnum(pname) << ", " << bufSize << ", "
2771 << static_cast<const void*>(params) << ")");
2772 g_driver_gl.debug_fn.glGetInternalformativFn(target, internalformat, pname,
2773 bufSize, params);
2774 }
2775
2776 static void GL_BINDING_CALL Debug_glGetProgramBinary(GLuint program,
2777 GLsizei bufSize,
2778 GLsizei* length,
2779 GLenum* binaryFormat,
2780 GLvoid* binary) {
2781 GL_SERVICE_LOG("glGetProgramBinary"
2782 << "(" << program << ", " << bufSize << ", "
2783 << static_cast<const void*>(length) << ", "
2784 << static_cast<const void*>(binaryFormat) << ", "
2785 << static_cast<const void*>(binary) << ")");
2786 g_driver_gl.debug_fn.glGetProgramBinaryFn(program, bufSize, length,
2787 binaryFormat, binary);
2788 }
2789
2790 static void GL_BINDING_CALL Debug_glGetProgramInfoLog(GLuint program,
2791 GLsizei bufsize,
2792 GLsizei* length,
2793 char* infolog) {
2794 GL_SERVICE_LOG("glGetProgramInfoLog"
2795 << "(" << program << ", " << bufsize << ", "
2796 << static_cast<const void*>(length) << ", "
2797 << static_cast<const void*>(infolog) << ")");
2798 g_driver_gl.debug_fn.glGetProgramInfoLogFn(program, bufsize, length, infolog);
2799 }
2800
2801 static void GL_BINDING_CALL
2802 Debug_glGetProgramiv(GLuint program, GLenum pname, GLint* params) {
2803 GL_SERVICE_LOG("glGetProgramiv"
2804 << "(" << program << ", " << GLEnums::GetStringEnum(pname)
2805 << ", " << static_cast<const void*>(params) << ")");
2806 g_driver_gl.debug_fn.glGetProgramivFn(program, pname, params);
2807 }
2808
2809 static void GL_BINDING_CALL
2810 Debug_glGetQueryiv(GLenum target, GLenum pname, GLint* params) {
2811 GL_SERVICE_LOG("glGetQueryiv"
2812 << "(" << GLEnums::GetStringEnum(target) << ", "
2813 << GLEnums::GetStringEnum(pname) << ", "
2814 << static_cast<const void*>(params) << ")");
2815 g_driver_gl.debug_fn.glGetQueryivFn(target, pname, params);
2816 }
2817
2818 static void GL_BINDING_CALL
2819 Debug_glGetQueryivARB(GLenum target, GLenum pname, GLint* params) {
2820 GL_SERVICE_LOG("glGetQueryivARB"
2821 << "(" << GLEnums::GetStringEnum(target) << ", "
2822 << GLEnums::GetStringEnum(pname) << ", "
2823 << static_cast<const void*>(params) << ")");
2824 g_driver_gl.debug_fn.glGetQueryivARBFn(target, pname, params);
2825 }
2826
2827 static void GL_BINDING_CALL
2828 Debug_glGetQueryObjecti64v(GLuint id, GLenum pname, GLint64* params) {
2829 GL_SERVICE_LOG("glGetQueryObjecti64v"
2830 << "(" << id << ", " << GLEnums::GetStringEnum(pname) << ", "
2831 << static_cast<const void*>(params) << ")");
2832 g_driver_gl.debug_fn.glGetQueryObjecti64vFn(id, pname, params);
2833 }
2834
2835 static void GL_BINDING_CALL
2836 Debug_glGetQueryObjectiv(GLuint id, GLenum pname, GLint* params) {
2837 GL_SERVICE_LOG("glGetQueryObjectiv"
2838 << "(" << id << ", " << GLEnums::GetStringEnum(pname) << ", "
2839 << static_cast<const void*>(params) << ")");
2840 g_driver_gl.debug_fn.glGetQueryObjectivFn(id, pname, params);
2841 }
2842
2843 static void GL_BINDING_CALL
2844 Debug_glGetQueryObjectivARB(GLuint id, GLenum pname, GLint* params) {
2845 GL_SERVICE_LOG("glGetQueryObjectivARB"
2846 << "(" << id << ", " << GLEnums::GetStringEnum(pname) << ", "
2847 << static_cast<const void*>(params) << ")");
2848 g_driver_gl.debug_fn.glGetQueryObjectivARBFn(id, pname, params);
2849 }
2850
2851 static void GL_BINDING_CALL
2852 Debug_glGetQueryObjectui64v(GLuint id, GLenum pname, GLuint64* params) {
2853 GL_SERVICE_LOG("glGetQueryObjectui64v"
2854 << "(" << id << ", " << GLEnums::GetStringEnum(pname) << ", "
2855 << static_cast<const void*>(params) << ")");
2856 g_driver_gl.debug_fn.glGetQueryObjectui64vFn(id, pname, params);
2857 }
2858
2859 static void GL_BINDING_CALL
2860 Debug_glGetQueryObjectuiv(GLuint id, GLenum pname, GLuint* params) {
2861 GL_SERVICE_LOG("glGetQueryObjectuiv"
2862 << "(" << id << ", " << GLEnums::GetStringEnum(pname) << ", "
2863 << static_cast<const void*>(params) << ")");
2864 g_driver_gl.debug_fn.glGetQueryObjectuivFn(id, pname, params);
2865 }
2866
2867 static void GL_BINDING_CALL
2868 Debug_glGetQueryObjectuivARB(GLuint id, GLenum pname, GLuint* params) {
2869 GL_SERVICE_LOG("glGetQueryObjectuivARB"
2870 << "(" << id << ", " << GLEnums::GetStringEnum(pname) << ", "
2871 << static_cast<const void*>(params) << ")");
2872 g_driver_gl.debug_fn.glGetQueryObjectuivARBFn(id, pname, params);
2873 }
2874
2875 static void GL_BINDING_CALL
2876 Debug_glGetRenderbufferParameterivEXT(GLenum target,
2877 GLenum pname,
2878 GLint* params) {
2879 GL_SERVICE_LOG("glGetRenderbufferParameterivEXT"
2880 << "(" << GLEnums::GetStringEnum(target) << ", "
2881 << GLEnums::GetStringEnum(pname) << ", "
2882 << static_cast<const void*>(params) << ")");
2883 g_driver_gl.debug_fn.glGetRenderbufferParameterivEXTFn(target, pname, params);
2884 }
2885
2886 static void GL_BINDING_CALL
2887 Debug_glGetSamplerParameterfv(GLuint sampler, GLenum pname, GLfloat* params) {
2888 GL_SERVICE_LOG("glGetSamplerParameterfv"
2889 << "(" << sampler << ", " << GLEnums::GetStringEnum(pname)
2890 << ", " << static_cast<const void*>(params) << ")");
2891 g_driver_gl.debug_fn.glGetSamplerParameterfvFn(sampler, pname, params);
2892 }
2893
2894 static void GL_BINDING_CALL
2895 Debug_glGetSamplerParameteriv(GLuint sampler, GLenum pname, GLint* params) {
2896 GL_SERVICE_LOG("glGetSamplerParameteriv"
2897 << "(" << sampler << ", " << GLEnums::GetStringEnum(pname)
2898 << ", " << static_cast<const void*>(params) << ")");
2899 g_driver_gl.debug_fn.glGetSamplerParameterivFn(sampler, pname, params);
2900 }
2901
2902 static void GL_BINDING_CALL Debug_glGetShaderInfoLog(GLuint shader,
2903 GLsizei bufsize,
2904 GLsizei* length,
2905 char* infolog) {
2906 GL_SERVICE_LOG("glGetShaderInfoLog"
2907 << "(" << shader << ", " << bufsize << ", "
2908 << static_cast<const void*>(length) << ", "
2909 << static_cast<const void*>(infolog) << ")");
2910 g_driver_gl.debug_fn.glGetShaderInfoLogFn(shader, bufsize, length, infolog);
2911 }
2912
2913 static void GL_BINDING_CALL
2914 Debug_glGetShaderiv(GLuint shader, GLenum pname, GLint* params) {
2915 GL_SERVICE_LOG("glGetShaderiv"
2916 << "(" << shader << ", " << GLEnums::GetStringEnum(pname)
2917 << ", " << static_cast<const void*>(params) << ")");
2918 g_driver_gl.debug_fn.glGetShaderivFn(shader, pname, params);
2919 }
2920
2921 static void GL_BINDING_CALL
2922 Debug_glGetShaderPrecisionFormat(GLenum shadertype,
2923 GLenum precisiontype,
2924 GLint* range,
2925 GLint* precision) {
2926 GL_SERVICE_LOG("glGetShaderPrecisionFormat"
2927 << "(" << GLEnums::GetStringEnum(shadertype) << ", "
2928 << GLEnums::GetStringEnum(precisiontype) << ", "
2929 << static_cast<const void*>(range) << ", "
2930 << static_cast<const void*>(precision) << ")");
2931 g_driver_gl.debug_fn.glGetShaderPrecisionFormatFn(shadertype, precisiontype,
2932 range, precision);
2933 }
2934
2935 static void GL_BINDING_CALL Debug_glGetShaderSource(GLuint shader,
2936 GLsizei bufsize,
2937 GLsizei* length,
2938 char* source) {
2939 GL_SERVICE_LOG("glGetShaderSource"
2940 << "(" << shader << ", " << bufsize << ", "
2941 << static_cast<const void*>(length) << ", "
2942 << static_cast<const void*>(source) << ")");
2943 g_driver_gl.debug_fn.glGetShaderSourceFn(shader, bufsize, length, source);
2944 }
2945
2946 static const GLubyte* GL_BINDING_CALL Debug_glGetString(GLenum name) {
2947 GL_SERVICE_LOG("glGetString"
2948 << "(" << GLEnums::GetStringEnum(name) << ")");
2949 const GLubyte* result = g_driver_gl.debug_fn.glGetStringFn(name);
2950 GL_SERVICE_LOG("GL_RESULT: " << result);
2951 return result;
2952 }
2953
2954 static void GL_BINDING_CALL Debug_glGetSynciv(GLsync sync,
2955 GLenum pname,
2956 GLsizei bufSize,
2957 GLsizei* length,
2958 GLint* values) {
2959 GL_SERVICE_LOG("glGetSynciv"
2960 << "(" << sync << ", " << GLEnums::GetStringEnum(pname) << ", "
2961 << bufSize << ", " << static_cast<const void*>(length) << ", "
2962 << static_cast<const void*>(values) << ")");
2963 g_driver_gl.debug_fn.glGetSyncivFn(sync, pname, bufSize, length, values);
2964 }
2965
2966 static void GL_BINDING_CALL Debug_glGetTexLevelParameterfv(GLenum target,
2967 GLint level,
2968 GLenum pname,
2969 GLfloat* params) {
2970 GL_SERVICE_LOG("glGetTexLevelParameterfv"
2971 << "(" << GLEnums::GetStringEnum(target) << ", " << level
2972 << ", " << GLEnums::GetStringEnum(pname) << ", "
2973 << static_cast<const void*>(params) << ")");
2974 g_driver_gl.debug_fn.glGetTexLevelParameterfvFn(target, level, pname, params);
2975 }
2976
2977 static void GL_BINDING_CALL Debug_glGetTexLevelParameteriv(GLenum target,
2978 GLint level,
2979 GLenum pname,
2980 GLint* params) {
2981 GL_SERVICE_LOG("glGetTexLevelParameteriv"
2982 << "(" << GLEnums::GetStringEnum(target) << ", " << level
2983 << ", " << GLEnums::GetStringEnum(pname) << ", "
2984 << static_cast<const void*>(params) << ")");
2985 g_driver_gl.debug_fn.glGetTexLevelParameterivFn(target, level, pname, params);
2986 }
2987
2988 static void GL_BINDING_CALL
2989 Debug_glGetTexParameterfv(GLenum target, GLenum pname, GLfloat* params) {
2990 GL_SERVICE_LOG("glGetTexParameterfv"
2991 << "(" << GLEnums::GetStringEnum(target) << ", "
2992 << GLEnums::GetStringEnum(pname) << ", "
2993 << static_cast<const void*>(params) << ")");
2994 g_driver_gl.debug_fn.glGetTexParameterfvFn(target, pname, params);
2995 }
2996
2997 static void GL_BINDING_CALL
2998 Debug_glGetTexParameteriv(GLenum target, GLenum pname, GLint* params) {
2999 GL_SERVICE_LOG("glGetTexParameteriv"
3000 << "(" << GLEnums::GetStringEnum(target) << ", "
3001 << GLEnums::GetStringEnum(pname) << ", "
3002 << static_cast<const void*>(params) << ")");
3003 g_driver_gl.debug_fn.glGetTexParameterivFn(target, pname, params);
3004 }
3005
3006 static void GL_BINDING_CALL Debug_glGetTransformFeedbackVarying(GLuint program,
3007 GLuint index,
3008 GLsizei bufSize,
3009 GLsizei* length,
3010 GLenum* type,
3011 char* name) {
3012 GL_SERVICE_LOG("glGetTransformFeedbackVarying"
3013 << "(" << program << ", " << index << ", " << bufSize << ", "
3014 << static_cast<const void*>(length) << ", "
3015 << static_cast<const void*>(type) << ", "
3016 << static_cast<const void*>(name) << ")");
3017 g_driver_gl.debug_fn.glGetTransformFeedbackVaryingFn(program, index, bufSize,
3018 length, type, name);
3019 }
3020
3021 static void GL_BINDING_CALL
3022 Debug_glGetTranslatedShaderSourceANGLE(GLuint shader,
3023 GLsizei bufsize,
3024 GLsizei* length,
3025 char* source) {
3026 GL_SERVICE_LOG("glGetTranslatedShaderSourceANGLE"
3027 << "(" << shader << ", " << bufsize << ", "
3028 << static_cast<const void*>(length) << ", "
3029 << static_cast<const void*>(source) << ")");
3030 g_driver_gl.debug_fn.glGetTranslatedShaderSourceANGLEFn(shader, bufsize,
3031 length, source);
3032 }
3033
3034 static GLuint GL_BINDING_CALL
3035 Debug_glGetUniformBlockIndex(GLuint program, const char* uniformBlockName) {
3036 GL_SERVICE_LOG("glGetUniformBlockIndex"
3037 << "(" << program << ", " << uniformBlockName << ")");
3038 GLuint result =
3039 g_driver_gl.debug_fn.glGetUniformBlockIndexFn(program, uniformBlockName);
3040 GL_SERVICE_LOG("GL_RESULT: " << result);
3041 return result;
3042 }
3043
3044 static void GL_BINDING_CALL
3045 Debug_glGetUniformfv(GLuint program, GLint location, GLfloat* params) {
3046 GL_SERVICE_LOG("glGetUniformfv"
3047 << "(" << program << ", " << location << ", "
3048 << static_cast<const void*>(params) << ")");
3049 g_driver_gl.debug_fn.glGetUniformfvFn(program, location, params);
3050 }
3051
3052 static void GL_BINDING_CALL
3053 Debug_glGetUniformIndices(GLuint program,
3054 GLsizei uniformCount,
3055 const char* const* uniformNames,
3056 GLuint* uniformIndices) {
3057 GL_SERVICE_LOG("glGetUniformIndices"
3058 << "(" << program << ", " << uniformCount << ", "
3059 << static_cast<const void*>(uniformNames) << ", "
3060 << static_cast<const void*>(uniformIndices) << ")");
3061 g_driver_gl.debug_fn.glGetUniformIndicesFn(program, uniformCount,
3062 uniformNames, uniformIndices);
3063 }
3064
3065 static void GL_BINDING_CALL
3066 Debug_glGetUniformiv(GLuint program, GLint location, GLint* params) {
3067 GL_SERVICE_LOG("glGetUniformiv"
3068 << "(" << program << ", " << location << ", "
3069 << static_cast<const void*>(params) << ")");
3070 g_driver_gl.debug_fn.glGetUniformivFn(program, location, params);
3071 }
3072
3073 static GLint GL_BINDING_CALL
3074 Debug_glGetUniformLocation(GLuint program, const char* name) {
3075 GL_SERVICE_LOG("glGetUniformLocation"
3076 << "(" << program << ", " << name << ")");
3077 GLint result = g_driver_gl.debug_fn.glGetUniformLocationFn(program, name);
3078 GL_SERVICE_LOG("GL_RESULT: " << result);
3079 return result;
3080 }
3081
3082 static void GL_BINDING_CALL
3083 Debug_glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat* params) {
3084 GL_SERVICE_LOG("glGetVertexAttribfv"
3085 << "(" << index << ", " << GLEnums::GetStringEnum(pname)
3086 << ", " << static_cast<const void*>(params) << ")");
3087 g_driver_gl.debug_fn.glGetVertexAttribfvFn(index, pname, params);
3088 }
3089
3090 static void GL_BINDING_CALL
3091 Debug_glGetVertexAttribiv(GLuint index, GLenum pname, GLint* params) {
3092 GL_SERVICE_LOG("glGetVertexAttribiv"
3093 << "(" << index << ", " << GLEnums::GetStringEnum(pname)
3094 << ", " << static_cast<const void*>(params) << ")");
3095 g_driver_gl.debug_fn.glGetVertexAttribivFn(index, pname, params);
3096 }
3097
3098 static void GL_BINDING_CALL
3099 Debug_glGetVertexAttribPointerv(GLuint index, GLenum pname, void** pointer) {
3100 GL_SERVICE_LOG("glGetVertexAttribPointerv"
3101 << "(" << index << ", " << GLEnums::GetStringEnum(pname)
3102 << ", " << pointer << ")");
3103 g_driver_gl.debug_fn.glGetVertexAttribPointervFn(index, pname, pointer);
3104 }
3105
3106 static void GL_BINDING_CALL Debug_glHint(GLenum target, GLenum mode) {
3107 GL_SERVICE_LOG("glHint"
3108 << "(" << GLEnums::GetStringEnum(target) << ", "
3109 << GLEnums::GetStringEnum(mode) << ")");
3110 g_driver_gl.debug_fn.glHintFn(target, mode);
3111 }
3112
3113 static void GL_BINDING_CALL
3114 Debug_glInsertEventMarkerEXT(GLsizei length, const char* marker) {
3115 GL_SERVICE_LOG("glInsertEventMarkerEXT"
3116 << "(" << length << ", " << marker << ")");
3117 g_driver_gl.debug_fn.glInsertEventMarkerEXTFn(length, marker);
3118 }
3119
3120 static void GL_BINDING_CALL
3121 Debug_glInvalidateFramebuffer(GLenum target,
3122 GLsizei numAttachments,
3123 const GLenum* attachments) {
3124 GL_SERVICE_LOG("glInvalidateFramebuffer"
3125 << "(" << GLEnums::GetStringEnum(target) << ", "
3126 << numAttachments << ", "
3127 << static_cast<const void*>(attachments) << ")");
3128 g_driver_gl.debug_fn.glInvalidateFramebufferFn(target, numAttachments,
3129 attachments);
3130 }
3131
3132 static void GL_BINDING_CALL
3133 Debug_glInvalidateSubFramebuffer(GLenum target,
3134 GLsizei numAttachments,
3135 const GLenum* attachments,
3136 GLint x,
3137 GLint y,
3138 GLint width,
3139 GLint height) {
3140 GL_SERVICE_LOG("glInvalidateSubFramebuffer"
3141 << "(" << GLEnums::GetStringEnum(target) << ", "
3142 << numAttachments << ", "
3143 << static_cast<const void*>(attachments) << ", " << x << ", "
3144 << y << ", " << width << ", " << height << ")");
3145 g_driver_gl.debug_fn.glInvalidateSubFramebufferFn(
3146 target, numAttachments, attachments, x, y, width, height);
3147 }
3148
3149 static GLboolean GL_BINDING_CALL Debug_glIsBuffer(GLuint buffer) {
3150 GL_SERVICE_LOG("glIsBuffer"
3151 << "(" << buffer << ")");
3152 GLboolean result = g_driver_gl.debug_fn.glIsBufferFn(buffer);
3153 GL_SERVICE_LOG("GL_RESULT: " << result);
3154 return result;
3155 }
3156
3157 static GLboolean GL_BINDING_CALL Debug_glIsEnabled(GLenum cap) {
3158 GL_SERVICE_LOG("glIsEnabled"
3159 << "(" << GLEnums::GetStringEnum(cap) << ")");
3160 GLboolean result = g_driver_gl.debug_fn.glIsEnabledFn(cap);
3161 GL_SERVICE_LOG("GL_RESULT: " << result);
3162 return result;
3163 }
3164
3165 static GLboolean GL_BINDING_CALL Debug_glIsFenceAPPLE(GLuint fence) {
3166 GL_SERVICE_LOG("glIsFenceAPPLE"
3167 << "(" << fence << ")");
3168 GLboolean result = g_driver_gl.debug_fn.glIsFenceAPPLEFn(fence);
3169 GL_SERVICE_LOG("GL_RESULT: " << result);
3170 return result;
3171 }
3172
3173 static GLboolean GL_BINDING_CALL Debug_glIsFenceNV(GLuint fence) {
3174 GL_SERVICE_LOG("glIsFenceNV"
3175 << "(" << fence << ")");
3176 GLboolean result = g_driver_gl.debug_fn.glIsFenceNVFn(fence);
3177 GL_SERVICE_LOG("GL_RESULT: " << result);
3178 return result;
3179 }
3180
3181 static GLboolean GL_BINDING_CALL Debug_glIsFramebufferEXT(GLuint framebuffer) {
3182 GL_SERVICE_LOG("glIsFramebufferEXT"
3183 << "(" << framebuffer << ")");
3184 GLboolean result = g_driver_gl.debug_fn.glIsFramebufferEXTFn(framebuffer);
3185 GL_SERVICE_LOG("GL_RESULT: " << result);
3186 return result;
3187 }
3188
3189 static GLboolean GL_BINDING_CALL Debug_glIsProgram(GLuint program) {
3190 GL_SERVICE_LOG("glIsProgram"
3191 << "(" << program << ")");
3192 GLboolean result = g_driver_gl.debug_fn.glIsProgramFn(program);
3193 GL_SERVICE_LOG("GL_RESULT: " << result);
3194 return result;
3195 }
3196
3197 static GLboolean GL_BINDING_CALL Debug_glIsQuery(GLuint query) {
3198 GL_SERVICE_LOG("glIsQuery"
3199 << "(" << query << ")");
3200 GLboolean result = g_driver_gl.debug_fn.glIsQueryFn(query);
3201 GL_SERVICE_LOG("GL_RESULT: " << result);
3202 return result;
3203 }
3204
3205 static GLboolean GL_BINDING_CALL Debug_glIsQueryARB(GLuint query) {
3206 GL_SERVICE_LOG("glIsQueryARB"
3207 << "(" << query << ")");
3208 GLboolean result = g_driver_gl.debug_fn.glIsQueryARBFn(query);
3209 GL_SERVICE_LOG("GL_RESULT: " << result);
3210 return result;
3211 }
3212
3213 static GLboolean GL_BINDING_CALL
3214 Debug_glIsRenderbufferEXT(GLuint renderbuffer) {
3215 GL_SERVICE_LOG("glIsRenderbufferEXT"
3216 << "(" << renderbuffer << ")");
3217 GLboolean result = g_driver_gl.debug_fn.glIsRenderbufferEXTFn(renderbuffer);
3218 GL_SERVICE_LOG("GL_RESULT: " << result);
3219 return result;
3220 }
3221
3222 static GLboolean GL_BINDING_CALL Debug_glIsSampler(GLuint sampler) {
3223 GL_SERVICE_LOG("glIsSampler"
3224 << "(" << sampler << ")");
3225 GLboolean result = g_driver_gl.debug_fn.glIsSamplerFn(sampler);
3226 GL_SERVICE_LOG("GL_RESULT: " << result);
3227 return result;
3228 }
3229
3230 static GLboolean GL_BINDING_CALL Debug_glIsShader(GLuint shader) {
3231 GL_SERVICE_LOG("glIsShader"
3232 << "(" << shader << ")");
3233 GLboolean result = g_driver_gl.debug_fn.glIsShaderFn(shader);
3234 GL_SERVICE_LOG("GL_RESULT: " << result);
3235 return result;
3236 }
3237
3238 static GLboolean GL_BINDING_CALL Debug_glIsSync(GLsync sync) {
3239 GL_SERVICE_LOG("glIsSync"
3240 << "(" << sync << ")");
3241 GLboolean result = g_driver_gl.debug_fn.glIsSyncFn(sync);
3242 GL_SERVICE_LOG("GL_RESULT: " << result);
3243 return result;
3244 }
3245
3246 static GLboolean GL_BINDING_CALL Debug_glIsTexture(GLuint texture) {
3247 GL_SERVICE_LOG("glIsTexture"
3248 << "(" << texture << ")");
3249 GLboolean result = g_driver_gl.debug_fn.glIsTextureFn(texture);
3250 GL_SERVICE_LOG("GL_RESULT: " << result);
3251 return result;
3252 }
3253
3254 static GLboolean GL_BINDING_CALL Debug_glIsTransformFeedback(GLuint id) {
3255 GL_SERVICE_LOG("glIsTransformFeedback"
3256 << "(" << id << ")");
3257 GLboolean result = g_driver_gl.debug_fn.glIsTransformFeedbackFn(id);
3258 GL_SERVICE_LOG("GL_RESULT: " << result);
3259 return result;
3260 }
3261
3262 static GLboolean GL_BINDING_CALL Debug_glIsVertexArrayOES(GLuint array) {
3263 GL_SERVICE_LOG("glIsVertexArrayOES"
3264 << "(" << array << ")");
3265 GLboolean result = g_driver_gl.debug_fn.glIsVertexArrayOESFn(array);
3266 GL_SERVICE_LOG("GL_RESULT: " << result);
3267 return result;
3268 }
3269
3270 static void GL_BINDING_CALL Debug_glLineWidth(GLfloat width) {
3271 GL_SERVICE_LOG("glLineWidth"
3272 << "(" << width << ")");
3273 g_driver_gl.debug_fn.glLineWidthFn(width);
3274 }
3275
3276 static void GL_BINDING_CALL Debug_glLinkProgram(GLuint program) {
3277 GL_SERVICE_LOG("glLinkProgram"
3278 << "(" << program << ")");
3279 g_driver_gl.debug_fn.glLinkProgramFn(program);
3280 }
3281
3282 static void* GL_BINDING_CALL Debug_glMapBuffer(GLenum target, GLenum access) {
3283 GL_SERVICE_LOG("glMapBuffer"
3284 << "(" << GLEnums::GetStringEnum(target) << ", "
3285 << GLEnums::GetStringEnum(access) << ")");
3286 void* result = g_driver_gl.debug_fn.glMapBufferFn(target, access);
3287 GL_SERVICE_LOG("GL_RESULT: " << result);
3288 return result;
3289 }
3290
3291 static void* GL_BINDING_CALL Debug_glMapBufferRange(GLenum target,
3292 GLintptr offset,
3293 GLsizeiptr length,
3294 GLbitfield access) {
3295 GL_SERVICE_LOG("glMapBufferRange"
3296 << "(" << GLEnums::GetStringEnum(target) << ", " << offset
3297 << ", " << length << ", " << access << ")");
3298 void* result =
3299 g_driver_gl.debug_fn.glMapBufferRangeFn(target, offset, length, access);
3300 GL_SERVICE_LOG("GL_RESULT: " << result);
3301 return result;
3302 }
3303
3304 static void GL_BINDING_CALL
3305 Debug_glMatrixLoadfEXT(GLenum matrixMode, const GLfloat* m) {
3306 GL_SERVICE_LOG("glMatrixLoadfEXT"
3307 << "(" << GLEnums::GetStringEnum(matrixMode) << ", "
3308 << static_cast<const void*>(m) << ")");
3309 g_driver_gl.debug_fn.glMatrixLoadfEXTFn(matrixMode, m);
3310 }
3311
3312 static void GL_BINDING_CALL Debug_glMatrixLoadIdentityEXT(GLenum matrixMode) {
3313 GL_SERVICE_LOG("glMatrixLoadIdentityEXT"
3314 << "(" << GLEnums::GetStringEnum(matrixMode) << ")");
3315 g_driver_gl.debug_fn.glMatrixLoadIdentityEXTFn(matrixMode);
3316 }
3317
3318 static void GL_BINDING_CALL Debug_glPauseTransformFeedback(void) {
3319 GL_SERVICE_LOG("glPauseTransformFeedback"
3320 << "("
3321 << ")");
3322 g_driver_gl.debug_fn.glPauseTransformFeedbackFn();
3323 }
3324
3325 static void GL_BINDING_CALL Debug_glPixelStorei(GLenum pname, GLint param) {
3326 GL_SERVICE_LOG("glPixelStorei"
3327 << "(" << GLEnums::GetStringEnum(pname) << ", " << param
3328 << ")");
3329 g_driver_gl.debug_fn.glPixelStoreiFn(pname, param);
3330 }
3331
3332 static void GL_BINDING_CALL Debug_glPointParameteri(GLenum pname, GLint param) {
3333 GL_SERVICE_LOG("glPointParameteri"
3334 << "(" << GLEnums::GetStringEnum(pname) << ", " << param
3335 << ")");
3336 g_driver_gl.debug_fn.glPointParameteriFn(pname, param);
3337 }
3338
3339 static void GL_BINDING_CALL
3340 Debug_glPolygonOffset(GLfloat factor, GLfloat units) {
3341 GL_SERVICE_LOG("glPolygonOffset"
3342 << "(" << factor << ", " << units << ")");
3343 g_driver_gl.debug_fn.glPolygonOffsetFn(factor, units);
3344 }
3345
3346 static void GL_BINDING_CALL Debug_glPopGroupMarkerEXT(void) {
3347 GL_SERVICE_LOG("glPopGroupMarkerEXT"
3348 << "("
3349 << ")");
3350 g_driver_gl.debug_fn.glPopGroupMarkerEXTFn();
3351 }
3352
3353 static void GL_BINDING_CALL Debug_glProgramBinary(GLuint program,
3354 GLenum binaryFormat,
3355 const GLvoid* binary,
3356 GLsizei length) {
3357 GL_SERVICE_LOG("glProgramBinary"
3358 << "(" << program << ", "
3359 << GLEnums::GetStringEnum(binaryFormat) << ", "
3360 << static_cast<const void*>(binary) << ", " << length << ")");
3361 g_driver_gl.debug_fn.glProgramBinaryFn(program, binaryFormat, binary, length);
3362 }
3363
3364 static void GL_BINDING_CALL
3365 Debug_glProgramParameteri(GLuint program, GLenum pname, GLint value) {
3366 GL_SERVICE_LOG("glProgramParameteri"
3367 << "(" << program << ", " << GLEnums::GetStringEnum(pname)
3368 << ", " << value << ")");
3369 g_driver_gl.debug_fn.glProgramParameteriFn(program, pname, value);
3370 }
3371
3372 static void GL_BINDING_CALL
3373 Debug_glPushGroupMarkerEXT(GLsizei length, const char* marker) {
3374 GL_SERVICE_LOG("glPushGroupMarkerEXT"
3375 << "(" << length << ", " << marker << ")");
3376 g_driver_gl.debug_fn.glPushGroupMarkerEXTFn(length, marker);
3377 }
3378
3379 static void GL_BINDING_CALL Debug_glQueryCounter(GLuint id, GLenum target) {
3380 GL_SERVICE_LOG("glQueryCounter"
3381 << "(" << id << ", " << GLEnums::GetStringEnum(target) << ")");
3382 g_driver_gl.debug_fn.glQueryCounterFn(id, target);
3383 }
3384
3385 static void GL_BINDING_CALL Debug_glReadBuffer(GLenum src) {
3386 GL_SERVICE_LOG("glReadBuffer"
3387 << "(" << GLEnums::GetStringEnum(src) << ")");
3388 g_driver_gl.debug_fn.glReadBufferFn(src);
3389 }
3390
3391 static void GL_BINDING_CALL Debug_glReadPixels(GLint x,
3392 GLint y,
3393 GLsizei width,
3394 GLsizei height,
3395 GLenum format,
3396 GLenum type,
3397 void* pixels) {
3398 GL_SERVICE_LOG("glReadPixels"
3399 << "(" << x << ", " << y << ", " << width << ", " << height
3400 << ", " << GLEnums::GetStringEnum(format) << ", "
3401 << GLEnums::GetStringEnum(type) << ", "
3402 << static_cast<const void*>(pixels) << ")");
3403 g_driver_gl.debug_fn.glReadPixelsFn(x, y, width, height, format, type,
3404 pixels);
3405 }
3406
3407 static void GL_BINDING_CALL Debug_glReleaseShaderCompiler(void) {
3408 GL_SERVICE_LOG("glReleaseShaderCompiler"
3409 << "("
3410 << ")");
3411 g_driver_gl.debug_fn.glReleaseShaderCompilerFn();
3412 }
3413
3414 static void GL_BINDING_CALL
3415 Debug_glRenderbufferStorageEXT(GLenum target,
3416 GLenum internalformat,
3417 GLsizei width,
3418 GLsizei height) {
3419 GL_SERVICE_LOG("glRenderbufferStorageEXT"
3420 << "(" << GLEnums::GetStringEnum(target) << ", "
3421 << GLEnums::GetStringEnum(internalformat) << ", " << width
3422 << ", " << height << ")");
3423 g_driver_gl.debug_fn.glRenderbufferStorageEXTFn(target, internalformat, width,
3424 height);
3425 }
3426
3427 static void GL_BINDING_CALL
3428 Debug_glRenderbufferStorageMultisample(GLenum target,
3429 GLsizei samples,
3430 GLenum internalformat,
3431 GLsizei width,
3432 GLsizei height) {
3433 GL_SERVICE_LOG("glRenderbufferStorageMultisample"
3434 << "(" << GLEnums::GetStringEnum(target) << ", " << samples
3435 << ", " << GLEnums::GetStringEnum(internalformat) << ", "
3436 << width << ", " << height << ")");
3437 g_driver_gl.debug_fn.glRenderbufferStorageMultisampleFn(
3438 target, samples, internalformat, width, height);
3439 }
3440
3441 static void GL_BINDING_CALL
3442 Debug_glRenderbufferStorageMultisampleANGLE(GLenum target,
3443 GLsizei samples,
3444 GLenum internalformat,
3445 GLsizei width,
3446 GLsizei height) {
3447 GL_SERVICE_LOG("glRenderbufferStorageMultisampleANGLE"
3448 << "(" << GLEnums::GetStringEnum(target) << ", " << samples
3449 << ", " << GLEnums::GetStringEnum(internalformat) << ", "
3450 << width << ", " << height << ")");
3451 g_driver_gl.debug_fn.glRenderbufferStorageMultisampleANGLEFn(
3452 target, samples, internalformat, width, height);
3453 }
3454
3455 static void GL_BINDING_CALL
3456 Debug_glRenderbufferStorageMultisampleEXT(GLenum target,
3457 GLsizei samples,
3458 GLenum internalformat,
3459 GLsizei width,
3460 GLsizei height) {
3461 GL_SERVICE_LOG("glRenderbufferStorageMultisampleEXT"
3462 << "(" << GLEnums::GetStringEnum(target) << ", " << samples
3463 << ", " << GLEnums::GetStringEnum(internalformat) << ", "
3464 << width << ", " << height << ")");
3465 g_driver_gl.debug_fn.glRenderbufferStorageMultisampleEXTFn(
3466 target, samples, internalformat, width, height);
3467 }
3468
3469 static void GL_BINDING_CALL
3470 Debug_glRenderbufferStorageMultisampleIMG(GLenum target,
3471 GLsizei samples,
3472 GLenum internalformat,
3473 GLsizei width,
3474 GLsizei height) {
3475 GL_SERVICE_LOG("glRenderbufferStorageMultisampleIMG"
3476 << "(" << GLEnums::GetStringEnum(target) << ", " << samples
3477 << ", " << GLEnums::GetStringEnum(internalformat) << ", "
3478 << width << ", " << height << ")");
3479 g_driver_gl.debug_fn.glRenderbufferStorageMultisampleIMGFn(
3480 target, samples, internalformat, width, height);
3481 }
3482
3483 static void GL_BINDING_CALL Debug_glResumeTransformFeedback(void) {
3484 GL_SERVICE_LOG("glResumeTransformFeedback"
3485 << "("
3486 << ")");
3487 g_driver_gl.debug_fn.glResumeTransformFeedbackFn();
3488 }
3489
3490 static void GL_BINDING_CALL
3491 Debug_glSampleCoverage(GLclampf value, GLboolean invert) {
3492 GL_SERVICE_LOG("glSampleCoverage"
3493 << "(" << value << ", " << GLEnums::GetStringBool(invert)
3494 << ")");
3495 g_driver_gl.debug_fn.glSampleCoverageFn(value, invert);
3496 }
3497
3498 static void GL_BINDING_CALL
3499 Debug_glSamplerParameterf(GLuint sampler, GLenum pname, GLfloat param) {
3500 GL_SERVICE_LOG("glSamplerParameterf"
3501 << "(" << sampler << ", " << GLEnums::GetStringEnum(pname)
3502 << ", " << param << ")");
3503 g_driver_gl.debug_fn.glSamplerParameterfFn(sampler, pname, param);
3504 }
3505
3506 static void GL_BINDING_CALL Debug_glSamplerParameterfv(GLuint sampler,
3507 GLenum pname,
3508 const GLfloat* params) {
3509 GL_SERVICE_LOG("glSamplerParameterfv"
3510 << "(" << sampler << ", " << GLEnums::GetStringEnum(pname)
3511 << ", " << static_cast<const void*>(params) << ")");
3512 g_driver_gl.debug_fn.glSamplerParameterfvFn(sampler, pname, params);
3513 }
3514
3515 static void GL_BINDING_CALL
3516 Debug_glSamplerParameteri(GLuint sampler, GLenum pname, GLint param) {
3517 GL_SERVICE_LOG("glSamplerParameteri"
3518 << "(" << sampler << ", " << GLEnums::GetStringEnum(pname)
3519 << ", " << param << ")");
3520 g_driver_gl.debug_fn.glSamplerParameteriFn(sampler, pname, param);
3521 }
3522
3523 static void GL_BINDING_CALL
3524 Debug_glSamplerParameteriv(GLuint sampler, GLenum pname, const GLint* params) {
3525 GL_SERVICE_LOG("glSamplerParameteriv"
3526 << "(" << sampler << ", " << GLEnums::GetStringEnum(pname)
3527 << ", " << static_cast<const void*>(params) << ")");
3528 g_driver_gl.debug_fn.glSamplerParameterivFn(sampler, pname, params);
3529 }
3530
3531 static void GL_BINDING_CALL
3532 Debug_glScissor(GLint x, GLint y, GLsizei width, GLsizei height) {
3533 GL_SERVICE_LOG("glScissor"
3534 << "(" << x << ", " << y << ", " << width << ", " << height
3535 << ")");
3536 g_driver_gl.debug_fn.glScissorFn(x, y, width, height);
3537 }
3538
3539 static void GL_BINDING_CALL Debug_glSetFenceAPPLE(GLuint fence) {
3540 GL_SERVICE_LOG("glSetFenceAPPLE"
3541 << "(" << fence << ")");
3542 g_driver_gl.debug_fn.glSetFenceAPPLEFn(fence);
3543 }
3544
3545 static void GL_BINDING_CALL Debug_glSetFenceNV(GLuint fence, GLenum condition) {
3546 GL_SERVICE_LOG("glSetFenceNV"
3547 << "(" << fence << ", " << GLEnums::GetStringEnum(condition)
3548 << ")");
3549 g_driver_gl.debug_fn.glSetFenceNVFn(fence, condition);
3550 }
3551
3552 static void GL_BINDING_CALL Debug_glShaderBinary(GLsizei n,
3553 const GLuint* shaders,
3554 GLenum binaryformat,
3555 const void* binary,
3556 GLsizei length) {
3557 GL_SERVICE_LOG("glShaderBinary"
3558 << "(" << n << ", " << static_cast<const void*>(shaders)
3559 << ", " << GLEnums::GetStringEnum(binaryformat) << ", "
3560 << static_cast<const void*>(binary) << ", " << length << ")");
3561 g_driver_gl.debug_fn.glShaderBinaryFn(n, shaders, binaryformat, binary,
3562 length);
3563 }
3564
3565 static void GL_BINDING_CALL Debug_glShaderSource(GLuint shader,
3566 GLsizei count,
3567 const char* const* str,
3568 const GLint* length) {
3569 GL_SERVICE_LOG("glShaderSource"
3570 << "(" << shader << ", " << count << ", "
3571 << static_cast<const void*>(str) << ", "
3572 << static_cast<const void*>(length) << ")");
3573 g_driver_gl.debug_fn.glShaderSourceFn(shader, count, str, length);
3574
3575 GL_SERVICE_LOG_CODE_BLOCK({
3576 for (GLsizei ii = 0; ii < count; ++ii) {
3577 if (str[ii]) {
3578 if (length && length[ii] >= 0) {
3579 std::string source(str[ii], length[ii]);
3580 GL_SERVICE_LOG(" " << ii << ": ---\n" << source << "\n---");
3581 } else {
3582 GL_SERVICE_LOG(" " << ii << ": ---\n" << str[ii] << "\n---");
3583 }
3584 } else {
3585 GL_SERVICE_LOG(" " << ii << ": NULL");
3586 }
3587 }
3588 });
3589 }
3590
3591 static void GL_BINDING_CALL
3592 Debug_glStencilFunc(GLenum func, GLint ref, GLuint mask) {
3593 GL_SERVICE_LOG("glStencilFunc"
3594 << "(" << GLEnums::GetStringEnum(func) << ", " << ref << ", "
3595 << mask << ")");
3596 g_driver_gl.debug_fn.glStencilFuncFn(func, ref, mask);
3597 }
3598
3599 static void GL_BINDING_CALL
3600 Debug_glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask) {
3601 GL_SERVICE_LOG("glStencilFuncSeparate"
3602 << "(" << GLEnums::GetStringEnum(face) << ", "
3603 << GLEnums::GetStringEnum(func) << ", " << ref << ", " << mask
3604 << ")");
3605 g_driver_gl.debug_fn.glStencilFuncSeparateFn(face, func, ref, mask);
3606 }
3607
3608 static void GL_BINDING_CALL Debug_glStencilMask(GLuint mask) {
3609 GL_SERVICE_LOG("glStencilMask"
3610 << "(" << mask << ")");
3611 g_driver_gl.debug_fn.glStencilMaskFn(mask);
3612 }
3613
3614 static void GL_BINDING_CALL
3615 Debug_glStencilMaskSeparate(GLenum face, GLuint mask) {
3616 GL_SERVICE_LOG("glStencilMaskSeparate"
3617 << "(" << GLEnums::GetStringEnum(face) << ", " << mask << ")");
3618 g_driver_gl.debug_fn.glStencilMaskSeparateFn(face, mask);
3619 }
3620
3621 static void GL_BINDING_CALL
3622 Debug_glStencilOp(GLenum fail, GLenum zfail, GLenum zpass) {
3623 GL_SERVICE_LOG("glStencilOp"
3624 << "(" << GLEnums::GetStringEnum(fail) << ", "
3625 << GLEnums::GetStringEnum(zfail) << ", "
3626 << GLEnums::GetStringEnum(zpass) << ")");
3627 g_driver_gl.debug_fn.glStencilOpFn(fail, zfail, zpass);
3628 }
3629
3630 static void GL_BINDING_CALL Debug_glStencilOpSeparate(GLenum face,
3631 GLenum fail,
3632 GLenum zfail,
3633 GLenum zpass) {
3634 GL_SERVICE_LOG("glStencilOpSeparate"
3635 << "(" << GLEnums::GetStringEnum(face) << ", "
3636 << GLEnums::GetStringEnum(fail) << ", "
3637 << GLEnums::GetStringEnum(zfail) << ", "
3638 << GLEnums::GetStringEnum(zpass) << ")");
3639 g_driver_gl.debug_fn.glStencilOpSeparateFn(face, fail, zfail, zpass);
3640 }
3641
3642 static GLboolean GL_BINDING_CALL Debug_glTestFenceAPPLE(GLuint fence) {
3643 GL_SERVICE_LOG("glTestFenceAPPLE"
3644 << "(" << fence << ")");
3645 GLboolean result = g_driver_gl.debug_fn.glTestFenceAPPLEFn(fence);
3646 GL_SERVICE_LOG("GL_RESULT: " << result);
3647 return result;
3648 }
3649
3650 static GLboolean GL_BINDING_CALL Debug_glTestFenceNV(GLuint fence) {
3651 GL_SERVICE_LOG("glTestFenceNV"
3652 << "(" << fence << ")");
3653 GLboolean result = g_driver_gl.debug_fn.glTestFenceNVFn(fence);
3654 GL_SERVICE_LOG("GL_RESULT: " << result);
3655 return result;
3656 }
3657
3658 static void GL_BINDING_CALL Debug_glTexImage2D(GLenum target,
3659 GLint level,
3660 GLint internalformat,
3661 GLsizei width,
3662 GLsizei height,
3663 GLint border,
3664 GLenum format,
3665 GLenum type,
3666 const void* pixels) {
3667 GL_SERVICE_LOG("glTexImage2D"
3668 << "(" << GLEnums::GetStringEnum(target) << ", " << level
3669 << ", " << internalformat << ", " << width << ", " << height
3670 << ", " << border << ", " << GLEnums::GetStringEnum(format)
3671 << ", " << GLEnums::GetStringEnum(type) << ", "
3672 << static_cast<const void*>(pixels) << ")");
3673 g_driver_gl.debug_fn.glTexImage2DFn(target, level, internalformat, width,
3674 height, border, format, type, pixels);
3675 }
3676
3677 static void GL_BINDING_CALL Debug_glTexImage3D(GLenum target,
3678 GLint level,
3679 GLint internalformat,
3680 GLsizei width,
3681 GLsizei height,
3682 GLsizei depth,
3683 GLint border,
3684 GLenum format,
3685 GLenum type,
3686 const void* pixels) {
3687 GL_SERVICE_LOG("glTexImage3D"
3688 << "(" << GLEnums::GetStringEnum(target) << ", " << level
3689 << ", " << internalformat << ", " << width << ", " << height
3690 << ", " << depth << ", " << border << ", "
3691 << GLEnums::GetStringEnum(format) << ", "
3692 << GLEnums::GetStringEnum(type) << ", "
3693 << static_cast<const void*>(pixels) << ")");
3694 g_driver_gl.debug_fn.glTexImage3DFn(target, level, internalformat, width,
3695 height, depth, border, format, type,
3696 pixels);
3697 }
3698
3699 static void GL_BINDING_CALL
3700 Debug_glTexParameterf(GLenum target, GLenum pname, GLfloat param) {
3701 GL_SERVICE_LOG("glTexParameterf"
3702 << "(" << GLEnums::GetStringEnum(target) << ", "
3703 << GLEnums::GetStringEnum(pname) << ", " << param << ")");
3704 g_driver_gl.debug_fn.glTexParameterfFn(target, pname, param);
3705 }
3706
3707 static void GL_BINDING_CALL
3708 Debug_glTexParameterfv(GLenum target, GLenum pname, const GLfloat* params) {
3709 GL_SERVICE_LOG("glTexParameterfv"
3710 << "(" << GLEnums::GetStringEnum(target) << ", "
3711 << GLEnums::GetStringEnum(pname) << ", "
3712 << static_cast<const void*>(params) << ")");
3713 g_driver_gl.debug_fn.glTexParameterfvFn(target, pname, params);
3714 }
3715
3716 static void GL_BINDING_CALL
3717 Debug_glTexParameteri(GLenum target, GLenum pname, GLint param) {
3718 GL_SERVICE_LOG("glTexParameteri"
3719 << "(" << GLEnums::GetStringEnum(target) << ", "
3720 << GLEnums::GetStringEnum(pname) << ", " << param << ")");
3721 g_driver_gl.debug_fn.glTexParameteriFn(target, pname, param);
3722 }
3723
3724 static void GL_BINDING_CALL
3725 Debug_glTexParameteriv(GLenum target, GLenum pname, const GLint* params) {
3726 GL_SERVICE_LOG("glTexParameteriv"
3727 << "(" << GLEnums::GetStringEnum(target) << ", "
3728 << GLEnums::GetStringEnum(pname) << ", "
3729 << static_cast<const void*>(params) << ")");
3730 g_driver_gl.debug_fn.glTexParameterivFn(target, pname, params);
3731 }
3732
3733 static void GL_BINDING_CALL Debug_glTexStorage2DEXT(GLenum target,
3734 GLsizei levels,
3735 GLenum internalformat,
3736 GLsizei width,
3737 GLsizei height) {
3738 GL_SERVICE_LOG("glTexStorage2DEXT"
3739 << "(" << GLEnums::GetStringEnum(target) << ", " << levels
3740 << ", " << GLEnums::GetStringEnum(internalformat) << ", "
3741 << width << ", " << height << ")");
3742 g_driver_gl.debug_fn.glTexStorage2DEXTFn(target, levels, internalformat,
3743 width, height);
3744 }
3745
3746 static void GL_BINDING_CALL Debug_glTexStorage3D(GLenum target,
3747 GLsizei levels,
3748 GLenum internalformat,
3749 GLsizei width,
3750 GLsizei height,
3751 GLsizei depth) {
3752 GL_SERVICE_LOG("glTexStorage3D"
3753 << "(" << GLEnums::GetStringEnum(target) << ", " << levels
3754 << ", " << GLEnums::GetStringEnum(internalformat) << ", "
3755 << width << ", " << height << ", " << depth << ")");
3756 g_driver_gl.debug_fn.glTexStorage3DFn(target, levels, internalformat, width,
3757 height, depth);
3758 }
3759
3760 static void GL_BINDING_CALL Debug_glTexSubImage2D(GLenum target,
3761 GLint level,
3762 GLint xoffset,
3763 GLint yoffset,
3764 GLsizei width,
3765 GLsizei height,
3766 GLenum format,
3767 GLenum type,
3768 const void* pixels) {
3769 GL_SERVICE_LOG("glTexSubImage2D"
3770 << "(" << GLEnums::GetStringEnum(target) << ", " << level
3771 << ", " << xoffset << ", " << yoffset << ", " << width << ", "
3772 << height << ", " << GLEnums::GetStringEnum(format) << ", "
3773 << GLEnums::GetStringEnum(type) << ", "
3774 << static_cast<const void*>(pixels) << ")");
3775 g_driver_gl.debug_fn.glTexSubImage2DFn(target, level, xoffset, yoffset, width,
3776 height, format, type, pixels);
3777 }
3778
3779 static void GL_BINDING_CALL
3780 Debug_glTransformFeedbackVaryings(GLuint program,
3781 GLsizei count,
3782 const char* const* varyings,
3783 GLenum bufferMode) {
3784 GL_SERVICE_LOG("glTransformFeedbackVaryings"
3785 << "(" << program << ", " << count << ", "
3786 << static_cast<const void*>(varyings) << ", "
3787 << GLEnums::GetStringEnum(bufferMode) << ")");
3788 g_driver_gl.debug_fn.glTransformFeedbackVaryingsFn(program, count, varyings,
3789 bufferMode);
3790 }
3791
3792 static void GL_BINDING_CALL Debug_glUniform1f(GLint location, GLfloat x) {
3793 GL_SERVICE_LOG("glUniform1f"
3794 << "(" << location << ", " << x << ")");
3795 g_driver_gl.debug_fn.glUniform1fFn(location, x);
3796 }
3797
3798 static void GL_BINDING_CALL
3799 Debug_glUniform1fv(GLint location, GLsizei count, const GLfloat* v) {
3800 GL_SERVICE_LOG("glUniform1fv"
3801 << "(" << location << ", " << count << ", "
3802 << static_cast<const void*>(v) << ")");
3803 g_driver_gl.debug_fn.glUniform1fvFn(location, count, v);
3804 }
3805
3806 static void GL_BINDING_CALL Debug_glUniform1i(GLint location, GLint x) {
3807 GL_SERVICE_LOG("glUniform1i"
3808 << "(" << location << ", " << x << ")");
3809 g_driver_gl.debug_fn.glUniform1iFn(location, x);
3810 }
3811
3812 static void GL_BINDING_CALL
3813 Debug_glUniform1iv(GLint location, GLsizei count, const GLint* v) {
3814 GL_SERVICE_LOG("glUniform1iv"
3815 << "(" << location << ", " << count << ", "
3816 << static_cast<const void*>(v) << ")");
3817 g_driver_gl.debug_fn.glUniform1ivFn(location, count, v);
3818 }
3819
3820 static void GL_BINDING_CALL Debug_glUniform1ui(GLint location, GLuint v0) {
3821 GL_SERVICE_LOG("glUniform1ui"
3822 << "(" << location << ", " << v0 << ")");
3823 g_driver_gl.debug_fn.glUniform1uiFn(location, v0);
3824 }
3825
3826 static void GL_BINDING_CALL
3827 Debug_glUniform1uiv(GLint location, GLsizei count, const GLuint* v) {
3828 GL_SERVICE_LOG("glUniform1uiv"
3829 << "(" << location << ", " << count << ", "
3830 << static_cast<const void*>(v) << ")");
3831 g_driver_gl.debug_fn.glUniform1uivFn(location, count, v);
3832 }
3833
3834 static void GL_BINDING_CALL
3835 Debug_glUniform2f(GLint location, GLfloat x, GLfloat y) {
3836 GL_SERVICE_LOG("glUniform2f"
3837 << "(" << location << ", " << x << ", " << y << ")");
3838 g_driver_gl.debug_fn.glUniform2fFn(location, x, y);
3839 }
3840
3841 static void GL_BINDING_CALL
3842 Debug_glUniform2fv(GLint location, GLsizei count, const GLfloat* v) {
3843 GL_SERVICE_LOG("glUniform2fv"
3844 << "(" << location << ", " << count << ", "
3845 << static_cast<const void*>(v) << ")");
3846 g_driver_gl.debug_fn.glUniform2fvFn(location, count, v);
3847 }
3848
3849 static void GL_BINDING_CALL
3850 Debug_glUniform2i(GLint location, GLint x, GLint y) {
3851 GL_SERVICE_LOG("glUniform2i"
3852 << "(" << location << ", " << x << ", " << y << ")");
3853 g_driver_gl.debug_fn.glUniform2iFn(location, x, y);
3854 }
3855
3856 static void GL_BINDING_CALL
3857 Debug_glUniform2iv(GLint location, GLsizei count, const GLint* v) {
3858 GL_SERVICE_LOG("glUniform2iv"
3859 << "(" << location << ", " << count << ", "
3860 << static_cast<const void*>(v) << ")");
3861 g_driver_gl.debug_fn.glUniform2ivFn(location, count, v);
3862 }
3863
3864 static void GL_BINDING_CALL
3865 Debug_glUniform2ui(GLint location, GLuint v0, GLuint v1) {
3866 GL_SERVICE_LOG("glUniform2ui"
3867 << "(" << location << ", " << v0 << ", " << v1 << ")");
3868 g_driver_gl.debug_fn.glUniform2uiFn(location, v0, v1);
3869 }
3870
3871 static void GL_BINDING_CALL
3872 Debug_glUniform2uiv(GLint location, GLsizei count, const GLuint* v) {
3873 GL_SERVICE_LOG("glUniform2uiv"
3874 << "(" << location << ", " << count << ", "
3875 << static_cast<const void*>(v) << ")");
3876 g_driver_gl.debug_fn.glUniform2uivFn(location, count, v);
3877 }
3878
3879 static void GL_BINDING_CALL
3880 Debug_glUniform3f(GLint location, GLfloat x, GLfloat y, GLfloat z) {
3881 GL_SERVICE_LOG("glUniform3f"
3882 << "(" << location << ", " << x << ", " << y << ", " << z
3883 << ")");
3884 g_driver_gl.debug_fn.glUniform3fFn(location, x, y, z);
3885 }
3886
3887 static void GL_BINDING_CALL
3888 Debug_glUniform3fv(GLint location, GLsizei count, const GLfloat* v) {
3889 GL_SERVICE_LOG("glUniform3fv"
3890 << "(" << location << ", " << count << ", "
3891 << static_cast<const void*>(v) << ")");
3892 g_driver_gl.debug_fn.glUniform3fvFn(location, count, v);
3893 }
3894
3895 static void GL_BINDING_CALL
3896 Debug_glUniform3i(GLint location, GLint x, GLint y, GLint z) {
3897 GL_SERVICE_LOG("glUniform3i"
3898 << "(" << location << ", " << x << ", " << y << ", " << z
3899 << ")");
3900 g_driver_gl.debug_fn.glUniform3iFn(location, x, y, z);
3901 }
3902
3903 static void GL_BINDING_CALL
3904 Debug_glUniform3iv(GLint location, GLsizei count, const GLint* v) {
3905 GL_SERVICE_LOG("glUniform3iv"
3906 << "(" << location << ", " << count << ", "
3907 << static_cast<const void*>(v) << ")");
3908 g_driver_gl.debug_fn.glUniform3ivFn(location, count, v);
3909 }
3910
3911 static void GL_BINDING_CALL
3912 Debug_glUniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2) {
3913 GL_SERVICE_LOG("glUniform3ui"
3914 << "(" << location << ", " << v0 << ", " << v1 << ", " << v2
3915 << ")");
3916 g_driver_gl.debug_fn.glUniform3uiFn(location, v0, v1, v2);
3917 }
3918
3919 static void GL_BINDING_CALL
3920 Debug_glUniform3uiv(GLint location, GLsizei count, const GLuint* v) {
3921 GL_SERVICE_LOG("glUniform3uiv"
3922 << "(" << location << ", " << count << ", "
3923 << static_cast<const void*>(v) << ")");
3924 g_driver_gl.debug_fn.glUniform3uivFn(location, count, v);
3925 }
3926
3927 static void GL_BINDING_CALL
3928 Debug_glUniform4f(GLint location, GLfloat x, GLfloat y, GLfloat z, GLfloat w) {
3929 GL_SERVICE_LOG("glUniform4f"
3930 << "(" << location << ", " << x << ", " << y << ", " << z
3931 << ", " << w << ")");
3932 g_driver_gl.debug_fn.glUniform4fFn(location, x, y, z, w);
3933 }
3934
3935 static void GL_BINDING_CALL
3936 Debug_glUniform4fv(GLint location, GLsizei count, const GLfloat* v) {
3937 GL_SERVICE_LOG("glUniform4fv"
3938 << "(" << location << ", " << count << ", "
3939 << static_cast<const void*>(v) << ")");
3940 g_driver_gl.debug_fn.glUniform4fvFn(location, count, v);
3941 }
3942
3943 static void GL_BINDING_CALL
3944 Debug_glUniform4i(GLint location, GLint x, GLint y, GLint z, GLint w) {
3945 GL_SERVICE_LOG("glUniform4i"
3946 << "(" << location << ", " << x << ", " << y << ", " << z
3947 << ", " << w << ")");
3948 g_driver_gl.debug_fn.glUniform4iFn(location, x, y, z, w);
3949 }
3950
3951 static void GL_BINDING_CALL
3952 Debug_glUniform4iv(GLint location, GLsizei count, const GLint* v) {
3953 GL_SERVICE_LOG("glUniform4iv"
3954 << "(" << location << ", " << count << ", "
3955 << static_cast<const void*>(v) << ")");
3956 g_driver_gl.debug_fn.glUniform4ivFn(location, count, v);
3957 }
3958
3959 static void GL_BINDING_CALL
3960 Debug_glUniform4ui(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3) {
3961 GL_SERVICE_LOG("glUniform4ui"
3962 << "(" << location << ", " << v0 << ", " << v1 << ", " << v2
3963 << ", " << v3 << ")");
3964 g_driver_gl.debug_fn.glUniform4uiFn(location, v0, v1, v2, v3);
3965 }
3966
3967 static void GL_BINDING_CALL
3968 Debug_glUniform4uiv(GLint location, GLsizei count, const GLuint* v) {
3969 GL_SERVICE_LOG("glUniform4uiv"
3970 << "(" << location << ", " << count << ", "
3971 << static_cast<const void*>(v) << ")");
3972 g_driver_gl.debug_fn.glUniform4uivFn(location, count, v);
3973 }
3974
3975 static void GL_BINDING_CALL
3976 Debug_glUniformBlockBinding(GLuint program,
3977 GLuint uniformBlockIndex,
3978 GLuint uniformBlockBinding) {
3979 GL_SERVICE_LOG("glUniformBlockBinding"
3980 << "(" << program << ", " << uniformBlockIndex << ", "
3981 << uniformBlockBinding << ")");
3982 g_driver_gl.debug_fn.glUniformBlockBindingFn(program, uniformBlockIndex,
3983 uniformBlockBinding);
3984 }
3985
3986 static void GL_BINDING_CALL Debug_glUniformMatrix2fv(GLint location,
3987 GLsizei count,
3988 GLboolean transpose,
3989 const GLfloat* value) {
3990 GL_SERVICE_LOG("glUniformMatrix2fv"
3991 << "(" << location << ", " << count << ", "
3992 << GLEnums::GetStringBool(transpose) << ", "
3993 << static_cast<const void*>(value) << ")");
3994 g_driver_gl.debug_fn.glUniformMatrix2fvFn(location, count, transpose, value);
3995 }
3996
3997 static void GL_BINDING_CALL Debug_glUniformMatrix2x3fv(GLint location,
3998 GLsizei count,
3999 GLboolean transpose,
4000 const GLfloat* value) {
4001 GL_SERVICE_LOG("glUniformMatrix2x3fv"
4002 << "(" << location << ", " << count << ", "
4003 << GLEnums::GetStringBool(transpose) << ", "
4004 << static_cast<const void*>(value) << ")");
4005 g_driver_gl.debug_fn.glUniformMatrix2x3fvFn(location, count, transpose,
4006 value);
4007 }
4008
4009 static void GL_BINDING_CALL Debug_glUniformMatrix2x4fv(GLint location,
4010 GLsizei count,
4011 GLboolean transpose,
4012 const GLfloat* value) {
4013 GL_SERVICE_LOG("glUniformMatrix2x4fv"
4014 << "(" << location << ", " << count << ", "
4015 << GLEnums::GetStringBool(transpose) << ", "
4016 << static_cast<const void*>(value) << ")");
4017 g_driver_gl.debug_fn.glUniformMatrix2x4fvFn(location, count, transpose,
4018 value);
4019 }
4020
4021 static void GL_BINDING_CALL Debug_glUniformMatrix3fv(GLint location,
4022 GLsizei count,
4023 GLboolean transpose,
4024 const GLfloat* value) {
4025 GL_SERVICE_LOG("glUniformMatrix3fv"
4026 << "(" << location << ", " << count << ", "
4027 << GLEnums::GetStringBool(transpose) << ", "
4028 << static_cast<const void*>(value) << ")");
4029 g_driver_gl.debug_fn.glUniformMatrix3fvFn(location, count, transpose, value);
4030 }
4031
4032 static void GL_BINDING_CALL Debug_glUniformMatrix3x2fv(GLint location,
4033 GLsizei count,
4034 GLboolean transpose,
4035 const GLfloat* value) {
4036 GL_SERVICE_LOG("glUniformMatrix3x2fv"
4037 << "(" << location << ", " << count << ", "
4038 << GLEnums::GetStringBool(transpose) << ", "
4039 << static_cast<const void*>(value) << ")");
4040 g_driver_gl.debug_fn.glUniformMatrix3x2fvFn(location, count, transpose,
4041 value);
4042 }
4043
4044 static void GL_BINDING_CALL Debug_glUniformMatrix3x4fv(GLint location,
4045 GLsizei count,
4046 GLboolean transpose,
4047 const GLfloat* value) {
4048 GL_SERVICE_LOG("glUniformMatrix3x4fv"
4049 << "(" << location << ", " << count << ", "
4050 << GLEnums::GetStringBool(transpose) << ", "
4051 << static_cast<const void*>(value) << ")");
4052 g_driver_gl.debug_fn.glUniformMatrix3x4fvFn(location, count, transpose,
4053 value);
4054 }
4055
4056 static void GL_BINDING_CALL Debug_glUniformMatrix4fv(GLint location,
4057 GLsizei count,
4058 GLboolean transpose,
4059 const GLfloat* value) {
4060 GL_SERVICE_LOG("glUniformMatrix4fv"
4061 << "(" << location << ", " << count << ", "
4062 << GLEnums::GetStringBool(transpose) << ", "
4063 << static_cast<const void*>(value) << ")");
4064 g_driver_gl.debug_fn.glUniformMatrix4fvFn(location, count, transpose, value);
4065 }
4066
4067 static void GL_BINDING_CALL Debug_glUniformMatrix4x2fv(GLint location,
4068 GLsizei count,
4069 GLboolean transpose,
4070 const GLfloat* value) {
4071 GL_SERVICE_LOG("glUniformMatrix4x2fv"
4072 << "(" << location << ", " << count << ", "
4073 << GLEnums::GetStringBool(transpose) << ", "
4074 << static_cast<const void*>(value) << ")");
4075 g_driver_gl.debug_fn.glUniformMatrix4x2fvFn(location, count, transpose,
4076 value);
4077 }
4078
4079 static void GL_BINDING_CALL Debug_glUniformMatrix4x3fv(GLint location,
4080 GLsizei count,
4081 GLboolean transpose,
4082 const GLfloat* value) {
4083 GL_SERVICE_LOG("glUniformMatrix4x3fv"
4084 << "(" << location << ", " << count << ", "
4085 << GLEnums::GetStringBool(transpose) << ", "
4086 << static_cast<const void*>(value) << ")");
4087 g_driver_gl.debug_fn.glUniformMatrix4x3fvFn(location, count, transpose,
4088 value);
4089 }
4090
4091 static GLboolean GL_BINDING_CALL Debug_glUnmapBuffer(GLenum target) {
4092 GL_SERVICE_LOG("glUnmapBuffer"
4093 << "(" << GLEnums::GetStringEnum(target) << ")");
4094 GLboolean result = g_driver_gl.debug_fn.glUnmapBufferFn(target);
4095 GL_SERVICE_LOG("GL_RESULT: " << result);
4096 return result;
4097 }
4098
4099 static void GL_BINDING_CALL Debug_glUseProgram(GLuint program) {
4100 GL_SERVICE_LOG("glUseProgram"
4101 << "(" << program << ")");
4102 g_driver_gl.debug_fn.glUseProgramFn(program);
4103 }
4104
4105 static void GL_BINDING_CALL Debug_glValidateProgram(GLuint program) {
4106 GL_SERVICE_LOG("glValidateProgram"
4107 << "(" << program << ")");
4108 g_driver_gl.debug_fn.glValidateProgramFn(program);
4109 }
4110
4111 static void GL_BINDING_CALL Debug_glVertexAttrib1f(GLuint indx, GLfloat x) {
4112 GL_SERVICE_LOG("glVertexAttrib1f"
4113 << "(" << indx << ", " << x << ")");
4114 g_driver_gl.debug_fn.glVertexAttrib1fFn(indx, x);
4115 }
4116
4117 static void GL_BINDING_CALL
4118 Debug_glVertexAttrib1fv(GLuint indx, const GLfloat* values) {
4119 GL_SERVICE_LOG("glVertexAttrib1fv"
4120 << "(" << indx << ", " << static_cast<const void*>(values)
4121 << ")");
4122 g_driver_gl.debug_fn.glVertexAttrib1fvFn(indx, values);
4123 }
4124
4125 static void GL_BINDING_CALL
4126 Debug_glVertexAttrib2f(GLuint indx, GLfloat x, GLfloat y) {
4127 GL_SERVICE_LOG("glVertexAttrib2f"
4128 << "(" << indx << ", " << x << ", " << y << ")");
4129 g_driver_gl.debug_fn.glVertexAttrib2fFn(indx, x, y);
4130 }
4131
4132 static void GL_BINDING_CALL
4133 Debug_glVertexAttrib2fv(GLuint indx, const GLfloat* values) {
4134 GL_SERVICE_LOG("glVertexAttrib2fv"
4135 << "(" << indx << ", " << static_cast<const void*>(values)
4136 << ")");
4137 g_driver_gl.debug_fn.glVertexAttrib2fvFn(indx, values);
4138 }
4139
4140 static void GL_BINDING_CALL
4141 Debug_glVertexAttrib3f(GLuint indx, GLfloat x, GLfloat y, GLfloat z) {
4142 GL_SERVICE_LOG("glVertexAttrib3f"
4143 << "(" << indx << ", " << x << ", " << y << ", " << z << ")");
4144 g_driver_gl.debug_fn.glVertexAttrib3fFn(indx, x, y, z);
4145 }
4146
4147 static void GL_BINDING_CALL
4148 Debug_glVertexAttrib3fv(GLuint indx, const GLfloat* values) {
4149 GL_SERVICE_LOG("glVertexAttrib3fv"
4150 << "(" << indx << ", " << static_cast<const void*>(values)
4151 << ")");
4152 g_driver_gl.debug_fn.glVertexAttrib3fvFn(indx, values);
4153 }
4154
4155 static void GL_BINDING_CALL Debug_glVertexAttrib4f(GLuint indx,
4156 GLfloat x,
4157 GLfloat y,
4158 GLfloat z,
4159 GLfloat w) {
4160 GL_SERVICE_LOG("glVertexAttrib4f"
4161 << "(" << indx << ", " << x << ", " << y << ", " << z << ", "
4162 << w << ")");
4163 g_driver_gl.debug_fn.glVertexAttrib4fFn(indx, x, y, z, w);
4164 }
4165
4166 static void GL_BINDING_CALL
4167 Debug_glVertexAttrib4fv(GLuint indx, const GLfloat* values) {
4168 GL_SERVICE_LOG("glVertexAttrib4fv"
4169 << "(" << indx << ", " << static_cast<const void*>(values)
4170 << ")");
4171 g_driver_gl.debug_fn.glVertexAttrib4fvFn(indx, values);
4172 }
4173
4174 static void GL_BINDING_CALL
4175 Debug_glVertexAttribDivisorANGLE(GLuint index, GLuint divisor) {
4176 GL_SERVICE_LOG("glVertexAttribDivisorANGLE"
4177 << "(" << index << ", " << divisor << ")");
4178 g_driver_gl.debug_fn.glVertexAttribDivisorANGLEFn(index, divisor);
4179 }
4180
4181 static void GL_BINDING_CALL
4182 Debug_glVertexAttribI4i(GLuint indx, GLint x, GLint y, GLint z, GLint w) {
4183 GL_SERVICE_LOG("glVertexAttribI4i"
4184 << "(" << indx << ", " << x << ", " << y << ", " << z << ", "
4185 << w << ")");
4186 g_driver_gl.debug_fn.glVertexAttribI4iFn(indx, x, y, z, w);
4187 }
4188
4189 static void GL_BINDING_CALL
4190 Debug_glVertexAttribI4iv(GLuint indx, const GLint* values) {
4191 GL_SERVICE_LOG("glVertexAttribI4iv"
4192 << "(" << indx << ", " << static_cast<const void*>(values)
4193 << ")");
4194 g_driver_gl.debug_fn.glVertexAttribI4ivFn(indx, values);
4195 }
4196
4197 static void GL_BINDING_CALL
4198 Debug_glVertexAttribI4ui(GLuint indx, GLuint x, GLuint y, GLuint z, GLuint w) {
4199 GL_SERVICE_LOG("glVertexAttribI4ui"
4200 << "(" << indx << ", " << x << ", " << y << ", " << z << ", "
4201 << w << ")");
4202 g_driver_gl.debug_fn.glVertexAttribI4uiFn(indx, x, y, z, w);
4203 }
4204
4205 static void GL_BINDING_CALL
4206 Debug_glVertexAttribI4uiv(GLuint indx, const GLuint* values) {
4207 GL_SERVICE_LOG("glVertexAttribI4uiv"
4208 << "(" << indx << ", " << static_cast<const void*>(values)
4209 << ")");
4210 g_driver_gl.debug_fn.glVertexAttribI4uivFn(indx, values);
4211 }
4212
4213 static void GL_BINDING_CALL Debug_glVertexAttribIPointer(GLuint indx,
4214 GLint size,
4215 GLenum type,
4216 GLsizei stride,
4217 const void* ptr) {
4218 GL_SERVICE_LOG("glVertexAttribIPointer"
4219 << "(" << indx << ", " << size << ", "
4220 << GLEnums::GetStringEnum(type) << ", " << stride << ", "
4221 << static_cast<const void*>(ptr) << ")");
4222 g_driver_gl.debug_fn.glVertexAttribIPointerFn(indx, size, type, stride, ptr);
4223 }
4224
4225 static void GL_BINDING_CALL Debug_glVertexAttribPointer(GLuint indx,
4226 GLint size,
4227 GLenum type,
4228 GLboolean normalized,
4229 GLsizei stride,
4230 const void* ptr) {
4231 GL_SERVICE_LOG("glVertexAttribPointer"
4232 << "(" << indx << ", " << size << ", "
4233 << GLEnums::GetStringEnum(type) << ", "
4234 << GLEnums::GetStringBool(normalized) << ", " << stride << ", "
4235 << static_cast<const void*>(ptr) << ")");
4236 g_driver_gl.debug_fn.glVertexAttribPointerFn(indx, size, type, normalized,
4237 stride, ptr);
4238 }
4239
4240 static void GL_BINDING_CALL
4241 Debug_glViewport(GLint x, GLint y, GLsizei width, GLsizei height) {
4242 GL_SERVICE_LOG("glViewport"
4243 << "(" << x << ", " << y << ", " << width << ", " << height
4244 << ")");
4245 g_driver_gl.debug_fn.glViewportFn(x, y, width, height);
4246 }
4247
4248 static GLenum GL_BINDING_CALL
4249 Debug_glWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout) {
4250 GL_SERVICE_LOG("glWaitSync"
4251 << "(" << sync << ", " << flags << ", " << timeout << ")");
4252 GLenum result = g_driver_gl.debug_fn.glWaitSyncFn(sync, flags, timeout);
4253 GL_SERVICE_LOG("GL_RESULT: " << result);
4254 return result;
4255 }
4256 } // extern "C"
4257
4258 void DriverGL::InitializeDebugBindings() {
4259 if (!debug_fn.glActiveTextureFn) {
4260 debug_fn.glActiveTextureFn = fn.glActiveTextureFn;
4261 fn.glActiveTextureFn = Debug_glActiveTexture;
4262 }
4263 if (!debug_fn.glAttachShaderFn) {
4264 debug_fn.glAttachShaderFn = fn.glAttachShaderFn;
4265 fn.glAttachShaderFn = Debug_glAttachShader;
4266 }
4267 if (!debug_fn.glBeginQueryFn) {
4268 debug_fn.glBeginQueryFn = fn.glBeginQueryFn;
4269 fn.glBeginQueryFn = Debug_glBeginQuery;
4270 }
4271 if (!debug_fn.glBeginQueryARBFn) {
4272 debug_fn.glBeginQueryARBFn = fn.glBeginQueryARBFn;
4273 fn.glBeginQueryARBFn = Debug_glBeginQueryARB;
4274 }
4275 if (!debug_fn.glBeginTransformFeedbackFn) {
4276 debug_fn.glBeginTransformFeedbackFn = fn.glBeginTransformFeedbackFn;
4277 fn.glBeginTransformFeedbackFn = Debug_glBeginTransformFeedback;
4278 }
4279 if (!debug_fn.glBindAttribLocationFn) {
4280 debug_fn.glBindAttribLocationFn = fn.glBindAttribLocationFn;
4281 fn.glBindAttribLocationFn = Debug_glBindAttribLocation;
4282 }
4283 if (!debug_fn.glBindBufferFn) {
4284 debug_fn.glBindBufferFn = fn.glBindBufferFn;
4285 fn.glBindBufferFn = Debug_glBindBuffer;
4286 }
4287 if (!debug_fn.glBindBufferBaseFn) {
4288 debug_fn.glBindBufferBaseFn = fn.glBindBufferBaseFn;
4289 fn.glBindBufferBaseFn = Debug_glBindBufferBase;
4290 }
4291 if (!debug_fn.glBindBufferRangeFn) {
4292 debug_fn.glBindBufferRangeFn = fn.glBindBufferRangeFn;
4293 fn.glBindBufferRangeFn = Debug_glBindBufferRange;
4294 }
4295 if (!debug_fn.glBindFragDataLocationFn) {
4296 debug_fn.glBindFragDataLocationFn = fn.glBindFragDataLocationFn;
4297 fn.glBindFragDataLocationFn = Debug_glBindFragDataLocation;
4298 }
4299 if (!debug_fn.glBindFragDataLocationIndexedFn) {
4300 debug_fn.glBindFragDataLocationIndexedFn =
4301 fn.glBindFragDataLocationIndexedFn;
4302 fn.glBindFragDataLocationIndexedFn = Debug_glBindFragDataLocationIndexed;
4303 }
4304 if (!debug_fn.glBindFramebufferEXTFn) {
4305 debug_fn.glBindFramebufferEXTFn = fn.glBindFramebufferEXTFn;
4306 fn.glBindFramebufferEXTFn = Debug_glBindFramebufferEXT;
4307 }
4308 if (!debug_fn.glBindRenderbufferEXTFn) {
4309 debug_fn.glBindRenderbufferEXTFn = fn.glBindRenderbufferEXTFn;
4310 fn.glBindRenderbufferEXTFn = Debug_glBindRenderbufferEXT;
4311 }
4312 if (!debug_fn.glBindSamplerFn) {
4313 debug_fn.glBindSamplerFn = fn.glBindSamplerFn;
4314 fn.glBindSamplerFn = Debug_glBindSampler;
4315 }
4316 if (!debug_fn.glBindTextureFn) {
4317 debug_fn.glBindTextureFn = fn.glBindTextureFn;
4318 fn.glBindTextureFn = Debug_glBindTexture;
4319 }
4320 if (!debug_fn.glBindTransformFeedbackFn) {
4321 debug_fn.glBindTransformFeedbackFn = fn.glBindTransformFeedbackFn;
4322 fn.glBindTransformFeedbackFn = Debug_glBindTransformFeedback;
4323 }
4324 if (!debug_fn.glBindVertexArrayOESFn) {
4325 debug_fn.glBindVertexArrayOESFn = fn.glBindVertexArrayOESFn;
4326 fn.glBindVertexArrayOESFn = Debug_glBindVertexArrayOES;
4327 }
4328 if (!debug_fn.glBlendBarrierKHRFn) {
4329 debug_fn.glBlendBarrierKHRFn = fn.glBlendBarrierKHRFn;
4330 fn.glBlendBarrierKHRFn = Debug_glBlendBarrierKHR;
4331 }
4332 if (!debug_fn.glBlendColorFn) {
4333 debug_fn.glBlendColorFn = fn.glBlendColorFn;
4334 fn.glBlendColorFn = Debug_glBlendColor;
4335 }
4336 if (!debug_fn.glBlendEquationFn) {
4337 debug_fn.glBlendEquationFn = fn.glBlendEquationFn;
4338 fn.glBlendEquationFn = Debug_glBlendEquation;
4339 }
4340 if (!debug_fn.glBlendEquationSeparateFn) {
4341 debug_fn.glBlendEquationSeparateFn = fn.glBlendEquationSeparateFn;
4342 fn.glBlendEquationSeparateFn = Debug_glBlendEquationSeparate;
4343 }
4344 if (!debug_fn.glBlendFuncFn) {
4345 debug_fn.glBlendFuncFn = fn.glBlendFuncFn;
4346 fn.glBlendFuncFn = Debug_glBlendFunc;
4347 }
4348 if (!debug_fn.glBlendFuncSeparateFn) {
4349 debug_fn.glBlendFuncSeparateFn = fn.glBlendFuncSeparateFn;
4350 fn.glBlendFuncSeparateFn = Debug_glBlendFuncSeparate;
4351 }
4352 if (!debug_fn.glBlitFramebufferFn) {
4353 debug_fn.glBlitFramebufferFn = fn.glBlitFramebufferFn;
4354 fn.glBlitFramebufferFn = Debug_glBlitFramebuffer;
4355 }
4356 if (!debug_fn.glBlitFramebufferANGLEFn) {
4357 debug_fn.glBlitFramebufferANGLEFn = fn.glBlitFramebufferANGLEFn;
4358 fn.glBlitFramebufferANGLEFn = Debug_glBlitFramebufferANGLE;
4359 }
4360 if (!debug_fn.glBlitFramebufferEXTFn) {
4361 debug_fn.glBlitFramebufferEXTFn = fn.glBlitFramebufferEXTFn;
4362 fn.glBlitFramebufferEXTFn = Debug_glBlitFramebufferEXT;
4363 }
4364 if (!debug_fn.glBufferDataFn) {
4365 debug_fn.glBufferDataFn = fn.glBufferDataFn;
4366 fn.glBufferDataFn = Debug_glBufferData;
4367 }
4368 if (!debug_fn.glBufferSubDataFn) {
4369 debug_fn.glBufferSubDataFn = fn.glBufferSubDataFn;
4370 fn.glBufferSubDataFn = Debug_glBufferSubData;
4371 }
4372 if (!debug_fn.glCheckFramebufferStatusEXTFn) {
4373 debug_fn.glCheckFramebufferStatusEXTFn = fn.glCheckFramebufferStatusEXTFn;
4374 fn.glCheckFramebufferStatusEXTFn = Debug_glCheckFramebufferStatusEXT;
4375 }
4376 if (!debug_fn.glClearFn) {
4377 debug_fn.glClearFn = fn.glClearFn;
4378 fn.glClearFn = Debug_glClear;
4379 }
4380 if (!debug_fn.glClearBufferfiFn) {
4381 debug_fn.glClearBufferfiFn = fn.glClearBufferfiFn;
4382 fn.glClearBufferfiFn = Debug_glClearBufferfi;
4383 }
4384 if (!debug_fn.glClearBufferfvFn) {
4385 debug_fn.glClearBufferfvFn = fn.glClearBufferfvFn;
4386 fn.glClearBufferfvFn = Debug_glClearBufferfv;
4387 }
4388 if (!debug_fn.glClearBufferivFn) {
4389 debug_fn.glClearBufferivFn = fn.glClearBufferivFn;
4390 fn.glClearBufferivFn = Debug_glClearBufferiv;
4391 }
4392 if (!debug_fn.glClearBufferuivFn) {
4393 debug_fn.glClearBufferuivFn = fn.glClearBufferuivFn;
4394 fn.glClearBufferuivFn = Debug_glClearBufferuiv;
4395 }
4396 if (!debug_fn.glClearColorFn) {
4397 debug_fn.glClearColorFn = fn.glClearColorFn;
4398 fn.glClearColorFn = Debug_glClearColor;
4399 }
4400 if (!debug_fn.glClearDepthFn) {
4401 debug_fn.glClearDepthFn = fn.glClearDepthFn;
4402 fn.glClearDepthFn = Debug_glClearDepth;
4403 }
4404 if (!debug_fn.glClearDepthfFn) {
4405 debug_fn.glClearDepthfFn = fn.glClearDepthfFn;
4406 fn.glClearDepthfFn = Debug_glClearDepthf;
4407 }
4408 if (!debug_fn.glClearStencilFn) {
4409 debug_fn.glClearStencilFn = fn.glClearStencilFn;
4410 fn.glClearStencilFn = Debug_glClearStencil;
4411 }
4412 if (!debug_fn.glClientWaitSyncFn) {
4413 debug_fn.glClientWaitSyncFn = fn.glClientWaitSyncFn;
4414 fn.glClientWaitSyncFn = Debug_glClientWaitSync;
4415 }
4416 if (!debug_fn.glColorMaskFn) {
4417 debug_fn.glColorMaskFn = fn.glColorMaskFn;
4418 fn.glColorMaskFn = Debug_glColorMask;
4419 }
4420 if (!debug_fn.glCompileShaderFn) {
4421 debug_fn.glCompileShaderFn = fn.glCompileShaderFn;
4422 fn.glCompileShaderFn = Debug_glCompileShader;
4423 }
4424 if (!debug_fn.glCompressedTexImage2DFn) {
4425 debug_fn.glCompressedTexImage2DFn = fn.glCompressedTexImage2DFn;
4426 fn.glCompressedTexImage2DFn = Debug_glCompressedTexImage2D;
4427 }
4428 if (!debug_fn.glCompressedTexImage3DFn) {
4429 debug_fn.glCompressedTexImage3DFn = fn.glCompressedTexImage3DFn;
4430 fn.glCompressedTexImage3DFn = Debug_glCompressedTexImage3D;
4431 }
4432 if (!debug_fn.glCompressedTexSubImage2DFn) {
4433 debug_fn.glCompressedTexSubImage2DFn = fn.glCompressedTexSubImage2DFn;
4434 fn.glCompressedTexSubImage2DFn = Debug_glCompressedTexSubImage2D;
4435 }
4436 if (!debug_fn.glCopyBufferSubDataFn) {
4437 debug_fn.glCopyBufferSubDataFn = fn.glCopyBufferSubDataFn;
4438 fn.glCopyBufferSubDataFn = Debug_glCopyBufferSubData;
4439 }
4440 if (!debug_fn.glCopyTexImage2DFn) {
4441 debug_fn.glCopyTexImage2DFn = fn.glCopyTexImage2DFn;
4442 fn.glCopyTexImage2DFn = Debug_glCopyTexImage2D;
4443 }
4444 if (!debug_fn.glCopyTexSubImage2DFn) {
4445 debug_fn.glCopyTexSubImage2DFn = fn.glCopyTexSubImage2DFn;
4446 fn.glCopyTexSubImage2DFn = Debug_glCopyTexSubImage2D;
4447 }
4448 if (!debug_fn.glCopyTexSubImage3DFn) {
4449 debug_fn.glCopyTexSubImage3DFn = fn.glCopyTexSubImage3DFn;
4450 fn.glCopyTexSubImage3DFn = Debug_glCopyTexSubImage3D;
4451 }
4452 if (!debug_fn.glCreateProgramFn) {
4453 debug_fn.glCreateProgramFn = fn.glCreateProgramFn;
4454 fn.glCreateProgramFn = Debug_glCreateProgram;
4455 }
4456 if (!debug_fn.glCreateShaderFn) {
4457 debug_fn.glCreateShaderFn = fn.glCreateShaderFn;
4458 fn.glCreateShaderFn = Debug_glCreateShader;
4459 }
4460 if (!debug_fn.glCullFaceFn) {
4461 debug_fn.glCullFaceFn = fn.glCullFaceFn;
4462 fn.glCullFaceFn = Debug_glCullFace;
4463 }
4464 if (!debug_fn.glDeleteBuffersARBFn) {
4465 debug_fn.glDeleteBuffersARBFn = fn.glDeleteBuffersARBFn;
4466 fn.glDeleteBuffersARBFn = Debug_glDeleteBuffersARB;
4467 }
4468 if (!debug_fn.glDeleteFencesAPPLEFn) {
4469 debug_fn.glDeleteFencesAPPLEFn = fn.glDeleteFencesAPPLEFn;
4470 fn.glDeleteFencesAPPLEFn = Debug_glDeleteFencesAPPLE;
4471 }
4472 if (!debug_fn.glDeleteFencesNVFn) {
4473 debug_fn.glDeleteFencesNVFn = fn.glDeleteFencesNVFn;
4474 fn.glDeleteFencesNVFn = Debug_glDeleteFencesNV;
4475 }
4476 if (!debug_fn.glDeleteFramebuffersEXTFn) {
4477 debug_fn.glDeleteFramebuffersEXTFn = fn.glDeleteFramebuffersEXTFn;
4478 fn.glDeleteFramebuffersEXTFn = Debug_glDeleteFramebuffersEXT;
4479 }
4480 if (!debug_fn.glDeleteProgramFn) {
4481 debug_fn.glDeleteProgramFn = fn.glDeleteProgramFn;
4482 fn.glDeleteProgramFn = Debug_glDeleteProgram;
4483 }
4484 if (!debug_fn.glDeleteQueriesFn) {
4485 debug_fn.glDeleteQueriesFn = fn.glDeleteQueriesFn;
4486 fn.glDeleteQueriesFn = Debug_glDeleteQueries;
4487 }
4488 if (!debug_fn.glDeleteQueriesARBFn) {
4489 debug_fn.glDeleteQueriesARBFn = fn.glDeleteQueriesARBFn;
4490 fn.glDeleteQueriesARBFn = Debug_glDeleteQueriesARB;
4491 }
4492 if (!debug_fn.glDeleteRenderbuffersEXTFn) {
4493 debug_fn.glDeleteRenderbuffersEXTFn = fn.glDeleteRenderbuffersEXTFn;
4494 fn.glDeleteRenderbuffersEXTFn = Debug_glDeleteRenderbuffersEXT;
4495 }
4496 if (!debug_fn.glDeleteSamplersFn) {
4497 debug_fn.glDeleteSamplersFn = fn.glDeleteSamplersFn;
4498 fn.glDeleteSamplersFn = Debug_glDeleteSamplers;
4499 }
4500 if (!debug_fn.glDeleteShaderFn) {
4501 debug_fn.glDeleteShaderFn = fn.glDeleteShaderFn;
4502 fn.glDeleteShaderFn = Debug_glDeleteShader;
4503 }
4504 if (!debug_fn.glDeleteSyncFn) {
4505 debug_fn.glDeleteSyncFn = fn.glDeleteSyncFn;
4506 fn.glDeleteSyncFn = Debug_glDeleteSync;
4507 }
4508 if (!debug_fn.glDeleteTexturesFn) {
4509 debug_fn.glDeleteTexturesFn = fn.glDeleteTexturesFn;
4510 fn.glDeleteTexturesFn = Debug_glDeleteTextures;
4511 }
4512 if (!debug_fn.glDeleteTransformFeedbacksFn) {
4513 debug_fn.glDeleteTransformFeedbacksFn = fn.glDeleteTransformFeedbacksFn;
4514 fn.glDeleteTransformFeedbacksFn = Debug_glDeleteTransformFeedbacks;
4515 }
4516 if (!debug_fn.glDeleteVertexArraysOESFn) {
4517 debug_fn.glDeleteVertexArraysOESFn = fn.glDeleteVertexArraysOESFn;
4518 fn.glDeleteVertexArraysOESFn = Debug_glDeleteVertexArraysOES;
4519 }
4520 if (!debug_fn.glDepthFuncFn) {
4521 debug_fn.glDepthFuncFn = fn.glDepthFuncFn;
4522 fn.glDepthFuncFn = Debug_glDepthFunc;
4523 }
4524 if (!debug_fn.glDepthMaskFn) {
4525 debug_fn.glDepthMaskFn = fn.glDepthMaskFn;
4526 fn.glDepthMaskFn = Debug_glDepthMask;
4527 }
4528 if (!debug_fn.glDepthRangeFn) {
4529 debug_fn.glDepthRangeFn = fn.glDepthRangeFn;
4530 fn.glDepthRangeFn = Debug_glDepthRange;
4531 }
4532 if (!debug_fn.glDepthRangefFn) {
4533 debug_fn.glDepthRangefFn = fn.glDepthRangefFn;
4534 fn.glDepthRangefFn = Debug_glDepthRangef;
4535 }
4536 if (!debug_fn.glDetachShaderFn) {
4537 debug_fn.glDetachShaderFn = fn.glDetachShaderFn;
4538 fn.glDetachShaderFn = Debug_glDetachShader;
4539 }
4540 if (!debug_fn.glDisableFn) {
4541 debug_fn.glDisableFn = fn.glDisableFn;
4542 fn.glDisableFn = Debug_glDisable;
4543 }
4544 if (!debug_fn.glDisableVertexAttribArrayFn) {
4545 debug_fn.glDisableVertexAttribArrayFn = fn.glDisableVertexAttribArrayFn;
4546 fn.glDisableVertexAttribArrayFn = Debug_glDisableVertexAttribArray;
4547 }
4548 if (!debug_fn.glDiscardFramebufferEXTFn) {
4549 debug_fn.glDiscardFramebufferEXTFn = fn.glDiscardFramebufferEXTFn;
4550 fn.glDiscardFramebufferEXTFn = Debug_glDiscardFramebufferEXT;
4551 }
4552 if (!debug_fn.glDrawArraysFn) {
4553 debug_fn.glDrawArraysFn = fn.glDrawArraysFn;
4554 fn.glDrawArraysFn = Debug_glDrawArrays;
4555 }
4556 if (!debug_fn.glDrawArraysInstancedANGLEFn) {
4557 debug_fn.glDrawArraysInstancedANGLEFn = fn.glDrawArraysInstancedANGLEFn;
4558 fn.glDrawArraysInstancedANGLEFn = Debug_glDrawArraysInstancedANGLE;
4559 }
4560 if (!debug_fn.glDrawBufferFn) {
4561 debug_fn.glDrawBufferFn = fn.glDrawBufferFn;
4562 fn.glDrawBufferFn = Debug_glDrawBuffer;
4563 }
4564 if (!debug_fn.glDrawBuffersARBFn) {
4565 debug_fn.glDrawBuffersARBFn = fn.glDrawBuffersARBFn;
4566 fn.glDrawBuffersARBFn = Debug_glDrawBuffersARB;
4567 }
4568 if (!debug_fn.glDrawElementsFn) {
4569 debug_fn.glDrawElementsFn = fn.glDrawElementsFn;
4570 fn.glDrawElementsFn = Debug_glDrawElements;
4571 }
4572 if (!debug_fn.glDrawElementsInstancedANGLEFn) {
4573 debug_fn.glDrawElementsInstancedANGLEFn = fn.glDrawElementsInstancedANGLEFn;
4574 fn.glDrawElementsInstancedANGLEFn = Debug_glDrawElementsInstancedANGLE;
4575 }
4576 if (!debug_fn.glDrawRangeElementsFn) {
4577 debug_fn.glDrawRangeElementsFn = fn.glDrawRangeElementsFn;
4578 fn.glDrawRangeElementsFn = Debug_glDrawRangeElements;
4579 }
4580 if (!debug_fn.glEGLImageTargetRenderbufferStorageOESFn) {
4581 debug_fn.glEGLImageTargetRenderbufferStorageOESFn =
4582 fn.glEGLImageTargetRenderbufferStorageOESFn;
4583 fn.glEGLImageTargetRenderbufferStorageOESFn =
4584 Debug_glEGLImageTargetRenderbufferStorageOES;
4585 }
4586 if (!debug_fn.glEGLImageTargetTexture2DOESFn) {
4587 debug_fn.glEGLImageTargetTexture2DOESFn = fn.glEGLImageTargetTexture2DOESFn;
4588 fn.glEGLImageTargetTexture2DOESFn = Debug_glEGLImageTargetTexture2DOES;
4589 }
4590 if (!debug_fn.glEnableFn) {
4591 debug_fn.glEnableFn = fn.glEnableFn;
4592 fn.glEnableFn = Debug_glEnable;
4593 }
4594 if (!debug_fn.glEnableVertexAttribArrayFn) {
4595 debug_fn.glEnableVertexAttribArrayFn = fn.glEnableVertexAttribArrayFn;
4596 fn.glEnableVertexAttribArrayFn = Debug_glEnableVertexAttribArray;
4597 }
4598 if (!debug_fn.glEndQueryFn) {
4599 debug_fn.glEndQueryFn = fn.glEndQueryFn;
4600 fn.glEndQueryFn = Debug_glEndQuery;
4601 }
4602 if (!debug_fn.glEndQueryARBFn) {
4603 debug_fn.glEndQueryARBFn = fn.glEndQueryARBFn;
4604 fn.glEndQueryARBFn = Debug_glEndQueryARB;
4605 }
4606 if (!debug_fn.glEndTransformFeedbackFn) {
4607 debug_fn.glEndTransformFeedbackFn = fn.glEndTransformFeedbackFn;
4608 fn.glEndTransformFeedbackFn = Debug_glEndTransformFeedback;
4609 }
4610 if (!debug_fn.glFenceSyncFn) {
4611 debug_fn.glFenceSyncFn = fn.glFenceSyncFn;
4612 fn.glFenceSyncFn = Debug_glFenceSync;
4613 }
4614 if (!debug_fn.glFinishFn) {
4615 debug_fn.glFinishFn = fn.glFinishFn;
4616 fn.glFinishFn = Debug_glFinish;
4617 }
4618 if (!debug_fn.glFinishFenceAPPLEFn) {
4619 debug_fn.glFinishFenceAPPLEFn = fn.glFinishFenceAPPLEFn;
4620 fn.glFinishFenceAPPLEFn = Debug_glFinishFenceAPPLE;
4621 }
4622 if (!debug_fn.glFinishFenceNVFn) {
4623 debug_fn.glFinishFenceNVFn = fn.glFinishFenceNVFn;
4624 fn.glFinishFenceNVFn = Debug_glFinishFenceNV;
4625 }
4626 if (!debug_fn.glFlushFn) {
4627 debug_fn.glFlushFn = fn.glFlushFn;
4628 fn.glFlushFn = Debug_glFlush;
4629 }
4630 if (!debug_fn.glFlushMappedBufferRangeFn) {
4631 debug_fn.glFlushMappedBufferRangeFn = fn.glFlushMappedBufferRangeFn;
4632 fn.glFlushMappedBufferRangeFn = Debug_glFlushMappedBufferRange;
4633 }
4634 if (!debug_fn.glFramebufferRenderbufferEXTFn) {
4635 debug_fn.glFramebufferRenderbufferEXTFn = fn.glFramebufferRenderbufferEXTFn;
4636 fn.glFramebufferRenderbufferEXTFn = Debug_glFramebufferRenderbufferEXT;
4637 }
4638 if (!debug_fn.glFramebufferTexture2DEXTFn) {
4639 debug_fn.glFramebufferTexture2DEXTFn = fn.glFramebufferTexture2DEXTFn;
4640 fn.glFramebufferTexture2DEXTFn = Debug_glFramebufferTexture2DEXT;
4641 }
4642 if (!debug_fn.glFramebufferTexture2DMultisampleEXTFn) {
4643 debug_fn.glFramebufferTexture2DMultisampleEXTFn =
4644 fn.glFramebufferTexture2DMultisampleEXTFn;
4645 fn.glFramebufferTexture2DMultisampleEXTFn =
4646 Debug_glFramebufferTexture2DMultisampleEXT;
4647 }
4648 if (!debug_fn.glFramebufferTexture2DMultisampleIMGFn) {
4649 debug_fn.glFramebufferTexture2DMultisampleIMGFn =
4650 fn.glFramebufferTexture2DMultisampleIMGFn;
4651 fn.glFramebufferTexture2DMultisampleIMGFn =
4652 Debug_glFramebufferTexture2DMultisampleIMG;
4653 }
4654 if (!debug_fn.glFramebufferTextureLayerFn) {
4655 debug_fn.glFramebufferTextureLayerFn = fn.glFramebufferTextureLayerFn;
4656 fn.glFramebufferTextureLayerFn = Debug_glFramebufferTextureLayer;
4657 }
4658 if (!debug_fn.glFrontFaceFn) {
4659 debug_fn.glFrontFaceFn = fn.glFrontFaceFn;
4660 fn.glFrontFaceFn = Debug_glFrontFace;
4661 }
4662 if (!debug_fn.glGenBuffersARBFn) {
4663 debug_fn.glGenBuffersARBFn = fn.glGenBuffersARBFn;
4664 fn.glGenBuffersARBFn = Debug_glGenBuffersARB;
4665 }
4666 if (!debug_fn.glGenerateMipmapEXTFn) {
4667 debug_fn.glGenerateMipmapEXTFn = fn.glGenerateMipmapEXTFn;
4668 fn.glGenerateMipmapEXTFn = Debug_glGenerateMipmapEXT;
4669 }
4670 if (!debug_fn.glGenFencesAPPLEFn) {
4671 debug_fn.glGenFencesAPPLEFn = fn.glGenFencesAPPLEFn;
4672 fn.glGenFencesAPPLEFn = Debug_glGenFencesAPPLE;
4673 }
4674 if (!debug_fn.glGenFencesNVFn) {
4675 debug_fn.glGenFencesNVFn = fn.glGenFencesNVFn;
4676 fn.glGenFencesNVFn = Debug_glGenFencesNV;
4677 }
4678 if (!debug_fn.glGenFramebuffersEXTFn) {
4679 debug_fn.glGenFramebuffersEXTFn = fn.glGenFramebuffersEXTFn;
4680 fn.glGenFramebuffersEXTFn = Debug_glGenFramebuffersEXT;
4681 }
4682 if (!debug_fn.glGenQueriesFn) {
4683 debug_fn.glGenQueriesFn = fn.glGenQueriesFn;
4684 fn.glGenQueriesFn = Debug_glGenQueries;
4685 }
4686 if (!debug_fn.glGenQueriesARBFn) {
4687 debug_fn.glGenQueriesARBFn = fn.glGenQueriesARBFn;
4688 fn.glGenQueriesARBFn = Debug_glGenQueriesARB;
4689 }
4690 if (!debug_fn.glGenRenderbuffersEXTFn) {
4691 debug_fn.glGenRenderbuffersEXTFn = fn.glGenRenderbuffersEXTFn;
4692 fn.glGenRenderbuffersEXTFn = Debug_glGenRenderbuffersEXT;
4693 }
4694 if (!debug_fn.glGenSamplersFn) {
4695 debug_fn.glGenSamplersFn = fn.glGenSamplersFn;
4696 fn.glGenSamplersFn = Debug_glGenSamplers;
4697 }
4698 if (!debug_fn.glGenTexturesFn) {
4699 debug_fn.glGenTexturesFn = fn.glGenTexturesFn;
4700 fn.glGenTexturesFn = Debug_glGenTextures;
4701 }
4702 if (!debug_fn.glGenTransformFeedbacksFn) {
4703 debug_fn.glGenTransformFeedbacksFn = fn.glGenTransformFeedbacksFn;
4704 fn.glGenTransformFeedbacksFn = Debug_glGenTransformFeedbacks;
4705 }
4706 if (!debug_fn.glGenVertexArraysOESFn) {
4707 debug_fn.glGenVertexArraysOESFn = fn.glGenVertexArraysOESFn;
4708 fn.glGenVertexArraysOESFn = Debug_glGenVertexArraysOES;
4709 }
4710 if (!debug_fn.glGetActiveAttribFn) {
4711 debug_fn.glGetActiveAttribFn = fn.glGetActiveAttribFn;
4712 fn.glGetActiveAttribFn = Debug_glGetActiveAttrib;
4713 }
4714 if (!debug_fn.glGetActiveUniformFn) {
4715 debug_fn.glGetActiveUniformFn = fn.glGetActiveUniformFn;
4716 fn.glGetActiveUniformFn = Debug_glGetActiveUniform;
4717 }
4718 if (!debug_fn.glGetActiveUniformBlockivFn) {
4719 debug_fn.glGetActiveUniformBlockivFn = fn.glGetActiveUniformBlockivFn;
4720 fn.glGetActiveUniformBlockivFn = Debug_glGetActiveUniformBlockiv;
4721 }
4722 if (!debug_fn.glGetActiveUniformBlockNameFn) {
4723 debug_fn.glGetActiveUniformBlockNameFn = fn.glGetActiveUniformBlockNameFn;
4724 fn.glGetActiveUniformBlockNameFn = Debug_glGetActiveUniformBlockName;
4725 }
4726 if (!debug_fn.glGetActiveUniformsivFn) {
4727 debug_fn.glGetActiveUniformsivFn = fn.glGetActiveUniformsivFn;
4728 fn.glGetActiveUniformsivFn = Debug_glGetActiveUniformsiv;
4729 }
4730 if (!debug_fn.glGetAttachedShadersFn) {
4731 debug_fn.glGetAttachedShadersFn = fn.glGetAttachedShadersFn;
4732 fn.glGetAttachedShadersFn = Debug_glGetAttachedShaders;
4733 }
4734 if (!debug_fn.glGetAttribLocationFn) {
4735 debug_fn.glGetAttribLocationFn = fn.glGetAttribLocationFn;
4736 fn.glGetAttribLocationFn = Debug_glGetAttribLocation;
4737 }
4738 if (!debug_fn.glGetBooleanvFn) {
4739 debug_fn.glGetBooleanvFn = fn.glGetBooleanvFn;
4740 fn.glGetBooleanvFn = Debug_glGetBooleanv;
4741 }
4742 if (!debug_fn.glGetBufferParameterivFn) {
4743 debug_fn.glGetBufferParameterivFn = fn.glGetBufferParameterivFn;
4744 fn.glGetBufferParameterivFn = Debug_glGetBufferParameteriv;
4745 }
4746 if (!debug_fn.glGetErrorFn) {
4747 debug_fn.glGetErrorFn = fn.glGetErrorFn;
4748 fn.glGetErrorFn = Debug_glGetError;
4749 }
4750 if (!debug_fn.glGetFenceivNVFn) {
4751 debug_fn.glGetFenceivNVFn = fn.glGetFenceivNVFn;
4752 fn.glGetFenceivNVFn = Debug_glGetFenceivNV;
4753 }
4754 if (!debug_fn.glGetFloatvFn) {
4755 debug_fn.glGetFloatvFn = fn.glGetFloatvFn;
4756 fn.glGetFloatvFn = Debug_glGetFloatv;
4757 }
4758 if (!debug_fn.glGetFragDataLocationFn) {
4759 debug_fn.glGetFragDataLocationFn = fn.glGetFragDataLocationFn;
4760 fn.glGetFragDataLocationFn = Debug_glGetFragDataLocation;
4761 }
4762 if (!debug_fn.glGetFramebufferAttachmentParameterivEXTFn) {
4763 debug_fn.glGetFramebufferAttachmentParameterivEXTFn =
4764 fn.glGetFramebufferAttachmentParameterivEXTFn;
4765 fn.glGetFramebufferAttachmentParameterivEXTFn =
4766 Debug_glGetFramebufferAttachmentParameterivEXT;
4767 }
4768 if (!debug_fn.glGetGraphicsResetStatusARBFn) {
4769 debug_fn.glGetGraphicsResetStatusARBFn = fn.glGetGraphicsResetStatusARBFn;
4770 fn.glGetGraphicsResetStatusARBFn = Debug_glGetGraphicsResetStatusARB;
4771 }
4772 if (!debug_fn.glGetInteger64i_vFn) {
4773 debug_fn.glGetInteger64i_vFn = fn.glGetInteger64i_vFn;
4774 fn.glGetInteger64i_vFn = Debug_glGetInteger64i_v;
4775 }
4776 if (!debug_fn.glGetInteger64vFn) {
4777 debug_fn.glGetInteger64vFn = fn.glGetInteger64vFn;
4778 fn.glGetInteger64vFn = Debug_glGetInteger64v;
4779 }
4780 if (!debug_fn.glGetIntegeri_vFn) {
4781 debug_fn.glGetIntegeri_vFn = fn.glGetIntegeri_vFn;
4782 fn.glGetIntegeri_vFn = Debug_glGetIntegeri_v;
4783 }
4784 if (!debug_fn.glGetIntegervFn) {
4785 debug_fn.glGetIntegervFn = fn.glGetIntegervFn;
4786 fn.glGetIntegervFn = Debug_glGetIntegerv;
4787 }
4788 if (!debug_fn.glGetInternalformativFn) {
4789 debug_fn.glGetInternalformativFn = fn.glGetInternalformativFn;
4790 fn.glGetInternalformativFn = Debug_glGetInternalformativ;
4791 }
4792 if (!debug_fn.glGetProgramBinaryFn) {
4793 debug_fn.glGetProgramBinaryFn = fn.glGetProgramBinaryFn;
4794 fn.glGetProgramBinaryFn = Debug_glGetProgramBinary;
4795 }
4796 if (!debug_fn.glGetProgramInfoLogFn) {
4797 debug_fn.glGetProgramInfoLogFn = fn.glGetProgramInfoLogFn;
4798 fn.glGetProgramInfoLogFn = Debug_glGetProgramInfoLog;
4799 }
4800 if (!debug_fn.glGetProgramivFn) {
4801 debug_fn.glGetProgramivFn = fn.glGetProgramivFn;
4802 fn.glGetProgramivFn = Debug_glGetProgramiv;
4803 }
4804 if (!debug_fn.glGetQueryivFn) {
4805 debug_fn.glGetQueryivFn = fn.glGetQueryivFn;
4806 fn.glGetQueryivFn = Debug_glGetQueryiv;
4807 }
4808 if (!debug_fn.glGetQueryivARBFn) {
4809 debug_fn.glGetQueryivARBFn = fn.glGetQueryivARBFn;
4810 fn.glGetQueryivARBFn = Debug_glGetQueryivARB;
4811 }
4812 if (!debug_fn.glGetQueryObjecti64vFn) {
4813 debug_fn.glGetQueryObjecti64vFn = fn.glGetQueryObjecti64vFn;
4814 fn.glGetQueryObjecti64vFn = Debug_glGetQueryObjecti64v;
4815 }
4816 if (!debug_fn.glGetQueryObjectivFn) {
4817 debug_fn.glGetQueryObjectivFn = fn.glGetQueryObjectivFn;
4818 fn.glGetQueryObjectivFn = Debug_glGetQueryObjectiv;
4819 }
4820 if (!debug_fn.glGetQueryObjectivARBFn) {
4821 debug_fn.glGetQueryObjectivARBFn = fn.glGetQueryObjectivARBFn;
4822 fn.glGetQueryObjectivARBFn = Debug_glGetQueryObjectivARB;
4823 }
4824 if (!debug_fn.glGetQueryObjectui64vFn) {
4825 debug_fn.glGetQueryObjectui64vFn = fn.glGetQueryObjectui64vFn;
4826 fn.glGetQueryObjectui64vFn = Debug_glGetQueryObjectui64v;
4827 }
4828 if (!debug_fn.glGetQueryObjectuivFn) {
4829 debug_fn.glGetQueryObjectuivFn = fn.glGetQueryObjectuivFn;
4830 fn.glGetQueryObjectuivFn = Debug_glGetQueryObjectuiv;
4831 }
4832 if (!debug_fn.glGetQueryObjectuivARBFn) {
4833 debug_fn.glGetQueryObjectuivARBFn = fn.glGetQueryObjectuivARBFn;
4834 fn.glGetQueryObjectuivARBFn = Debug_glGetQueryObjectuivARB;
4835 }
4836 if (!debug_fn.glGetRenderbufferParameterivEXTFn) {
4837 debug_fn.glGetRenderbufferParameterivEXTFn =
4838 fn.glGetRenderbufferParameterivEXTFn;
4839 fn.glGetRenderbufferParameterivEXTFn =
4840 Debug_glGetRenderbufferParameterivEXT;
4841 }
4842 if (!debug_fn.glGetSamplerParameterfvFn) {
4843 debug_fn.glGetSamplerParameterfvFn = fn.glGetSamplerParameterfvFn;
4844 fn.glGetSamplerParameterfvFn = Debug_glGetSamplerParameterfv;
4845 }
4846 if (!debug_fn.glGetSamplerParameterivFn) {
4847 debug_fn.glGetSamplerParameterivFn = fn.glGetSamplerParameterivFn;
4848 fn.glGetSamplerParameterivFn = Debug_glGetSamplerParameteriv;
4849 }
4850 if (!debug_fn.glGetShaderInfoLogFn) {
4851 debug_fn.glGetShaderInfoLogFn = fn.glGetShaderInfoLogFn;
4852 fn.glGetShaderInfoLogFn = Debug_glGetShaderInfoLog;
4853 }
4854 if (!debug_fn.glGetShaderivFn) {
4855 debug_fn.glGetShaderivFn = fn.glGetShaderivFn;
4856 fn.glGetShaderivFn = Debug_glGetShaderiv;
4857 }
4858 if (!debug_fn.glGetShaderPrecisionFormatFn) {
4859 debug_fn.glGetShaderPrecisionFormatFn = fn.glGetShaderPrecisionFormatFn;
4860 fn.glGetShaderPrecisionFormatFn = Debug_glGetShaderPrecisionFormat;
4861 }
4862 if (!debug_fn.glGetShaderSourceFn) {
4863 debug_fn.glGetShaderSourceFn = fn.glGetShaderSourceFn;
4864 fn.glGetShaderSourceFn = Debug_glGetShaderSource;
4865 }
4866 if (!debug_fn.glGetStringFn) {
4867 debug_fn.glGetStringFn = fn.glGetStringFn;
4868 fn.glGetStringFn = Debug_glGetString;
4869 }
4870 if (!debug_fn.glGetSyncivFn) {
4871 debug_fn.glGetSyncivFn = fn.glGetSyncivFn;
4872 fn.glGetSyncivFn = Debug_glGetSynciv;
4873 }
4874 if (!debug_fn.glGetTexLevelParameterfvFn) {
4875 debug_fn.glGetTexLevelParameterfvFn = fn.glGetTexLevelParameterfvFn;
4876 fn.glGetTexLevelParameterfvFn = Debug_glGetTexLevelParameterfv;
4877 }
4878 if (!debug_fn.glGetTexLevelParameterivFn) {
4879 debug_fn.glGetTexLevelParameterivFn = fn.glGetTexLevelParameterivFn;
4880 fn.glGetTexLevelParameterivFn = Debug_glGetTexLevelParameteriv;
4881 }
4882 if (!debug_fn.glGetTexParameterfvFn) {
4883 debug_fn.glGetTexParameterfvFn = fn.glGetTexParameterfvFn;
4884 fn.glGetTexParameterfvFn = Debug_glGetTexParameterfv;
4885 }
4886 if (!debug_fn.glGetTexParameterivFn) {
4887 debug_fn.glGetTexParameterivFn = fn.glGetTexParameterivFn;
4888 fn.glGetTexParameterivFn = Debug_glGetTexParameteriv;
4889 }
4890 if (!debug_fn.glGetTransformFeedbackVaryingFn) {
4891 debug_fn.glGetTransformFeedbackVaryingFn =
4892 fn.glGetTransformFeedbackVaryingFn;
4893 fn.glGetTransformFeedbackVaryingFn = Debug_glGetTransformFeedbackVarying;
4894 }
4895 if (!debug_fn.glGetTranslatedShaderSourceANGLEFn) {
4896 debug_fn.glGetTranslatedShaderSourceANGLEFn =
4897 fn.glGetTranslatedShaderSourceANGLEFn;
4898 fn.glGetTranslatedShaderSourceANGLEFn =
4899 Debug_glGetTranslatedShaderSourceANGLE;
4900 }
4901 if (!debug_fn.glGetUniformBlockIndexFn) {
4902 debug_fn.glGetUniformBlockIndexFn = fn.glGetUniformBlockIndexFn;
4903 fn.glGetUniformBlockIndexFn = Debug_glGetUniformBlockIndex;
4904 }
4905 if (!debug_fn.glGetUniformfvFn) {
4906 debug_fn.glGetUniformfvFn = fn.glGetUniformfvFn;
4907 fn.glGetUniformfvFn = Debug_glGetUniformfv;
4908 }
4909 if (!debug_fn.glGetUniformIndicesFn) {
4910 debug_fn.glGetUniformIndicesFn = fn.glGetUniformIndicesFn;
4911 fn.glGetUniformIndicesFn = Debug_glGetUniformIndices;
4912 }
4913 if (!debug_fn.glGetUniformivFn) {
4914 debug_fn.glGetUniformivFn = fn.glGetUniformivFn;
4915 fn.glGetUniformivFn = Debug_glGetUniformiv;
4916 }
4917 if (!debug_fn.glGetUniformLocationFn) {
4918 debug_fn.glGetUniformLocationFn = fn.glGetUniformLocationFn;
4919 fn.glGetUniformLocationFn = Debug_glGetUniformLocation;
4920 }
4921 if (!debug_fn.glGetVertexAttribfvFn) {
4922 debug_fn.glGetVertexAttribfvFn = fn.glGetVertexAttribfvFn;
4923 fn.glGetVertexAttribfvFn = Debug_glGetVertexAttribfv;
4924 }
4925 if (!debug_fn.glGetVertexAttribivFn) {
4926 debug_fn.glGetVertexAttribivFn = fn.glGetVertexAttribivFn;
4927 fn.glGetVertexAttribivFn = Debug_glGetVertexAttribiv;
4928 }
4929 if (!debug_fn.glGetVertexAttribPointervFn) {
4930 debug_fn.glGetVertexAttribPointervFn = fn.glGetVertexAttribPointervFn;
4931 fn.glGetVertexAttribPointervFn = Debug_glGetVertexAttribPointerv;
4932 }
4933 if (!debug_fn.glHintFn) {
4934 debug_fn.glHintFn = fn.glHintFn;
4935 fn.glHintFn = Debug_glHint;
4936 }
4937 if (!debug_fn.glInsertEventMarkerEXTFn) {
4938 debug_fn.glInsertEventMarkerEXTFn = fn.glInsertEventMarkerEXTFn;
4939 fn.glInsertEventMarkerEXTFn = Debug_glInsertEventMarkerEXT;
4940 }
4941 if (!debug_fn.glInvalidateFramebufferFn) {
4942 debug_fn.glInvalidateFramebufferFn = fn.glInvalidateFramebufferFn;
4943 fn.glInvalidateFramebufferFn = Debug_glInvalidateFramebuffer;
4944 }
4945 if (!debug_fn.glInvalidateSubFramebufferFn) {
4946 debug_fn.glInvalidateSubFramebufferFn = fn.glInvalidateSubFramebufferFn;
4947 fn.glInvalidateSubFramebufferFn = Debug_glInvalidateSubFramebuffer;
4948 }
4949 if (!debug_fn.glIsBufferFn) {
4950 debug_fn.glIsBufferFn = fn.glIsBufferFn;
4951 fn.glIsBufferFn = Debug_glIsBuffer;
4952 }
4953 if (!debug_fn.glIsEnabledFn) {
4954 debug_fn.glIsEnabledFn = fn.glIsEnabledFn;
4955 fn.glIsEnabledFn = Debug_glIsEnabled;
4956 }
4957 if (!debug_fn.glIsFenceAPPLEFn) {
4958 debug_fn.glIsFenceAPPLEFn = fn.glIsFenceAPPLEFn;
4959 fn.glIsFenceAPPLEFn = Debug_glIsFenceAPPLE;
4960 }
4961 if (!debug_fn.glIsFenceNVFn) {
4962 debug_fn.glIsFenceNVFn = fn.glIsFenceNVFn;
4963 fn.glIsFenceNVFn = Debug_glIsFenceNV;
4964 }
4965 if (!debug_fn.glIsFramebufferEXTFn) {
4966 debug_fn.glIsFramebufferEXTFn = fn.glIsFramebufferEXTFn;
4967 fn.glIsFramebufferEXTFn = Debug_glIsFramebufferEXT;
4968 }
4969 if (!debug_fn.glIsProgramFn) {
4970 debug_fn.glIsProgramFn = fn.glIsProgramFn;
4971 fn.glIsProgramFn = Debug_glIsProgram;
4972 }
4973 if (!debug_fn.glIsQueryFn) {
4974 debug_fn.glIsQueryFn = fn.glIsQueryFn;
4975 fn.glIsQueryFn = Debug_glIsQuery;
4976 }
4977 if (!debug_fn.glIsQueryARBFn) {
4978 debug_fn.glIsQueryARBFn = fn.glIsQueryARBFn;
4979 fn.glIsQueryARBFn = Debug_glIsQueryARB;
4980 }
4981 if (!debug_fn.glIsRenderbufferEXTFn) {
4982 debug_fn.glIsRenderbufferEXTFn = fn.glIsRenderbufferEXTFn;
4983 fn.glIsRenderbufferEXTFn = Debug_glIsRenderbufferEXT;
4984 }
4985 if (!debug_fn.glIsSamplerFn) {
4986 debug_fn.glIsSamplerFn = fn.glIsSamplerFn;
4987 fn.glIsSamplerFn = Debug_glIsSampler;
4988 }
4989 if (!debug_fn.glIsShaderFn) {
4990 debug_fn.glIsShaderFn = fn.glIsShaderFn;
4991 fn.glIsShaderFn = Debug_glIsShader;
4992 }
4993 if (!debug_fn.glIsSyncFn) {
4994 debug_fn.glIsSyncFn = fn.glIsSyncFn;
4995 fn.glIsSyncFn = Debug_glIsSync;
4996 }
4997 if (!debug_fn.glIsTextureFn) {
4998 debug_fn.glIsTextureFn = fn.glIsTextureFn;
4999 fn.glIsTextureFn = Debug_glIsTexture;
5000 }
5001 if (!debug_fn.glIsTransformFeedbackFn) {
5002 debug_fn.glIsTransformFeedbackFn = fn.glIsTransformFeedbackFn;
5003 fn.glIsTransformFeedbackFn = Debug_glIsTransformFeedback;
5004 }
5005 if (!debug_fn.glIsVertexArrayOESFn) {
5006 debug_fn.glIsVertexArrayOESFn = fn.glIsVertexArrayOESFn;
5007 fn.glIsVertexArrayOESFn = Debug_glIsVertexArrayOES;
5008 }
5009 if (!debug_fn.glLineWidthFn) {
5010 debug_fn.glLineWidthFn = fn.glLineWidthFn;
5011 fn.glLineWidthFn = Debug_glLineWidth;
5012 }
5013 if (!debug_fn.glLinkProgramFn) {
5014 debug_fn.glLinkProgramFn = fn.glLinkProgramFn;
5015 fn.glLinkProgramFn = Debug_glLinkProgram;
5016 }
5017 if (!debug_fn.glMapBufferFn) {
5018 debug_fn.glMapBufferFn = fn.glMapBufferFn;
5019 fn.glMapBufferFn = Debug_glMapBuffer;
5020 }
5021 if (!debug_fn.glMapBufferRangeFn) {
5022 debug_fn.glMapBufferRangeFn = fn.glMapBufferRangeFn;
5023 fn.glMapBufferRangeFn = Debug_glMapBufferRange;
5024 }
5025 if (!debug_fn.glMatrixLoadfEXTFn) {
5026 debug_fn.glMatrixLoadfEXTFn = fn.glMatrixLoadfEXTFn;
5027 fn.glMatrixLoadfEXTFn = Debug_glMatrixLoadfEXT;
5028 }
5029 if (!debug_fn.glMatrixLoadIdentityEXTFn) {
5030 debug_fn.glMatrixLoadIdentityEXTFn = fn.glMatrixLoadIdentityEXTFn;
5031 fn.glMatrixLoadIdentityEXTFn = Debug_glMatrixLoadIdentityEXT;
5032 }
5033 if (!debug_fn.glPauseTransformFeedbackFn) {
5034 debug_fn.glPauseTransformFeedbackFn = fn.glPauseTransformFeedbackFn;
5035 fn.glPauseTransformFeedbackFn = Debug_glPauseTransformFeedback;
5036 }
5037 if (!debug_fn.glPixelStoreiFn) {
5038 debug_fn.glPixelStoreiFn = fn.glPixelStoreiFn;
5039 fn.glPixelStoreiFn = Debug_glPixelStorei;
5040 }
5041 if (!debug_fn.glPointParameteriFn) {
5042 debug_fn.glPointParameteriFn = fn.glPointParameteriFn;
5043 fn.glPointParameteriFn = Debug_glPointParameteri;
5044 }
5045 if (!debug_fn.glPolygonOffsetFn) {
5046 debug_fn.glPolygonOffsetFn = fn.glPolygonOffsetFn;
5047 fn.glPolygonOffsetFn = Debug_glPolygonOffset;
5048 }
5049 if (!debug_fn.glPopGroupMarkerEXTFn) {
5050 debug_fn.glPopGroupMarkerEXTFn = fn.glPopGroupMarkerEXTFn;
5051 fn.glPopGroupMarkerEXTFn = Debug_glPopGroupMarkerEXT;
5052 }
5053 if (!debug_fn.glProgramBinaryFn) {
5054 debug_fn.glProgramBinaryFn = fn.glProgramBinaryFn;
5055 fn.glProgramBinaryFn = Debug_glProgramBinary;
5056 }
5057 if (!debug_fn.glProgramParameteriFn) {
5058 debug_fn.glProgramParameteriFn = fn.glProgramParameteriFn;
5059 fn.glProgramParameteriFn = Debug_glProgramParameteri;
5060 }
5061 if (!debug_fn.glPushGroupMarkerEXTFn) {
5062 debug_fn.glPushGroupMarkerEXTFn = fn.glPushGroupMarkerEXTFn;
5063 fn.glPushGroupMarkerEXTFn = Debug_glPushGroupMarkerEXT;
5064 }
5065 if (!debug_fn.glQueryCounterFn) {
5066 debug_fn.glQueryCounterFn = fn.glQueryCounterFn;
5067 fn.glQueryCounterFn = Debug_glQueryCounter;
5068 }
5069 if (!debug_fn.glReadBufferFn) {
5070 debug_fn.glReadBufferFn = fn.glReadBufferFn;
5071 fn.glReadBufferFn = Debug_glReadBuffer;
5072 }
5073 if (!debug_fn.glReadPixelsFn) {
5074 debug_fn.glReadPixelsFn = fn.glReadPixelsFn;
5075 fn.glReadPixelsFn = Debug_glReadPixels;
5076 }
5077 if (!debug_fn.glReleaseShaderCompilerFn) {
5078 debug_fn.glReleaseShaderCompilerFn = fn.glReleaseShaderCompilerFn;
5079 fn.glReleaseShaderCompilerFn = Debug_glReleaseShaderCompiler;
5080 }
5081 if (!debug_fn.glRenderbufferStorageEXTFn) {
5082 debug_fn.glRenderbufferStorageEXTFn = fn.glRenderbufferStorageEXTFn;
5083 fn.glRenderbufferStorageEXTFn = Debug_glRenderbufferStorageEXT;
5084 }
5085 if (!debug_fn.glRenderbufferStorageMultisampleFn) {
5086 debug_fn.glRenderbufferStorageMultisampleFn =
5087 fn.glRenderbufferStorageMultisampleFn;
5088 fn.glRenderbufferStorageMultisampleFn =
5089 Debug_glRenderbufferStorageMultisample;
5090 }
5091 if (!debug_fn.glRenderbufferStorageMultisampleANGLEFn) {
5092 debug_fn.glRenderbufferStorageMultisampleANGLEFn =
5093 fn.glRenderbufferStorageMultisampleANGLEFn;
5094 fn.glRenderbufferStorageMultisampleANGLEFn =
5095 Debug_glRenderbufferStorageMultisampleANGLE;
5096 }
5097 if (!debug_fn.glRenderbufferStorageMultisampleEXTFn) {
5098 debug_fn.glRenderbufferStorageMultisampleEXTFn =
5099 fn.glRenderbufferStorageMultisampleEXTFn;
5100 fn.glRenderbufferStorageMultisampleEXTFn =
5101 Debug_glRenderbufferStorageMultisampleEXT;
5102 }
5103 if (!debug_fn.glRenderbufferStorageMultisampleIMGFn) {
5104 debug_fn.glRenderbufferStorageMultisampleIMGFn =
5105 fn.glRenderbufferStorageMultisampleIMGFn;
5106 fn.glRenderbufferStorageMultisampleIMGFn =
5107 Debug_glRenderbufferStorageMultisampleIMG;
5108 }
5109 if (!debug_fn.glResumeTransformFeedbackFn) {
5110 debug_fn.glResumeTransformFeedbackFn = fn.glResumeTransformFeedbackFn;
5111 fn.glResumeTransformFeedbackFn = Debug_glResumeTransformFeedback;
5112 }
5113 if (!debug_fn.glSampleCoverageFn) {
5114 debug_fn.glSampleCoverageFn = fn.glSampleCoverageFn;
5115 fn.glSampleCoverageFn = Debug_glSampleCoverage;
5116 }
5117 if (!debug_fn.glSamplerParameterfFn) {
5118 debug_fn.glSamplerParameterfFn = fn.glSamplerParameterfFn;
5119 fn.glSamplerParameterfFn = Debug_glSamplerParameterf;
5120 }
5121 if (!debug_fn.glSamplerParameterfvFn) {
5122 debug_fn.glSamplerParameterfvFn = fn.glSamplerParameterfvFn;
5123 fn.glSamplerParameterfvFn = Debug_glSamplerParameterfv;
5124 }
5125 if (!debug_fn.glSamplerParameteriFn) {
5126 debug_fn.glSamplerParameteriFn = fn.glSamplerParameteriFn;
5127 fn.glSamplerParameteriFn = Debug_glSamplerParameteri;
5128 }
5129 if (!debug_fn.glSamplerParameterivFn) {
5130 debug_fn.glSamplerParameterivFn = fn.glSamplerParameterivFn;
5131 fn.glSamplerParameterivFn = Debug_glSamplerParameteriv;
5132 }
5133 if (!debug_fn.glScissorFn) {
5134 debug_fn.glScissorFn = fn.glScissorFn;
5135 fn.glScissorFn = Debug_glScissor;
5136 }
5137 if (!debug_fn.glSetFenceAPPLEFn) {
5138 debug_fn.glSetFenceAPPLEFn = fn.glSetFenceAPPLEFn;
5139 fn.glSetFenceAPPLEFn = Debug_glSetFenceAPPLE;
5140 }
5141 if (!debug_fn.glSetFenceNVFn) {
5142 debug_fn.glSetFenceNVFn = fn.glSetFenceNVFn;
5143 fn.glSetFenceNVFn = Debug_glSetFenceNV;
5144 }
5145 if (!debug_fn.glShaderBinaryFn) {
5146 debug_fn.glShaderBinaryFn = fn.glShaderBinaryFn;
5147 fn.glShaderBinaryFn = Debug_glShaderBinary;
5148 }
5149 if (!debug_fn.glShaderSourceFn) {
5150 debug_fn.glShaderSourceFn = fn.glShaderSourceFn;
5151 fn.glShaderSourceFn = Debug_glShaderSource;
5152 }
5153 if (!debug_fn.glStencilFuncFn) {
5154 debug_fn.glStencilFuncFn = fn.glStencilFuncFn;
5155 fn.glStencilFuncFn = Debug_glStencilFunc;
5156 }
5157 if (!debug_fn.glStencilFuncSeparateFn) {
5158 debug_fn.glStencilFuncSeparateFn = fn.glStencilFuncSeparateFn;
5159 fn.glStencilFuncSeparateFn = Debug_glStencilFuncSeparate;
5160 }
5161 if (!debug_fn.glStencilMaskFn) {
5162 debug_fn.glStencilMaskFn = fn.glStencilMaskFn;
5163 fn.glStencilMaskFn = Debug_glStencilMask;
5164 }
5165 if (!debug_fn.glStencilMaskSeparateFn) {
5166 debug_fn.glStencilMaskSeparateFn = fn.glStencilMaskSeparateFn;
5167 fn.glStencilMaskSeparateFn = Debug_glStencilMaskSeparate;
5168 }
5169 if (!debug_fn.glStencilOpFn) {
5170 debug_fn.glStencilOpFn = fn.glStencilOpFn;
5171 fn.glStencilOpFn = Debug_glStencilOp;
5172 }
5173 if (!debug_fn.glStencilOpSeparateFn) {
5174 debug_fn.glStencilOpSeparateFn = fn.glStencilOpSeparateFn;
5175 fn.glStencilOpSeparateFn = Debug_glStencilOpSeparate;
5176 }
5177 if (!debug_fn.glTestFenceAPPLEFn) {
5178 debug_fn.glTestFenceAPPLEFn = fn.glTestFenceAPPLEFn;
5179 fn.glTestFenceAPPLEFn = Debug_glTestFenceAPPLE;
5180 }
5181 if (!debug_fn.glTestFenceNVFn) {
5182 debug_fn.glTestFenceNVFn = fn.glTestFenceNVFn;
5183 fn.glTestFenceNVFn = Debug_glTestFenceNV;
5184 }
5185 if (!debug_fn.glTexImage2DFn) {
5186 debug_fn.glTexImage2DFn = fn.glTexImage2DFn;
5187 fn.glTexImage2DFn = Debug_glTexImage2D;
5188 }
5189 if (!debug_fn.glTexImage3DFn) {
5190 debug_fn.glTexImage3DFn = fn.glTexImage3DFn;
5191 fn.glTexImage3DFn = Debug_glTexImage3D;
5192 }
5193 if (!debug_fn.glTexParameterfFn) {
5194 debug_fn.glTexParameterfFn = fn.glTexParameterfFn;
5195 fn.glTexParameterfFn = Debug_glTexParameterf;
5196 }
5197 if (!debug_fn.glTexParameterfvFn) {
5198 debug_fn.glTexParameterfvFn = fn.glTexParameterfvFn;
5199 fn.glTexParameterfvFn = Debug_glTexParameterfv;
5200 }
5201 if (!debug_fn.glTexParameteriFn) {
5202 debug_fn.glTexParameteriFn = fn.glTexParameteriFn;
5203 fn.glTexParameteriFn = Debug_glTexParameteri;
5204 }
5205 if (!debug_fn.glTexParameterivFn) {
5206 debug_fn.glTexParameterivFn = fn.glTexParameterivFn;
5207 fn.glTexParameterivFn = Debug_glTexParameteriv;
5208 }
5209 if (!debug_fn.glTexStorage2DEXTFn) {
5210 debug_fn.glTexStorage2DEXTFn = fn.glTexStorage2DEXTFn;
5211 fn.glTexStorage2DEXTFn = Debug_glTexStorage2DEXT;
5212 }
5213 if (!debug_fn.glTexStorage3DFn) {
5214 debug_fn.glTexStorage3DFn = fn.glTexStorage3DFn;
5215 fn.glTexStorage3DFn = Debug_glTexStorage3D;
5216 }
5217 if (!debug_fn.glTexSubImage2DFn) {
5218 debug_fn.glTexSubImage2DFn = fn.glTexSubImage2DFn;
5219 fn.glTexSubImage2DFn = Debug_glTexSubImage2D;
5220 }
5221 if (!debug_fn.glTransformFeedbackVaryingsFn) {
5222 debug_fn.glTransformFeedbackVaryingsFn = fn.glTransformFeedbackVaryingsFn;
5223 fn.glTransformFeedbackVaryingsFn = Debug_glTransformFeedbackVaryings;
5224 }
5225 if (!debug_fn.glUniform1fFn) {
5226 debug_fn.glUniform1fFn = fn.glUniform1fFn;
5227 fn.glUniform1fFn = Debug_glUniform1f;
5228 }
5229 if (!debug_fn.glUniform1fvFn) {
5230 debug_fn.glUniform1fvFn = fn.glUniform1fvFn;
5231 fn.glUniform1fvFn = Debug_glUniform1fv;
5232 }
5233 if (!debug_fn.glUniform1iFn) {
5234 debug_fn.glUniform1iFn = fn.glUniform1iFn;
5235 fn.glUniform1iFn = Debug_glUniform1i;
5236 }
5237 if (!debug_fn.glUniform1ivFn) {
5238 debug_fn.glUniform1ivFn = fn.glUniform1ivFn;
5239 fn.glUniform1ivFn = Debug_glUniform1iv;
5240 }
5241 if (!debug_fn.glUniform1uiFn) {
5242 debug_fn.glUniform1uiFn = fn.glUniform1uiFn;
5243 fn.glUniform1uiFn = Debug_glUniform1ui;
5244 }
5245 if (!debug_fn.glUniform1uivFn) {
5246 debug_fn.glUniform1uivFn = fn.glUniform1uivFn;
5247 fn.glUniform1uivFn = Debug_glUniform1uiv;
5248 }
5249 if (!debug_fn.glUniform2fFn) {
5250 debug_fn.glUniform2fFn = fn.glUniform2fFn;
5251 fn.glUniform2fFn = Debug_glUniform2f;
5252 }
5253 if (!debug_fn.glUniform2fvFn) {
5254 debug_fn.glUniform2fvFn = fn.glUniform2fvFn;
5255 fn.glUniform2fvFn = Debug_glUniform2fv;
5256 }
5257 if (!debug_fn.glUniform2iFn) {
5258 debug_fn.glUniform2iFn = fn.glUniform2iFn;
5259 fn.glUniform2iFn = Debug_glUniform2i;
5260 }
5261 if (!debug_fn.glUniform2ivFn) {
5262 debug_fn.glUniform2ivFn = fn.glUniform2ivFn;
5263 fn.glUniform2ivFn = Debug_glUniform2iv;
5264 }
5265 if (!debug_fn.glUniform2uiFn) {
5266 debug_fn.glUniform2uiFn = fn.glUniform2uiFn;
5267 fn.glUniform2uiFn = Debug_glUniform2ui;
5268 }
5269 if (!debug_fn.glUniform2uivFn) {
5270 debug_fn.glUniform2uivFn = fn.glUniform2uivFn;
5271 fn.glUniform2uivFn = Debug_glUniform2uiv;
5272 }
5273 if (!debug_fn.glUniform3fFn) {
5274 debug_fn.glUniform3fFn = fn.glUniform3fFn;
5275 fn.glUniform3fFn = Debug_glUniform3f;
5276 }
5277 if (!debug_fn.glUniform3fvFn) {
5278 debug_fn.glUniform3fvFn = fn.glUniform3fvFn;
5279 fn.glUniform3fvFn = Debug_glUniform3fv;
5280 }
5281 if (!debug_fn.glUniform3iFn) {
5282 debug_fn.glUniform3iFn = fn.glUniform3iFn;
5283 fn.glUniform3iFn = Debug_glUniform3i;
5284 }
5285 if (!debug_fn.glUniform3ivFn) {
5286 debug_fn.glUniform3ivFn = fn.glUniform3ivFn;
5287 fn.glUniform3ivFn = Debug_glUniform3iv;
5288 }
5289 if (!debug_fn.glUniform3uiFn) {
5290 debug_fn.glUniform3uiFn = fn.glUniform3uiFn;
5291 fn.glUniform3uiFn = Debug_glUniform3ui;
5292 }
5293 if (!debug_fn.glUniform3uivFn) {
5294 debug_fn.glUniform3uivFn = fn.glUniform3uivFn;
5295 fn.glUniform3uivFn = Debug_glUniform3uiv;
5296 }
5297 if (!debug_fn.glUniform4fFn) {
5298 debug_fn.glUniform4fFn = fn.glUniform4fFn;
5299 fn.glUniform4fFn = Debug_glUniform4f;
5300 }
5301 if (!debug_fn.glUniform4fvFn) {
5302 debug_fn.glUniform4fvFn = fn.glUniform4fvFn;
5303 fn.glUniform4fvFn = Debug_glUniform4fv;
5304 }
5305 if (!debug_fn.glUniform4iFn) {
5306 debug_fn.glUniform4iFn = fn.glUniform4iFn;
5307 fn.glUniform4iFn = Debug_glUniform4i;
5308 }
5309 if (!debug_fn.glUniform4ivFn) {
5310 debug_fn.glUniform4ivFn = fn.glUniform4ivFn;
5311 fn.glUniform4ivFn = Debug_glUniform4iv;
5312 }
5313 if (!debug_fn.glUniform4uiFn) {
5314 debug_fn.glUniform4uiFn = fn.glUniform4uiFn;
5315 fn.glUniform4uiFn = Debug_glUniform4ui;
5316 }
5317 if (!debug_fn.glUniform4uivFn) {
5318 debug_fn.glUniform4uivFn = fn.glUniform4uivFn;
5319 fn.glUniform4uivFn = Debug_glUniform4uiv;
5320 }
5321 if (!debug_fn.glUniformBlockBindingFn) {
5322 debug_fn.glUniformBlockBindingFn = fn.glUniformBlockBindingFn;
5323 fn.glUniformBlockBindingFn = Debug_glUniformBlockBinding;
5324 }
5325 if (!debug_fn.glUniformMatrix2fvFn) {
5326 debug_fn.glUniformMatrix2fvFn = fn.glUniformMatrix2fvFn;
5327 fn.glUniformMatrix2fvFn = Debug_glUniformMatrix2fv;
5328 }
5329 if (!debug_fn.glUniformMatrix2x3fvFn) {
5330 debug_fn.glUniformMatrix2x3fvFn = fn.glUniformMatrix2x3fvFn;
5331 fn.glUniformMatrix2x3fvFn = Debug_glUniformMatrix2x3fv;
5332 }
5333 if (!debug_fn.glUniformMatrix2x4fvFn) {
5334 debug_fn.glUniformMatrix2x4fvFn = fn.glUniformMatrix2x4fvFn;
5335 fn.glUniformMatrix2x4fvFn = Debug_glUniformMatrix2x4fv;
5336 }
5337 if (!debug_fn.glUniformMatrix3fvFn) {
5338 debug_fn.glUniformMatrix3fvFn = fn.glUniformMatrix3fvFn;
5339 fn.glUniformMatrix3fvFn = Debug_glUniformMatrix3fv;
5340 }
5341 if (!debug_fn.glUniformMatrix3x2fvFn) {
5342 debug_fn.glUniformMatrix3x2fvFn = fn.glUniformMatrix3x2fvFn;
5343 fn.glUniformMatrix3x2fvFn = Debug_glUniformMatrix3x2fv;
5344 }
5345 if (!debug_fn.glUniformMatrix3x4fvFn) {
5346 debug_fn.glUniformMatrix3x4fvFn = fn.glUniformMatrix3x4fvFn;
5347 fn.glUniformMatrix3x4fvFn = Debug_glUniformMatrix3x4fv;
5348 }
5349 if (!debug_fn.glUniformMatrix4fvFn) {
5350 debug_fn.glUniformMatrix4fvFn = fn.glUniformMatrix4fvFn;
5351 fn.glUniformMatrix4fvFn = Debug_glUniformMatrix4fv;
5352 }
5353 if (!debug_fn.glUniformMatrix4x2fvFn) {
5354 debug_fn.glUniformMatrix4x2fvFn = fn.glUniformMatrix4x2fvFn;
5355 fn.glUniformMatrix4x2fvFn = Debug_glUniformMatrix4x2fv;
5356 }
5357 if (!debug_fn.glUniformMatrix4x3fvFn) {
5358 debug_fn.glUniformMatrix4x3fvFn = fn.glUniformMatrix4x3fvFn;
5359 fn.glUniformMatrix4x3fvFn = Debug_glUniformMatrix4x3fv;
5360 }
5361 if (!debug_fn.glUnmapBufferFn) {
5362 debug_fn.glUnmapBufferFn = fn.glUnmapBufferFn;
5363 fn.glUnmapBufferFn = Debug_glUnmapBuffer;
5364 }
5365 if (!debug_fn.glUseProgramFn) {
5366 debug_fn.glUseProgramFn = fn.glUseProgramFn;
5367 fn.glUseProgramFn = Debug_glUseProgram;
5368 }
5369 if (!debug_fn.glValidateProgramFn) {
5370 debug_fn.glValidateProgramFn = fn.glValidateProgramFn;
5371 fn.glValidateProgramFn = Debug_glValidateProgram;
5372 }
5373 if (!debug_fn.glVertexAttrib1fFn) {
5374 debug_fn.glVertexAttrib1fFn = fn.glVertexAttrib1fFn;
5375 fn.glVertexAttrib1fFn = Debug_glVertexAttrib1f;
5376 }
5377 if (!debug_fn.glVertexAttrib1fvFn) {
5378 debug_fn.glVertexAttrib1fvFn = fn.glVertexAttrib1fvFn;
5379 fn.glVertexAttrib1fvFn = Debug_glVertexAttrib1fv;
5380 }
5381 if (!debug_fn.glVertexAttrib2fFn) {
5382 debug_fn.glVertexAttrib2fFn = fn.glVertexAttrib2fFn;
5383 fn.glVertexAttrib2fFn = Debug_glVertexAttrib2f;
5384 }
5385 if (!debug_fn.glVertexAttrib2fvFn) {
5386 debug_fn.glVertexAttrib2fvFn = fn.glVertexAttrib2fvFn;
5387 fn.glVertexAttrib2fvFn = Debug_glVertexAttrib2fv;
5388 }
5389 if (!debug_fn.glVertexAttrib3fFn) {
5390 debug_fn.glVertexAttrib3fFn = fn.glVertexAttrib3fFn;
5391 fn.glVertexAttrib3fFn = Debug_glVertexAttrib3f;
5392 }
5393 if (!debug_fn.glVertexAttrib3fvFn) {
5394 debug_fn.glVertexAttrib3fvFn = fn.glVertexAttrib3fvFn;
5395 fn.glVertexAttrib3fvFn = Debug_glVertexAttrib3fv;
5396 }
5397 if (!debug_fn.glVertexAttrib4fFn) {
5398 debug_fn.glVertexAttrib4fFn = fn.glVertexAttrib4fFn;
5399 fn.glVertexAttrib4fFn = Debug_glVertexAttrib4f;
5400 }
5401 if (!debug_fn.glVertexAttrib4fvFn) {
5402 debug_fn.glVertexAttrib4fvFn = fn.glVertexAttrib4fvFn;
5403 fn.glVertexAttrib4fvFn = Debug_glVertexAttrib4fv;
5404 }
5405 if (!debug_fn.glVertexAttribDivisorANGLEFn) {
5406 debug_fn.glVertexAttribDivisorANGLEFn = fn.glVertexAttribDivisorANGLEFn;
5407 fn.glVertexAttribDivisorANGLEFn = Debug_glVertexAttribDivisorANGLE;
5408 }
5409 if (!debug_fn.glVertexAttribI4iFn) {
5410 debug_fn.glVertexAttribI4iFn = fn.glVertexAttribI4iFn;
5411 fn.glVertexAttribI4iFn = Debug_glVertexAttribI4i;
5412 }
5413 if (!debug_fn.glVertexAttribI4ivFn) {
5414 debug_fn.glVertexAttribI4ivFn = fn.glVertexAttribI4ivFn;
5415 fn.glVertexAttribI4ivFn = Debug_glVertexAttribI4iv;
5416 }
5417 if (!debug_fn.glVertexAttribI4uiFn) {
5418 debug_fn.glVertexAttribI4uiFn = fn.glVertexAttribI4uiFn;
5419 fn.glVertexAttribI4uiFn = Debug_glVertexAttribI4ui;
5420 }
5421 if (!debug_fn.glVertexAttribI4uivFn) {
5422 debug_fn.glVertexAttribI4uivFn = fn.glVertexAttribI4uivFn;
5423 fn.glVertexAttribI4uivFn = Debug_glVertexAttribI4uiv;
5424 }
5425 if (!debug_fn.glVertexAttribIPointerFn) {
5426 debug_fn.glVertexAttribIPointerFn = fn.glVertexAttribIPointerFn;
5427 fn.glVertexAttribIPointerFn = Debug_glVertexAttribIPointer;
5428 }
5429 if (!debug_fn.glVertexAttribPointerFn) {
5430 debug_fn.glVertexAttribPointerFn = fn.glVertexAttribPointerFn;
5431 fn.glVertexAttribPointerFn = Debug_glVertexAttribPointer;
5432 }
5433 if (!debug_fn.glViewportFn) {
5434 debug_fn.glViewportFn = fn.glViewportFn;
5435 fn.glViewportFn = Debug_glViewport;
5436 }
5437 if (!debug_fn.glWaitSyncFn) {
5438 debug_fn.glWaitSyncFn = fn.glWaitSyncFn;
5439 fn.glWaitSyncFn = Debug_glWaitSync;
5440 }
5441 g_debugBindingsInitialized = true;
5442 }
5443
5444 void DriverGL::ClearBindings() {
5445 memset(this, 0, sizeof(*this));
5446 }
5447
5448 void GLApiBase::glActiveTextureFn(GLenum texture) {
5449 driver_->fn.glActiveTextureFn(texture);
5450 }
5451
5452 void GLApiBase::glAttachShaderFn(GLuint program, GLuint shader) {
5453 driver_->fn.glAttachShaderFn(program, shader);
5454 }
5455
5456 void GLApiBase::glBeginQueryFn(GLenum target, GLuint id) {
5457 driver_->fn.glBeginQueryFn(target, id);
5458 }
5459
5460 void GLApiBase::glBeginQueryARBFn(GLenum target, GLuint id) {
5461 driver_->fn.glBeginQueryARBFn(target, id);
5462 }
5463
5464 void GLApiBase::glBeginTransformFeedbackFn(GLenum primitiveMode) {
5465 driver_->fn.glBeginTransformFeedbackFn(primitiveMode);
5466 }
5467
5468 void GLApiBase::glBindAttribLocationFn(GLuint program,
5469 GLuint index,
5470 const char* name) {
5471 driver_->fn.glBindAttribLocationFn(program, index, name);
5472 }
5473
5474 void GLApiBase::glBindBufferFn(GLenum target, GLuint buffer) {
5475 driver_->fn.glBindBufferFn(target, buffer);
5476 }
5477
5478 void GLApiBase::glBindBufferBaseFn(GLenum target, GLuint index, GLuint buffer) {
5479 driver_->fn.glBindBufferBaseFn(target, index, buffer);
5480 }
5481
5482 void GLApiBase::glBindBufferRangeFn(GLenum target,
5483 GLuint index,
5484 GLuint buffer,
5485 GLintptr offset,
5486 GLsizeiptr size) {
5487 driver_->fn.glBindBufferRangeFn(target, index, buffer, offset, size);
5488 }
5489
5490 void GLApiBase::glBindFragDataLocationFn(GLuint program,
5491 GLuint colorNumber,
5492 const char* name) {
5493 driver_->fn.glBindFragDataLocationFn(program, colorNumber, name);
5494 }
5495
5496 void GLApiBase::glBindFragDataLocationIndexedFn(GLuint program,
5497 GLuint colorNumber,
5498 GLuint index,
5499 const char* name) {
5500 driver_->fn.glBindFragDataLocationIndexedFn(program, colorNumber, index,
5501 name);
5502 }
5503
5504 void GLApiBase::glBindFramebufferEXTFn(GLenum target, GLuint framebuffer) {
5505 driver_->fn.glBindFramebufferEXTFn(target, framebuffer);
5506 }
5507
5508 void GLApiBase::glBindRenderbufferEXTFn(GLenum target, GLuint renderbuffer) {
5509 driver_->fn.glBindRenderbufferEXTFn(target, renderbuffer);
5510 }
5511
5512 void GLApiBase::glBindSamplerFn(GLuint unit, GLuint sampler) {
5513 driver_->fn.glBindSamplerFn(unit, sampler);
5514 }
5515
5516 void GLApiBase::glBindTextureFn(GLenum target, GLuint texture) {
5517 driver_->fn.glBindTextureFn(target, texture);
5518 }
5519
5520 void GLApiBase::glBindTransformFeedbackFn(GLenum target, GLuint id) {
5521 driver_->fn.glBindTransformFeedbackFn(target, id);
5522 }
5523
5524 void GLApiBase::glBindVertexArrayOESFn(GLuint array) {
5525 driver_->fn.glBindVertexArrayOESFn(array);
5526 }
5527
5528 void GLApiBase::glBlendBarrierKHRFn(void) {
5529 driver_->fn.glBlendBarrierKHRFn();
5530 }
5531
5532 void GLApiBase::glBlendColorFn(GLclampf red,
5533 GLclampf green,
5534 GLclampf blue,
5535 GLclampf alpha) {
5536 driver_->fn.glBlendColorFn(red, green, blue, alpha);
5537 }
5538
5539 void GLApiBase::glBlendEquationFn(GLenum mode) {
5540 driver_->fn.glBlendEquationFn(mode);
5541 }
5542
5543 void GLApiBase::glBlendEquationSeparateFn(GLenum modeRGB, GLenum modeAlpha) {
5544 driver_->fn.glBlendEquationSeparateFn(modeRGB, modeAlpha);
5545 }
5546
5547 void GLApiBase::glBlendFuncFn(GLenum sfactor, GLenum dfactor) {
5548 driver_->fn.glBlendFuncFn(sfactor, dfactor);
5549 }
5550
5551 void GLApiBase::glBlendFuncSeparateFn(GLenum srcRGB,
5552 GLenum dstRGB,
5553 GLenum srcAlpha,
5554 GLenum dstAlpha) {
5555 driver_->fn.glBlendFuncSeparateFn(srcRGB, dstRGB, srcAlpha, dstAlpha);
5556 }
5557
5558 void GLApiBase::glBlitFramebufferFn(GLint srcX0,
5559 GLint srcY0,
5560 GLint srcX1,
5561 GLint srcY1,
5562 GLint dstX0,
5563 GLint dstY0,
5564 GLint dstX1,
5565 GLint dstY1,
5566 GLbitfield mask,
5567 GLenum filter) {
5568 driver_->fn.glBlitFramebufferFn(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0,
5569 dstX1, dstY1, mask, filter);
5570 }
5571
5572 void GLApiBase::glBlitFramebufferANGLEFn(GLint srcX0,
5573 GLint srcY0,
5574 GLint srcX1,
5575 GLint srcY1,
5576 GLint dstX0,
5577 GLint dstY0,
5578 GLint dstX1,
5579 GLint dstY1,
5580 GLbitfield mask,
5581 GLenum filter) {
5582 driver_->fn.glBlitFramebufferANGLEFn(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0,
5583 dstX1, dstY1, mask, filter);
5584 }
5585
5586 void GLApiBase::glBlitFramebufferEXTFn(GLint srcX0,
5587 GLint srcY0,
5588 GLint srcX1,
5589 GLint srcY1,
5590 GLint dstX0,
5591 GLint dstY0,
5592 GLint dstX1,
5593 GLint dstY1,
5594 GLbitfield mask,
5595 GLenum filter) {
5596 driver_->fn.glBlitFramebufferEXTFn(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0,
5597 dstX1, dstY1, mask, filter);
5598 }
5599
5600 void GLApiBase::glBufferDataFn(GLenum target,
5601 GLsizeiptr size,
5602 const void* data,
5603 GLenum usage) {
5604 driver_->fn.glBufferDataFn(target, size, data, usage);
5605 }
5606
5607 void GLApiBase::glBufferSubDataFn(GLenum target,
5608 GLintptr offset,
5609 GLsizeiptr size,
5610 const void* data) {
5611 driver_->fn.glBufferSubDataFn(target, offset, size, data);
5612 }
5613
5614 GLenum GLApiBase::glCheckFramebufferStatusEXTFn(GLenum target) {
5615 return driver_->fn.glCheckFramebufferStatusEXTFn(target);
5616 }
5617
5618 void GLApiBase::glClearFn(GLbitfield mask) {
5619 driver_->fn.glClearFn(mask);
5620 }
5621
5622 void GLApiBase::glClearBufferfiFn(GLenum buffer,
5623 GLint drawbuffer,
5624 const GLfloat depth,
5625 GLint stencil) {
5626 driver_->fn.glClearBufferfiFn(buffer, drawbuffer, depth, stencil);
5627 }
5628
5629 void GLApiBase::glClearBufferfvFn(GLenum buffer,
5630 GLint drawbuffer,
5631 const GLfloat* value) {
5632 driver_->fn.glClearBufferfvFn(buffer, drawbuffer, value);
5633 }
5634
5635 void GLApiBase::glClearBufferivFn(GLenum buffer,
5636 GLint drawbuffer,
5637 const GLint* value) {
5638 driver_->fn.glClearBufferivFn(buffer, drawbuffer, value);
5639 }
5640
5641 void GLApiBase::glClearBufferuivFn(GLenum buffer,
5642 GLint drawbuffer,
5643 const GLuint* value) {
5644 driver_->fn.glClearBufferuivFn(buffer, drawbuffer, value);
5645 }
5646
5647 void GLApiBase::glClearColorFn(GLclampf red,
5648 GLclampf green,
5649 GLclampf blue,
5650 GLclampf alpha) {
5651 driver_->fn.glClearColorFn(red, green, blue, alpha);
5652 }
5653
5654 void GLApiBase::glClearDepthFn(GLclampd depth) {
5655 driver_->fn.glClearDepthFn(depth);
5656 }
5657
5658 void GLApiBase::glClearDepthfFn(GLclampf depth) {
5659 driver_->fn.glClearDepthfFn(depth);
5660 }
5661
5662 void GLApiBase::glClearStencilFn(GLint s) {
5663 driver_->fn.glClearStencilFn(s);
5664 }
5665
5666 GLenum GLApiBase::glClientWaitSyncFn(GLsync sync,
5667 GLbitfield flags,
5668 GLuint64 timeout) {
5669 return driver_->fn.glClientWaitSyncFn(sync, flags, timeout);
5670 }
5671
5672 void GLApiBase::glColorMaskFn(GLboolean red,
5673 GLboolean green,
5674 GLboolean blue,
5675 GLboolean alpha) {
5676 driver_->fn.glColorMaskFn(red, green, blue, alpha);
5677 }
5678
5679 void GLApiBase::glCompileShaderFn(GLuint shader) {
5680 driver_->fn.glCompileShaderFn(shader);
5681 }
5682
5683 void GLApiBase::glCompressedTexImage2DFn(GLenum target,
5684 GLint level,
5685 GLenum internalformat,
5686 GLsizei width,
5687 GLsizei height,
5688 GLint border,
5689 GLsizei imageSize,
5690 const void* data) {
5691 driver_->fn.glCompressedTexImage2DFn(target, level, internalformat, width,
5692 height, border, imageSize, data);
5693 }
5694
5695 void GLApiBase::glCompressedTexImage3DFn(GLenum target,
5696 GLint level,
5697 GLenum internalformat,
5698 GLsizei width,
5699 GLsizei height,
5700 GLsizei depth,
5701 GLint border,
5702 GLsizei imageSize,
5703 const void* data) {
5704 driver_->fn.glCompressedTexImage3DFn(target, level, internalformat, width,
5705 height, depth, border, imageSize, data);
5706 }
5707
5708 void GLApiBase::glCompressedTexSubImage2DFn(GLenum target,
5709 GLint level,
5710 GLint xoffset,
5711 GLint yoffset,
5712 GLsizei width,
5713 GLsizei height,
5714 GLenum format,
5715 GLsizei imageSize,
5716 const void* data) {
5717 driver_->fn.glCompressedTexSubImage2DFn(
5718 target, level, xoffset, yoffset, width, height, format, imageSize, data);
5719 }
5720
5721 void GLApiBase::glCopyBufferSubDataFn(GLenum readTarget,
5722 GLenum writeTarget,
5723 GLintptr readOffset,
5724 GLintptr writeOffset,
5725 GLsizeiptr size) {
5726 driver_->fn.glCopyBufferSubDataFn(readTarget, writeTarget, readOffset,
5727 writeOffset, size);
5728 }
5729
5730 void GLApiBase::glCopyTexImage2DFn(GLenum target,
5731 GLint level,
5732 GLenum internalformat,
5733 GLint x,
5734 GLint y,
5735 GLsizei width,
5736 GLsizei height,
5737 GLint border) {
5738 driver_->fn.glCopyTexImage2DFn(target, level, internalformat, x, y, width,
5739 height, border);
5740 }
5741
5742 void GLApiBase::glCopyTexSubImage2DFn(GLenum target,
5743 GLint level,
5744 GLint xoffset,
5745 GLint yoffset,
5746 GLint x,
5747 GLint y,
5748 GLsizei width,
5749 GLsizei height) {
5750 driver_->fn.glCopyTexSubImage2DFn(target, level, xoffset, yoffset, x, y,
5751 width, height);
5752 }
5753
5754 void GLApiBase::glCopyTexSubImage3DFn(GLenum target,
5755 GLint level,
5756 GLint xoffset,
5757 GLint yoffset,
5758 GLint zoffset,
5759 GLint x,
5760 GLint y,
5761 GLsizei width,
5762 GLsizei height) {
5763 driver_->fn.glCopyTexSubImage3DFn(target, level, xoffset, yoffset, zoffset, x,
5764 y, width, height);
5765 }
5766
5767 GLuint GLApiBase::glCreateProgramFn(void) {
5768 return driver_->fn.glCreateProgramFn();
5769 }
5770
5771 GLuint GLApiBase::glCreateShaderFn(GLenum type) {
5772 return driver_->fn.glCreateShaderFn(type);
5773 }
5774
5775 void GLApiBase::glCullFaceFn(GLenum mode) {
5776 driver_->fn.glCullFaceFn(mode);
5777 }
5778
5779 void GLApiBase::glDeleteBuffersARBFn(GLsizei n, const GLuint* buffers) {
5780 driver_->fn.glDeleteBuffersARBFn(n, buffers);
5781 }
5782
5783 void GLApiBase::glDeleteFencesAPPLEFn(GLsizei n, const GLuint* fences) {
5784 driver_->fn.glDeleteFencesAPPLEFn(n, fences);
5785 }
5786
5787 void GLApiBase::glDeleteFencesNVFn(GLsizei n, const GLuint* fences) {
5788 driver_->fn.glDeleteFencesNVFn(n, fences);
5789 }
5790
5791 void GLApiBase::glDeleteFramebuffersEXTFn(GLsizei n,
5792 const GLuint* framebuffers) {
5793 driver_->fn.glDeleteFramebuffersEXTFn(n, framebuffers);
5794 }
5795
5796 void GLApiBase::glDeleteProgramFn(GLuint program) {
5797 driver_->fn.glDeleteProgramFn(program);
5798 }
5799
5800 void GLApiBase::glDeleteQueriesFn(GLsizei n, const GLuint* ids) {
5801 driver_->fn.glDeleteQueriesFn(n, ids);
5802 }
5803
5804 void GLApiBase::glDeleteQueriesARBFn(GLsizei n, const GLuint* ids) {
5805 driver_->fn.glDeleteQueriesARBFn(n, ids);
5806 }
5807
5808 void GLApiBase::glDeleteRenderbuffersEXTFn(GLsizei n,
5809 const GLuint* renderbuffers) {
5810 driver_->fn.glDeleteRenderbuffersEXTFn(n, renderbuffers);
5811 }
5812
5813 void GLApiBase::glDeleteSamplersFn(GLsizei n, const GLuint* samplers) {
5814 driver_->fn.glDeleteSamplersFn(n, samplers);
5815 }
5816
5817 void GLApiBase::glDeleteShaderFn(GLuint shader) {
5818 driver_->fn.glDeleteShaderFn(shader);
5819 }
5820
5821 void GLApiBase::glDeleteSyncFn(GLsync sync) {
5822 driver_->fn.glDeleteSyncFn(sync);
5823 }
5824
5825 void GLApiBase::glDeleteTexturesFn(GLsizei n, const GLuint* textures) {
5826 driver_->fn.glDeleteTexturesFn(n, textures);
5827 }
5828
5829 void GLApiBase::glDeleteTransformFeedbacksFn(GLsizei n, const GLuint* ids) {
5830 driver_->fn.glDeleteTransformFeedbacksFn(n, ids);
5831 }
5832
5833 void GLApiBase::glDeleteVertexArraysOESFn(GLsizei n, const GLuint* arrays) {
5834 driver_->fn.glDeleteVertexArraysOESFn(n, arrays);
5835 }
5836
5837 void GLApiBase::glDepthFuncFn(GLenum func) {
5838 driver_->fn.glDepthFuncFn(func);
5839 }
5840
5841 void GLApiBase::glDepthMaskFn(GLboolean flag) {
5842 driver_->fn.glDepthMaskFn(flag);
5843 }
5844
5845 void GLApiBase::glDepthRangeFn(GLclampd zNear, GLclampd zFar) {
5846 driver_->fn.glDepthRangeFn(zNear, zFar);
5847 }
5848
5849 void GLApiBase::glDepthRangefFn(GLclampf zNear, GLclampf zFar) {
5850 driver_->fn.glDepthRangefFn(zNear, zFar);
5851 }
5852
5853 void GLApiBase::glDetachShaderFn(GLuint program, GLuint shader) {
5854 driver_->fn.glDetachShaderFn(program, shader);
5855 }
5856
5857 void GLApiBase::glDisableFn(GLenum cap) {
5858 driver_->fn.glDisableFn(cap);
5859 }
5860
5861 void GLApiBase::glDisableVertexAttribArrayFn(GLuint index) {
5862 driver_->fn.glDisableVertexAttribArrayFn(index);
5863 }
5864
5865 void GLApiBase::glDiscardFramebufferEXTFn(GLenum target,
5866 GLsizei numAttachments,
5867 const GLenum* attachments) {
5868 driver_->fn.glDiscardFramebufferEXTFn(target, numAttachments, attachments);
5869 }
5870
5871 void GLApiBase::glDrawArraysFn(GLenum mode, GLint first, GLsizei count) {
5872 driver_->fn.glDrawArraysFn(mode, first, count);
5873 }
5874
5875 void GLApiBase::glDrawArraysInstancedANGLEFn(GLenum mode,
5876 GLint first,
5877 GLsizei count,
5878 GLsizei primcount) {
5879 driver_->fn.glDrawArraysInstancedANGLEFn(mode, first, count, primcount);
5880 }
5881
5882 void GLApiBase::glDrawBufferFn(GLenum mode) {
5883 driver_->fn.glDrawBufferFn(mode);
5884 }
5885
5886 void GLApiBase::glDrawBuffersARBFn(GLsizei n, const GLenum* bufs) {
5887 driver_->fn.glDrawBuffersARBFn(n, bufs);
5888 }
5889
5890 void GLApiBase::glDrawElementsFn(GLenum mode,
5891 GLsizei count,
5892 GLenum type,
5893 const void* indices) {
5894 driver_->fn.glDrawElementsFn(mode, count, type, indices);
5895 }
5896
5897 void GLApiBase::glDrawElementsInstancedANGLEFn(GLenum mode,
5898 GLsizei count,
5899 GLenum type,
5900 const void* indices,
5901 GLsizei primcount) {
5902 driver_->fn.glDrawElementsInstancedANGLEFn(mode, count, type, indices,
5903 primcount);
5904 }
5905
5906 void GLApiBase::glDrawRangeElementsFn(GLenum mode,
5907 GLuint start,
5908 GLuint end,
5909 GLsizei count,
5910 GLenum type,
5911 const void* indices) {
5912 driver_->fn.glDrawRangeElementsFn(mode, start, end, count, type, indices);
5913 }
5914
5915 void GLApiBase::glEGLImageTargetRenderbufferStorageOESFn(GLenum target,
5916 GLeglImageOES image) {
5917 driver_->fn.glEGLImageTargetRenderbufferStorageOESFn(target, image);
5918 }
5919
5920 void GLApiBase::glEGLImageTargetTexture2DOESFn(GLenum target,
5921 GLeglImageOES image) {
5922 driver_->fn.glEGLImageTargetTexture2DOESFn(target, image);
5923 }
5924
5925 void GLApiBase::glEnableFn(GLenum cap) {
5926 driver_->fn.glEnableFn(cap);
5927 }
5928
5929 void GLApiBase::glEnableVertexAttribArrayFn(GLuint index) {
5930 driver_->fn.glEnableVertexAttribArrayFn(index);
5931 }
5932
5933 void GLApiBase::glEndQueryFn(GLenum target) {
5934 driver_->fn.glEndQueryFn(target);
5935 }
5936
5937 void GLApiBase::glEndQueryARBFn(GLenum target) {
5938 driver_->fn.glEndQueryARBFn(target);
5939 }
5940
5941 void GLApiBase::glEndTransformFeedbackFn(void) {
5942 driver_->fn.glEndTransformFeedbackFn();
5943 }
5944
5945 GLsync GLApiBase::glFenceSyncFn(GLenum condition, GLbitfield flags) {
5946 return driver_->fn.glFenceSyncFn(condition, flags);
5947 }
5948
5949 void GLApiBase::glFinishFn(void) {
5950 driver_->fn.glFinishFn();
5951 }
5952
5953 void GLApiBase::glFinishFenceAPPLEFn(GLuint fence) {
5954 driver_->fn.glFinishFenceAPPLEFn(fence);
5955 }
5956
5957 void GLApiBase::glFinishFenceNVFn(GLuint fence) {
5958 driver_->fn.glFinishFenceNVFn(fence);
5959 }
5960
5961 void GLApiBase::glFlushFn(void) {
5962 driver_->fn.glFlushFn();
5963 }
5964
5965 void GLApiBase::glFlushMappedBufferRangeFn(GLenum target,
5966 GLintptr offset,
5967 GLsizeiptr length) {
5968 driver_->fn.glFlushMappedBufferRangeFn(target, offset, length);
5969 }
5970
5971 void GLApiBase::glFramebufferRenderbufferEXTFn(GLenum target,
5972 GLenum attachment,
5973 GLenum renderbuffertarget,
5974 GLuint renderbuffer) {
5975 driver_->fn.glFramebufferRenderbufferEXTFn(target, attachment,
5976 renderbuffertarget, renderbuffer);
5977 }
5978
5979 void GLApiBase::glFramebufferTexture2DEXTFn(GLenum target,
5980 GLenum attachment,
5981 GLenum textarget,
5982 GLuint texture,
5983 GLint level) {
5984 driver_->fn.glFramebufferTexture2DEXTFn(target, attachment, textarget,
5985 texture, level);
5986 }
5987
5988 void GLApiBase::glFramebufferTexture2DMultisampleEXTFn(GLenum target,
5989 GLenum attachment,
5990 GLenum textarget,
5991 GLuint texture,
5992 GLint level,
5993 GLsizei samples) {
5994 driver_->fn.glFramebufferTexture2DMultisampleEXTFn(
5995 target, attachment, textarget, texture, level, samples);
5996 }
5997
5998 void GLApiBase::glFramebufferTexture2DMultisampleIMGFn(GLenum target,
5999 GLenum attachment,
6000 GLenum textarget,
6001 GLuint texture,
6002 GLint level,
6003 GLsizei samples) {
6004 driver_->fn.glFramebufferTexture2DMultisampleIMGFn(
6005 target, attachment, textarget, texture, level, samples);
6006 }
6007
6008 void GLApiBase::glFramebufferTextureLayerFn(GLenum target,
6009 GLenum attachment,
6010 GLuint texture,
6011 GLint level,
6012 GLint layer) {
6013 driver_->fn.glFramebufferTextureLayerFn(target, attachment, texture, level,
6014 layer);
6015 }
6016
6017 void GLApiBase::glFrontFaceFn(GLenum mode) {
6018 driver_->fn.glFrontFaceFn(mode);
6019 }
6020
6021 void GLApiBase::glGenBuffersARBFn(GLsizei n, GLuint* buffers) {
6022 driver_->fn.glGenBuffersARBFn(n, buffers);
6023 }
6024
6025 void GLApiBase::glGenerateMipmapEXTFn(GLenum target) {
6026 driver_->fn.glGenerateMipmapEXTFn(target);
6027 }
6028
6029 void GLApiBase::glGenFencesAPPLEFn(GLsizei n, GLuint* fences) {
6030 driver_->fn.glGenFencesAPPLEFn(n, fences);
6031 }
6032
6033 void GLApiBase::glGenFencesNVFn(GLsizei n, GLuint* fences) {
6034 driver_->fn.glGenFencesNVFn(n, fences);
6035 }
6036
6037 void GLApiBase::glGenFramebuffersEXTFn(GLsizei n, GLuint* framebuffers) {
6038 driver_->fn.glGenFramebuffersEXTFn(n, framebuffers);
6039 }
6040
6041 void GLApiBase::glGenQueriesFn(GLsizei n, GLuint* ids) {
6042 driver_->fn.glGenQueriesFn(n, ids);
6043 }
6044
6045 void GLApiBase::glGenQueriesARBFn(GLsizei n, GLuint* ids) {
6046 driver_->fn.glGenQueriesARBFn(n, ids);
6047 }
6048
6049 void GLApiBase::glGenRenderbuffersEXTFn(GLsizei n, GLuint* renderbuffers) {
6050 driver_->fn.glGenRenderbuffersEXTFn(n, renderbuffers);
6051 }
6052
6053 void GLApiBase::glGenSamplersFn(GLsizei n, GLuint* samplers) {
6054 driver_->fn.glGenSamplersFn(n, samplers);
6055 }
6056
6057 void GLApiBase::glGenTexturesFn(GLsizei n, GLuint* textures) {
6058 driver_->fn.glGenTexturesFn(n, textures);
6059 }
6060
6061 void GLApiBase::glGenTransformFeedbacksFn(GLsizei n, GLuint* ids) {
6062 driver_->fn.glGenTransformFeedbacksFn(n, ids);
6063 }
6064
6065 void GLApiBase::glGenVertexArraysOESFn(GLsizei n, GLuint* arrays) {
6066 driver_->fn.glGenVertexArraysOESFn(n, arrays);
6067 }
6068
6069 void GLApiBase::glGetActiveAttribFn(GLuint program,
6070 GLuint index,
6071 GLsizei bufsize,
6072 GLsizei* length,
6073 GLint* size,
6074 GLenum* type,
6075 char* name) {
6076 driver_->fn.glGetActiveAttribFn(program, index, bufsize, length, size, type,
6077 name);
6078 }
6079
6080 void GLApiBase::glGetActiveUniformFn(GLuint program,
6081 GLuint index,
6082 GLsizei bufsize,
6083 GLsizei* length,
6084 GLint* size,
6085 GLenum* type,
6086 char* name) {
6087 driver_->fn.glGetActiveUniformFn(program, index, bufsize, length, size, type,
6088 name);
6089 }
6090
6091 void GLApiBase::glGetActiveUniformBlockivFn(GLuint program,
6092 GLuint uniformBlockIndex,
6093 GLenum pname,
6094 GLint* params) {
6095 driver_->fn.glGetActiveUniformBlockivFn(program, uniformBlockIndex, pname,
6096 params);
6097 }
6098
6099 void GLApiBase::glGetActiveUniformBlockNameFn(GLuint program,
6100 GLuint uniformBlockIndex,
6101 GLsizei bufSize,
6102 GLsizei* length,
6103 char* uniformBlockName) {
6104 driver_->fn.glGetActiveUniformBlockNameFn(program, uniformBlockIndex, bufSize,
6105 length, uniformBlockName);
6106 }
6107
6108 void GLApiBase::glGetActiveUniformsivFn(GLuint program,
6109 GLsizei uniformCount,
6110 const GLuint* uniformIndices,
6111 GLenum pname,
6112 GLint* params) {
6113 driver_->fn.glGetActiveUniformsivFn(program, uniformCount, uniformIndices,
6114 pname, params);
6115 }
6116
6117 void GLApiBase::glGetAttachedShadersFn(GLuint program,
6118 GLsizei maxcount,
6119 GLsizei* count,
6120 GLuint* shaders) {
6121 driver_->fn.glGetAttachedShadersFn(program, maxcount, count, shaders);
6122 }
6123
6124 GLint GLApiBase::glGetAttribLocationFn(GLuint program, const char* name) {
6125 return driver_->fn.glGetAttribLocationFn(program, name);
6126 }
6127
6128 void GLApiBase::glGetBooleanvFn(GLenum pname, GLboolean* params) {
6129 driver_->fn.glGetBooleanvFn(pname, params);
6130 }
6131
6132 void GLApiBase::glGetBufferParameterivFn(GLenum target,
6133 GLenum pname,
6134 GLint* params) {
6135 driver_->fn.glGetBufferParameterivFn(target, pname, params);
6136 }
6137
6138 GLenum GLApiBase::glGetErrorFn(void) {
6139 return driver_->fn.glGetErrorFn();
6140 }
6141
6142 void GLApiBase::glGetFenceivNVFn(GLuint fence, GLenum pname, GLint* params) {
6143 driver_->fn.glGetFenceivNVFn(fence, pname, params);
6144 }
6145
6146 void GLApiBase::glGetFloatvFn(GLenum pname, GLfloat* params) {
6147 driver_->fn.glGetFloatvFn(pname, params);
6148 }
6149
6150 GLint GLApiBase::glGetFragDataLocationFn(GLuint program, const char* name) {
6151 return driver_->fn.glGetFragDataLocationFn(program, name);
6152 }
6153
6154 void GLApiBase::glGetFramebufferAttachmentParameterivEXTFn(GLenum target,
6155 GLenum attachment,
6156 GLenum pname,
6157 GLint* params) {
6158 driver_->fn.glGetFramebufferAttachmentParameterivEXTFn(target, attachment,
6159 pname, params);
6160 }
6161
6162 GLenum GLApiBase::glGetGraphicsResetStatusARBFn(void) {
6163 return driver_->fn.glGetGraphicsResetStatusARBFn();
6164 }
6165
6166 void GLApiBase::glGetInteger64i_vFn(GLenum target,
6167 GLuint index,
6168 GLint64* data) {
6169 driver_->fn.glGetInteger64i_vFn(target, index, data);
6170 }
6171
6172 void GLApiBase::glGetInteger64vFn(GLenum pname, GLint64* params) {
6173 driver_->fn.glGetInteger64vFn(pname, params);
6174 }
6175
6176 void GLApiBase::glGetIntegeri_vFn(GLenum target, GLuint index, GLint* data) {
6177 driver_->fn.glGetIntegeri_vFn(target, index, data);
6178 }
6179
6180 void GLApiBase::glGetIntegervFn(GLenum pname, GLint* params) {
6181 driver_->fn.glGetIntegervFn(pname, params);
6182 }
6183
6184 void GLApiBase::glGetInternalformativFn(GLenum target,
6185 GLenum internalformat,
6186 GLenum pname,
6187 GLsizei bufSize,
6188 GLint* params) {
6189 driver_->fn.glGetInternalformativFn(target, internalformat, pname, bufSize,
6190 params);
6191 }
6192
6193 void GLApiBase::glGetProgramBinaryFn(GLuint program,
6194 GLsizei bufSize,
6195 GLsizei* length,
6196 GLenum* binaryFormat,
6197 GLvoid* binary) {
6198 driver_->fn.glGetProgramBinaryFn(program, bufSize, length, binaryFormat,
6199 binary);
6200 }
6201
6202 void GLApiBase::glGetProgramInfoLogFn(GLuint program,
6203 GLsizei bufsize,
6204 GLsizei* length,
6205 char* infolog) {
6206 driver_->fn.glGetProgramInfoLogFn(program, bufsize, length, infolog);
6207 }
6208
6209 void GLApiBase::glGetProgramivFn(GLuint program, GLenum pname, GLint* params) {
6210 driver_->fn.glGetProgramivFn(program, pname, params);
6211 }
6212
6213 void GLApiBase::glGetQueryivFn(GLenum target, GLenum pname, GLint* params) {
6214 driver_->fn.glGetQueryivFn(target, pname, params);
6215 }
6216
6217 void GLApiBase::glGetQueryivARBFn(GLenum target, GLenum pname, GLint* params) {
6218 driver_->fn.glGetQueryivARBFn(target, pname, params);
6219 }
6220
6221 void GLApiBase::glGetQueryObjecti64vFn(GLuint id,
6222 GLenum pname,
6223 GLint64* params) {
6224 driver_->fn.glGetQueryObjecti64vFn(id, pname, params);
6225 }
6226
6227 void GLApiBase::glGetQueryObjectivFn(GLuint id, GLenum pname, GLint* params) {
6228 driver_->fn.glGetQueryObjectivFn(id, pname, params);
6229 }
6230
6231 void GLApiBase::glGetQueryObjectivARBFn(GLuint id,
6232 GLenum pname,
6233 GLint* params) {
6234 driver_->fn.glGetQueryObjectivARBFn(id, pname, params);
6235 }
6236
6237 void GLApiBase::glGetQueryObjectui64vFn(GLuint id,
6238 GLenum pname,
6239 GLuint64* params) {
6240 driver_->fn.glGetQueryObjectui64vFn(id, pname, params);
6241 }
6242
6243 void GLApiBase::glGetQueryObjectuivFn(GLuint id, GLenum pname, GLuint* params) {
6244 driver_->fn.glGetQueryObjectuivFn(id, pname, params);
6245 }
6246
6247 void GLApiBase::glGetQueryObjectuivARBFn(GLuint id,
6248 GLenum pname,
6249 GLuint* params) {
6250 driver_->fn.glGetQueryObjectuivARBFn(id, pname, params);
6251 }
6252
6253 void GLApiBase::glGetRenderbufferParameterivEXTFn(GLenum target,
6254 GLenum pname,
6255 GLint* params) {
6256 driver_->fn.glGetRenderbufferParameterivEXTFn(target, pname, params);
6257 }
6258
6259 void GLApiBase::glGetSamplerParameterfvFn(GLuint sampler,
6260 GLenum pname,
6261 GLfloat* params) {
6262 driver_->fn.glGetSamplerParameterfvFn(sampler, pname, params);
6263 }
6264
6265 void GLApiBase::glGetSamplerParameterivFn(GLuint sampler,
6266 GLenum pname,
6267 GLint* params) {
6268 driver_->fn.glGetSamplerParameterivFn(sampler, pname, params);
6269 }
6270
6271 void GLApiBase::glGetShaderInfoLogFn(GLuint shader,
6272 GLsizei bufsize,
6273 GLsizei* length,
6274 char* infolog) {
6275 driver_->fn.glGetShaderInfoLogFn(shader, bufsize, length, infolog);
6276 }
6277
6278 void GLApiBase::glGetShaderivFn(GLuint shader, GLenum pname, GLint* params) {
6279 driver_->fn.glGetShaderivFn(shader, pname, params);
6280 }
6281
6282 void GLApiBase::glGetShaderPrecisionFormatFn(GLenum shadertype,
6283 GLenum precisiontype,
6284 GLint* range,
6285 GLint* precision) {
6286 driver_->fn.glGetShaderPrecisionFormatFn(shadertype, precisiontype, range,
6287 precision);
6288 }
6289
6290 void GLApiBase::glGetShaderSourceFn(GLuint shader,
6291 GLsizei bufsize,
6292 GLsizei* length,
6293 char* source) {
6294 driver_->fn.glGetShaderSourceFn(shader, bufsize, length, source);
6295 }
6296
6297 const GLubyte* GLApiBase::glGetStringFn(GLenum name) {
6298 return driver_->fn.glGetStringFn(name);
6299 }
6300
6301 void GLApiBase::glGetSyncivFn(GLsync sync,
6302 GLenum pname,
6303 GLsizei bufSize,
6304 GLsizei* length,
6305 GLint* values) {
6306 driver_->fn.glGetSyncivFn(sync, pname, bufSize, length, values);
6307 }
6308
6309 void GLApiBase::glGetTexLevelParameterfvFn(GLenum target,
6310 GLint level,
6311 GLenum pname,
6312 GLfloat* params) {
6313 driver_->fn.glGetTexLevelParameterfvFn(target, level, pname, params);
6314 }
6315
6316 void GLApiBase::glGetTexLevelParameterivFn(GLenum target,
6317 GLint level,
6318 GLenum pname,
6319 GLint* params) {
6320 driver_->fn.glGetTexLevelParameterivFn(target, level, pname, params);
6321 }
6322
6323 void GLApiBase::glGetTexParameterfvFn(GLenum target,
6324 GLenum pname,
6325 GLfloat* params) {
6326 driver_->fn.glGetTexParameterfvFn(target, pname, params);
6327 }
6328
6329 void GLApiBase::glGetTexParameterivFn(GLenum target,
6330 GLenum pname,
6331 GLint* params) {
6332 driver_->fn.glGetTexParameterivFn(target, pname, params);
6333 }
6334
6335 void GLApiBase::glGetTransformFeedbackVaryingFn(GLuint program,
6336 GLuint index,
6337 GLsizei bufSize,
6338 GLsizei* length,
6339 GLenum* type,
6340 char* name) {
6341 driver_->fn.glGetTransformFeedbackVaryingFn(program, index, bufSize, length,
6342 type, name);
6343 }
6344
6345 void GLApiBase::glGetTranslatedShaderSourceANGLEFn(GLuint shader,
6346 GLsizei bufsize,
6347 GLsizei* length,
6348 char* source) {
6349 driver_->fn.glGetTranslatedShaderSourceANGLEFn(shader, bufsize, length,
6350 source);
6351 }
6352
6353 GLuint GLApiBase::glGetUniformBlockIndexFn(GLuint program,
6354 const char* uniformBlockName) {
6355 return driver_->fn.glGetUniformBlockIndexFn(program, uniformBlockName);
6356 }
6357
6358 void GLApiBase::glGetUniformfvFn(GLuint program,
6359 GLint location,
6360 GLfloat* params) {
6361 driver_->fn.glGetUniformfvFn(program, location, params);
6362 }
6363
6364 void GLApiBase::glGetUniformIndicesFn(GLuint program,
6365 GLsizei uniformCount,
6366 const char* const* uniformNames,
6367 GLuint* uniformIndices) {
6368 driver_->fn.glGetUniformIndicesFn(program, uniformCount, uniformNames,
6369 uniformIndices);
6370 }
6371
6372 void GLApiBase::glGetUniformivFn(GLuint program,
6373 GLint location,
6374 GLint* params) {
6375 driver_->fn.glGetUniformivFn(program, location, params);
6376 }
6377
6378 GLint GLApiBase::glGetUniformLocationFn(GLuint program, const char* name) {
6379 return driver_->fn.glGetUniformLocationFn(program, name);
6380 }
6381
6382 void GLApiBase::glGetVertexAttribfvFn(GLuint index,
6383 GLenum pname,
6384 GLfloat* params) {
6385 driver_->fn.glGetVertexAttribfvFn(index, pname, params);
6386 }
6387
6388 void GLApiBase::glGetVertexAttribivFn(GLuint index,
6389 GLenum pname,
6390 GLint* params) {
6391 driver_->fn.glGetVertexAttribivFn(index, pname, params);
6392 }
6393
6394 void GLApiBase::glGetVertexAttribPointervFn(GLuint index,
6395 GLenum pname,
6396 void** pointer) {
6397 driver_->fn.glGetVertexAttribPointervFn(index, pname, pointer);
6398 }
6399
6400 void GLApiBase::glHintFn(GLenum target, GLenum mode) {
6401 driver_->fn.glHintFn(target, mode);
6402 }
6403
6404 void GLApiBase::glInsertEventMarkerEXTFn(GLsizei length, const char* marker) {
6405 driver_->fn.glInsertEventMarkerEXTFn(length, marker);
6406 }
6407
6408 void GLApiBase::glInvalidateFramebufferFn(GLenum target,
6409 GLsizei numAttachments,
6410 const GLenum* attachments) {
6411 driver_->fn.glInvalidateFramebufferFn(target, numAttachments, attachments);
6412 }
6413
6414 void GLApiBase::glInvalidateSubFramebufferFn(GLenum target,
6415 GLsizei numAttachments,
6416 const GLenum* attachments,
6417 GLint x,
6418 GLint y,
6419 GLint width,
6420 GLint height) {
6421 driver_->fn.glInvalidateSubFramebufferFn(target, numAttachments, attachments,
6422 x, y, width, height);
6423 }
6424
6425 GLboolean GLApiBase::glIsBufferFn(GLuint buffer) {
6426 return driver_->fn.glIsBufferFn(buffer);
6427 }
6428
6429 GLboolean GLApiBase::glIsEnabledFn(GLenum cap) {
6430 return driver_->fn.glIsEnabledFn(cap);
6431 }
6432
6433 GLboolean GLApiBase::glIsFenceAPPLEFn(GLuint fence) {
6434 return driver_->fn.glIsFenceAPPLEFn(fence);
6435 }
6436
6437 GLboolean GLApiBase::glIsFenceNVFn(GLuint fence) {
6438 return driver_->fn.glIsFenceNVFn(fence);
6439 }
6440
6441 GLboolean GLApiBase::glIsFramebufferEXTFn(GLuint framebuffer) {
6442 return driver_->fn.glIsFramebufferEXTFn(framebuffer);
6443 }
6444
6445 GLboolean GLApiBase::glIsProgramFn(GLuint program) {
6446 return driver_->fn.glIsProgramFn(program);
6447 }
6448
6449 GLboolean GLApiBase::glIsQueryFn(GLuint query) {
6450 return driver_->fn.glIsQueryFn(query);
6451 }
6452
6453 GLboolean GLApiBase::glIsQueryARBFn(GLuint query) {
6454 return driver_->fn.glIsQueryARBFn(query);
6455 }
6456
6457 GLboolean GLApiBase::glIsRenderbufferEXTFn(GLuint renderbuffer) {
6458 return driver_->fn.glIsRenderbufferEXTFn(renderbuffer);
6459 }
6460
6461 GLboolean GLApiBase::glIsSamplerFn(GLuint sampler) {
6462 return driver_->fn.glIsSamplerFn(sampler);
6463 }
6464
6465 GLboolean GLApiBase::glIsShaderFn(GLuint shader) {
6466 return driver_->fn.glIsShaderFn(shader);
6467 }
6468
6469 GLboolean GLApiBase::glIsSyncFn(GLsync sync) {
6470 return driver_->fn.glIsSyncFn(sync);
6471 }
6472
6473 GLboolean GLApiBase::glIsTextureFn(GLuint texture) {
6474 return driver_->fn.glIsTextureFn(texture);
6475 }
6476
6477 GLboolean GLApiBase::glIsTransformFeedbackFn(GLuint id) {
6478 return driver_->fn.glIsTransformFeedbackFn(id);
6479 }
6480
6481 GLboolean GLApiBase::glIsVertexArrayOESFn(GLuint array) {
6482 return driver_->fn.glIsVertexArrayOESFn(array);
6483 }
6484
6485 void GLApiBase::glLineWidthFn(GLfloat width) {
6486 driver_->fn.glLineWidthFn(width);
6487 }
6488
6489 void GLApiBase::glLinkProgramFn(GLuint program) {
6490 driver_->fn.glLinkProgramFn(program);
6491 }
6492
6493 void* GLApiBase::glMapBufferFn(GLenum target, GLenum access) {
6494 return driver_->fn.glMapBufferFn(target, access);
6495 }
6496
6497 void* GLApiBase::glMapBufferRangeFn(GLenum target,
6498 GLintptr offset,
6499 GLsizeiptr length,
6500 GLbitfield access) {
6501 return driver_->fn.glMapBufferRangeFn(target, offset, length, access);
6502 }
6503
6504 void GLApiBase::glMatrixLoadfEXTFn(GLenum matrixMode, const GLfloat* m) {
6505 driver_->fn.glMatrixLoadfEXTFn(matrixMode, m);
6506 }
6507
6508 void GLApiBase::glMatrixLoadIdentityEXTFn(GLenum matrixMode) {
6509 driver_->fn.glMatrixLoadIdentityEXTFn(matrixMode);
6510 }
6511
6512 void GLApiBase::glPauseTransformFeedbackFn(void) {
6513 driver_->fn.glPauseTransformFeedbackFn();
6514 }
6515
6516 void GLApiBase::glPixelStoreiFn(GLenum pname, GLint param) {
6517 driver_->fn.glPixelStoreiFn(pname, param);
6518 }
6519
6520 void GLApiBase::glPointParameteriFn(GLenum pname, GLint param) {
6521 driver_->fn.glPointParameteriFn(pname, param);
6522 }
6523
6524 void GLApiBase::glPolygonOffsetFn(GLfloat factor, GLfloat units) {
6525 driver_->fn.glPolygonOffsetFn(factor, units);
6526 }
6527
6528 void GLApiBase::glPopGroupMarkerEXTFn(void) {
6529 driver_->fn.glPopGroupMarkerEXTFn();
6530 }
6531
6532 void GLApiBase::glProgramBinaryFn(GLuint program,
6533 GLenum binaryFormat,
6534 const GLvoid* binary,
6535 GLsizei length) {
6536 driver_->fn.glProgramBinaryFn(program, binaryFormat, binary, length);
6537 }
6538
6539 void GLApiBase::glProgramParameteriFn(GLuint program,
6540 GLenum pname,
6541 GLint value) {
6542 driver_->fn.glProgramParameteriFn(program, pname, value);
6543 }
6544
6545 void GLApiBase::glPushGroupMarkerEXTFn(GLsizei length, const char* marker) {
6546 driver_->fn.glPushGroupMarkerEXTFn(length, marker);
6547 }
6548
6549 void GLApiBase::glQueryCounterFn(GLuint id, GLenum target) {
6550 driver_->fn.glQueryCounterFn(id, target);
6551 }
6552
6553 void GLApiBase::glReadBufferFn(GLenum src) {
6554 driver_->fn.glReadBufferFn(src);
6555 }
6556
6557 void GLApiBase::glReadPixelsFn(GLint x,
6558 GLint y,
6559 GLsizei width,
6560 GLsizei height,
6561 GLenum format,
6562 GLenum type,
6563 void* pixels) {
6564 driver_->fn.glReadPixelsFn(x, y, width, height, format, type, pixels);
6565 }
6566
6567 void GLApiBase::glReleaseShaderCompilerFn(void) {
6568 driver_->fn.glReleaseShaderCompilerFn();
6569 }
6570
6571 void GLApiBase::glRenderbufferStorageEXTFn(GLenum target,
6572 GLenum internalformat,
6573 GLsizei width,
6574 GLsizei height) {
6575 driver_->fn.glRenderbufferStorageEXTFn(target, internalformat, width, height);
6576 }
6577
6578 void GLApiBase::glRenderbufferStorageMultisampleFn(GLenum target,
6579 GLsizei samples,
6580 GLenum internalformat,
6581 GLsizei width,
6582 GLsizei height) {
6583 driver_->fn.glRenderbufferStorageMultisampleFn(target, samples,
6584 internalformat, width, height);
6585 }
6586
6587 void GLApiBase::glRenderbufferStorageMultisampleANGLEFn(GLenum target,
6588 GLsizei samples,
6589 GLenum internalformat,
6590 GLsizei width,
6591 GLsizei height) {
6592 driver_->fn.glRenderbufferStorageMultisampleANGLEFn(
6593 target, samples, internalformat, width, height);
6594 }
6595
6596 void GLApiBase::glRenderbufferStorageMultisampleEXTFn(GLenum target,
6597 GLsizei samples,
6598 GLenum internalformat,
6599 GLsizei width,
6600 GLsizei height) {
6601 driver_->fn.glRenderbufferStorageMultisampleEXTFn(
6602 target, samples, internalformat, width, height);
6603 }
6604
6605 void GLApiBase::glRenderbufferStorageMultisampleIMGFn(GLenum target,
6606 GLsizei samples,
6607 GLenum internalformat,
6608 GLsizei width,
6609 GLsizei height) {
6610 driver_->fn.glRenderbufferStorageMultisampleIMGFn(
6611 target, samples, internalformat, width, height);
6612 }
6613
6614 void GLApiBase::glResumeTransformFeedbackFn(void) {
6615 driver_->fn.glResumeTransformFeedbackFn();
6616 }
6617
6618 void GLApiBase::glSampleCoverageFn(GLclampf value, GLboolean invert) {
6619 driver_->fn.glSampleCoverageFn(value, invert);
6620 }
6621
6622 void GLApiBase::glSamplerParameterfFn(GLuint sampler,
6623 GLenum pname,
6624 GLfloat param) {
6625 driver_->fn.glSamplerParameterfFn(sampler, pname, param);
6626 }
6627
6628 void GLApiBase::glSamplerParameterfvFn(GLuint sampler,
6629 GLenum pname,
6630 const GLfloat* params) {
6631 driver_->fn.glSamplerParameterfvFn(sampler, pname, params);
6632 }
6633
6634 void GLApiBase::glSamplerParameteriFn(GLuint sampler,
6635 GLenum pname,
6636 GLint param) {
6637 driver_->fn.glSamplerParameteriFn(sampler, pname, param);
6638 }
6639
6640 void GLApiBase::glSamplerParameterivFn(GLuint sampler,
6641 GLenum pname,
6642 const GLint* params) {
6643 driver_->fn.glSamplerParameterivFn(sampler, pname, params);
6644 }
6645
6646 void GLApiBase::glScissorFn(GLint x, GLint y, GLsizei width, GLsizei height) {
6647 driver_->fn.glScissorFn(x, y, width, height);
6648 }
6649
6650 void GLApiBase::glSetFenceAPPLEFn(GLuint fence) {
6651 driver_->fn.glSetFenceAPPLEFn(fence);
6652 }
6653
6654 void GLApiBase::glSetFenceNVFn(GLuint fence, GLenum condition) {
6655 driver_->fn.glSetFenceNVFn(fence, condition);
6656 }
6657
6658 void GLApiBase::glShaderBinaryFn(GLsizei n,
6659 const GLuint* shaders,
6660 GLenum binaryformat,
6661 const void* binary,
6662 GLsizei length) {
6663 driver_->fn.glShaderBinaryFn(n, shaders, binaryformat, binary, length);
6664 }
6665
6666 void GLApiBase::glShaderSourceFn(GLuint shader,
6667 GLsizei count,
6668 const char* const* str,
6669 const GLint* length) {
6670 driver_->fn.glShaderSourceFn(shader, count, str, length);
6671 }
6672
6673 void GLApiBase::glStencilFuncFn(GLenum func, GLint ref, GLuint mask) {
6674 driver_->fn.glStencilFuncFn(func, ref, mask);
6675 }
6676
6677 void GLApiBase::glStencilFuncSeparateFn(GLenum face,
6678 GLenum func,
6679 GLint ref,
6680 GLuint mask) {
6681 driver_->fn.glStencilFuncSeparateFn(face, func, ref, mask);
6682 }
6683
6684 void GLApiBase::glStencilMaskFn(GLuint mask) {
6685 driver_->fn.glStencilMaskFn(mask);
6686 }
6687
6688 void GLApiBase::glStencilMaskSeparateFn(GLenum face, GLuint mask) {
6689 driver_->fn.glStencilMaskSeparateFn(face, mask);
6690 }
6691
6692 void GLApiBase::glStencilOpFn(GLenum fail, GLenum zfail, GLenum zpass) {
6693 driver_->fn.glStencilOpFn(fail, zfail, zpass);
6694 }
6695
6696 void GLApiBase::glStencilOpSeparateFn(GLenum face,
6697 GLenum fail,
6698 GLenum zfail,
6699 GLenum zpass) {
6700 driver_->fn.glStencilOpSeparateFn(face, fail, zfail, zpass);
6701 }
6702
6703 GLboolean GLApiBase::glTestFenceAPPLEFn(GLuint fence) {
6704 return driver_->fn.glTestFenceAPPLEFn(fence);
6705 }
6706
6707 GLboolean GLApiBase::glTestFenceNVFn(GLuint fence) {
6708 return driver_->fn.glTestFenceNVFn(fence);
6709 }
6710
6711 void GLApiBase::glTexImage2DFn(GLenum target,
6712 GLint level,
6713 GLint internalformat,
6714 GLsizei width,
6715 GLsizei height,
6716 GLint border,
6717 GLenum format,
6718 GLenum type,
6719 const void* pixels) {
6720 driver_->fn.glTexImage2DFn(target, level, internalformat, width, height,
6721 border, format, type, pixels);
6722 }
6723
6724 void GLApiBase::glTexImage3DFn(GLenum target,
6725 GLint level,
6726 GLint internalformat,
6727 GLsizei width,
6728 GLsizei height,
6729 GLsizei depth,
6730 GLint border,
6731 GLenum format,
6732 GLenum type,
6733 const void* pixels) {
6734 driver_->fn.glTexImage3DFn(target, level, internalformat, width, height,
6735 depth, border, format, type, pixels);
6736 }
6737
6738 void GLApiBase::glTexParameterfFn(GLenum target, GLenum pname, GLfloat param) {
6739 driver_->fn.glTexParameterfFn(target, pname, param);
6740 }
6741
6742 void GLApiBase::glTexParameterfvFn(GLenum target,
6743 GLenum pname,
6744 const GLfloat* params) {
6745 driver_->fn.glTexParameterfvFn(target, pname, params);
6746 }
6747
6748 void GLApiBase::glTexParameteriFn(GLenum target, GLenum pname, GLint param) {
6749 driver_->fn.glTexParameteriFn(target, pname, param);
6750 }
6751
6752 void GLApiBase::glTexParameterivFn(GLenum target,
6753 GLenum pname,
6754 const GLint* params) {
6755 driver_->fn.glTexParameterivFn(target, pname, params);
6756 }
6757
6758 void GLApiBase::glTexStorage2DEXTFn(GLenum target,
6759 GLsizei levels,
6760 GLenum internalformat,
6761 GLsizei width,
6762 GLsizei height) {
6763 driver_->fn.glTexStorage2DEXTFn(target, levels, internalformat, width,
6764 height);
6765 }
6766
6767 void GLApiBase::glTexStorage3DFn(GLenum target,
6768 GLsizei levels,
6769 GLenum internalformat,
6770 GLsizei width,
6771 GLsizei height,
6772 GLsizei depth) {
6773 driver_->fn.glTexStorage3DFn(target, levels, internalformat, width, height,
6774 depth);
6775 }
6776
6777 void GLApiBase::glTexSubImage2DFn(GLenum target,
6778 GLint level,
6779 GLint xoffset,
6780 GLint yoffset,
6781 GLsizei width,
6782 GLsizei height,
6783 GLenum format,
6784 GLenum type,
6785 const void* pixels) {
6786 driver_->fn.glTexSubImage2DFn(target, level, xoffset, yoffset, width, height,
6787 format, type, pixels);
6788 }
6789
6790 void GLApiBase::glTransformFeedbackVaryingsFn(GLuint program,
6791 GLsizei count,
6792 const char* const* varyings,
6793 GLenum bufferMode) {
6794 driver_->fn.glTransformFeedbackVaryingsFn(program, count, varyings,
6795 bufferMode);
6796 }
6797
6798 void GLApiBase::glUniform1fFn(GLint location, GLfloat x) {
6799 driver_->fn.glUniform1fFn(location, x);
6800 }
6801
6802 void GLApiBase::glUniform1fvFn(GLint location,
6803 GLsizei count,
6804 const GLfloat* v) {
6805 driver_->fn.glUniform1fvFn(location, count, v);
6806 }
6807
6808 void GLApiBase::glUniform1iFn(GLint location, GLint x) {
6809 driver_->fn.glUniform1iFn(location, x);
6810 }
6811
6812 void GLApiBase::glUniform1ivFn(GLint location, GLsizei count, const GLint* v) {
6813 driver_->fn.glUniform1ivFn(location, count, v);
6814 }
6815
6816 void GLApiBase::glUniform1uiFn(GLint location, GLuint v0) {
6817 driver_->fn.glUniform1uiFn(location, v0);
6818 }
6819
6820 void GLApiBase::glUniform1uivFn(GLint location,
6821 GLsizei count,
6822 const GLuint* v) {
6823 driver_->fn.glUniform1uivFn(location, count, v);
6824 }
6825
6826 void GLApiBase::glUniform2fFn(GLint location, GLfloat x, GLfloat y) {
6827 driver_->fn.glUniform2fFn(location, x, y);
6828 }
6829
6830 void GLApiBase::glUniform2fvFn(GLint location,
6831 GLsizei count,
6832 const GLfloat* v) {
6833 driver_->fn.glUniform2fvFn(location, count, v);
6834 }
6835
6836 void GLApiBase::glUniform2iFn(GLint location, GLint x, GLint y) {
6837 driver_->fn.glUniform2iFn(location, x, y);
6838 }
6839
6840 void GLApiBase::glUniform2ivFn(GLint location, GLsizei count, const GLint* v) {
6841 driver_->fn.glUniform2ivFn(location, count, v);
6842 }
6843
6844 void GLApiBase::glUniform2uiFn(GLint location, GLuint v0, GLuint v1) {
6845 driver_->fn.glUniform2uiFn(location, v0, v1);
6846 }
6847
6848 void GLApiBase::glUniform2uivFn(GLint location,
6849 GLsizei count,
6850 const GLuint* v) {
6851 driver_->fn.glUniform2uivFn(location, count, v);
6852 }
6853
6854 void GLApiBase::glUniform3fFn(GLint location, GLfloat x, GLfloat y, GLfloat z) {
6855 driver_->fn.glUniform3fFn(location, x, y, z);
6856 }
6857
6858 void GLApiBase::glUniform3fvFn(GLint location,
6859 GLsizei count,
6860 const GLfloat* v) {
6861 driver_->fn.glUniform3fvFn(location, count, v);
6862 }
6863
6864 void GLApiBase::glUniform3iFn(GLint location, GLint x, GLint y, GLint z) {
6865 driver_->fn.glUniform3iFn(location, x, y, z);
6866 }
6867
6868 void GLApiBase::glUniform3ivFn(GLint location, GLsizei count, const GLint* v) {
6869 driver_->fn.glUniform3ivFn(location, count, v);
6870 }
6871
6872 void GLApiBase::glUniform3uiFn(GLint location,
6873 GLuint v0,
6874 GLuint v1,
6875 GLuint v2) {
6876 driver_->fn.glUniform3uiFn(location, v0, v1, v2);
6877 }
6878
6879 void GLApiBase::glUniform3uivFn(GLint location,
6880 GLsizei count,
6881 const GLuint* v) {
6882 driver_->fn.glUniform3uivFn(location, count, v);
6883 }
6884
6885 void GLApiBase::glUniform4fFn(GLint location,
6886 GLfloat x,
6887 GLfloat y,
6888 GLfloat z,
6889 GLfloat w) {
6890 driver_->fn.glUniform4fFn(location, x, y, z, w);
6891 }
6892
6893 void GLApiBase::glUniform4fvFn(GLint location,
6894 GLsizei count,
6895 const GLfloat* v) {
6896 driver_->fn.glUniform4fvFn(location, count, v);
6897 }
6898
6899 void GLApiBase::glUniform4iFn(GLint location,
6900 GLint x,
6901 GLint y,
6902 GLint z,
6903 GLint w) {
6904 driver_->fn.glUniform4iFn(location, x, y, z, w);
6905 }
6906
6907 void GLApiBase::glUniform4ivFn(GLint location, GLsizei count, const GLint* v) {
6908 driver_->fn.glUniform4ivFn(location, count, v);
6909 }
6910
6911 void GLApiBase::glUniform4uiFn(GLint location,
6912 GLuint v0,
6913 GLuint v1,
6914 GLuint v2,
6915 GLuint v3) {
6916 driver_->fn.glUniform4uiFn(location, v0, v1, v2, v3);
6917 }
6918
6919 void GLApiBase::glUniform4uivFn(GLint location,
6920 GLsizei count,
6921 const GLuint* v) {
6922 driver_->fn.glUniform4uivFn(location, count, v);
6923 }
6924
6925 void GLApiBase::glUniformBlockBindingFn(GLuint program,
6926 GLuint uniformBlockIndex,
6927 GLuint uniformBlockBinding) {
6928 driver_->fn.glUniformBlockBindingFn(program, uniformBlockIndex,
6929 uniformBlockBinding);
6930 }
6931
6932 void GLApiBase::glUniformMatrix2fvFn(GLint location,
6933 GLsizei count,
6934 GLboolean transpose,
6935 const GLfloat* value) {
6936 driver_->fn.glUniformMatrix2fvFn(location, count, transpose, value);
6937 }
6938
6939 void GLApiBase::glUniformMatrix2x3fvFn(GLint location,
6940 GLsizei count,
6941 GLboolean transpose,
6942 const GLfloat* value) {
6943 driver_->fn.glUniformMatrix2x3fvFn(location, count, transpose, value);
6944 }
6945
6946 void GLApiBase::glUniformMatrix2x4fvFn(GLint location,
6947 GLsizei count,
6948 GLboolean transpose,
6949 const GLfloat* value) {
6950 driver_->fn.glUniformMatrix2x4fvFn(location, count, transpose, value);
6951 }
6952
6953 void GLApiBase::glUniformMatrix3fvFn(GLint location,
6954 GLsizei count,
6955 GLboolean transpose,
6956 const GLfloat* value) {
6957 driver_->fn.glUniformMatrix3fvFn(location, count, transpose, value);
6958 }
6959
6960 void GLApiBase::glUniformMatrix3x2fvFn(GLint location,
6961 GLsizei count,
6962 GLboolean transpose,
6963 const GLfloat* value) {
6964 driver_->fn.glUniformMatrix3x2fvFn(location, count, transpose, value);
6965 }
6966
6967 void GLApiBase::glUniformMatrix3x4fvFn(GLint location,
6968 GLsizei count,
6969 GLboolean transpose,
6970 const GLfloat* value) {
6971 driver_->fn.glUniformMatrix3x4fvFn(location, count, transpose, value);
6972 }
6973
6974 void GLApiBase::glUniformMatrix4fvFn(GLint location,
6975 GLsizei count,
6976 GLboolean transpose,
6977 const GLfloat* value) {
6978 driver_->fn.glUniformMatrix4fvFn(location, count, transpose, value);
6979 }
6980
6981 void GLApiBase::glUniformMatrix4x2fvFn(GLint location,
6982 GLsizei count,
6983 GLboolean transpose,
6984 const GLfloat* value) {
6985 driver_->fn.glUniformMatrix4x2fvFn(location, count, transpose, value);
6986 }
6987
6988 void GLApiBase::glUniformMatrix4x3fvFn(GLint location,
6989 GLsizei count,
6990 GLboolean transpose,
6991 const GLfloat* value) {
6992 driver_->fn.glUniformMatrix4x3fvFn(location, count, transpose, value);
6993 }
6994
6995 GLboolean GLApiBase::glUnmapBufferFn(GLenum target) {
6996 return driver_->fn.glUnmapBufferFn(target);
6997 }
6998
6999 void GLApiBase::glUseProgramFn(GLuint program) {
7000 driver_->fn.glUseProgramFn(program);
7001 }
7002
7003 void GLApiBase::glValidateProgramFn(GLuint program) {
7004 driver_->fn.glValidateProgramFn(program);
7005 }
7006
7007 void GLApiBase::glVertexAttrib1fFn(GLuint indx, GLfloat x) {
7008 driver_->fn.glVertexAttrib1fFn(indx, x);
7009 }
7010
7011 void GLApiBase::glVertexAttrib1fvFn(GLuint indx, const GLfloat* values) {
7012 driver_->fn.glVertexAttrib1fvFn(indx, values);
7013 }
7014
7015 void GLApiBase::glVertexAttrib2fFn(GLuint indx, GLfloat x, GLfloat y) {
7016 driver_->fn.glVertexAttrib2fFn(indx, x, y);
7017 }
7018
7019 void GLApiBase::glVertexAttrib2fvFn(GLuint indx, const GLfloat* values) {
7020 driver_->fn.glVertexAttrib2fvFn(indx, values);
7021 }
7022
7023 void GLApiBase::glVertexAttrib3fFn(GLuint indx,
7024 GLfloat x,
7025 GLfloat y,
7026 GLfloat z) {
7027 driver_->fn.glVertexAttrib3fFn(indx, x, y, z);
7028 }
7029
7030 void GLApiBase::glVertexAttrib3fvFn(GLuint indx, const GLfloat* values) {
7031 driver_->fn.glVertexAttrib3fvFn(indx, values);
7032 }
7033
7034 void GLApiBase::glVertexAttrib4fFn(GLuint indx,
7035 GLfloat x,
7036 GLfloat y,
7037 GLfloat z,
7038 GLfloat w) {
7039 driver_->fn.glVertexAttrib4fFn(indx, x, y, z, w);
7040 }
7041
7042 void GLApiBase::glVertexAttrib4fvFn(GLuint indx, const GLfloat* values) {
7043 driver_->fn.glVertexAttrib4fvFn(indx, values);
7044 }
7045
7046 void GLApiBase::glVertexAttribDivisorANGLEFn(GLuint index, GLuint divisor) {
7047 driver_->fn.glVertexAttribDivisorANGLEFn(index, divisor);
7048 }
7049
7050 void GLApiBase::glVertexAttribI4iFn(GLuint indx,
7051 GLint x,
7052 GLint y,
7053 GLint z,
7054 GLint w) {
7055 driver_->fn.glVertexAttribI4iFn(indx, x, y, z, w);
7056 }
7057
7058 void GLApiBase::glVertexAttribI4ivFn(GLuint indx, const GLint* values) {
7059 driver_->fn.glVertexAttribI4ivFn(indx, values);
7060 }
7061
7062 void GLApiBase::glVertexAttribI4uiFn(GLuint indx,
7063 GLuint x,
7064 GLuint y,
7065 GLuint z,
7066 GLuint w) {
7067 driver_->fn.glVertexAttribI4uiFn(indx, x, y, z, w);
7068 }
7069
7070 void GLApiBase::glVertexAttribI4uivFn(GLuint indx, const GLuint* values) {
7071 driver_->fn.glVertexAttribI4uivFn(indx, values);
7072 }
7073
7074 void GLApiBase::glVertexAttribIPointerFn(GLuint indx,
7075 GLint size,
7076 GLenum type,
7077 GLsizei stride,
7078 const void* ptr) {
7079 driver_->fn.glVertexAttribIPointerFn(indx, size, type, stride, ptr);
7080 }
7081
7082 void GLApiBase::glVertexAttribPointerFn(GLuint indx,
7083 GLint size,
7084 GLenum type,
7085 GLboolean normalized,
7086 GLsizei stride,
7087 const void* ptr) {
7088 driver_->fn.glVertexAttribPointerFn(indx, size, type, normalized, stride,
7089 ptr);
7090 }
7091
7092 void GLApiBase::glViewportFn(GLint x, GLint y, GLsizei width, GLsizei height) {
7093 driver_->fn.glViewportFn(x, y, width, height);
7094 }
7095
7096 GLenum GLApiBase::glWaitSyncFn(GLsync sync,
7097 GLbitfield flags,
7098 GLuint64 timeout) {
7099 return driver_->fn.glWaitSyncFn(sync, flags, timeout);
7100 }
7101
7102 void TraceGLApi::glActiveTextureFn(GLenum texture) {
7103 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glActiveTexture")
7104 gl_api_->glActiveTextureFn(texture);
7105 }
7106
7107 void TraceGLApi::glAttachShaderFn(GLuint program, GLuint shader) {
7108 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glAttachShader")
7109 gl_api_->glAttachShaderFn(program, shader);
7110 }
7111
7112 void TraceGLApi::glBeginQueryFn(GLenum target, GLuint id) {
7113 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBeginQuery")
7114 gl_api_->glBeginQueryFn(target, id);
7115 }
7116
7117 void TraceGLApi::glBeginQueryARBFn(GLenum target, GLuint id) {
7118 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBeginQueryARB")
7119 gl_api_->glBeginQueryARBFn(target, id);
7120 }
7121
7122 void TraceGLApi::glBeginTransformFeedbackFn(GLenum primitiveMode) {
7123 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBeginTransformFeedback")
7124 gl_api_->glBeginTransformFeedbackFn(primitiveMode);
7125 }
7126
7127 void TraceGLApi::glBindAttribLocationFn(GLuint program,
7128 GLuint index,
7129 const char* name) {
7130 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBindAttribLocation")
7131 gl_api_->glBindAttribLocationFn(program, index, name);
7132 }
7133
7134 void TraceGLApi::glBindBufferFn(GLenum target, GLuint buffer) {
7135 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBindBuffer")
7136 gl_api_->glBindBufferFn(target, buffer);
7137 }
7138
7139 void TraceGLApi::glBindBufferBaseFn(GLenum target,
7140 GLuint index,
7141 GLuint buffer) {
7142 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBindBufferBase")
7143 gl_api_->glBindBufferBaseFn(target, index, buffer);
7144 }
7145
7146 void TraceGLApi::glBindBufferRangeFn(GLenum target,
7147 GLuint index,
7148 GLuint buffer,
7149 GLintptr offset,
7150 GLsizeiptr size) {
7151 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBindBufferRange")
7152 gl_api_->glBindBufferRangeFn(target, index, buffer, offset, size);
7153 }
7154
7155 void TraceGLApi::glBindFragDataLocationFn(GLuint program,
7156 GLuint colorNumber,
7157 const char* name) {
7158 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBindFragDataLocation")
7159 gl_api_->glBindFragDataLocationFn(program, colorNumber, name);
7160 }
7161
7162 void TraceGLApi::glBindFragDataLocationIndexedFn(GLuint program,
7163 GLuint colorNumber,
7164 GLuint index,
7165 const char* name) {
7166 TRACE_EVENT_BINARY_EFFICIENT0("gpu",
7167 "TraceGLAPI::glBindFragDataLocationIndexed")
7168 gl_api_->glBindFragDataLocationIndexedFn(program, colorNumber, index, name);
7169 }
7170
7171 void TraceGLApi::glBindFramebufferEXTFn(GLenum target, GLuint framebuffer) {
7172 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBindFramebufferEXT")
7173 gl_api_->glBindFramebufferEXTFn(target, framebuffer);
7174 }
7175
7176 void TraceGLApi::glBindRenderbufferEXTFn(GLenum target, GLuint renderbuffer) {
7177 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBindRenderbufferEXT")
7178 gl_api_->glBindRenderbufferEXTFn(target, renderbuffer);
7179 }
7180
7181 void TraceGLApi::glBindSamplerFn(GLuint unit, GLuint sampler) {
7182 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBindSampler")
7183 gl_api_->glBindSamplerFn(unit, sampler);
7184 }
7185
7186 void TraceGLApi::glBindTextureFn(GLenum target, GLuint texture) {
7187 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBindTexture")
7188 gl_api_->glBindTextureFn(target, texture);
7189 }
7190
7191 void TraceGLApi::glBindTransformFeedbackFn(GLenum target, GLuint id) {
7192 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBindTransformFeedback")
7193 gl_api_->glBindTransformFeedbackFn(target, id);
7194 }
7195
7196 void TraceGLApi::glBindVertexArrayOESFn(GLuint array) {
7197 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBindVertexArrayOES")
7198 gl_api_->glBindVertexArrayOESFn(array);
7199 }
7200
7201 void TraceGLApi::glBlendBarrierKHRFn(void) {
7202 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBlendBarrierKHR")
7203 gl_api_->glBlendBarrierKHRFn();
7204 }
7205
7206 void TraceGLApi::glBlendColorFn(GLclampf red,
7207 GLclampf green,
7208 GLclampf blue,
7209 GLclampf alpha) {
7210 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBlendColor")
7211 gl_api_->glBlendColorFn(red, green, blue, alpha);
7212 }
7213
7214 void TraceGLApi::glBlendEquationFn(GLenum mode) {
7215 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBlendEquation")
7216 gl_api_->glBlendEquationFn(mode);
7217 }
7218
7219 void TraceGLApi::glBlendEquationSeparateFn(GLenum modeRGB, GLenum modeAlpha) {
7220 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBlendEquationSeparate")
7221 gl_api_->glBlendEquationSeparateFn(modeRGB, modeAlpha);
7222 }
7223
7224 void TraceGLApi::glBlendFuncFn(GLenum sfactor, GLenum dfactor) {
7225 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBlendFunc")
7226 gl_api_->glBlendFuncFn(sfactor, dfactor);
7227 }
7228
7229 void TraceGLApi::glBlendFuncSeparateFn(GLenum srcRGB,
7230 GLenum dstRGB,
7231 GLenum srcAlpha,
7232 GLenum dstAlpha) {
7233 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBlendFuncSeparate")
7234 gl_api_->glBlendFuncSeparateFn(srcRGB, dstRGB, srcAlpha, dstAlpha);
7235 }
7236
7237 void TraceGLApi::glBlitFramebufferFn(GLint srcX0,
7238 GLint srcY0,
7239 GLint srcX1,
7240 GLint srcY1,
7241 GLint dstX0,
7242 GLint dstY0,
7243 GLint dstX1,
7244 GLint dstY1,
7245 GLbitfield mask,
7246 GLenum filter) {
7247 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBlitFramebuffer")
7248 gl_api_->glBlitFramebufferFn(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1,
7249 dstY1, mask, filter);
7250 }
7251
7252 void TraceGLApi::glBlitFramebufferANGLEFn(GLint srcX0,
7253 GLint srcY0,
7254 GLint srcX1,
7255 GLint srcY1,
7256 GLint dstX0,
7257 GLint dstY0,
7258 GLint dstX1,
7259 GLint dstY1,
7260 GLbitfield mask,
7261 GLenum filter) {
7262 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBlitFramebufferANGLE")
7263 gl_api_->glBlitFramebufferANGLEFn(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0,
7264 dstX1, dstY1, mask, filter);
7265 }
7266
7267 void TraceGLApi::glBlitFramebufferEXTFn(GLint srcX0,
7268 GLint srcY0,
7269 GLint srcX1,
7270 GLint srcY1,
7271 GLint dstX0,
7272 GLint dstY0,
7273 GLint dstX1,
7274 GLint dstY1,
7275 GLbitfield mask,
7276 GLenum filter) {
7277 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBlitFramebufferEXT")
7278 gl_api_->glBlitFramebufferEXTFn(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0,
7279 dstX1, dstY1, mask, filter);
7280 }
7281
7282 void TraceGLApi::glBufferDataFn(GLenum target,
7283 GLsizeiptr size,
7284 const void* data,
7285 GLenum usage) {
7286 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBufferData")
7287 gl_api_->glBufferDataFn(target, size, data, usage);
7288 }
7289
7290 void TraceGLApi::glBufferSubDataFn(GLenum target,
7291 GLintptr offset,
7292 GLsizeiptr size,
7293 const void* data) {
7294 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBufferSubData")
7295 gl_api_->glBufferSubDataFn(target, offset, size, data);
7296 }
7297
7298 GLenum TraceGLApi::glCheckFramebufferStatusEXTFn(GLenum target) {
7299 TRACE_EVENT_BINARY_EFFICIENT0("gpu",
7300 "TraceGLAPI::glCheckFramebufferStatusEXT")
7301 return gl_api_->glCheckFramebufferStatusEXTFn(target);
7302 }
7303
7304 void TraceGLApi::glClearFn(GLbitfield mask) {
7305 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glClear")
7306 gl_api_->glClearFn(mask);
7307 }
7308
7309 void TraceGLApi::glClearBufferfiFn(GLenum buffer,
7310 GLint drawbuffer,
7311 const GLfloat depth,
7312 GLint stencil) {
7313 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glClearBufferfi")
7314 gl_api_->glClearBufferfiFn(buffer, drawbuffer, depth, stencil);
7315 }
7316
7317 void TraceGLApi::glClearBufferfvFn(GLenum buffer,
7318 GLint drawbuffer,
7319 const GLfloat* value) {
7320 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glClearBufferfv")
7321 gl_api_->glClearBufferfvFn(buffer, drawbuffer, value);
7322 }
7323
7324 void TraceGLApi::glClearBufferivFn(GLenum buffer,
7325 GLint drawbuffer,
7326 const GLint* value) {
7327 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glClearBufferiv")
7328 gl_api_->glClearBufferivFn(buffer, drawbuffer, value);
7329 }
7330
7331 void TraceGLApi::glClearBufferuivFn(GLenum buffer,
7332 GLint drawbuffer,
7333 const GLuint* value) {
7334 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glClearBufferuiv")
7335 gl_api_->glClearBufferuivFn(buffer, drawbuffer, value);
7336 }
7337
7338 void TraceGLApi::glClearColorFn(GLclampf red,
7339 GLclampf green,
7340 GLclampf blue,
7341 GLclampf alpha) {
7342 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glClearColor")
7343 gl_api_->glClearColorFn(red, green, blue, alpha);
7344 }
7345
7346 void TraceGLApi::glClearDepthFn(GLclampd depth) {
7347 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glClearDepth")
7348 gl_api_->glClearDepthFn(depth);
7349 }
7350
7351 void TraceGLApi::glClearDepthfFn(GLclampf depth) {
7352 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glClearDepthf")
7353 gl_api_->glClearDepthfFn(depth);
7354 }
7355
7356 void TraceGLApi::glClearStencilFn(GLint s) {
7357 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glClearStencil")
7358 gl_api_->glClearStencilFn(s);
7359 }
7360
7361 GLenum TraceGLApi::glClientWaitSyncFn(GLsync sync,
7362 GLbitfield flags,
7363 GLuint64 timeout) {
7364 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glClientWaitSync")
7365 return gl_api_->glClientWaitSyncFn(sync, flags, timeout);
7366 }
7367
7368 void TraceGLApi::glColorMaskFn(GLboolean red,
7369 GLboolean green,
7370 GLboolean blue,
7371 GLboolean alpha) {
7372 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glColorMask")
7373 gl_api_->glColorMaskFn(red, green, blue, alpha);
7374 }
7375
7376 void TraceGLApi::glCompileShaderFn(GLuint shader) {
7377 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glCompileShader")
7378 gl_api_->glCompileShaderFn(shader);
7379 }
7380
7381 void TraceGLApi::glCompressedTexImage2DFn(GLenum target,
7382 GLint level,
7383 GLenum internalformat,
7384 GLsizei width,
7385 GLsizei height,
7386 GLint border,
7387 GLsizei imageSize,
7388 const void* data) {
7389 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glCompressedTexImage2D")
7390 gl_api_->glCompressedTexImage2DFn(target, level, internalformat, width,
7391 height, border, imageSize, data);
7392 }
7393
7394 void TraceGLApi::glCompressedTexImage3DFn(GLenum target,
7395 GLint level,
7396 GLenum internalformat,
7397 GLsizei width,
7398 GLsizei height,
7399 GLsizei depth,
7400 GLint border,
7401 GLsizei imageSize,
7402 const void* data) {
7403 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glCompressedTexImage3D")
7404 gl_api_->glCompressedTexImage3DFn(target, level, internalformat, width,
7405 height, depth, border, imageSize, data);
7406 }
7407
7408 void TraceGLApi::glCompressedTexSubImage2DFn(GLenum target,
7409 GLint level,
7410 GLint xoffset,
7411 GLint yoffset,
7412 GLsizei width,
7413 GLsizei height,
7414 GLenum format,
7415 GLsizei imageSize,
7416 const void* data) {
7417 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glCompressedTexSubImage2D")
7418 gl_api_->glCompressedTexSubImage2DFn(target, level, xoffset, yoffset, width,
7419 height, format, imageSize, data);
7420 }
7421
7422 void TraceGLApi::glCopyBufferSubDataFn(GLenum readTarget,
7423 GLenum writeTarget,
7424 GLintptr readOffset,
7425 GLintptr writeOffset,
7426 GLsizeiptr size) {
7427 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glCopyBufferSubData")
7428 gl_api_->glCopyBufferSubDataFn(readTarget, writeTarget, readOffset,
7429 writeOffset, size);
7430 }
7431
7432 void TraceGLApi::glCopyTexImage2DFn(GLenum target,
7433 GLint level,
7434 GLenum internalformat,
7435 GLint x,
7436 GLint y,
7437 GLsizei width,
7438 GLsizei height,
7439 GLint border) {
7440 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glCopyTexImage2D")
7441 gl_api_->glCopyTexImage2DFn(target, level, internalformat, x, y, width,
7442 height, border);
7443 }
7444
7445 void TraceGLApi::glCopyTexSubImage2DFn(GLenum target,
7446 GLint level,
7447 GLint xoffset,
7448 GLint yoffset,
7449 GLint x,
7450 GLint y,
7451 GLsizei width,
7452 GLsizei height) {
7453 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glCopyTexSubImage2D")
7454 gl_api_->glCopyTexSubImage2DFn(target, level, xoffset, yoffset, x, y, width,
7455 height);
7456 }
7457
7458 void TraceGLApi::glCopyTexSubImage3DFn(GLenum target,
7459 GLint level,
7460 GLint xoffset,
7461 GLint yoffset,
7462 GLint zoffset,
7463 GLint x,
7464 GLint y,
7465 GLsizei width,
7466 GLsizei height) {
7467 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glCopyTexSubImage3D")
7468 gl_api_->glCopyTexSubImage3DFn(target, level, xoffset, yoffset, zoffset, x, y,
7469 width, height);
7470 }
7471
7472 GLuint TraceGLApi::glCreateProgramFn(void) {
7473 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glCreateProgram")
7474 return gl_api_->glCreateProgramFn();
7475 }
7476
7477 GLuint TraceGLApi::glCreateShaderFn(GLenum type) {
7478 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glCreateShader")
7479 return gl_api_->glCreateShaderFn(type);
7480 }
7481
7482 void TraceGLApi::glCullFaceFn(GLenum mode) {
7483 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glCullFace")
7484 gl_api_->glCullFaceFn(mode);
7485 }
7486
7487 void TraceGLApi::glDeleteBuffersARBFn(GLsizei n, const GLuint* buffers) {
7488 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDeleteBuffersARB")
7489 gl_api_->glDeleteBuffersARBFn(n, buffers);
7490 }
7491
7492 void TraceGLApi::glDeleteFencesAPPLEFn(GLsizei n, const GLuint* fences) {
7493 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDeleteFencesAPPLE")
7494 gl_api_->glDeleteFencesAPPLEFn(n, fences);
7495 }
7496
7497 void TraceGLApi::glDeleteFencesNVFn(GLsizei n, const GLuint* fences) {
7498 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDeleteFencesNV")
7499 gl_api_->glDeleteFencesNVFn(n, fences);
7500 }
7501
7502 void TraceGLApi::glDeleteFramebuffersEXTFn(GLsizei n,
7503 const GLuint* framebuffers) {
7504 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDeleteFramebuffersEXT")
7505 gl_api_->glDeleteFramebuffersEXTFn(n, framebuffers);
7506 }
7507
7508 void TraceGLApi::glDeleteProgramFn(GLuint program) {
7509 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDeleteProgram")
7510 gl_api_->glDeleteProgramFn(program);
7511 }
7512
7513 void TraceGLApi::glDeleteQueriesFn(GLsizei n, const GLuint* ids) {
7514 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDeleteQueries")
7515 gl_api_->glDeleteQueriesFn(n, ids);
7516 }
7517
7518 void TraceGLApi::glDeleteQueriesARBFn(GLsizei n, const GLuint* ids) {
7519 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDeleteQueriesARB")
7520 gl_api_->glDeleteQueriesARBFn(n, ids);
7521 }
7522
7523 void TraceGLApi::glDeleteRenderbuffersEXTFn(GLsizei n,
7524 const GLuint* renderbuffers) {
7525 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDeleteRenderbuffersEXT")
7526 gl_api_->glDeleteRenderbuffersEXTFn(n, renderbuffers);
7527 }
7528
7529 void TraceGLApi::glDeleteSamplersFn(GLsizei n, const GLuint* samplers) {
7530 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDeleteSamplers")
7531 gl_api_->glDeleteSamplersFn(n, samplers);
7532 }
7533
7534 void TraceGLApi::glDeleteShaderFn(GLuint shader) {
7535 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDeleteShader")
7536 gl_api_->glDeleteShaderFn(shader);
7537 }
7538
7539 void TraceGLApi::glDeleteSyncFn(GLsync sync) {
7540 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDeleteSync")
7541 gl_api_->glDeleteSyncFn(sync);
7542 }
7543
7544 void TraceGLApi::glDeleteTexturesFn(GLsizei n, const GLuint* textures) {
7545 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDeleteTextures")
7546 gl_api_->glDeleteTexturesFn(n, textures);
7547 }
7548
7549 void TraceGLApi::glDeleteTransformFeedbacksFn(GLsizei n, const GLuint* ids) {
7550 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDeleteTransformFeedbacks")
7551 gl_api_->glDeleteTransformFeedbacksFn(n, ids);
7552 }
7553
7554 void TraceGLApi::glDeleteVertexArraysOESFn(GLsizei n, const GLuint* arrays) {
7555 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDeleteVertexArraysOES")
7556 gl_api_->glDeleteVertexArraysOESFn(n, arrays);
7557 }
7558
7559 void TraceGLApi::glDepthFuncFn(GLenum func) {
7560 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDepthFunc")
7561 gl_api_->glDepthFuncFn(func);
7562 }
7563
7564 void TraceGLApi::glDepthMaskFn(GLboolean flag) {
7565 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDepthMask")
7566 gl_api_->glDepthMaskFn(flag);
7567 }
7568
7569 void TraceGLApi::glDepthRangeFn(GLclampd zNear, GLclampd zFar) {
7570 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDepthRange")
7571 gl_api_->glDepthRangeFn(zNear, zFar);
7572 }
7573
7574 void TraceGLApi::glDepthRangefFn(GLclampf zNear, GLclampf zFar) {
7575 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDepthRangef")
7576 gl_api_->glDepthRangefFn(zNear, zFar);
7577 }
7578
7579 void TraceGLApi::glDetachShaderFn(GLuint program, GLuint shader) {
7580 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDetachShader")
7581 gl_api_->glDetachShaderFn(program, shader);
7582 }
7583
7584 void TraceGLApi::glDisableFn(GLenum cap) {
7585 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDisable")
7586 gl_api_->glDisableFn(cap);
7587 }
7588
7589 void TraceGLApi::glDisableVertexAttribArrayFn(GLuint index) {
7590 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDisableVertexAttribArray")
7591 gl_api_->glDisableVertexAttribArrayFn(index);
7592 }
7593
7594 void TraceGLApi::glDiscardFramebufferEXTFn(GLenum target,
7595 GLsizei numAttachments,
7596 const GLenum* attachments) {
7597 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDiscardFramebufferEXT")
7598 gl_api_->glDiscardFramebufferEXTFn(target, numAttachments, attachments);
7599 }
7600
7601 void TraceGLApi::glDrawArraysFn(GLenum mode, GLint first, GLsizei count) {
7602 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDrawArrays")
7603 gl_api_->glDrawArraysFn(mode, first, count);
7604 }
7605
7606 void TraceGLApi::glDrawArraysInstancedANGLEFn(GLenum mode,
7607 GLint first,
7608 GLsizei count,
7609 GLsizei primcount) {
7610 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDrawArraysInstancedANGLE")
7611 gl_api_->glDrawArraysInstancedANGLEFn(mode, first, count, primcount);
7612 }
7613
7614 void TraceGLApi::glDrawBufferFn(GLenum mode) {
7615 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDrawBuffer")
7616 gl_api_->glDrawBufferFn(mode);
7617 }
7618
7619 void TraceGLApi::glDrawBuffersARBFn(GLsizei n, const GLenum* bufs) {
7620 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDrawBuffersARB")
7621 gl_api_->glDrawBuffersARBFn(n, bufs);
7622 }
7623
7624 void TraceGLApi::glDrawElementsFn(GLenum mode,
7625 GLsizei count,
7626 GLenum type,
7627 const void* indices) {
7628 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDrawElements")
7629 gl_api_->glDrawElementsFn(mode, count, type, indices);
7630 }
7631
7632 void TraceGLApi::glDrawElementsInstancedANGLEFn(GLenum mode,
7633 GLsizei count,
7634 GLenum type,
7635 const void* indices,
7636 GLsizei primcount) {
7637 TRACE_EVENT_BINARY_EFFICIENT0("gpu",
7638 "TraceGLAPI::glDrawElementsInstancedANGLE")
7639 gl_api_->glDrawElementsInstancedANGLEFn(mode, count, type, indices,
7640 primcount);
7641 }
7642
7643 void TraceGLApi::glDrawRangeElementsFn(GLenum mode,
7644 GLuint start,
7645 GLuint end,
7646 GLsizei count,
7647 GLenum type,
7648 const void* indices) {
7649 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDrawRangeElements")
7650 gl_api_->glDrawRangeElementsFn(mode, start, end, count, type, indices);
7651 }
7652
7653 void TraceGLApi::glEGLImageTargetRenderbufferStorageOESFn(GLenum target,
7654 GLeglImageOES image) {
7655 TRACE_EVENT_BINARY_EFFICIENT0(
7656 "gpu", "TraceGLAPI::glEGLImageTargetRenderbufferStorageOES")
7657 gl_api_->glEGLImageTargetRenderbufferStorageOESFn(target, image);
7658 }
7659
7660 void TraceGLApi::glEGLImageTargetTexture2DOESFn(GLenum target,
7661 GLeglImageOES image) {
7662 TRACE_EVENT_BINARY_EFFICIENT0("gpu",
7663 "TraceGLAPI::glEGLImageTargetTexture2DOES")
7664 gl_api_->glEGLImageTargetTexture2DOESFn(target, image);
7665 }
7666
7667 void TraceGLApi::glEnableFn(GLenum cap) {
7668 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glEnable")
7669 gl_api_->glEnableFn(cap);
7670 }
7671
7672 void TraceGLApi::glEnableVertexAttribArrayFn(GLuint index) {
7673 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glEnableVertexAttribArray")
7674 gl_api_->glEnableVertexAttribArrayFn(index);
7675 }
7676
7677 void TraceGLApi::glEndQueryFn(GLenum target) {
7678 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glEndQuery")
7679 gl_api_->glEndQueryFn(target);
7680 }
7681
7682 void TraceGLApi::glEndQueryARBFn(GLenum target) {
7683 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glEndQueryARB")
7684 gl_api_->glEndQueryARBFn(target);
7685 }
7686
7687 void TraceGLApi::glEndTransformFeedbackFn(void) {
7688 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glEndTransformFeedback")
7689 gl_api_->glEndTransformFeedbackFn();
7690 }
7691
7692 GLsync TraceGLApi::glFenceSyncFn(GLenum condition, GLbitfield flags) {
7693 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glFenceSync")
7694 return gl_api_->glFenceSyncFn(condition, flags);
7695 }
7696
7697 void TraceGLApi::glFinishFn(void) {
7698 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glFinish")
7699 gl_api_->glFinishFn();
7700 }
7701
7702 void TraceGLApi::glFinishFenceAPPLEFn(GLuint fence) {
7703 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glFinishFenceAPPLE")
7704 gl_api_->glFinishFenceAPPLEFn(fence);
7705 }
7706
7707 void TraceGLApi::glFinishFenceNVFn(GLuint fence) {
7708 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glFinishFenceNV")
7709 gl_api_->glFinishFenceNVFn(fence);
7710 }
7711
7712 void TraceGLApi::glFlushFn(void) {
7713 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glFlush")
7714 gl_api_->glFlushFn();
7715 }
7716
7717 void TraceGLApi::glFlushMappedBufferRangeFn(GLenum target,
7718 GLintptr offset,
7719 GLsizeiptr length) {
7720 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glFlushMappedBufferRange")
7721 gl_api_->glFlushMappedBufferRangeFn(target, offset, length);
7722 }
7723
7724 void TraceGLApi::glFramebufferRenderbufferEXTFn(GLenum target,
7725 GLenum attachment,
7726 GLenum renderbuffertarget,
7727 GLuint renderbuffer) {
7728 TRACE_EVENT_BINARY_EFFICIENT0("gpu",
7729 "TraceGLAPI::glFramebufferRenderbufferEXT")
7730 gl_api_->glFramebufferRenderbufferEXTFn(target, attachment,
7731 renderbuffertarget, renderbuffer);
7732 }
7733
7734 void TraceGLApi::glFramebufferTexture2DEXTFn(GLenum target,
7735 GLenum attachment,
7736 GLenum textarget,
7737 GLuint texture,
7738 GLint level) {
7739 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glFramebufferTexture2DEXT")
7740 gl_api_->glFramebufferTexture2DEXTFn(target, attachment, textarget, texture,
7741 level);
7742 }
7743
7744 void TraceGLApi::glFramebufferTexture2DMultisampleEXTFn(GLenum target,
7745 GLenum attachment,
7746 GLenum textarget,
7747 GLuint texture,
7748 GLint level,
7749 GLsizei samples) {
7750 TRACE_EVENT_BINARY_EFFICIENT0(
7751 "gpu", "TraceGLAPI::glFramebufferTexture2DMultisampleEXT")
7752 gl_api_->glFramebufferTexture2DMultisampleEXTFn(target, attachment, textarget,
7753 texture, level, samples);
7754 }
7755
7756 void TraceGLApi::glFramebufferTexture2DMultisampleIMGFn(GLenum target,
7757 GLenum attachment,
7758 GLenum textarget,
7759 GLuint texture,
7760 GLint level,
7761 GLsizei samples) {
7762 TRACE_EVENT_BINARY_EFFICIENT0(
7763 "gpu", "TraceGLAPI::glFramebufferTexture2DMultisampleIMG")
7764 gl_api_->glFramebufferTexture2DMultisampleIMGFn(target, attachment, textarget,
7765 texture, level, samples);
7766 }
7767
7768 void TraceGLApi::glFramebufferTextureLayerFn(GLenum target,
7769 GLenum attachment,
7770 GLuint texture,
7771 GLint level,
7772 GLint layer) {
7773 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glFramebufferTextureLayer")
7774 gl_api_->glFramebufferTextureLayerFn(target, attachment, texture, level,
7775 layer);
7776 }
7777
7778 void TraceGLApi::glFrontFaceFn(GLenum mode) {
7779 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glFrontFace")
7780 gl_api_->glFrontFaceFn(mode);
7781 }
7782
7783 void TraceGLApi::glGenBuffersARBFn(GLsizei n, GLuint* buffers) {
7784 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGenBuffersARB")
7785 gl_api_->glGenBuffersARBFn(n, buffers);
7786 }
7787
7788 void TraceGLApi::glGenerateMipmapEXTFn(GLenum target) {
7789 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGenerateMipmapEXT")
7790 gl_api_->glGenerateMipmapEXTFn(target);
7791 }
7792
7793 void TraceGLApi::glGenFencesAPPLEFn(GLsizei n, GLuint* fences) {
7794 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGenFencesAPPLE")
7795 gl_api_->glGenFencesAPPLEFn(n, fences);
7796 }
7797
7798 void TraceGLApi::glGenFencesNVFn(GLsizei n, GLuint* fences) {
7799 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGenFencesNV")
7800 gl_api_->glGenFencesNVFn(n, fences);
7801 }
7802
7803 void TraceGLApi::glGenFramebuffersEXTFn(GLsizei n, GLuint* framebuffers) {
7804 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGenFramebuffersEXT")
7805 gl_api_->glGenFramebuffersEXTFn(n, framebuffers);
7806 }
7807
7808 void TraceGLApi::glGenQueriesFn(GLsizei n, GLuint* ids) {
7809 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGenQueries")
7810 gl_api_->glGenQueriesFn(n, ids);
7811 }
7812
7813 void TraceGLApi::glGenQueriesARBFn(GLsizei n, GLuint* ids) {
7814 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGenQueriesARB")
7815 gl_api_->glGenQueriesARBFn(n, ids);
7816 }
7817
7818 void TraceGLApi::glGenRenderbuffersEXTFn(GLsizei n, GLuint* renderbuffers) {
7819 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGenRenderbuffersEXT")
7820 gl_api_->glGenRenderbuffersEXTFn(n, renderbuffers);
7821 }
7822
7823 void TraceGLApi::glGenSamplersFn(GLsizei n, GLuint* samplers) {
7824 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGenSamplers")
7825 gl_api_->glGenSamplersFn(n, samplers);
7826 }
7827
7828 void TraceGLApi::glGenTexturesFn(GLsizei n, GLuint* textures) {
7829 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGenTextures")
7830 gl_api_->glGenTexturesFn(n, textures);
7831 }
7832
7833 void TraceGLApi::glGenTransformFeedbacksFn(GLsizei n, GLuint* ids) {
7834 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGenTransformFeedbacks")
7835 gl_api_->glGenTransformFeedbacksFn(n, ids);
7836 }
7837
7838 void TraceGLApi::glGenVertexArraysOESFn(GLsizei n, GLuint* arrays) {
7839 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGenVertexArraysOES")
7840 gl_api_->glGenVertexArraysOESFn(n, arrays);
7841 }
7842
7843 void TraceGLApi::glGetActiveAttribFn(GLuint program,
7844 GLuint index,
7845 GLsizei bufsize,
7846 GLsizei* length,
7847 GLint* size,
7848 GLenum* type,
7849 char* name) {
7850 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetActiveAttrib")
7851 gl_api_->glGetActiveAttribFn(program, index, bufsize, length, size, type,
7852 name);
7853 }
7854
7855 void TraceGLApi::glGetActiveUniformFn(GLuint program,
7856 GLuint index,
7857 GLsizei bufsize,
7858 GLsizei* length,
7859 GLint* size,
7860 GLenum* type,
7861 char* name) {
7862 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetActiveUniform")
7863 gl_api_->glGetActiveUniformFn(program, index, bufsize, length, size, type,
7864 name);
7865 }
7866
7867 void TraceGLApi::glGetActiveUniformBlockivFn(GLuint program,
7868 GLuint uniformBlockIndex,
7869 GLenum pname,
7870 GLint* params) {
7871 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetActiveUniformBlockiv")
7872 gl_api_->glGetActiveUniformBlockivFn(program, uniformBlockIndex, pname,
7873 params);
7874 }
7875
7876 void TraceGLApi::glGetActiveUniformBlockNameFn(GLuint program,
7877 GLuint uniformBlockIndex,
7878 GLsizei bufSize,
7879 GLsizei* length,
7880 char* uniformBlockName) {
7881 TRACE_EVENT_BINARY_EFFICIENT0("gpu",
7882 "TraceGLAPI::glGetActiveUniformBlockName")
7883 gl_api_->glGetActiveUniformBlockNameFn(program, uniformBlockIndex, bufSize,
7884 length, uniformBlockName);
7885 }
7886
7887 void TraceGLApi::glGetActiveUniformsivFn(GLuint program,
7888 GLsizei uniformCount,
7889 const GLuint* uniformIndices,
7890 GLenum pname,
7891 GLint* params) {
7892 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetActiveUniformsiv")
7893 gl_api_->glGetActiveUniformsivFn(program, uniformCount, uniformIndices, pname,
7894 params);
7895 }
7896
7897 void TraceGLApi::glGetAttachedShadersFn(GLuint program,
7898 GLsizei maxcount,
7899 GLsizei* count,
7900 GLuint* shaders) {
7901 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetAttachedShaders")
7902 gl_api_->glGetAttachedShadersFn(program, maxcount, count, shaders);
7903 }
7904
7905 GLint TraceGLApi::glGetAttribLocationFn(GLuint program, const char* name) {
7906 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetAttribLocation")
7907 return gl_api_->glGetAttribLocationFn(program, name);
7908 }
7909
7910 void TraceGLApi::glGetBooleanvFn(GLenum pname, GLboolean* params) {
7911 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetBooleanv")
7912 gl_api_->glGetBooleanvFn(pname, params);
7913 }
7914
7915 void TraceGLApi::glGetBufferParameterivFn(GLenum target,
7916 GLenum pname,
7917 GLint* params) {
7918 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetBufferParameteriv")
7919 gl_api_->glGetBufferParameterivFn(target, pname, params);
7920 }
7921
7922 GLenum TraceGLApi::glGetErrorFn(void) {
7923 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetError")
7924 return gl_api_->glGetErrorFn();
7925 }
7926
7927 void TraceGLApi::glGetFenceivNVFn(GLuint fence, GLenum pname, GLint* params) {
7928 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetFenceivNV")
7929 gl_api_->glGetFenceivNVFn(fence, pname, params);
7930 }
7931
7932 void TraceGLApi::glGetFloatvFn(GLenum pname, GLfloat* params) {
7933 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetFloatv")
7934 gl_api_->glGetFloatvFn(pname, params);
7935 }
7936
7937 GLint TraceGLApi::glGetFragDataLocationFn(GLuint program, const char* name) {
7938 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetFragDataLocation")
7939 return gl_api_->glGetFragDataLocationFn(program, name);
7940 }
7941
7942 void TraceGLApi::glGetFramebufferAttachmentParameterivEXTFn(GLenum target,
7943 GLenum attachment,
7944 GLenum pname,
7945 GLint* params) {
7946 TRACE_EVENT_BINARY_EFFICIENT0(
7947 "gpu", "TraceGLAPI::glGetFramebufferAttachmentParameterivEXT")
7948 gl_api_->glGetFramebufferAttachmentParameterivEXTFn(target, attachment, pname,
7949 params);
7950 }
7951
7952 GLenum TraceGLApi::glGetGraphicsResetStatusARBFn(void) {
7953 TRACE_EVENT_BINARY_EFFICIENT0("gpu",
7954 "TraceGLAPI::glGetGraphicsResetStatusARB")
7955 return gl_api_->glGetGraphicsResetStatusARBFn();
7956 }
7957
7958 void TraceGLApi::glGetInteger64i_vFn(GLenum target,
7959 GLuint index,
7960 GLint64* data) {
7961 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetInteger64i_v")
7962 gl_api_->glGetInteger64i_vFn(target, index, data);
7963 }
7964
7965 void TraceGLApi::glGetInteger64vFn(GLenum pname, GLint64* params) {
7966 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetInteger64v")
7967 gl_api_->glGetInteger64vFn(pname, params);
7968 }
7969
7970 void TraceGLApi::glGetIntegeri_vFn(GLenum target, GLuint index, GLint* data) {
7971 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetIntegeri_v")
7972 gl_api_->glGetIntegeri_vFn(target, index, data);
7973 }
7974
7975 void TraceGLApi::glGetIntegervFn(GLenum pname, GLint* params) {
7976 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetIntegerv")
7977 gl_api_->glGetIntegervFn(pname, params);
7978 }
7979
7980 void TraceGLApi::glGetInternalformativFn(GLenum target,
7981 GLenum internalformat,
7982 GLenum pname,
7983 GLsizei bufSize,
7984 GLint* params) {
7985 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetInternalformativ")
7986 gl_api_->glGetInternalformativFn(target, internalformat, pname, bufSize,
7987 params);
7988 }
7989
7990 void TraceGLApi::glGetProgramBinaryFn(GLuint program,
7991 GLsizei bufSize,
7992 GLsizei* length,
7993 GLenum* binaryFormat,
7994 GLvoid* binary) {
7995 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetProgramBinary")
7996 gl_api_->glGetProgramBinaryFn(program, bufSize, length, binaryFormat, binary);
7997 }
7998
7999 void TraceGLApi::glGetProgramInfoLogFn(GLuint program,
8000 GLsizei bufsize,
8001 GLsizei* length,
8002 char* infolog) {
8003 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetProgramInfoLog")
8004 gl_api_->glGetProgramInfoLogFn(program, bufsize, length, infolog);
8005 }
8006
8007 void TraceGLApi::glGetProgramivFn(GLuint program, GLenum pname, GLint* params) {
8008 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetProgramiv")
8009 gl_api_->glGetProgramivFn(program, pname, params);
8010 }
8011
8012 void TraceGLApi::glGetQueryivFn(GLenum target, GLenum pname, GLint* params) {
8013 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetQueryiv")
8014 gl_api_->glGetQueryivFn(target, pname, params);
8015 }
8016
8017 void TraceGLApi::glGetQueryivARBFn(GLenum target, GLenum pname, GLint* params) {
8018 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetQueryivARB")
8019 gl_api_->glGetQueryivARBFn(target, pname, params);
8020 }
8021
8022 void TraceGLApi::glGetQueryObjecti64vFn(GLuint id,
8023 GLenum pname,
8024 GLint64* params) {
8025 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetQueryObjecti64v")
8026 gl_api_->glGetQueryObjecti64vFn(id, pname, params);
8027 }
8028
8029 void TraceGLApi::glGetQueryObjectivFn(GLuint id, GLenum pname, GLint* params) {
8030 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetQueryObjectiv")
8031 gl_api_->glGetQueryObjectivFn(id, pname, params);
8032 }
8033
8034 void TraceGLApi::glGetQueryObjectivARBFn(GLuint id,
8035 GLenum pname,
8036 GLint* params) {
8037 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetQueryObjectivARB")
8038 gl_api_->glGetQueryObjectivARBFn(id, pname, params);
8039 }
8040
8041 void TraceGLApi::glGetQueryObjectui64vFn(GLuint id,
8042 GLenum pname,
8043 GLuint64* params) {
8044 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetQueryObjectui64v")
8045 gl_api_->glGetQueryObjectui64vFn(id, pname, params);
8046 }
8047
8048 void TraceGLApi::glGetQueryObjectuivFn(GLuint id,
8049 GLenum pname,
8050 GLuint* params) {
8051 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetQueryObjectuiv")
8052 gl_api_->glGetQueryObjectuivFn(id, pname, params);
8053 }
8054
8055 void TraceGLApi::glGetQueryObjectuivARBFn(GLuint id,
8056 GLenum pname,
8057 GLuint* params) {
8058 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetQueryObjectuivARB")
8059 gl_api_->glGetQueryObjectuivARBFn(id, pname, params);
8060 }
8061
8062 void TraceGLApi::glGetRenderbufferParameterivEXTFn(GLenum target,
8063 GLenum pname,
8064 GLint* params) {
8065 TRACE_EVENT_BINARY_EFFICIENT0("gpu",
8066 "TraceGLAPI::glGetRenderbufferParameterivEXT")
8067 gl_api_->glGetRenderbufferParameterivEXTFn(target, pname, params);
8068 }
8069
8070 void TraceGLApi::glGetSamplerParameterfvFn(GLuint sampler,
8071 GLenum pname,
8072 GLfloat* params) {
8073 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetSamplerParameterfv")
8074 gl_api_->glGetSamplerParameterfvFn(sampler, pname, params);
8075 }
8076
8077 void TraceGLApi::glGetSamplerParameterivFn(GLuint sampler,
8078 GLenum pname,
8079 GLint* params) {
8080 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetSamplerParameteriv")
8081 gl_api_->glGetSamplerParameterivFn(sampler, pname, params);
8082 }
8083
8084 void TraceGLApi::glGetShaderInfoLogFn(GLuint shader,
8085 GLsizei bufsize,
8086 GLsizei* length,
8087 char* infolog) {
8088 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetShaderInfoLog")
8089 gl_api_->glGetShaderInfoLogFn(shader, bufsize, length, infolog);
8090 }
8091
8092 void TraceGLApi::glGetShaderivFn(GLuint shader, GLenum pname, GLint* params) {
8093 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetShaderiv")
8094 gl_api_->glGetShaderivFn(shader, pname, params);
8095 }
8096
8097 void TraceGLApi::glGetShaderPrecisionFormatFn(GLenum shadertype,
8098 GLenum precisiontype,
8099 GLint* range,
8100 GLint* precision) {
8101 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetShaderPrecisionFormat")
8102 gl_api_->glGetShaderPrecisionFormatFn(shadertype, precisiontype, range,
8103 precision);
8104 }
8105
8106 void TraceGLApi::glGetShaderSourceFn(GLuint shader,
8107 GLsizei bufsize,
8108 GLsizei* length,
8109 char* source) {
8110 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetShaderSource")
8111 gl_api_->glGetShaderSourceFn(shader, bufsize, length, source);
8112 }
8113
8114 const GLubyte* TraceGLApi::glGetStringFn(GLenum name) {
8115 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetString")
8116 return gl_api_->glGetStringFn(name);
8117 }
8118
8119 void TraceGLApi::glGetSyncivFn(GLsync sync,
8120 GLenum pname,
8121 GLsizei bufSize,
8122 GLsizei* length,
8123 GLint* values) {
8124 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetSynciv")
8125 gl_api_->glGetSyncivFn(sync, pname, bufSize, length, values);
8126 }
8127
8128 void TraceGLApi::glGetTexLevelParameterfvFn(GLenum target,
8129 GLint level,
8130 GLenum pname,
8131 GLfloat* params) {
8132 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetTexLevelParameterfv")
8133 gl_api_->glGetTexLevelParameterfvFn(target, level, pname, params);
8134 }
8135
8136 void TraceGLApi::glGetTexLevelParameterivFn(GLenum target,
8137 GLint level,
8138 GLenum pname,
8139 GLint* params) {
8140 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetTexLevelParameteriv")
8141 gl_api_->glGetTexLevelParameterivFn(target, level, pname, params);
8142 }
8143
8144 void TraceGLApi::glGetTexParameterfvFn(GLenum target,
8145 GLenum pname,
8146 GLfloat* params) {
8147 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetTexParameterfv")
8148 gl_api_->glGetTexParameterfvFn(target, pname, params);
8149 }
8150
8151 void TraceGLApi::glGetTexParameterivFn(GLenum target,
8152 GLenum pname,
8153 GLint* params) {
8154 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetTexParameteriv")
8155 gl_api_->glGetTexParameterivFn(target, pname, params);
8156 }
8157
8158 void TraceGLApi::glGetTransformFeedbackVaryingFn(GLuint program,
8159 GLuint index,
8160 GLsizei bufSize,
8161 GLsizei* length,
8162 GLenum* type,
8163 char* name) {
8164 TRACE_EVENT_BINARY_EFFICIENT0("gpu",
8165 "TraceGLAPI::glGetTransformFeedbackVarying")
8166 gl_api_->glGetTransformFeedbackVaryingFn(program, index, bufSize, length,
8167 type, name);
8168 }
8169
8170 void TraceGLApi::glGetTranslatedShaderSourceANGLEFn(GLuint shader,
8171 GLsizei bufsize,
8172 GLsizei* length,
8173 char* source) {
8174 TRACE_EVENT_BINARY_EFFICIENT0("gpu",
8175 "TraceGLAPI::glGetTranslatedShaderSourceANGLE")
8176 gl_api_->glGetTranslatedShaderSourceANGLEFn(shader, bufsize, length, source);
8177 }
8178
8179 GLuint TraceGLApi::glGetUniformBlockIndexFn(GLuint program,
8180 const char* uniformBlockName) {
8181 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetUniformBlockIndex")
8182 return gl_api_->glGetUniformBlockIndexFn(program, uniformBlockName);
8183 }
8184
8185 void TraceGLApi::glGetUniformfvFn(GLuint program,
8186 GLint location,
8187 GLfloat* params) {
8188 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetUniformfv")
8189 gl_api_->glGetUniformfvFn(program, location, params);
8190 }
8191
8192 void TraceGLApi::glGetUniformIndicesFn(GLuint program,
8193 GLsizei uniformCount,
8194 const char* const* uniformNames,
8195 GLuint* uniformIndices) {
8196 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetUniformIndices")
8197 gl_api_->glGetUniformIndicesFn(program, uniformCount, uniformNames,
8198 uniformIndices);
8199 }
8200
8201 void TraceGLApi::glGetUniformivFn(GLuint program,
8202 GLint location,
8203 GLint* params) {
8204 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetUniformiv")
8205 gl_api_->glGetUniformivFn(program, location, params);
8206 }
8207
8208 GLint TraceGLApi::glGetUniformLocationFn(GLuint program, const char* name) {
8209 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetUniformLocation")
8210 return gl_api_->glGetUniformLocationFn(program, name);
8211 }
8212
8213 void TraceGLApi::glGetVertexAttribfvFn(GLuint index,
8214 GLenum pname,
8215 GLfloat* params) {
8216 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetVertexAttribfv")
8217 gl_api_->glGetVertexAttribfvFn(index, pname, params);
8218 }
8219
8220 void TraceGLApi::glGetVertexAttribivFn(GLuint index,
8221 GLenum pname,
8222 GLint* params) {
8223 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetVertexAttribiv")
8224 gl_api_->glGetVertexAttribivFn(index, pname, params);
8225 }
8226
8227 void TraceGLApi::glGetVertexAttribPointervFn(GLuint index,
8228 GLenum pname,
8229 void** pointer) {
8230 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetVertexAttribPointerv")
8231 gl_api_->glGetVertexAttribPointervFn(index, pname, pointer);
8232 }
8233
8234 void TraceGLApi::glHintFn(GLenum target, GLenum mode) {
8235 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glHint")
8236 gl_api_->glHintFn(target, mode);
8237 }
8238
8239 void TraceGLApi::glInsertEventMarkerEXTFn(GLsizei length, const char* marker) {
8240 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glInsertEventMarkerEXT")
8241 gl_api_->glInsertEventMarkerEXTFn(length, marker);
8242 }
8243
8244 void TraceGLApi::glInvalidateFramebufferFn(GLenum target,
8245 GLsizei numAttachments,
8246 const GLenum* attachments) {
8247 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glInvalidateFramebuffer")
8248 gl_api_->glInvalidateFramebufferFn(target, numAttachments, attachments);
8249 }
8250
8251 void TraceGLApi::glInvalidateSubFramebufferFn(GLenum target,
8252 GLsizei numAttachments,
8253 const GLenum* attachments,
8254 GLint x,
8255 GLint y,
8256 GLint width,
8257 GLint height) {
8258 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glInvalidateSubFramebuffer")
8259 gl_api_->glInvalidateSubFramebufferFn(target, numAttachments, attachments, x,
8260 y, width, height);
8261 }
8262
8263 GLboolean TraceGLApi::glIsBufferFn(GLuint buffer) {
8264 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glIsBuffer")
8265 return gl_api_->glIsBufferFn(buffer);
8266 }
8267
8268 GLboolean TraceGLApi::glIsEnabledFn(GLenum cap) {
8269 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glIsEnabled")
8270 return gl_api_->glIsEnabledFn(cap);
8271 }
8272
8273 GLboolean TraceGLApi::glIsFenceAPPLEFn(GLuint fence) {
8274 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glIsFenceAPPLE")
8275 return gl_api_->glIsFenceAPPLEFn(fence);
8276 }
8277
8278 GLboolean TraceGLApi::glIsFenceNVFn(GLuint fence) {
8279 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glIsFenceNV")
8280 return gl_api_->glIsFenceNVFn(fence);
8281 }
8282
8283 GLboolean TraceGLApi::glIsFramebufferEXTFn(GLuint framebuffer) {
8284 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glIsFramebufferEXT")
8285 return gl_api_->glIsFramebufferEXTFn(framebuffer);
8286 }
8287
8288 GLboolean TraceGLApi::glIsProgramFn(GLuint program) {
8289 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glIsProgram")
8290 return gl_api_->glIsProgramFn(program);
8291 }
8292
8293 GLboolean TraceGLApi::glIsQueryFn(GLuint query) {
8294 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glIsQuery")
8295 return gl_api_->glIsQueryFn(query);
8296 }
8297
8298 GLboolean TraceGLApi::glIsQueryARBFn(GLuint query) {
8299 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glIsQueryARB")
8300 return gl_api_->glIsQueryARBFn(query);
8301 }
8302
8303 GLboolean TraceGLApi::glIsRenderbufferEXTFn(GLuint renderbuffer) {
8304 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glIsRenderbufferEXT")
8305 return gl_api_->glIsRenderbufferEXTFn(renderbuffer);
8306 }
8307
8308 GLboolean TraceGLApi::glIsSamplerFn(GLuint sampler) {
8309 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glIsSampler")
8310 return gl_api_->glIsSamplerFn(sampler);
8311 }
8312
8313 GLboolean TraceGLApi::glIsShaderFn(GLuint shader) {
8314 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glIsShader")
8315 return gl_api_->glIsShaderFn(shader);
8316 }
8317
8318 GLboolean TraceGLApi::glIsSyncFn(GLsync sync) {
8319 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glIsSync")
8320 return gl_api_->glIsSyncFn(sync);
8321 }
8322
8323 GLboolean TraceGLApi::glIsTextureFn(GLuint texture) {
8324 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glIsTexture")
8325 return gl_api_->glIsTextureFn(texture);
8326 }
8327
8328 GLboolean TraceGLApi::glIsTransformFeedbackFn(GLuint id) {
8329 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glIsTransformFeedback")
8330 return gl_api_->glIsTransformFeedbackFn(id);
8331 }
8332
8333 GLboolean TraceGLApi::glIsVertexArrayOESFn(GLuint array) {
8334 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glIsVertexArrayOES")
8335 return gl_api_->glIsVertexArrayOESFn(array);
8336 }
8337
8338 void TraceGLApi::glLineWidthFn(GLfloat width) {
8339 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glLineWidth")
8340 gl_api_->glLineWidthFn(width);
8341 }
8342
8343 void TraceGLApi::glLinkProgramFn(GLuint program) {
8344 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glLinkProgram")
8345 gl_api_->glLinkProgramFn(program);
8346 }
8347
8348 void* TraceGLApi::glMapBufferFn(GLenum target, GLenum access) {
8349 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glMapBuffer")
8350 return gl_api_->glMapBufferFn(target, access);
8351 }
8352
8353 void* TraceGLApi::glMapBufferRangeFn(GLenum target,
8354 GLintptr offset,
8355 GLsizeiptr length,
8356 GLbitfield access) {
8357 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glMapBufferRange")
8358 return gl_api_->glMapBufferRangeFn(target, offset, length, access);
8359 }
8360
8361 void TraceGLApi::glMatrixLoadfEXTFn(GLenum matrixMode, const GLfloat* m) {
8362 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glMatrixLoadfEXT")
8363 gl_api_->glMatrixLoadfEXTFn(matrixMode, m);
8364 }
8365
8366 void TraceGLApi::glMatrixLoadIdentityEXTFn(GLenum matrixMode) {
8367 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glMatrixLoadIdentityEXT")
8368 gl_api_->glMatrixLoadIdentityEXTFn(matrixMode);
8369 }
8370
8371 void TraceGLApi::glPauseTransformFeedbackFn(void) {
8372 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glPauseTransformFeedback")
8373 gl_api_->glPauseTransformFeedbackFn();
8374 }
8375
8376 void TraceGLApi::glPixelStoreiFn(GLenum pname, GLint param) {
8377 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glPixelStorei")
8378 gl_api_->glPixelStoreiFn(pname, param);
8379 }
8380
8381 void TraceGLApi::glPointParameteriFn(GLenum pname, GLint param) {
8382 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glPointParameteri")
8383 gl_api_->glPointParameteriFn(pname, param);
8384 }
8385
8386 void TraceGLApi::glPolygonOffsetFn(GLfloat factor, GLfloat units) {
8387 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glPolygonOffset")
8388 gl_api_->glPolygonOffsetFn(factor, units);
8389 }
8390
8391 void TraceGLApi::glPopGroupMarkerEXTFn(void) {
8392 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glPopGroupMarkerEXT")
8393 gl_api_->glPopGroupMarkerEXTFn();
8394 }
8395
8396 void TraceGLApi::glProgramBinaryFn(GLuint program,
8397 GLenum binaryFormat,
8398 const GLvoid* binary,
8399 GLsizei length) {
8400 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glProgramBinary")
8401 gl_api_->glProgramBinaryFn(program, binaryFormat, binary, length);
8402 }
8403
8404 void TraceGLApi::glProgramParameteriFn(GLuint program,
8405 GLenum pname,
8406 GLint value) {
8407 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glProgramParameteri")
8408 gl_api_->glProgramParameteriFn(program, pname, value);
8409 }
8410
8411 void TraceGLApi::glPushGroupMarkerEXTFn(GLsizei length, const char* marker) {
8412 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glPushGroupMarkerEXT")
8413 gl_api_->glPushGroupMarkerEXTFn(length, marker);
8414 }
8415
8416 void TraceGLApi::glQueryCounterFn(GLuint id, GLenum target) {
8417 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glQueryCounter")
8418 gl_api_->glQueryCounterFn(id, target);
8419 }
8420
8421 void TraceGLApi::glReadBufferFn(GLenum src) {
8422 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glReadBuffer")
8423 gl_api_->glReadBufferFn(src);
8424 }
8425
8426 void TraceGLApi::glReadPixelsFn(GLint x,
8427 GLint y,
8428 GLsizei width,
8429 GLsizei height,
8430 GLenum format,
8431 GLenum type,
8432 void* pixels) {
8433 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glReadPixels")
8434 gl_api_->glReadPixelsFn(x, y, width, height, format, type, pixels);
8435 }
8436
8437 void TraceGLApi::glReleaseShaderCompilerFn(void) {
8438 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glReleaseShaderCompiler")
8439 gl_api_->glReleaseShaderCompilerFn();
8440 }
8441
8442 void TraceGLApi::glRenderbufferStorageEXTFn(GLenum target,
8443 GLenum internalformat,
8444 GLsizei width,
8445 GLsizei height) {
8446 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glRenderbufferStorageEXT")
8447 gl_api_->glRenderbufferStorageEXTFn(target, internalformat, width, height);
8448 }
8449
8450 void TraceGLApi::glRenderbufferStorageMultisampleFn(GLenum target,
8451 GLsizei samples,
8452 GLenum internalformat,
8453 GLsizei width,
8454 GLsizei height) {
8455 TRACE_EVENT_BINARY_EFFICIENT0("gpu",
8456 "TraceGLAPI::glRenderbufferStorageMultisample")
8457 gl_api_->glRenderbufferStorageMultisampleFn(target, samples, internalformat,
8458 width, height);
8459 }
8460
8461 void TraceGLApi::glRenderbufferStorageMultisampleANGLEFn(GLenum target,
8462 GLsizei samples,
8463 GLenum internalformat,
8464 GLsizei width,
8465 GLsizei height) {
8466 TRACE_EVENT_BINARY_EFFICIENT0(
8467 "gpu", "TraceGLAPI::glRenderbufferStorageMultisampleANGLE")
8468 gl_api_->glRenderbufferStorageMultisampleANGLEFn(
8469 target, samples, internalformat, width, height);
8470 }
8471
8472 void TraceGLApi::glRenderbufferStorageMultisampleEXTFn(GLenum target,
8473 GLsizei samples,
8474 GLenum internalformat,
8475 GLsizei width,
8476 GLsizei height) {
8477 TRACE_EVENT_BINARY_EFFICIENT0(
8478 "gpu", "TraceGLAPI::glRenderbufferStorageMultisampleEXT")
8479 gl_api_->glRenderbufferStorageMultisampleEXTFn(target, samples,
8480 internalformat, width, height);
8481 }
8482
8483 void TraceGLApi::glRenderbufferStorageMultisampleIMGFn(GLenum target,
8484 GLsizei samples,
8485 GLenum internalformat,
8486 GLsizei width,
8487 GLsizei height) {
8488 TRACE_EVENT_BINARY_EFFICIENT0(
8489 "gpu", "TraceGLAPI::glRenderbufferStorageMultisampleIMG")
8490 gl_api_->glRenderbufferStorageMultisampleIMGFn(target, samples,
8491 internalformat, width, height);
8492 }
8493
8494 void TraceGLApi::glResumeTransformFeedbackFn(void) {
8495 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glResumeTransformFeedback")
8496 gl_api_->glResumeTransformFeedbackFn();
8497 }
8498
8499 void TraceGLApi::glSampleCoverageFn(GLclampf value, GLboolean invert) {
8500 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glSampleCoverage")
8501 gl_api_->glSampleCoverageFn(value, invert);
8502 }
8503
8504 void TraceGLApi::glSamplerParameterfFn(GLuint sampler,
8505 GLenum pname,
8506 GLfloat param) {
8507 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glSamplerParameterf")
8508 gl_api_->glSamplerParameterfFn(sampler, pname, param);
8509 }
8510
8511 void TraceGLApi::glSamplerParameterfvFn(GLuint sampler,
8512 GLenum pname,
8513 const GLfloat* params) {
8514 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glSamplerParameterfv")
8515 gl_api_->glSamplerParameterfvFn(sampler, pname, params);
8516 }
8517
8518 void TraceGLApi::glSamplerParameteriFn(GLuint sampler,
8519 GLenum pname,
8520 GLint param) {
8521 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glSamplerParameteri")
8522 gl_api_->glSamplerParameteriFn(sampler, pname, param);
8523 }
8524
8525 void TraceGLApi::glSamplerParameterivFn(GLuint sampler,
8526 GLenum pname,
8527 const GLint* params) {
8528 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glSamplerParameteriv")
8529 gl_api_->glSamplerParameterivFn(sampler, pname, params);
8530 }
8531
8532 void TraceGLApi::glScissorFn(GLint x, GLint y, GLsizei width, GLsizei height) {
8533 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glScissor")
8534 gl_api_->glScissorFn(x, y, width, height);
8535 }
8536
8537 void TraceGLApi::glSetFenceAPPLEFn(GLuint fence) {
8538 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glSetFenceAPPLE")
8539 gl_api_->glSetFenceAPPLEFn(fence);
8540 }
8541
8542 void TraceGLApi::glSetFenceNVFn(GLuint fence, GLenum condition) {
8543 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glSetFenceNV")
8544 gl_api_->glSetFenceNVFn(fence, condition);
8545 }
8546
8547 void TraceGLApi::glShaderBinaryFn(GLsizei n,
8548 const GLuint* shaders,
8549 GLenum binaryformat,
8550 const void* binary,
8551 GLsizei length) {
8552 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glShaderBinary")
8553 gl_api_->glShaderBinaryFn(n, shaders, binaryformat, binary, length);
8554 }
8555
8556 void TraceGLApi::glShaderSourceFn(GLuint shader,
8557 GLsizei count,
8558 const char* const* str,
8559 const GLint* length) {
8560 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glShaderSource")
8561 gl_api_->glShaderSourceFn(shader, count, str, length);
8562 }
8563
8564 void TraceGLApi::glStencilFuncFn(GLenum func, GLint ref, GLuint mask) {
8565 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glStencilFunc")
8566 gl_api_->glStencilFuncFn(func, ref, mask);
8567 }
8568
8569 void TraceGLApi::glStencilFuncSeparateFn(GLenum face,
8570 GLenum func,
8571 GLint ref,
8572 GLuint mask) {
8573 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glStencilFuncSeparate")
8574 gl_api_->glStencilFuncSeparateFn(face, func, ref, mask);
8575 }
8576
8577 void TraceGLApi::glStencilMaskFn(GLuint mask) {
8578 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glStencilMask")
8579 gl_api_->glStencilMaskFn(mask);
8580 }
8581
8582 void TraceGLApi::glStencilMaskSeparateFn(GLenum face, GLuint mask) {
8583 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glStencilMaskSeparate")
8584 gl_api_->glStencilMaskSeparateFn(face, mask);
8585 }
8586
8587 void TraceGLApi::glStencilOpFn(GLenum fail, GLenum zfail, GLenum zpass) {
8588 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glStencilOp")
8589 gl_api_->glStencilOpFn(fail, zfail, zpass);
8590 }
8591
8592 void TraceGLApi::glStencilOpSeparateFn(GLenum face,
8593 GLenum fail,
8594 GLenum zfail,
8595 GLenum zpass) {
8596 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glStencilOpSeparate")
8597 gl_api_->glStencilOpSeparateFn(face, fail, zfail, zpass);
8598 }
8599
8600 GLboolean TraceGLApi::glTestFenceAPPLEFn(GLuint fence) {
8601 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glTestFenceAPPLE")
8602 return gl_api_->glTestFenceAPPLEFn(fence);
8603 }
8604
8605 GLboolean TraceGLApi::glTestFenceNVFn(GLuint fence) {
8606 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glTestFenceNV")
8607 return gl_api_->glTestFenceNVFn(fence);
8608 }
8609
8610 void TraceGLApi::glTexImage2DFn(GLenum target,
8611 GLint level,
8612 GLint internalformat,
8613 GLsizei width,
8614 GLsizei height,
8615 GLint border,
8616 GLenum format,
8617 GLenum type,
8618 const void* pixels) {
8619 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glTexImage2D")
8620 gl_api_->glTexImage2DFn(target, level, internalformat, width, height, border,
8621 format, type, pixels);
8622 }
8623
8624 void TraceGLApi::glTexImage3DFn(GLenum target,
8625 GLint level,
8626 GLint internalformat,
8627 GLsizei width,
8628 GLsizei height,
8629 GLsizei depth,
8630 GLint border,
8631 GLenum format,
8632 GLenum type,
8633 const void* pixels) {
8634 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glTexImage3D")
8635 gl_api_->glTexImage3DFn(target, level, internalformat, width, height, depth,
8636 border, format, type, pixels);
8637 }
8638
8639 void TraceGLApi::glTexParameterfFn(GLenum target, GLenum pname, GLfloat param) {
8640 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glTexParameterf")
8641 gl_api_->glTexParameterfFn(target, pname, param);
8642 }
8643
8644 void TraceGLApi::glTexParameterfvFn(GLenum target,
8645 GLenum pname,
8646 const GLfloat* params) {
8647 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glTexParameterfv")
8648 gl_api_->glTexParameterfvFn(target, pname, params);
8649 }
8650
8651 void TraceGLApi::glTexParameteriFn(GLenum target, GLenum pname, GLint param) {
8652 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glTexParameteri")
8653 gl_api_->glTexParameteriFn(target, pname, param);
8654 }
8655
8656 void TraceGLApi::glTexParameterivFn(GLenum target,
8657 GLenum pname,
8658 const GLint* params) {
8659 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glTexParameteriv")
8660 gl_api_->glTexParameterivFn(target, pname, params);
8661 }
8662
8663 void TraceGLApi::glTexStorage2DEXTFn(GLenum target,
8664 GLsizei levels,
8665 GLenum internalformat,
8666 GLsizei width,
8667 GLsizei height) {
8668 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glTexStorage2DEXT")
8669 gl_api_->glTexStorage2DEXTFn(target, levels, internalformat, width, height);
8670 }
8671
8672 void TraceGLApi::glTexStorage3DFn(GLenum target,
8673 GLsizei levels,
8674 GLenum internalformat,
8675 GLsizei width,
8676 GLsizei height,
8677 GLsizei depth) {
8678 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glTexStorage3D")
8679 gl_api_->glTexStorage3DFn(target, levels, internalformat, width, height,
8680 depth);
8681 }
8682
8683 void TraceGLApi::glTexSubImage2DFn(GLenum target,
8684 GLint level,
8685 GLint xoffset,
8686 GLint yoffset,
8687 GLsizei width,
8688 GLsizei height,
8689 GLenum format,
8690 GLenum type,
8691 const void* pixels) {
8692 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glTexSubImage2D")
8693 gl_api_->glTexSubImage2DFn(target, level, xoffset, yoffset, width, height,
8694 format, type, pixels);
8695 }
8696
8697 void TraceGLApi::glTransformFeedbackVaryingsFn(GLuint program,
8698 GLsizei count,
8699 const char* const* varyings,
8700 GLenum bufferMode) {
8701 TRACE_EVENT_BINARY_EFFICIENT0("gpu",
8702 "TraceGLAPI::glTransformFeedbackVaryings")
8703 gl_api_->glTransformFeedbackVaryingsFn(program, count, varyings, bufferMode);
8704 }
8705
8706 void TraceGLApi::glUniform1fFn(GLint location, GLfloat x) {
8707 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform1f")
8708 gl_api_->glUniform1fFn(location, x);
8709 }
8710
8711 void TraceGLApi::glUniform1fvFn(GLint location,
8712 GLsizei count,
8713 const GLfloat* v) {
8714 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform1fv")
8715 gl_api_->glUniform1fvFn(location, count, v);
8716 }
8717
8718 void TraceGLApi::glUniform1iFn(GLint location, GLint x) {
8719 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform1i")
8720 gl_api_->glUniform1iFn(location, x);
8721 }
8722
8723 void TraceGLApi::glUniform1ivFn(GLint location, GLsizei count, const GLint* v) {
8724 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform1iv")
8725 gl_api_->glUniform1ivFn(location, count, v);
8726 }
8727
8728 void TraceGLApi::glUniform1uiFn(GLint location, GLuint v0) {
8729 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform1ui")
8730 gl_api_->glUniform1uiFn(location, v0);
8731 }
8732
8733 void TraceGLApi::glUniform1uivFn(GLint location,
8734 GLsizei count,
8735 const GLuint* v) {
8736 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform1uiv")
8737 gl_api_->glUniform1uivFn(location, count, v);
8738 }
8739
8740 void TraceGLApi::glUniform2fFn(GLint location, GLfloat x, GLfloat y) {
8741 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform2f")
8742 gl_api_->glUniform2fFn(location, x, y);
8743 }
8744
8745 void TraceGLApi::glUniform2fvFn(GLint location,
8746 GLsizei count,
8747 const GLfloat* v) {
8748 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform2fv")
8749 gl_api_->glUniform2fvFn(location, count, v);
8750 }
8751
8752 void TraceGLApi::glUniform2iFn(GLint location, GLint x, GLint y) {
8753 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform2i")
8754 gl_api_->glUniform2iFn(location, x, y);
8755 }
8756
8757 void TraceGLApi::glUniform2ivFn(GLint location, GLsizei count, const GLint* v) {
8758 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform2iv")
8759 gl_api_->glUniform2ivFn(location, count, v);
8760 }
8761
8762 void TraceGLApi::glUniform2uiFn(GLint location, GLuint v0, GLuint v1) {
8763 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform2ui")
8764 gl_api_->glUniform2uiFn(location, v0, v1);
8765 }
8766
8767 void TraceGLApi::glUniform2uivFn(GLint location,
8768 GLsizei count,
8769 const GLuint* v) {
8770 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform2uiv")
8771 gl_api_->glUniform2uivFn(location, count, v);
8772 }
8773
8774 void TraceGLApi::glUniform3fFn(GLint location,
8775 GLfloat x,
8776 GLfloat y,
8777 GLfloat z) {
8778 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform3f")
8779 gl_api_->glUniform3fFn(location, x, y, z);
8780 }
8781
8782 void TraceGLApi::glUniform3fvFn(GLint location,
8783 GLsizei count,
8784 const GLfloat* v) {
8785 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform3fv")
8786 gl_api_->glUniform3fvFn(location, count, v);
8787 }
8788
8789 void TraceGLApi::glUniform3iFn(GLint location, GLint x, GLint y, GLint z) {
8790 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform3i")
8791 gl_api_->glUniform3iFn(location, x, y, z);
8792 }
8793
8794 void TraceGLApi::glUniform3ivFn(GLint location, GLsizei count, const GLint* v) {
8795 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform3iv")
8796 gl_api_->glUniform3ivFn(location, count, v);
8797 }
8798
8799 void TraceGLApi::glUniform3uiFn(GLint location,
8800 GLuint v0,
8801 GLuint v1,
8802 GLuint v2) {
8803 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform3ui")
8804 gl_api_->glUniform3uiFn(location, v0, v1, v2);
8805 }
8806
8807 void TraceGLApi::glUniform3uivFn(GLint location,
8808 GLsizei count,
8809 const GLuint* v) {
8810 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform3uiv")
8811 gl_api_->glUniform3uivFn(location, count, v);
8812 }
8813
8814 void TraceGLApi::glUniform4fFn(GLint location,
8815 GLfloat x,
8816 GLfloat y,
8817 GLfloat z,
8818 GLfloat w) {
8819 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform4f")
8820 gl_api_->glUniform4fFn(location, x, y, z, w);
8821 }
8822
8823 void TraceGLApi::glUniform4fvFn(GLint location,
8824 GLsizei count,
8825 const GLfloat* v) {
8826 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform4fv")
8827 gl_api_->glUniform4fvFn(location, count, v);
8828 }
8829
8830 void TraceGLApi::glUniform4iFn(GLint location,
8831 GLint x,
8832 GLint y,
8833 GLint z,
8834 GLint w) {
8835 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform4i")
8836 gl_api_->glUniform4iFn(location, x, y, z, w);
8837 }
8838
8839 void TraceGLApi::glUniform4ivFn(GLint location, GLsizei count, const GLint* v) {
8840 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform4iv")
8841 gl_api_->glUniform4ivFn(location, count, v);
8842 }
8843
8844 void TraceGLApi::glUniform4uiFn(GLint location,
8845 GLuint v0,
8846 GLuint v1,
8847 GLuint v2,
8848 GLuint v3) {
8849 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform4ui")
8850 gl_api_->glUniform4uiFn(location, v0, v1, v2, v3);
8851 }
8852
8853 void TraceGLApi::glUniform4uivFn(GLint location,
8854 GLsizei count,
8855 const GLuint* v) {
8856 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform4uiv")
8857 gl_api_->glUniform4uivFn(location, count, v);
8858 }
8859
8860 void TraceGLApi::glUniformBlockBindingFn(GLuint program,
8861 GLuint uniformBlockIndex,
8862 GLuint uniformBlockBinding) {
8863 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniformBlockBinding")
8864 gl_api_->glUniformBlockBindingFn(program, uniformBlockIndex,
8865 uniformBlockBinding);
8866 }
8867
8868 void TraceGLApi::glUniformMatrix2fvFn(GLint location,
8869 GLsizei count,
8870 GLboolean transpose,
8871 const GLfloat* value) {
8872 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniformMatrix2fv")
8873 gl_api_->glUniformMatrix2fvFn(location, count, transpose, value);
8874 }
8875
8876 void TraceGLApi::glUniformMatrix2x3fvFn(GLint location,
8877 GLsizei count,
8878 GLboolean transpose,
8879 const GLfloat* value) {
8880 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniformMatrix2x3fv")
8881 gl_api_->glUniformMatrix2x3fvFn(location, count, transpose, value);
8882 }
8883
8884 void TraceGLApi::glUniformMatrix2x4fvFn(GLint location,
8885 GLsizei count,
8886 GLboolean transpose,
8887 const GLfloat* value) {
8888 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniformMatrix2x4fv")
8889 gl_api_->glUniformMatrix2x4fvFn(location, count, transpose, value);
8890 }
8891
8892 void TraceGLApi::glUniformMatrix3fvFn(GLint location,
8893 GLsizei count,
8894 GLboolean transpose,
8895 const GLfloat* value) {
8896 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniformMatrix3fv")
8897 gl_api_->glUniformMatrix3fvFn(location, count, transpose, value);
8898 }
8899
8900 void TraceGLApi::glUniformMatrix3x2fvFn(GLint location,
8901 GLsizei count,
8902 GLboolean transpose,
8903 const GLfloat* value) {
8904 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniformMatrix3x2fv")
8905 gl_api_->glUniformMatrix3x2fvFn(location, count, transpose, value);
8906 }
8907
8908 void TraceGLApi::glUniformMatrix3x4fvFn(GLint location,
8909 GLsizei count,
8910 GLboolean transpose,
8911 const GLfloat* value) {
8912 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniformMatrix3x4fv")
8913 gl_api_->glUniformMatrix3x4fvFn(location, count, transpose, value);
8914 }
8915
8916 void TraceGLApi::glUniformMatrix4fvFn(GLint location,
8917 GLsizei count,
8918 GLboolean transpose,
8919 const GLfloat* value) {
8920 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniformMatrix4fv")
8921 gl_api_->glUniformMatrix4fvFn(location, count, transpose, value);
8922 }
8923
8924 void TraceGLApi::glUniformMatrix4x2fvFn(GLint location,
8925 GLsizei count,
8926 GLboolean transpose,
8927 const GLfloat* value) {
8928 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniformMatrix4x2fv")
8929 gl_api_->glUniformMatrix4x2fvFn(location, count, transpose, value);
8930 }
8931
8932 void TraceGLApi::glUniformMatrix4x3fvFn(GLint location,
8933 GLsizei count,
8934 GLboolean transpose,
8935 const GLfloat* value) {
8936 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniformMatrix4x3fv")
8937 gl_api_->glUniformMatrix4x3fvFn(location, count, transpose, value);
8938 }
8939
8940 GLboolean TraceGLApi::glUnmapBufferFn(GLenum target) {
8941 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUnmapBuffer")
8942 return gl_api_->glUnmapBufferFn(target);
8943 }
8944
8945 void TraceGLApi::glUseProgramFn(GLuint program) {
8946 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUseProgram")
8947 gl_api_->glUseProgramFn(program);
8948 }
8949
8950 void TraceGLApi::glValidateProgramFn(GLuint program) {
8951 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glValidateProgram")
8952 gl_api_->glValidateProgramFn(program);
8953 }
8954
8955 void TraceGLApi::glVertexAttrib1fFn(GLuint indx, GLfloat x) {
8956 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glVertexAttrib1f")
8957 gl_api_->glVertexAttrib1fFn(indx, x);
8958 }
8959
8960 void TraceGLApi::glVertexAttrib1fvFn(GLuint indx, const GLfloat* values) {
8961 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glVertexAttrib1fv")
8962 gl_api_->glVertexAttrib1fvFn(indx, values);
8963 }
8964
8965 void TraceGLApi::glVertexAttrib2fFn(GLuint indx, GLfloat x, GLfloat y) {
8966 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glVertexAttrib2f")
8967 gl_api_->glVertexAttrib2fFn(indx, x, y);
8968 }
8969
8970 void TraceGLApi::glVertexAttrib2fvFn(GLuint indx, const GLfloat* values) {
8971 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glVertexAttrib2fv")
8972 gl_api_->glVertexAttrib2fvFn(indx, values);
8973 }
8974
8975 void TraceGLApi::glVertexAttrib3fFn(GLuint indx,
8976 GLfloat x,
8977 GLfloat y,
8978 GLfloat z) {
8979 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glVertexAttrib3f")
8980 gl_api_->glVertexAttrib3fFn(indx, x, y, z);
8981 }
8982
8983 void TraceGLApi::glVertexAttrib3fvFn(GLuint indx, const GLfloat* values) {
8984 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glVertexAttrib3fv")
8985 gl_api_->glVertexAttrib3fvFn(indx, values);
8986 }
8987
8988 void TraceGLApi::glVertexAttrib4fFn(GLuint indx,
8989 GLfloat x,
8990 GLfloat y,
8991 GLfloat z,
8992 GLfloat w) {
8993 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glVertexAttrib4f")
8994 gl_api_->glVertexAttrib4fFn(indx, x, y, z, w);
8995 }
8996
8997 void TraceGLApi::glVertexAttrib4fvFn(GLuint indx, const GLfloat* values) {
8998 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glVertexAttrib4fv")
8999 gl_api_->glVertexAttrib4fvFn(indx, values);
9000 }
9001
9002 void TraceGLApi::glVertexAttribDivisorANGLEFn(GLuint index, GLuint divisor) {
9003 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glVertexAttribDivisorANGLE")
9004 gl_api_->glVertexAttribDivisorANGLEFn(index, divisor);
9005 }
9006
9007 void TraceGLApi::glVertexAttribI4iFn(GLuint indx,
9008 GLint x,
9009 GLint y,
9010 GLint z,
9011 GLint w) {
9012 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glVertexAttribI4i")
9013 gl_api_->glVertexAttribI4iFn(indx, x, y, z, w);
9014 }
9015
9016 void TraceGLApi::glVertexAttribI4ivFn(GLuint indx, const GLint* values) {
9017 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glVertexAttribI4iv")
9018 gl_api_->glVertexAttribI4ivFn(indx, values);
9019 }
9020
9021 void TraceGLApi::glVertexAttribI4uiFn(GLuint indx,
9022 GLuint x,
9023 GLuint y,
9024 GLuint z,
9025 GLuint w) {
9026 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glVertexAttribI4ui")
9027 gl_api_->glVertexAttribI4uiFn(indx, x, y, z, w);
9028 }
9029
9030 void TraceGLApi::glVertexAttribI4uivFn(GLuint indx, const GLuint* values) {
9031 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glVertexAttribI4uiv")
9032 gl_api_->glVertexAttribI4uivFn(indx, values);
9033 }
9034
9035 void TraceGLApi::glVertexAttribIPointerFn(GLuint indx,
9036 GLint size,
9037 GLenum type,
9038 GLsizei stride,
9039 const void* ptr) {
9040 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glVertexAttribIPointer")
9041 gl_api_->glVertexAttribIPointerFn(indx, size, type, stride, ptr);
9042 }
9043
9044 void TraceGLApi::glVertexAttribPointerFn(GLuint indx,
9045 GLint size,
9046 GLenum type,
9047 GLboolean normalized,
9048 GLsizei stride,
9049 const void* ptr) {
9050 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glVertexAttribPointer")
9051 gl_api_->glVertexAttribPointerFn(indx, size, type, normalized, stride, ptr);
9052 }
9053
9054 void TraceGLApi::glViewportFn(GLint x, GLint y, GLsizei width, GLsizei height) {
9055 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glViewport")
9056 gl_api_->glViewportFn(x, y, width, height);
9057 }
9058
9059 GLenum TraceGLApi::glWaitSyncFn(GLsync sync,
9060 GLbitfield flags,
9061 GLuint64 timeout) {
9062 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glWaitSync")
9063 return gl_api_->glWaitSyncFn(sync, flags, timeout);
9064 }
9065
9066 void NoContextGLApi::glActiveTextureFn(GLenum texture) {
9067 NOTREACHED() << "Trying to call glActiveTexture() without current GL context";
9068 LOG(ERROR) << "Trying to call glActiveTexture() without current GL context";
9069 }
9070
9071 void NoContextGLApi::glAttachShaderFn(GLuint program, GLuint shader) {
9072 NOTREACHED() << "Trying to call glAttachShader() without current GL context";
9073 LOG(ERROR) << "Trying to call glAttachShader() without current GL context";
9074 }
9075
9076 void NoContextGLApi::glBeginQueryFn(GLenum target, GLuint id) {
9077 NOTREACHED() << "Trying to call glBeginQuery() without current GL context";
9078 LOG(ERROR) << "Trying to call glBeginQuery() without current GL context";
9079 }
9080
9081 void NoContextGLApi::glBeginQueryARBFn(GLenum target, GLuint id) {
9082 NOTREACHED() << "Trying to call glBeginQueryARB() without current GL context";
9083 LOG(ERROR) << "Trying to call glBeginQueryARB() without current GL context";
9084 }
9085
9086 void NoContextGLApi::glBeginTransformFeedbackFn(GLenum primitiveMode) {
9087 NOTREACHED()
9088 << "Trying to call glBeginTransformFeedback() without current GL context";
9089 LOG(ERROR)
9090 << "Trying to call glBeginTransformFeedback() without current GL context";
9091 }
9092
9093 void NoContextGLApi::glBindAttribLocationFn(GLuint program,
9094 GLuint index,
9095 const char* name) {
9096 NOTREACHED()
9097 << "Trying to call glBindAttribLocation() without current GL context";
9098 LOG(ERROR)
9099 << "Trying to call glBindAttribLocation() without current GL context";
9100 }
9101
9102 void NoContextGLApi::glBindBufferFn(GLenum target, GLuint buffer) {
9103 NOTREACHED() << "Trying to call glBindBuffer() without current GL context";
9104 LOG(ERROR) << "Trying to call glBindBuffer() without current GL context";
9105 }
9106
9107 void NoContextGLApi::glBindBufferBaseFn(GLenum target,
9108 GLuint index,
9109 GLuint buffer) {
9110 NOTREACHED()
9111 << "Trying to call glBindBufferBase() without current GL context";
9112 LOG(ERROR) << "Trying to call glBindBufferBase() without current GL context";
9113 }
9114
9115 void NoContextGLApi::glBindBufferRangeFn(GLenum target,
9116 GLuint index,
9117 GLuint buffer,
9118 GLintptr offset,
9119 GLsizeiptr size) {
9120 NOTREACHED()
9121 << "Trying to call glBindBufferRange() without current GL context";
9122 LOG(ERROR) << "Trying to call glBindBufferRange() without current GL context";
9123 }
9124
9125 void NoContextGLApi::glBindFragDataLocationFn(GLuint program,
9126 GLuint colorNumber,
9127 const char* name) {
9128 NOTREACHED()
9129 << "Trying to call glBindFragDataLocation() without current GL context";
9130 LOG(ERROR)
9131 << "Trying to call glBindFragDataLocation() without current GL context";
9132 }
9133
9134 void NoContextGLApi::glBindFragDataLocationIndexedFn(GLuint program,
9135 GLuint colorNumber,
9136 GLuint index,
9137 const char* name) {
9138 NOTREACHED() << "Trying to call glBindFragDataLocationIndexed() without "
9139 "current GL context";
9140 LOG(ERROR) << "Trying to call glBindFragDataLocationIndexed() without "
9141 "current GL context";
9142 }
9143
9144 void NoContextGLApi::glBindFramebufferEXTFn(GLenum target, GLuint framebuffer) {
9145 NOTREACHED()
9146 << "Trying to call glBindFramebufferEXT() without current GL context";
9147 LOG(ERROR)
9148 << "Trying to call glBindFramebufferEXT() without current GL context";
9149 }
9150
9151 void NoContextGLApi::glBindRenderbufferEXTFn(GLenum target,
9152 GLuint renderbuffer) {
9153 NOTREACHED()
9154 << "Trying to call glBindRenderbufferEXT() without current GL context";
9155 LOG(ERROR)
9156 << "Trying to call glBindRenderbufferEXT() without current GL context";
9157 }
9158
9159 void NoContextGLApi::glBindSamplerFn(GLuint unit, GLuint sampler) {
9160 NOTREACHED() << "Trying to call glBindSampler() without current GL context";
9161 LOG(ERROR) << "Trying to call glBindSampler() without current GL context";
9162 }
9163
9164 void NoContextGLApi::glBindTextureFn(GLenum target, GLuint texture) {
9165 NOTREACHED() << "Trying to call glBindTexture() without current GL context";
9166 LOG(ERROR) << "Trying to call glBindTexture() without current GL context";
9167 }
9168
9169 void NoContextGLApi::glBindTransformFeedbackFn(GLenum target, GLuint id) {
9170 NOTREACHED()
9171 << "Trying to call glBindTransformFeedback() without current GL context";
9172 LOG(ERROR)
9173 << "Trying to call glBindTransformFeedback() without current GL context";
9174 }
9175
9176 void NoContextGLApi::glBindVertexArrayOESFn(GLuint array) {
9177 NOTREACHED()
9178 << "Trying to call glBindVertexArrayOES() without current GL context";
9179 LOG(ERROR)
9180 << "Trying to call glBindVertexArrayOES() without current GL context";
9181 }
9182
9183 void NoContextGLApi::glBlendBarrierKHRFn(void) {
9184 NOTREACHED()
9185 << "Trying to call glBlendBarrierKHR() without current GL context";
9186 LOG(ERROR) << "Trying to call glBlendBarrierKHR() without current GL context";
9187 }
9188
9189 void NoContextGLApi::glBlendColorFn(GLclampf red,
9190 GLclampf green,
9191 GLclampf blue,
9192 GLclampf alpha) {
9193 NOTREACHED() << "Trying to call glBlendColor() without current GL context";
9194 LOG(ERROR) << "Trying to call glBlendColor() without current GL context";
9195 }
9196
9197 void NoContextGLApi::glBlendEquationFn(GLenum mode) {
9198 NOTREACHED() << "Trying to call glBlendEquation() without current GL context";
9199 LOG(ERROR) << "Trying to call glBlendEquation() without current GL context";
9200 }
9201
9202 void NoContextGLApi::glBlendEquationSeparateFn(GLenum modeRGB,
9203 GLenum modeAlpha) {
9204 NOTREACHED()
9205 << "Trying to call glBlendEquationSeparate() without current GL context";
9206 LOG(ERROR)
9207 << "Trying to call glBlendEquationSeparate() without current GL context";
9208 }
9209
9210 void NoContextGLApi::glBlendFuncFn(GLenum sfactor, GLenum dfactor) {
9211 NOTREACHED() << "Trying to call glBlendFunc() without current GL context";
9212 LOG(ERROR) << "Trying to call glBlendFunc() without current GL context";
9213 }
9214
9215 void NoContextGLApi::glBlendFuncSeparateFn(GLenum srcRGB,
9216 GLenum dstRGB,
9217 GLenum srcAlpha,
9218 GLenum dstAlpha) {
9219 NOTREACHED()
9220 << "Trying to call glBlendFuncSeparate() without current GL context";
9221 LOG(ERROR)
9222 << "Trying to call glBlendFuncSeparate() without current GL context";
9223 }
9224
9225 void NoContextGLApi::glBlitFramebufferFn(GLint srcX0,
9226 GLint srcY0,
9227 GLint srcX1,
9228 GLint srcY1,
9229 GLint dstX0,
9230 GLint dstY0,
9231 GLint dstX1,
9232 GLint dstY1,
9233 GLbitfield mask,
9234 GLenum filter) {
9235 NOTREACHED()
9236 << "Trying to call glBlitFramebuffer() without current GL context";
9237 LOG(ERROR) << "Trying to call glBlitFramebuffer() without current GL context";
9238 }
9239
9240 void NoContextGLApi::glBlitFramebufferANGLEFn(GLint srcX0,
9241 GLint srcY0,
9242 GLint srcX1,
9243 GLint srcY1,
9244 GLint dstX0,
9245 GLint dstY0,
9246 GLint dstX1,
9247 GLint dstY1,
9248 GLbitfield mask,
9249 GLenum filter) {
9250 NOTREACHED()
9251 << "Trying to call glBlitFramebufferANGLE() without current GL context";
9252 LOG(ERROR)
9253 << "Trying to call glBlitFramebufferANGLE() without current GL context";
9254 }
9255
9256 void NoContextGLApi::glBlitFramebufferEXTFn(GLint srcX0,
9257 GLint srcY0,
9258 GLint srcX1,
9259 GLint srcY1,
9260 GLint dstX0,
9261 GLint dstY0,
9262 GLint dstX1,
9263 GLint dstY1,
9264 GLbitfield mask,
9265 GLenum filter) {
9266 NOTREACHED()
9267 << "Trying to call glBlitFramebufferEXT() without current GL context";
9268 LOG(ERROR)
9269 << "Trying to call glBlitFramebufferEXT() without current GL context";
9270 }
9271
9272 void NoContextGLApi::glBufferDataFn(GLenum target,
9273 GLsizeiptr size,
9274 const void* data,
9275 GLenum usage) {
9276 NOTREACHED() << "Trying to call glBufferData() without current GL context";
9277 LOG(ERROR) << "Trying to call glBufferData() without current GL context";
9278 }
9279
9280 void NoContextGLApi::glBufferSubDataFn(GLenum target,
9281 GLintptr offset,
9282 GLsizeiptr size,
9283 const void* data) {
9284 NOTREACHED() << "Trying to call glBufferSubData() without current GL context";
9285 LOG(ERROR) << "Trying to call glBufferSubData() without current GL context";
9286 }
9287
9288 GLenum NoContextGLApi::glCheckFramebufferStatusEXTFn(GLenum target) {
9289 NOTREACHED() << "Trying to call glCheckFramebufferStatusEXT() without "
9290 "current GL context";
9291 LOG(ERROR) << "Trying to call glCheckFramebufferStatusEXT() without current "
9292 "GL context";
9293 return static_cast<GLenum>(0);
9294 }
9295
9296 void NoContextGLApi::glClearFn(GLbitfield mask) {
9297 NOTREACHED() << "Trying to call glClear() without current GL context";
9298 LOG(ERROR) << "Trying to call glClear() without current GL context";
9299 }
9300
9301 void NoContextGLApi::glClearBufferfiFn(GLenum buffer,
9302 GLint drawbuffer,
9303 const GLfloat depth,
9304 GLint stencil) {
9305 NOTREACHED() << "Trying to call glClearBufferfi() without current GL context";
9306 LOG(ERROR) << "Trying to call glClearBufferfi() without current GL context";
9307 }
9308
9309 void NoContextGLApi::glClearBufferfvFn(GLenum buffer,
9310 GLint drawbuffer,
9311 const GLfloat* value) {
9312 NOTREACHED() << "Trying to call glClearBufferfv() without current GL context";
9313 LOG(ERROR) << "Trying to call glClearBufferfv() without current GL context";
9314 }
9315
9316 void NoContextGLApi::glClearBufferivFn(GLenum buffer,
9317 GLint drawbuffer,
9318 const GLint* value) {
9319 NOTREACHED() << "Trying to call glClearBufferiv() without current GL context";
9320 LOG(ERROR) << "Trying to call glClearBufferiv() without current GL context";
9321 }
9322
9323 void NoContextGLApi::glClearBufferuivFn(GLenum buffer,
9324 GLint drawbuffer,
9325 const GLuint* value) {
9326 NOTREACHED()
9327 << "Trying to call glClearBufferuiv() without current GL context";
9328 LOG(ERROR) << "Trying to call glClearBufferuiv() without current GL context";
9329 }
9330
9331 void NoContextGLApi::glClearColorFn(GLclampf red,
9332 GLclampf green,
9333 GLclampf blue,
9334 GLclampf alpha) {
9335 NOTREACHED() << "Trying to call glClearColor() without current GL context";
9336 LOG(ERROR) << "Trying to call glClearColor() without current GL context";
9337 }
9338
9339 void NoContextGLApi::glClearDepthFn(GLclampd depth) {
9340 NOTREACHED() << "Trying to call glClearDepth() without current GL context";
9341 LOG(ERROR) << "Trying to call glClearDepth() without current GL context";
9342 }
9343
9344 void NoContextGLApi::glClearDepthfFn(GLclampf depth) {
9345 NOTREACHED() << "Trying to call glClearDepthf() without current GL context";
9346 LOG(ERROR) << "Trying to call glClearDepthf() without current GL context";
9347 }
9348
9349 void NoContextGLApi::glClearStencilFn(GLint s) {
9350 NOTREACHED() << "Trying to call glClearStencil() without current GL context";
9351 LOG(ERROR) << "Trying to call glClearStencil() without current GL context";
9352 }
9353
9354 GLenum NoContextGLApi::glClientWaitSyncFn(GLsync sync,
9355 GLbitfield flags,
9356 GLuint64 timeout) {
9357 NOTREACHED()
9358 << "Trying to call glClientWaitSync() without current GL context";
9359 LOG(ERROR) << "Trying to call glClientWaitSync() without current GL context";
9360 return static_cast<GLenum>(0);
9361 }
9362
9363 void NoContextGLApi::glColorMaskFn(GLboolean red,
9364 GLboolean green,
9365 GLboolean blue,
9366 GLboolean alpha) {
9367 NOTREACHED() << "Trying to call glColorMask() without current GL context";
9368 LOG(ERROR) << "Trying to call glColorMask() without current GL context";
9369 }
9370
9371 void NoContextGLApi::glCompileShaderFn(GLuint shader) {
9372 NOTREACHED() << "Trying to call glCompileShader() without current GL context";
9373 LOG(ERROR) << "Trying to call glCompileShader() without current GL context";
9374 }
9375
9376 void NoContextGLApi::glCompressedTexImage2DFn(GLenum target,
9377 GLint level,
9378 GLenum internalformat,
9379 GLsizei width,
9380 GLsizei height,
9381 GLint border,
9382 GLsizei imageSize,
9383 const void* data) {
9384 NOTREACHED()
9385 << "Trying to call glCompressedTexImage2D() without current GL context";
9386 LOG(ERROR)
9387 << "Trying to call glCompressedTexImage2D() without current GL context";
9388 }
9389
9390 void NoContextGLApi::glCompressedTexImage3DFn(GLenum target,
9391 GLint level,
9392 GLenum internalformat,
9393 GLsizei width,
9394 GLsizei height,
9395 GLsizei depth,
9396 GLint border,
9397 GLsizei imageSize,
9398 const void* data) {
9399 NOTREACHED()
9400 << "Trying to call glCompressedTexImage3D() without current GL context";
9401 LOG(ERROR)
9402 << "Trying to call glCompressedTexImage3D() without current GL context";
9403 }
9404
9405 void NoContextGLApi::glCompressedTexSubImage2DFn(GLenum target,
9406 GLint level,
9407 GLint xoffset,
9408 GLint yoffset,
9409 GLsizei width,
9410 GLsizei height,
9411 GLenum format,
9412 GLsizei imageSize,
9413 const void* data) {
9414 NOTREACHED() << "Trying to call glCompressedTexSubImage2D() without current "
9415 "GL context";
9416 LOG(ERROR) << "Trying to call glCompressedTexSubImage2D() without current GL "
9417 "context";
9418 }
9419
9420 void NoContextGLApi::glCopyBufferSubDataFn(GLenum readTarget,
9421 GLenum writeTarget,
9422 GLintptr readOffset,
9423 GLintptr writeOffset,
9424 GLsizeiptr size) {
9425 NOTREACHED()
9426 << "Trying to call glCopyBufferSubData() without current GL context";
9427 LOG(ERROR)
9428 << "Trying to call glCopyBufferSubData() without current GL context";
9429 }
9430
9431 void NoContextGLApi::glCopyTexImage2DFn(GLenum target,
9432 GLint level,
9433 GLenum internalformat,
9434 GLint x,
9435 GLint y,
9436 GLsizei width,
9437 GLsizei height,
9438 GLint border) {
9439 NOTREACHED()
9440 << "Trying to call glCopyTexImage2D() without current GL context";
9441 LOG(ERROR) << "Trying to call glCopyTexImage2D() without current GL context";
9442 }
9443
9444 void NoContextGLApi::glCopyTexSubImage2DFn(GLenum target,
9445 GLint level,
9446 GLint xoffset,
9447 GLint yoffset,
9448 GLint x,
9449 GLint y,
9450 GLsizei width,
9451 GLsizei height) {
9452 NOTREACHED()
9453 << "Trying to call glCopyTexSubImage2D() without current GL context";
9454 LOG(ERROR)
9455 << "Trying to call glCopyTexSubImage2D() without current GL context";
9456 }
9457
9458 void NoContextGLApi::glCopyTexSubImage3DFn(GLenum target,
9459 GLint level,
9460 GLint xoffset,
9461 GLint yoffset,
9462 GLint zoffset,
9463 GLint x,
9464 GLint y,
9465 GLsizei width,
9466 GLsizei height) {
9467 NOTREACHED()
9468 << "Trying to call glCopyTexSubImage3D() without current GL context";
9469 LOG(ERROR)
9470 << "Trying to call glCopyTexSubImage3D() without current GL context";
9471 }
9472
9473 GLuint NoContextGLApi::glCreateProgramFn(void) {
9474 NOTREACHED() << "Trying to call glCreateProgram() without current GL context";
9475 LOG(ERROR) << "Trying to call glCreateProgram() without current GL context";
9476 return 0U;
9477 }
9478
9479 GLuint NoContextGLApi::glCreateShaderFn(GLenum type) {
9480 NOTREACHED() << "Trying to call glCreateShader() without current GL context";
9481 LOG(ERROR) << "Trying to call glCreateShader() without current GL context";
9482 return 0U;
9483 }
9484
9485 void NoContextGLApi::glCullFaceFn(GLenum mode) {
9486 NOTREACHED() << "Trying to call glCullFace() without current GL context";
9487 LOG(ERROR) << "Trying to call glCullFace() without current GL context";
9488 }
9489
9490 void NoContextGLApi::glDeleteBuffersARBFn(GLsizei n, const GLuint* buffers) {
9491 NOTREACHED()
9492 << "Trying to call glDeleteBuffersARB() without current GL context";
9493 LOG(ERROR)
9494 << "Trying to call glDeleteBuffersARB() without current GL context";
9495 }
9496
9497 void NoContextGLApi::glDeleteFencesAPPLEFn(GLsizei n, const GLuint* fences) {
9498 NOTREACHED()
9499 << "Trying to call glDeleteFencesAPPLE() without current GL context";
9500 LOG(ERROR)
9501 << "Trying to call glDeleteFencesAPPLE() without current GL context";
9502 }
9503
9504 void NoContextGLApi::glDeleteFencesNVFn(GLsizei n, const GLuint* fences) {
9505 NOTREACHED()
9506 << "Trying to call glDeleteFencesNV() without current GL context";
9507 LOG(ERROR) << "Trying to call glDeleteFencesNV() without current GL context";
9508 }
9509
9510 void NoContextGLApi::glDeleteFramebuffersEXTFn(GLsizei n,
9511 const GLuint* framebuffers) {
9512 NOTREACHED()
9513 << "Trying to call glDeleteFramebuffersEXT() without current GL context";
9514 LOG(ERROR)
9515 << "Trying to call glDeleteFramebuffersEXT() without current GL context";
9516 }
9517
9518 void NoContextGLApi::glDeleteProgramFn(GLuint program) {
9519 NOTREACHED() << "Trying to call glDeleteProgram() without current GL context";
9520 LOG(ERROR) << "Trying to call glDeleteProgram() without current GL context";
9521 }
9522
9523 void NoContextGLApi::glDeleteQueriesFn(GLsizei n, const GLuint* ids) {
9524 NOTREACHED() << "Trying to call glDeleteQueries() without current GL context";
9525 LOG(ERROR) << "Trying to call glDeleteQueries() without current GL context";
9526 }
9527
9528 void NoContextGLApi::glDeleteQueriesARBFn(GLsizei n, const GLuint* ids) {
9529 NOTREACHED()
9530 << "Trying to call glDeleteQueriesARB() without current GL context";
9531 LOG(ERROR)
9532 << "Trying to call glDeleteQueriesARB() without current GL context";
9533 }
9534
9535 void NoContextGLApi::glDeleteRenderbuffersEXTFn(GLsizei n,
9536 const GLuint* renderbuffers) {
9537 NOTREACHED()
9538 << "Trying to call glDeleteRenderbuffersEXT() without current GL context";
9539 LOG(ERROR)
9540 << "Trying to call glDeleteRenderbuffersEXT() without current GL context";
9541 }
9542
9543 void NoContextGLApi::glDeleteSamplersFn(GLsizei n, const GLuint* samplers) {
9544 NOTREACHED()
9545 << "Trying to call glDeleteSamplers() without current GL context";
9546 LOG(ERROR) << "Trying to call glDeleteSamplers() without current GL context";
9547 }
9548
9549 void NoContextGLApi::glDeleteShaderFn(GLuint shader) {
9550 NOTREACHED() << "Trying to call glDeleteShader() without current GL context";
9551 LOG(ERROR) << "Trying to call glDeleteShader() without current GL context";
9552 }
9553
9554 void NoContextGLApi::glDeleteSyncFn(GLsync sync) {
9555 NOTREACHED() << "Trying to call glDeleteSync() without current GL context";
9556 LOG(ERROR) << "Trying to call glDeleteSync() without current GL context";
9557 }
9558
9559 void NoContextGLApi::glDeleteTexturesFn(GLsizei n, const GLuint* textures) {
9560 NOTREACHED()
9561 << "Trying to call glDeleteTextures() without current GL context";
9562 LOG(ERROR) << "Trying to call glDeleteTextures() without current GL context";
9563 }
9564
9565 void NoContextGLApi::glDeleteTransformFeedbacksFn(GLsizei n,
9566 const GLuint* ids) {
9567 NOTREACHED() << "Trying to call glDeleteTransformFeedbacks() without current "
9568 "GL context";
9569 LOG(ERROR) << "Trying to call glDeleteTransformFeedbacks() without current "
9570 "GL context";
9571 }
9572
9573 void NoContextGLApi::glDeleteVertexArraysOESFn(GLsizei n,
9574 const GLuint* arrays) {
9575 NOTREACHED()
9576 << "Trying to call glDeleteVertexArraysOES() without current GL context";
9577 LOG(ERROR)
9578 << "Trying to call glDeleteVertexArraysOES() without current GL context";
9579 }
9580
9581 void NoContextGLApi::glDepthFuncFn(GLenum func) {
9582 NOTREACHED() << "Trying to call glDepthFunc() without current GL context";
9583 LOG(ERROR) << "Trying to call glDepthFunc() without current GL context";
9584 }
9585
9586 void NoContextGLApi::glDepthMaskFn(GLboolean flag) {
9587 NOTREACHED() << "Trying to call glDepthMask() without current GL context";
9588 LOG(ERROR) << "Trying to call glDepthMask() without current GL context";
9589 }
9590
9591 void NoContextGLApi::glDepthRangeFn(GLclampd zNear, GLclampd zFar) {
9592 NOTREACHED() << "Trying to call glDepthRange() without current GL context";
9593 LOG(ERROR) << "Trying to call glDepthRange() without current GL context";
9594 }
9595
9596 void NoContextGLApi::glDepthRangefFn(GLclampf zNear, GLclampf zFar) {
9597 NOTREACHED() << "Trying to call glDepthRangef() without current GL context";
9598 LOG(ERROR) << "Trying to call glDepthRangef() without current GL context";
9599 }
9600
9601 void NoContextGLApi::glDetachShaderFn(GLuint program, GLuint shader) {
9602 NOTREACHED() << "Trying to call glDetachShader() without current GL context";
9603 LOG(ERROR) << "Trying to call glDetachShader() without current GL context";
9604 }
9605
9606 void NoContextGLApi::glDisableFn(GLenum cap) {
9607 NOTREACHED() << "Trying to call glDisable() without current GL context";
9608 LOG(ERROR) << "Trying to call glDisable() without current GL context";
9609 }
9610
9611 void NoContextGLApi::glDisableVertexAttribArrayFn(GLuint index) {
9612 NOTREACHED() << "Trying to call glDisableVertexAttribArray() without current "
9613 "GL context";
9614 LOG(ERROR) << "Trying to call glDisableVertexAttribArray() without current "
9615 "GL context";
9616 }
9617
9618 void NoContextGLApi::glDiscardFramebufferEXTFn(GLenum target,
9619 GLsizei numAttachments,
9620 const GLenum* attachments) {
9621 NOTREACHED()
9622 << "Trying to call glDiscardFramebufferEXT() without current GL context";
9623 LOG(ERROR)
9624 << "Trying to call glDiscardFramebufferEXT() without current GL context";
9625 }
9626
9627 void NoContextGLApi::glDrawArraysFn(GLenum mode, GLint first, GLsizei count) {
9628 NOTREACHED() << "Trying to call glDrawArrays() without current GL context";
9629 LOG(ERROR) << "Trying to call glDrawArrays() without current GL context";
9630 }
9631
9632 void NoContextGLApi::glDrawArraysInstancedANGLEFn(GLenum mode,
9633 GLint first,
9634 GLsizei count,
9635 GLsizei primcount) {
9636 NOTREACHED() << "Trying to call glDrawArraysInstancedANGLE() without current "
9637 "GL context";
9638 LOG(ERROR) << "Trying to call glDrawArraysInstancedANGLE() without current "
9639 "GL context";
9640 }
9641
9642 void NoContextGLApi::glDrawBufferFn(GLenum mode) {
9643 NOTREACHED() << "Trying to call glDrawBuffer() without current GL context";
9644 LOG(ERROR) << "Trying to call glDrawBuffer() without current GL context";
9645 }
9646
9647 void NoContextGLApi::glDrawBuffersARBFn(GLsizei n, const GLenum* bufs) {
9648 NOTREACHED()
9649 << "Trying to call glDrawBuffersARB() without current GL context";
9650 LOG(ERROR) << "Trying to call glDrawBuffersARB() without current GL context";
9651 }
9652
9653 void NoContextGLApi::glDrawElementsFn(GLenum mode,
9654 GLsizei count,
9655 GLenum type,
9656 const void* indices) {
9657 NOTREACHED() << "Trying to call glDrawElements() without current GL context";
9658 LOG(ERROR) << "Trying to call glDrawElements() without current GL context";
9659 }
9660
9661 void NoContextGLApi::glDrawElementsInstancedANGLEFn(GLenum mode,
9662 GLsizei count,
9663 GLenum type,
9664 const void* indices,
9665 GLsizei primcount) {
9666 NOTREACHED() << "Trying to call glDrawElementsInstancedANGLE() without "
9667 "current GL context";
9668 LOG(ERROR) << "Trying to call glDrawElementsInstancedANGLE() without current "
9669 "GL context";
9670 }
9671
9672 void NoContextGLApi::glDrawRangeElementsFn(GLenum mode,
9673 GLuint start,
9674 GLuint end,
9675 GLsizei count,
9676 GLenum type,
9677 const void* indices) {
9678 NOTREACHED()
9679 << "Trying to call glDrawRangeElements() without current GL context";
9680 LOG(ERROR)
9681 << "Trying to call glDrawRangeElements() without current GL context";
9682 }
9683
9684 void NoContextGLApi::glEGLImageTargetRenderbufferStorageOESFn(
9685 GLenum target,
9686 GLeglImageOES image) {
9687 NOTREACHED() << "Trying to call glEGLImageTargetRenderbufferStorageOES() "
9688 "without current GL context";
9689 LOG(ERROR) << "Trying to call glEGLImageTargetRenderbufferStorageOES() "
9690 "without current GL context";
9691 }
9692
9693 void NoContextGLApi::glEGLImageTargetTexture2DOESFn(GLenum target,
9694 GLeglImageOES image) {
9695 NOTREACHED() << "Trying to call glEGLImageTargetTexture2DOES() without "
9696 "current GL context";
9697 LOG(ERROR) << "Trying to call glEGLImageTargetTexture2DOES() without current "
9698 "GL context";
9699 }
9700
9701 void NoContextGLApi::glEnableFn(GLenum cap) {
9702 NOTREACHED() << "Trying to call glEnable() without current GL context";
9703 LOG(ERROR) << "Trying to call glEnable() without current GL context";
9704 }
9705
9706 void NoContextGLApi::glEnableVertexAttribArrayFn(GLuint index) {
9707 NOTREACHED() << "Trying to call glEnableVertexAttribArray() without current "
9708 "GL context";
9709 LOG(ERROR) << "Trying to call glEnableVertexAttribArray() without current GL "
9710 "context";
9711 }
9712
9713 void NoContextGLApi::glEndQueryFn(GLenum target) {
9714 NOTREACHED() << "Trying to call glEndQuery() without current GL context";
9715 LOG(ERROR) << "Trying to call glEndQuery() without current GL context";
9716 }
9717
9718 void NoContextGLApi::glEndQueryARBFn(GLenum target) {
9719 NOTREACHED() << "Trying to call glEndQueryARB() without current GL context";
9720 LOG(ERROR) << "Trying to call glEndQueryARB() without current GL context";
9721 }
9722
9723 void NoContextGLApi::glEndTransformFeedbackFn(void) {
9724 NOTREACHED()
9725 << "Trying to call glEndTransformFeedback() without current GL context";
9726 LOG(ERROR)
9727 << "Trying to call glEndTransformFeedback() without current GL context";
9728 }
9729
9730 GLsync NoContextGLApi::glFenceSyncFn(GLenum condition, GLbitfield flags) {
9731 NOTREACHED() << "Trying to call glFenceSync() without current GL context";
9732 LOG(ERROR) << "Trying to call glFenceSync() without current GL context";
9733 return NULL;
9734 }
9735
9736 void NoContextGLApi::glFinishFn(void) {
9737 NOTREACHED() << "Trying to call glFinish() without current GL context";
9738 LOG(ERROR) << "Trying to call glFinish() without current GL context";
9739 }
9740
9741 void NoContextGLApi::glFinishFenceAPPLEFn(GLuint fence) {
9742 NOTREACHED()
9743 << "Trying to call glFinishFenceAPPLE() without current GL context";
9744 LOG(ERROR)
9745 << "Trying to call glFinishFenceAPPLE() without current GL context";
9746 }
9747
9748 void NoContextGLApi::glFinishFenceNVFn(GLuint fence) {
9749 NOTREACHED() << "Trying to call glFinishFenceNV() without current GL context";
9750 LOG(ERROR) << "Trying to call glFinishFenceNV() without current GL context";
9751 }
9752
9753 void NoContextGLApi::glFlushFn(void) {
9754 NOTREACHED() << "Trying to call glFlush() without current GL context";
9755 LOG(ERROR) << "Trying to call glFlush() without current GL context";
9756 }
9757
9758 void NoContextGLApi::glFlushMappedBufferRangeFn(GLenum target,
9759 GLintptr offset,
9760 GLsizeiptr length) {
9761 NOTREACHED()
9762 << "Trying to call glFlushMappedBufferRange() without current GL context";
9763 LOG(ERROR)
9764 << "Trying to call glFlushMappedBufferRange() without current GL context";
9765 }
9766
9767 void NoContextGLApi::glFramebufferRenderbufferEXTFn(GLenum target,
9768 GLenum attachment,
9769 GLenum renderbuffertarget,
9770 GLuint renderbuffer) {
9771 NOTREACHED() << "Trying to call glFramebufferRenderbufferEXT() without "
9772 "current GL context";
9773 LOG(ERROR) << "Trying to call glFramebufferRenderbufferEXT() without current "
9774 "GL context";
9775 }
9776
9777 void NoContextGLApi::glFramebufferTexture2DEXTFn(GLenum target,
9778 GLenum attachment,
9779 GLenum textarget,
9780 GLuint texture,
9781 GLint level) {
9782 NOTREACHED() << "Trying to call glFramebufferTexture2DEXT() without current "
9783 "GL context";
9784 LOG(ERROR) << "Trying to call glFramebufferTexture2DEXT() without current GL "
9785 "context";
9786 }
9787
9788 void NoContextGLApi::glFramebufferTexture2DMultisampleEXTFn(GLenum target,
9789 GLenum attachment,
9790 GLenum textarget,
9791 GLuint texture,
9792 GLint level,
9793 GLsizei samples) {
9794 NOTREACHED() << "Trying to call glFramebufferTexture2DMultisampleEXT() "
9795 "without current GL context";
9796 LOG(ERROR) << "Trying to call glFramebufferTexture2DMultisampleEXT() without "
9797 "current GL context";
9798 }
9799
9800 void NoContextGLApi::glFramebufferTexture2DMultisampleIMGFn(GLenum target,
9801 GLenum attachment,
9802 GLenum textarget,
9803 GLuint texture,
9804 GLint level,
9805 GLsizei samples) {
9806 NOTREACHED() << "Trying to call glFramebufferTexture2DMultisampleIMG() "
9807 "without current GL context";
9808 LOG(ERROR) << "Trying to call glFramebufferTexture2DMultisampleIMG() without "
9809 "current GL context";
9810 }
9811
9812 void NoContextGLApi::glFramebufferTextureLayerFn(GLenum target,
9813 GLenum attachment,
9814 GLuint texture,
9815 GLint level,
9816 GLint layer) {
9817 NOTREACHED() << "Trying to call glFramebufferTextureLayer() without current "
9818 "GL context";
9819 LOG(ERROR) << "Trying to call glFramebufferTextureLayer() without current GL "
9820 "context";
9821 }
9822
9823 void NoContextGLApi::glFrontFaceFn(GLenum mode) {
9824 NOTREACHED() << "Trying to call glFrontFace() without current GL context";
9825 LOG(ERROR) << "Trying to call glFrontFace() without current GL context";
9826 }
9827
9828 void NoContextGLApi::glGenBuffersARBFn(GLsizei n, GLuint* buffers) {
9829 NOTREACHED() << "Trying to call glGenBuffersARB() without current GL context";
9830 LOG(ERROR) << "Trying to call glGenBuffersARB() without current GL context";
9831 }
9832
9833 void NoContextGLApi::glGenerateMipmapEXTFn(GLenum target) {
9834 NOTREACHED()
9835 << "Trying to call glGenerateMipmapEXT() without current GL context";
9836 LOG(ERROR)
9837 << "Trying to call glGenerateMipmapEXT() without current GL context";
9838 }
9839
9840 void NoContextGLApi::glGenFencesAPPLEFn(GLsizei n, GLuint* fences) {
9841 NOTREACHED()
9842 << "Trying to call glGenFencesAPPLE() without current GL context";
9843 LOG(ERROR) << "Trying to call glGenFencesAPPLE() without current GL context";
9844 }
9845
9846 void NoContextGLApi::glGenFencesNVFn(GLsizei n, GLuint* fences) {
9847 NOTREACHED() << "Trying to call glGenFencesNV() without current GL context";
9848 LOG(ERROR) << "Trying to call glGenFencesNV() without current GL context";
9849 }
9850
9851 void NoContextGLApi::glGenFramebuffersEXTFn(GLsizei n, GLuint* framebuffers) {
9852 NOTREACHED()
9853 << "Trying to call glGenFramebuffersEXT() without current GL context";
9854 LOG(ERROR)
9855 << "Trying to call glGenFramebuffersEXT() without current GL context";
9856 }
9857
9858 void NoContextGLApi::glGenQueriesFn(GLsizei n, GLuint* ids) {
9859 NOTREACHED() << "Trying to call glGenQueries() without current GL context";
9860 LOG(ERROR) << "Trying to call glGenQueries() without current GL context";
9861 }
9862
9863 void NoContextGLApi::glGenQueriesARBFn(GLsizei n, GLuint* ids) {
9864 NOTREACHED() << "Trying to call glGenQueriesARB() without current GL context";
9865 LOG(ERROR) << "Trying to call glGenQueriesARB() without current GL context";
9866 }
9867
9868 void NoContextGLApi::glGenRenderbuffersEXTFn(GLsizei n, GLuint* renderbuffers) {
9869 NOTREACHED()
9870 << "Trying to call glGenRenderbuffersEXT() without current GL context";
9871 LOG(ERROR)
9872 << "Trying to call glGenRenderbuffersEXT() without current GL context";
9873 }
9874
9875 void NoContextGLApi::glGenSamplersFn(GLsizei n, GLuint* samplers) {
9876 NOTREACHED() << "Trying to call glGenSamplers() without current GL context";
9877 LOG(ERROR) << "Trying to call glGenSamplers() without current GL context";
9878 }
9879
9880 void NoContextGLApi::glGenTexturesFn(GLsizei n, GLuint* textures) {
9881 NOTREACHED() << "Trying to call glGenTextures() without current GL context";
9882 LOG(ERROR) << "Trying to call glGenTextures() without current GL context";
9883 }
9884
9885 void NoContextGLApi::glGenTransformFeedbacksFn(GLsizei n, GLuint* ids) {
9886 NOTREACHED()
9887 << "Trying to call glGenTransformFeedbacks() without current GL context";
9888 LOG(ERROR)
9889 << "Trying to call glGenTransformFeedbacks() without current GL context";
9890 }
9891
9892 void NoContextGLApi::glGenVertexArraysOESFn(GLsizei n, GLuint* arrays) {
9893 NOTREACHED()
9894 << "Trying to call glGenVertexArraysOES() without current GL context";
9895 LOG(ERROR)
9896 << "Trying to call glGenVertexArraysOES() without current GL context";
9897 }
9898
9899 void NoContextGLApi::glGetActiveAttribFn(GLuint program,
9900 GLuint index,
9901 GLsizei bufsize,
9902 GLsizei* length,
9903 GLint* size,
9904 GLenum* type,
9905 char* name) {
9906 NOTREACHED()
9907 << "Trying to call glGetActiveAttrib() without current GL context";
9908 LOG(ERROR) << "Trying to call glGetActiveAttrib() without current GL context";
9909 }
9910
9911 void NoContextGLApi::glGetActiveUniformFn(GLuint program,
9912 GLuint index,
9913 GLsizei bufsize,
9914 GLsizei* length,
9915 GLint* size,
9916 GLenum* type,
9917 char* name) {
9918 NOTREACHED()
9919 << "Trying to call glGetActiveUniform() without current GL context";
9920 LOG(ERROR)
9921 << "Trying to call glGetActiveUniform() without current GL context";
9922 }
9923
9924 void NoContextGLApi::glGetActiveUniformBlockivFn(GLuint program,
9925 GLuint uniformBlockIndex,
9926 GLenum pname,
9927 GLint* params) {
9928 NOTREACHED() << "Trying to call glGetActiveUniformBlockiv() without current "
9929 "GL context";
9930 LOG(ERROR) << "Trying to call glGetActiveUniformBlockiv() without current GL "
9931 "context";
9932 }
9933
9934 void NoContextGLApi::glGetActiveUniformBlockNameFn(GLuint program,
9935 GLuint uniformBlockIndex,
9936 GLsizei bufSize,
9937 GLsizei* length,
9938 char* uniformBlockName) {
9939 NOTREACHED() << "Trying to call glGetActiveUniformBlockName() without "
9940 "current GL context";
9941 LOG(ERROR) << "Trying to call glGetActiveUniformBlockName() without current "
9942 "GL context";
9943 }
9944
9945 void NoContextGLApi::glGetActiveUniformsivFn(GLuint program,
9946 GLsizei uniformCount,
9947 const GLuint* uniformIndices,
9948 GLenum pname,
9949 GLint* params) {
9950 NOTREACHED()
9951 << "Trying to call glGetActiveUniformsiv() without current GL context";
9952 LOG(ERROR)
9953 << "Trying to call glGetActiveUniformsiv() without current GL context";
9954 }
9955
9956 void NoContextGLApi::glGetAttachedShadersFn(GLuint program,
9957 GLsizei maxcount,
9958 GLsizei* count,
9959 GLuint* shaders) {
9960 NOTREACHED()
9961 << "Trying to call glGetAttachedShaders() without current GL context";
9962 LOG(ERROR)
9963 << "Trying to call glGetAttachedShaders() without current GL context";
9964 }
9965
9966 GLint NoContextGLApi::glGetAttribLocationFn(GLuint program, const char* name) {
9967 NOTREACHED()
9968 << "Trying to call glGetAttribLocation() without current GL context";
9969 LOG(ERROR)
9970 << "Trying to call glGetAttribLocation() without current GL context";
9971 return 0;
9972 }
9973
9974 void NoContextGLApi::glGetBooleanvFn(GLenum pname, GLboolean* params) {
9975 NOTREACHED() << "Trying to call glGetBooleanv() without current GL context";
9976 LOG(ERROR) << "Trying to call glGetBooleanv() without current GL context";
9977 }
9978
9979 void NoContextGLApi::glGetBufferParameterivFn(GLenum target,
9980 GLenum pname,
9981 GLint* params) {
9982 NOTREACHED()
9983 << "Trying to call glGetBufferParameteriv() without current GL context";
9984 LOG(ERROR)
9985 << "Trying to call glGetBufferParameteriv() without current GL context";
9986 }
9987
9988 GLenum NoContextGLApi::glGetErrorFn(void) {
9989 NOTREACHED() << "Trying to call glGetError() without current GL context";
9990 LOG(ERROR) << "Trying to call glGetError() without current GL context";
9991 return static_cast<GLenum>(0);
9992 }
9993
9994 void NoContextGLApi::glGetFenceivNVFn(GLuint fence,
9995 GLenum pname,
9996 GLint* params) {
9997 NOTREACHED() << "Trying to call glGetFenceivNV() without current GL context";
9998 LOG(ERROR) << "Trying to call glGetFenceivNV() without current GL context";
9999 }
10000
10001 void NoContextGLApi::glGetFloatvFn(GLenum pname, GLfloat* params) {
10002 NOTREACHED() << "Trying to call glGetFloatv() without current GL context";
10003 LOG(ERROR) << "Trying to call glGetFloatv() without current GL context";
10004 }
10005
10006 GLint NoContextGLApi::glGetFragDataLocationFn(GLuint program,
10007 const char* name) {
10008 NOTREACHED()
10009 << "Trying to call glGetFragDataLocation() without current GL context";
10010 LOG(ERROR)
10011 << "Trying to call glGetFragDataLocation() without current GL context";
10012 return 0;
10013 }
10014
10015 void NoContextGLApi::glGetFramebufferAttachmentParameterivEXTFn(
10016 GLenum target,
10017 GLenum attachment,
10018 GLenum pname,
10019 GLint* params) {
10020 NOTREACHED() << "Trying to call glGetFramebufferAttachmentParameterivEXT() "
10021 "without current GL context";
10022 LOG(ERROR) << "Trying to call glGetFramebufferAttachmentParameterivEXT() "
10023 "without current GL context";
10024 }
10025
10026 GLenum NoContextGLApi::glGetGraphicsResetStatusARBFn(void) {
10027 NOTREACHED() << "Trying to call glGetGraphicsResetStatusARB() without "
10028 "current GL context";
10029 LOG(ERROR) << "Trying to call glGetGraphicsResetStatusARB() without current "
10030 "GL context";
10031 return static_cast<GLenum>(0);
10032 }
10033
10034 void NoContextGLApi::glGetInteger64i_vFn(GLenum target,
10035 GLuint index,
10036 GLint64* data) {
10037 NOTREACHED()
10038 << "Trying to call glGetInteger64i_v() without current GL context";
10039 LOG(ERROR) << "Trying to call glGetInteger64i_v() without current GL context";
10040 }
10041
10042 void NoContextGLApi::glGetInteger64vFn(GLenum pname, GLint64* params) {
10043 NOTREACHED() << "Trying to call glGetInteger64v() without current GL context";
10044 LOG(ERROR) << "Trying to call glGetInteger64v() without current GL context";
10045 }
10046
10047 void NoContextGLApi::glGetIntegeri_vFn(GLenum target,
10048 GLuint index,
10049 GLint* data) {
10050 NOTREACHED() << "Trying to call glGetIntegeri_v() without current GL context";
10051 LOG(ERROR) << "Trying to call glGetIntegeri_v() without current GL context";
10052 }
10053
10054 void NoContextGLApi::glGetIntegervFn(GLenum pname, GLint* params) {
10055 NOTREACHED() << "Trying to call glGetIntegerv() without current GL context";
10056 LOG(ERROR) << "Trying to call glGetIntegerv() without current GL context";
10057 }
10058
10059 void NoContextGLApi::glGetInternalformativFn(GLenum target,
10060 GLenum internalformat,
10061 GLenum pname,
10062 GLsizei bufSize,
10063 GLint* params) {
10064 NOTREACHED()
10065 << "Trying to call glGetInternalformativ() without current GL context";
10066 LOG(ERROR)
10067 << "Trying to call glGetInternalformativ() without current GL context";
10068 }
10069
10070 void NoContextGLApi::glGetProgramBinaryFn(GLuint program,
10071 GLsizei bufSize,
10072 GLsizei* length,
10073 GLenum* binaryFormat,
10074 GLvoid* binary) {
10075 NOTREACHED()
10076 << "Trying to call glGetProgramBinary() without current GL context";
10077 LOG(ERROR)
10078 << "Trying to call glGetProgramBinary() without current GL context";
10079 }
10080
10081 void NoContextGLApi::glGetProgramInfoLogFn(GLuint program,
10082 GLsizei bufsize,
10083 GLsizei* length,
10084 char* infolog) {
10085 NOTREACHED()
10086 << "Trying to call glGetProgramInfoLog() without current GL context";
10087 LOG(ERROR)
10088 << "Trying to call glGetProgramInfoLog() without current GL context";
10089 }
10090
10091 void NoContextGLApi::glGetProgramivFn(GLuint program,
10092 GLenum pname,
10093 GLint* params) {
10094 NOTREACHED() << "Trying to call glGetProgramiv() without current GL context";
10095 LOG(ERROR) << "Trying to call glGetProgramiv() without current GL context";
10096 }
10097
10098 void NoContextGLApi::glGetQueryivFn(GLenum target,
10099 GLenum pname,
10100 GLint* params) {
10101 NOTREACHED() << "Trying to call glGetQueryiv() without current GL context";
10102 LOG(ERROR) << "Trying to call glGetQueryiv() without current GL context";
10103 }
10104
10105 void NoContextGLApi::glGetQueryivARBFn(GLenum target,
10106 GLenum pname,
10107 GLint* params) {
10108 NOTREACHED() << "Trying to call glGetQueryivARB() without current GL context";
10109 LOG(ERROR) << "Trying to call glGetQueryivARB() without current GL context";
10110 }
10111
10112 void NoContextGLApi::glGetQueryObjecti64vFn(GLuint id,
10113 GLenum pname,
10114 GLint64* params) {
10115 NOTREACHED()
10116 << "Trying to call glGetQueryObjecti64v() without current GL context";
10117 LOG(ERROR)
10118 << "Trying to call glGetQueryObjecti64v() without current GL context";
10119 }
10120
10121 void NoContextGLApi::glGetQueryObjectivFn(GLuint id,
10122 GLenum pname,
10123 GLint* params) {
10124 NOTREACHED()
10125 << "Trying to call glGetQueryObjectiv() without current GL context";
10126 LOG(ERROR)
10127 << "Trying to call glGetQueryObjectiv() without current GL context";
10128 }
10129
10130 void NoContextGLApi::glGetQueryObjectivARBFn(GLuint id,
10131 GLenum pname,
10132 GLint* params) {
10133 NOTREACHED()
10134 << "Trying to call glGetQueryObjectivARB() without current GL context";
10135 LOG(ERROR)
10136 << "Trying to call glGetQueryObjectivARB() without current GL context";
10137 }
10138
10139 void NoContextGLApi::glGetQueryObjectui64vFn(GLuint id,
10140 GLenum pname,
10141 GLuint64* params) {
10142 NOTREACHED()
10143 << "Trying to call glGetQueryObjectui64v() without current GL context";
10144 LOG(ERROR)
10145 << "Trying to call glGetQueryObjectui64v() without current GL context";
10146 }
10147
10148 void NoContextGLApi::glGetQueryObjectuivFn(GLuint id,
10149 GLenum pname,
10150 GLuint* params) {
10151 NOTREACHED()
10152 << "Trying to call glGetQueryObjectuiv() without current GL context";
10153 LOG(ERROR)
10154 << "Trying to call glGetQueryObjectuiv() without current GL context";
10155 }
10156
10157 void NoContextGLApi::glGetQueryObjectuivARBFn(GLuint id,
10158 GLenum pname,
10159 GLuint* params) {
10160 NOTREACHED()
10161 << "Trying to call glGetQueryObjectuivARB() without current GL context";
10162 LOG(ERROR)
10163 << "Trying to call glGetQueryObjectuivARB() without current GL context";
10164 }
10165
10166 void NoContextGLApi::glGetRenderbufferParameterivEXTFn(GLenum target,
10167 GLenum pname,
10168 GLint* params) {
10169 NOTREACHED() << "Trying to call glGetRenderbufferParameterivEXT() without "
10170 "current GL context";
10171 LOG(ERROR) << "Trying to call glGetRenderbufferParameterivEXT() without "
10172 "current GL context";
10173 }
10174
10175 void NoContextGLApi::glGetSamplerParameterfvFn(GLuint sampler,
10176 GLenum pname,
10177 GLfloat* params) {
10178 NOTREACHED()
10179 << "Trying to call glGetSamplerParameterfv() without current GL context";
10180 LOG(ERROR)
10181 << "Trying to call glGetSamplerParameterfv() without current GL context";
10182 }
10183
10184 void NoContextGLApi::glGetSamplerParameterivFn(GLuint sampler,
10185 GLenum pname,
10186 GLint* params) {
10187 NOTREACHED()
10188 << "Trying to call glGetSamplerParameteriv() without current GL context";
10189 LOG(ERROR)
10190 << "Trying to call glGetSamplerParameteriv() without current GL context";
10191 }
10192
10193 void NoContextGLApi::glGetShaderInfoLogFn(GLuint shader,
10194 GLsizei bufsize,
10195 GLsizei* length,
10196 char* infolog) {
10197 NOTREACHED()
10198 << "Trying to call glGetShaderInfoLog() without current GL context";
10199 LOG(ERROR)
10200 << "Trying to call glGetShaderInfoLog() without current GL context";
10201 }
10202
10203 void NoContextGLApi::glGetShaderivFn(GLuint shader,
10204 GLenum pname,
10205 GLint* params) {
10206 NOTREACHED() << "Trying to call glGetShaderiv() without current GL context";
10207 LOG(ERROR) << "Trying to call glGetShaderiv() without current GL context";
10208 }
10209
10210 void NoContextGLApi::glGetShaderPrecisionFormatFn(GLenum shadertype,
10211 GLenum precisiontype,
10212 GLint* range,
10213 GLint* precision) {
10214 NOTREACHED() << "Trying to call glGetShaderPrecisionFormat() without current "
10215 "GL context";
10216 LOG(ERROR) << "Trying to call glGetShaderPrecisionFormat() without current "
10217 "GL context";
10218 }
10219
10220 void NoContextGLApi::glGetShaderSourceFn(GLuint shader,
10221 GLsizei bufsize,
10222 GLsizei* length,
10223 char* source) {
10224 NOTREACHED()
10225 << "Trying to call glGetShaderSource() without current GL context";
10226 LOG(ERROR) << "Trying to call glGetShaderSource() without current GL context";
10227 }
10228
10229 const GLubyte* NoContextGLApi::glGetStringFn(GLenum name) {
10230 NOTREACHED() << "Trying to call glGetString() without current GL context";
10231 LOG(ERROR) << "Trying to call glGetString() without current GL context";
10232 return NULL;
10233 }
10234
10235 void NoContextGLApi::glGetSyncivFn(GLsync sync,
10236 GLenum pname,
10237 GLsizei bufSize,
10238 GLsizei* length,
10239 GLint* values) {
10240 NOTREACHED() << "Trying to call glGetSynciv() without current GL context";
10241 LOG(ERROR) << "Trying to call glGetSynciv() without current GL context";
10242 }
10243
10244 void NoContextGLApi::glGetTexLevelParameterfvFn(GLenum target,
10245 GLint level,
10246 GLenum pname,
10247 GLfloat* params) {
10248 NOTREACHED()
10249 << "Trying to call glGetTexLevelParameterfv() without current GL context";
10250 LOG(ERROR)
10251 << "Trying to call glGetTexLevelParameterfv() without current GL context";
10252 }
10253
10254 void NoContextGLApi::glGetTexLevelParameterivFn(GLenum target,
10255 GLint level,
10256 GLenum pname,
10257 GLint* params) {
10258 NOTREACHED()
10259 << "Trying to call glGetTexLevelParameteriv() without current GL context";
10260 LOG(ERROR)
10261 << "Trying to call glGetTexLevelParameteriv() without current GL context";
10262 }
10263
10264 void NoContextGLApi::glGetTexParameterfvFn(GLenum target,
10265 GLenum pname,
10266 GLfloat* params) {
10267 NOTREACHED()
10268 << "Trying to call glGetTexParameterfv() without current GL context";
10269 LOG(ERROR)
10270 << "Trying to call glGetTexParameterfv() without current GL context";
10271 }
10272
10273 void NoContextGLApi::glGetTexParameterivFn(GLenum target,
10274 GLenum pname,
10275 GLint* params) {
10276 NOTREACHED()
10277 << "Trying to call glGetTexParameteriv() without current GL context";
10278 LOG(ERROR)
10279 << "Trying to call glGetTexParameteriv() without current GL context";
10280 }
10281
10282 void NoContextGLApi::glGetTransformFeedbackVaryingFn(GLuint program,
10283 GLuint index,
10284 GLsizei bufSize,
10285 GLsizei* length,
10286 GLenum* type,
10287 char* name) {
10288 NOTREACHED() << "Trying to call glGetTransformFeedbackVarying() without "
10289 "current GL context";
10290 LOG(ERROR) << "Trying to call glGetTransformFeedbackVarying() without "
10291 "current GL context";
10292 }
10293
10294 void NoContextGLApi::glGetTranslatedShaderSourceANGLEFn(GLuint shader,
10295 GLsizei bufsize,
10296 GLsizei* length,
10297 char* source) {
10298 NOTREACHED() << "Trying to call glGetTranslatedShaderSourceANGLE() without "
10299 "current GL context";
10300 LOG(ERROR) << "Trying to call glGetTranslatedShaderSourceANGLE() without "
10301 "current GL context";
10302 }
10303
10304 GLuint NoContextGLApi::glGetUniformBlockIndexFn(GLuint program,
10305 const char* uniformBlockName) {
10306 NOTREACHED()
10307 << "Trying to call glGetUniformBlockIndex() without current GL context";
10308 LOG(ERROR)
10309 << "Trying to call glGetUniformBlockIndex() without current GL context";
10310 return 0U;
10311 }
10312
10313 void NoContextGLApi::glGetUniformfvFn(GLuint program,
10314 GLint location,
10315 GLfloat* params) {
10316 NOTREACHED() << "Trying to call glGetUniformfv() without current GL context";
10317 LOG(ERROR) << "Trying to call glGetUniformfv() without current GL context";
10318 }
10319
10320 void NoContextGLApi::glGetUniformIndicesFn(GLuint program,
10321 GLsizei uniformCount,
10322 const char* const* uniformNames,
10323 GLuint* uniformIndices) {
10324 NOTREACHED()
10325 << "Trying to call glGetUniformIndices() without current GL context";
10326 LOG(ERROR)
10327 << "Trying to call glGetUniformIndices() without current GL context";
10328 }
10329
10330 void NoContextGLApi::glGetUniformivFn(GLuint program,
10331 GLint location,
10332 GLint* params) {
10333 NOTREACHED() << "Trying to call glGetUniformiv() without current GL context";
10334 LOG(ERROR) << "Trying to call glGetUniformiv() without current GL context";
10335 }
10336
10337 GLint NoContextGLApi::glGetUniformLocationFn(GLuint program, const char* name) {
10338 NOTREACHED()
10339 << "Trying to call glGetUniformLocation() without current GL context";
10340 LOG(ERROR)
10341 << "Trying to call glGetUniformLocation() without current GL context";
10342 return 0;
10343 }
10344
10345 void NoContextGLApi::glGetVertexAttribfvFn(GLuint index,
10346 GLenum pname,
10347 GLfloat* params) {
10348 NOTREACHED()
10349 << "Trying to call glGetVertexAttribfv() without current GL context";
10350 LOG(ERROR)
10351 << "Trying to call glGetVertexAttribfv() without current GL context";
10352 }
10353
10354 void NoContextGLApi::glGetVertexAttribivFn(GLuint index,
10355 GLenum pname,
10356 GLint* params) {
10357 NOTREACHED()
10358 << "Trying to call glGetVertexAttribiv() without current GL context";
10359 LOG(ERROR)
10360 << "Trying to call glGetVertexAttribiv() without current GL context";
10361 }
10362
10363 void NoContextGLApi::glGetVertexAttribPointervFn(GLuint index,
10364 GLenum pname,
10365 void** pointer) {
10366 NOTREACHED() << "Trying to call glGetVertexAttribPointerv() without current "
10367 "GL context";
10368 LOG(ERROR) << "Trying to call glGetVertexAttribPointerv() without current GL "
10369 "context";
10370 }
10371
10372 void NoContextGLApi::glHintFn(GLenum target, GLenum mode) {
10373 NOTREACHED() << "Trying to call glHint() without current GL context";
10374 LOG(ERROR) << "Trying to call glHint() without current GL context";
10375 }
10376
10377 void NoContextGLApi::glInsertEventMarkerEXTFn(GLsizei length,
10378 const char* marker) {
10379 NOTREACHED()
10380 << "Trying to call glInsertEventMarkerEXT() without current GL context";
10381 LOG(ERROR)
10382 << "Trying to call glInsertEventMarkerEXT() without current GL context";
10383 }
10384
10385 void NoContextGLApi::glInvalidateFramebufferFn(GLenum target,
10386 GLsizei numAttachments,
10387 const GLenum* attachments) {
10388 NOTREACHED()
10389 << "Trying to call glInvalidateFramebuffer() without current GL context";
10390 LOG(ERROR)
10391 << "Trying to call glInvalidateFramebuffer() without current GL context";
10392 }
10393
10394 void NoContextGLApi::glInvalidateSubFramebufferFn(GLenum target,
10395 GLsizei numAttachments,
10396 const GLenum* attachments,
10397 GLint x,
10398 GLint y,
10399 GLint width,
10400 GLint height) {
10401 NOTREACHED() << "Trying to call glInvalidateSubFramebuffer() without current "
10402 "GL context";
10403 LOG(ERROR) << "Trying to call glInvalidateSubFramebuffer() without current "
10404 "GL context";
10405 }
10406
10407 GLboolean NoContextGLApi::glIsBufferFn(GLuint buffer) {
10408 NOTREACHED() << "Trying to call glIsBuffer() without current GL context";
10409 LOG(ERROR) << "Trying to call glIsBuffer() without current GL context";
10410 return GL_FALSE;
10411 }
10412
10413 GLboolean NoContextGLApi::glIsEnabledFn(GLenum cap) {
10414 NOTREACHED() << "Trying to call glIsEnabled() without current GL context";
10415 LOG(ERROR) << "Trying to call glIsEnabled() without current GL context";
10416 return GL_FALSE;
10417 }
10418
10419 GLboolean NoContextGLApi::glIsFenceAPPLEFn(GLuint fence) {
10420 NOTREACHED() << "Trying to call glIsFenceAPPLE() without current GL context";
10421 LOG(ERROR) << "Trying to call glIsFenceAPPLE() without current GL context";
10422 return GL_FALSE;
10423 }
10424
10425 GLboolean NoContextGLApi::glIsFenceNVFn(GLuint fence) {
10426 NOTREACHED() << "Trying to call glIsFenceNV() without current GL context";
10427 LOG(ERROR) << "Trying to call glIsFenceNV() without current GL context";
10428 return GL_FALSE;
10429 }
10430
10431 GLboolean NoContextGLApi::glIsFramebufferEXTFn(GLuint framebuffer) {
10432 NOTREACHED()
10433 << "Trying to call glIsFramebufferEXT() without current GL context";
10434 LOG(ERROR)
10435 << "Trying to call glIsFramebufferEXT() without current GL context";
10436 return GL_FALSE;
10437 }
10438
10439 GLboolean NoContextGLApi::glIsProgramFn(GLuint program) {
10440 NOTREACHED() << "Trying to call glIsProgram() without current GL context";
10441 LOG(ERROR) << "Trying to call glIsProgram() without current GL context";
10442 return GL_FALSE;
10443 }
10444
10445 GLboolean NoContextGLApi::glIsQueryFn(GLuint query) {
10446 NOTREACHED() << "Trying to call glIsQuery() without current GL context";
10447 LOG(ERROR) << "Trying to call glIsQuery() without current GL context";
10448 return GL_FALSE;
10449 }
10450
10451 GLboolean NoContextGLApi::glIsQueryARBFn(GLuint query) {
10452 NOTREACHED() << "Trying to call glIsQueryARB() without current GL context";
10453 LOG(ERROR) << "Trying to call glIsQueryARB() without current GL context";
10454 return GL_FALSE;
10455 }
10456
10457 GLboolean NoContextGLApi::glIsRenderbufferEXTFn(GLuint renderbuffer) {
10458 NOTREACHED()
10459 << "Trying to call glIsRenderbufferEXT() without current GL context";
10460 LOG(ERROR)
10461 << "Trying to call glIsRenderbufferEXT() without current GL context";
10462 return GL_FALSE;
10463 }
10464
10465 GLboolean NoContextGLApi::glIsSamplerFn(GLuint sampler) {
10466 NOTREACHED() << "Trying to call glIsSampler() without current GL context";
10467 LOG(ERROR) << "Trying to call glIsSampler() without current GL context";
10468 return GL_FALSE;
10469 }
10470
10471 GLboolean NoContextGLApi::glIsShaderFn(GLuint shader) {
10472 NOTREACHED() << "Trying to call glIsShader() without current GL context";
10473 LOG(ERROR) << "Trying to call glIsShader() without current GL context";
10474 return GL_FALSE;
10475 }
10476
10477 GLboolean NoContextGLApi::glIsSyncFn(GLsync sync) {
10478 NOTREACHED() << "Trying to call glIsSync() without current GL context";
10479 LOG(ERROR) << "Trying to call glIsSync() without current GL context";
10480 return GL_FALSE;
10481 }
10482
10483 GLboolean NoContextGLApi::glIsTextureFn(GLuint texture) {
10484 NOTREACHED() << "Trying to call glIsTexture() without current GL context";
10485 LOG(ERROR) << "Trying to call glIsTexture() without current GL context";
10486 return GL_FALSE;
10487 }
10488
10489 GLboolean NoContextGLApi::glIsTransformFeedbackFn(GLuint id) {
10490 NOTREACHED()
10491 << "Trying to call glIsTransformFeedback() without current GL context";
10492 LOG(ERROR)
10493 << "Trying to call glIsTransformFeedback() without current GL context";
10494 return GL_FALSE;
10495 }
10496
10497 GLboolean NoContextGLApi::glIsVertexArrayOESFn(GLuint array) {
10498 NOTREACHED()
10499 << "Trying to call glIsVertexArrayOES() without current GL context";
10500 LOG(ERROR)
10501 << "Trying to call glIsVertexArrayOES() without current GL context";
10502 return GL_FALSE;
10503 }
10504
10505 void NoContextGLApi::glLineWidthFn(GLfloat width) {
10506 NOTREACHED() << "Trying to call glLineWidth() without current GL context";
10507 LOG(ERROR) << "Trying to call glLineWidth() without current GL context";
10508 }
10509
10510 void NoContextGLApi::glLinkProgramFn(GLuint program) {
10511 NOTREACHED() << "Trying to call glLinkProgram() without current GL context";
10512 LOG(ERROR) << "Trying to call glLinkProgram() without current GL context";
10513 }
10514
10515 void* NoContextGLApi::glMapBufferFn(GLenum target, GLenum access) {
10516 NOTREACHED() << "Trying to call glMapBuffer() without current GL context";
10517 LOG(ERROR) << "Trying to call glMapBuffer() without current GL context";
10518 return NULL;
10519 }
10520
10521 void* NoContextGLApi::glMapBufferRangeFn(GLenum target,
10522 GLintptr offset,
10523 GLsizeiptr length,
10524 GLbitfield access) {
10525 NOTREACHED()
10526 << "Trying to call glMapBufferRange() without current GL context";
10527 LOG(ERROR) << "Trying to call glMapBufferRange() without current GL context";
10528 return NULL;
10529 }
10530
10531 void NoContextGLApi::glMatrixLoadfEXTFn(GLenum matrixMode, const GLfloat* m) {
10532 NOTREACHED()
10533 << "Trying to call glMatrixLoadfEXT() without current GL context";
10534 LOG(ERROR) << "Trying to call glMatrixLoadfEXT() without current GL context";
10535 }
10536
10537 void NoContextGLApi::glMatrixLoadIdentityEXTFn(GLenum matrixMode) {
10538 NOTREACHED()
10539 << "Trying to call glMatrixLoadIdentityEXT() without current GL context";
10540 LOG(ERROR)
10541 << "Trying to call glMatrixLoadIdentityEXT() without current GL context";
10542 }
10543
10544 void NoContextGLApi::glPauseTransformFeedbackFn(void) {
10545 NOTREACHED()
10546 << "Trying to call glPauseTransformFeedback() without current GL context";
10547 LOG(ERROR)
10548 << "Trying to call glPauseTransformFeedback() without current GL context";
10549 }
10550
10551 void NoContextGLApi::glPixelStoreiFn(GLenum pname, GLint param) {
10552 NOTREACHED() << "Trying to call glPixelStorei() without current GL context";
10553 LOG(ERROR) << "Trying to call glPixelStorei() without current GL context";
10554 }
10555
10556 void NoContextGLApi::glPointParameteriFn(GLenum pname, GLint param) {
10557 NOTREACHED()
10558 << "Trying to call glPointParameteri() without current GL context";
10559 LOG(ERROR) << "Trying to call glPointParameteri() without current GL context";
10560 }
10561
10562 void NoContextGLApi::glPolygonOffsetFn(GLfloat factor, GLfloat units) {
10563 NOTREACHED() << "Trying to call glPolygonOffset() without current GL context";
10564 LOG(ERROR) << "Trying to call glPolygonOffset() without current GL context";
10565 }
10566
10567 void NoContextGLApi::glPopGroupMarkerEXTFn(void) {
10568 NOTREACHED()
10569 << "Trying to call glPopGroupMarkerEXT() without current GL context";
10570 LOG(ERROR)
10571 << "Trying to call glPopGroupMarkerEXT() without current GL context";
10572 }
10573
10574 void NoContextGLApi::glProgramBinaryFn(GLuint program,
10575 GLenum binaryFormat,
10576 const GLvoid* binary,
10577 GLsizei length) {
10578 NOTREACHED() << "Trying to call glProgramBinary() without current GL context";
10579 LOG(ERROR) << "Trying to call glProgramBinary() without current GL context";
10580 }
10581
10582 void NoContextGLApi::glProgramParameteriFn(GLuint program,
10583 GLenum pname,
10584 GLint value) {
10585 NOTREACHED()
10586 << "Trying to call glProgramParameteri() without current GL context";
10587 LOG(ERROR)
10588 << "Trying to call glProgramParameteri() without current GL context";
10589 }
10590
10591 void NoContextGLApi::glPushGroupMarkerEXTFn(GLsizei length,
10592 const char* marker) {
10593 NOTREACHED()
10594 << "Trying to call glPushGroupMarkerEXT() without current GL context";
10595 LOG(ERROR)
10596 << "Trying to call glPushGroupMarkerEXT() without current GL context";
10597 }
10598
10599 void NoContextGLApi::glQueryCounterFn(GLuint id, GLenum target) {
10600 NOTREACHED() << "Trying to call glQueryCounter() without current GL context";
10601 LOG(ERROR) << "Trying to call glQueryCounter() without current GL context";
10602 }
10603
10604 void NoContextGLApi::glReadBufferFn(GLenum src) {
10605 NOTREACHED() << "Trying to call glReadBuffer() without current GL context";
10606 LOG(ERROR) << "Trying to call glReadBuffer() without current GL context";
10607 }
10608
10609 void NoContextGLApi::glReadPixelsFn(GLint x,
10610 GLint y,
10611 GLsizei width,
10612 GLsizei height,
10613 GLenum format,
10614 GLenum type,
10615 void* pixels) {
10616 NOTREACHED() << "Trying to call glReadPixels() without current GL context";
10617 LOG(ERROR) << "Trying to call glReadPixels() without current GL context";
10618 }
10619
10620 void NoContextGLApi::glReleaseShaderCompilerFn(void) {
10621 NOTREACHED()
10622 << "Trying to call glReleaseShaderCompiler() without current GL context";
10623 LOG(ERROR)
10624 << "Trying to call glReleaseShaderCompiler() without current GL context";
10625 }
10626
10627 void NoContextGLApi::glRenderbufferStorageEXTFn(GLenum target,
10628 GLenum internalformat,
10629 GLsizei width,
10630 GLsizei height) {
10631 NOTREACHED()
10632 << "Trying to call glRenderbufferStorageEXT() without current GL context";
10633 LOG(ERROR)
10634 << "Trying to call glRenderbufferStorageEXT() without current GL context";
10635 }
10636
10637 void NoContextGLApi::glRenderbufferStorageMultisampleFn(GLenum target,
10638 GLsizei samples,
10639 GLenum internalformat,
10640 GLsizei width,
10641 GLsizei height) {
10642 NOTREACHED() << "Trying to call glRenderbufferStorageMultisample() without "
10643 "current GL context";
10644 LOG(ERROR) << "Trying to call glRenderbufferStorageMultisample() without "
10645 "current GL context";
10646 }
10647
10648 void NoContextGLApi::glRenderbufferStorageMultisampleANGLEFn(
10649 GLenum target,
10650 GLsizei samples,
10651 GLenum internalformat,
10652 GLsizei width,
10653 GLsizei height) {
10654 NOTREACHED() << "Trying to call glRenderbufferStorageMultisampleANGLE() "
10655 "without current GL context";
10656 LOG(ERROR) << "Trying to call glRenderbufferStorageMultisampleANGLE() "
10657 "without current GL context";
10658 }
10659
10660 void NoContextGLApi::glRenderbufferStorageMultisampleEXTFn(
10661 GLenum target,
10662 GLsizei samples,
10663 GLenum internalformat,
10664 GLsizei width,
10665 GLsizei height) {
10666 NOTREACHED() << "Trying to call glRenderbufferStorageMultisampleEXT() "
10667 "without current GL context";
10668 LOG(ERROR) << "Trying to call glRenderbufferStorageMultisampleEXT() without "
10669 "current GL context";
10670 }
10671
10672 void NoContextGLApi::glRenderbufferStorageMultisampleIMGFn(
10673 GLenum target,
10674 GLsizei samples,
10675 GLenum internalformat,
10676 GLsizei width,
10677 GLsizei height) {
10678 NOTREACHED() << "Trying to call glRenderbufferStorageMultisampleIMG() "
10679 "without current GL context";
10680 LOG(ERROR) << "Trying to call glRenderbufferStorageMultisampleIMG() without "
10681 "current GL context";
10682 }
10683
10684 void NoContextGLApi::glResumeTransformFeedbackFn(void) {
10685 NOTREACHED() << "Trying to call glResumeTransformFeedback() without current "
10686 "GL context";
10687 LOG(ERROR) << "Trying to call glResumeTransformFeedback() without current GL "
10688 "context";
10689 }
10690
10691 void NoContextGLApi::glSampleCoverageFn(GLclampf value, GLboolean invert) {
10692 NOTREACHED()
10693 << "Trying to call glSampleCoverage() without current GL context";
10694 LOG(ERROR) << "Trying to call glSampleCoverage() without current GL context";
10695 }
10696
10697 void NoContextGLApi::glSamplerParameterfFn(GLuint sampler,
10698 GLenum pname,
10699 GLfloat param) {
10700 NOTREACHED()
10701 << "Trying to call glSamplerParameterf() without current GL context";
10702 LOG(ERROR)
10703 << "Trying to call glSamplerParameterf() without current GL context";
10704 }
10705
10706 void NoContextGLApi::glSamplerParameterfvFn(GLuint sampler,
10707 GLenum pname,
10708 const GLfloat* params) {
10709 NOTREACHED()
10710 << "Trying to call glSamplerParameterfv() without current GL context";
10711 LOG(ERROR)
10712 << "Trying to call glSamplerParameterfv() without current GL context";
10713 }
10714
10715 void NoContextGLApi::glSamplerParameteriFn(GLuint sampler,
10716 GLenum pname,
10717 GLint param) {
10718 NOTREACHED()
10719 << "Trying to call glSamplerParameteri() without current GL context";
10720 LOG(ERROR)
10721 << "Trying to call glSamplerParameteri() without current GL context";
10722 }
10723
10724 void NoContextGLApi::glSamplerParameterivFn(GLuint sampler,
10725 GLenum pname,
10726 const GLint* params) {
10727 NOTREACHED()
10728 << "Trying to call glSamplerParameteriv() without current GL context";
10729 LOG(ERROR)
10730 << "Trying to call glSamplerParameteriv() without current GL context";
10731 }
10732
10733 void NoContextGLApi::glScissorFn(GLint x,
10734 GLint y,
10735 GLsizei width,
10736 GLsizei height) {
10737 NOTREACHED() << "Trying to call glScissor() without current GL context";
10738 LOG(ERROR) << "Trying to call glScissor() without current GL context";
10739 }
10740
10741 void NoContextGLApi::glSetFenceAPPLEFn(GLuint fence) {
10742 NOTREACHED() << "Trying to call glSetFenceAPPLE() without current GL context";
10743 LOG(ERROR) << "Trying to call glSetFenceAPPLE() without current GL context";
10744 }
10745
10746 void NoContextGLApi::glSetFenceNVFn(GLuint fence, GLenum condition) {
10747 NOTREACHED() << "Trying to call glSetFenceNV() without current GL context";
10748 LOG(ERROR) << "Trying to call glSetFenceNV() without current GL context";
10749 }
10750
10751 void NoContextGLApi::glShaderBinaryFn(GLsizei n,
10752 const GLuint* shaders,
10753 GLenum binaryformat,
10754 const void* binary,
10755 GLsizei length) {
10756 NOTREACHED() << "Trying to call glShaderBinary() without current GL context";
10757 LOG(ERROR) << "Trying to call glShaderBinary() without current GL context";
10758 }
10759
10760 void NoContextGLApi::glShaderSourceFn(GLuint shader,
10761 GLsizei count,
10762 const char* const* str,
10763 const GLint* length) {
10764 NOTREACHED() << "Trying to call glShaderSource() without current GL context";
10765 LOG(ERROR) << "Trying to call glShaderSource() without current GL context";
10766 }
10767
10768 void NoContextGLApi::glStencilFuncFn(GLenum func, GLint ref, GLuint mask) {
10769 NOTREACHED() << "Trying to call glStencilFunc() without current GL context";
10770 LOG(ERROR) << "Trying to call glStencilFunc() without current GL context";
10771 }
10772
10773 void NoContextGLApi::glStencilFuncSeparateFn(GLenum face,
10774 GLenum func,
10775 GLint ref,
10776 GLuint mask) {
10777 NOTREACHED()
10778 << "Trying to call glStencilFuncSeparate() without current GL context";
10779 LOG(ERROR)
10780 << "Trying to call glStencilFuncSeparate() without current GL context";
10781 }
10782
10783 void NoContextGLApi::glStencilMaskFn(GLuint mask) {
10784 NOTREACHED() << "Trying to call glStencilMask() without current GL context";
10785 LOG(ERROR) << "Trying to call glStencilMask() without current GL context";
10786 }
10787
10788 void NoContextGLApi::glStencilMaskSeparateFn(GLenum face, GLuint mask) {
10789 NOTREACHED()
10790 << "Trying to call glStencilMaskSeparate() without current GL context";
10791 LOG(ERROR)
10792 << "Trying to call glStencilMaskSeparate() without current GL context";
10793 }
10794
10795 void NoContextGLApi::glStencilOpFn(GLenum fail, GLenum zfail, GLenum zpass) {
10796 NOTREACHED() << "Trying to call glStencilOp() without current GL context";
10797 LOG(ERROR) << "Trying to call glStencilOp() without current GL context";
10798 }
10799
10800 void NoContextGLApi::glStencilOpSeparateFn(GLenum face,
10801 GLenum fail,
10802 GLenum zfail,
10803 GLenum zpass) {
10804 NOTREACHED()
10805 << "Trying to call glStencilOpSeparate() without current GL context";
10806 LOG(ERROR)
10807 << "Trying to call glStencilOpSeparate() without current GL context";
10808 }
10809
10810 GLboolean NoContextGLApi::glTestFenceAPPLEFn(GLuint fence) {
10811 NOTREACHED()
10812 << "Trying to call glTestFenceAPPLE() without current GL context";
10813 LOG(ERROR) << "Trying to call glTestFenceAPPLE() without current GL context";
10814 return GL_FALSE;
10815 }
10816
10817 GLboolean NoContextGLApi::glTestFenceNVFn(GLuint fence) {
10818 NOTREACHED() << "Trying to call glTestFenceNV() without current GL context";
10819 LOG(ERROR) << "Trying to call glTestFenceNV() without current GL context";
10820 return GL_FALSE;
10821 }
10822
10823 void NoContextGLApi::glTexImage2DFn(GLenum target,
10824 GLint level,
10825 GLint internalformat,
10826 GLsizei width,
10827 GLsizei height,
10828 GLint border,
10829 GLenum format,
10830 GLenum type,
10831 const void* pixels) {
10832 NOTREACHED() << "Trying to call glTexImage2D() without current GL context";
10833 LOG(ERROR) << "Trying to call glTexImage2D() without current GL context";
10834 }
10835
10836 void NoContextGLApi::glTexImage3DFn(GLenum target,
10837 GLint level,
10838 GLint internalformat,
10839 GLsizei width,
10840 GLsizei height,
10841 GLsizei depth,
10842 GLint border,
10843 GLenum format,
10844 GLenum type,
10845 const void* pixels) {
10846 NOTREACHED() << "Trying to call glTexImage3D() without current GL context";
10847 LOG(ERROR) << "Trying to call glTexImage3D() without current GL context";
10848 }
10849
10850 void NoContextGLApi::glTexParameterfFn(GLenum target,
10851 GLenum pname,
10852 GLfloat param) {
10853 NOTREACHED() << "Trying to call glTexParameterf() without current GL context";
10854 LOG(ERROR) << "Trying to call glTexParameterf() without current GL context";
10855 }
10856
10857 void NoContextGLApi::glTexParameterfvFn(GLenum target,
10858 GLenum pname,
10859 const GLfloat* params) {
10860 NOTREACHED()
10861 << "Trying to call glTexParameterfv() without current GL context";
10862 LOG(ERROR) << "Trying to call glTexParameterfv() without current GL context";
10863 }
10864
10865 void NoContextGLApi::glTexParameteriFn(GLenum target,
10866 GLenum pname,
10867 GLint param) {
10868 NOTREACHED() << "Trying to call glTexParameteri() without current GL context";
10869 LOG(ERROR) << "Trying to call glTexParameteri() without current GL context";
10870 }
10871
10872 void NoContextGLApi::glTexParameterivFn(GLenum target,
10873 GLenum pname,
10874 const GLint* params) {
10875 NOTREACHED()
10876 << "Trying to call glTexParameteriv() without current GL context";
10877 LOG(ERROR) << "Trying to call glTexParameteriv() without current GL context";
10878 }
10879
10880 void NoContextGLApi::glTexStorage2DEXTFn(GLenum target,
10881 GLsizei levels,
10882 GLenum internalformat,
10883 GLsizei width,
10884 GLsizei height) {
10885 NOTREACHED()
10886 << "Trying to call glTexStorage2DEXT() without current GL context";
10887 LOG(ERROR) << "Trying to call glTexStorage2DEXT() without current GL context";
10888 }
10889
10890 void NoContextGLApi::glTexStorage3DFn(GLenum target,
10891 GLsizei levels,
10892 GLenum internalformat,
10893 GLsizei width,
10894 GLsizei height,
10895 GLsizei depth) {
10896 NOTREACHED() << "Trying to call glTexStorage3D() without current GL context";
10897 LOG(ERROR) << "Trying to call glTexStorage3D() without current GL context";
10898 }
10899
10900 void NoContextGLApi::glTexSubImage2DFn(GLenum target,
10901 GLint level,
10902 GLint xoffset,
10903 GLint yoffset,
10904 GLsizei width,
10905 GLsizei height,
10906 GLenum format,
10907 GLenum type,
10908 const void* pixels) {
10909 NOTREACHED() << "Trying to call glTexSubImage2D() without current GL context";
10910 LOG(ERROR) << "Trying to call glTexSubImage2D() without current GL context";
10911 }
10912
10913 void NoContextGLApi::glTransformFeedbackVaryingsFn(GLuint program,
10914 GLsizei count,
10915 const char* const* varyings,
10916 GLenum bufferMode) {
10917 NOTREACHED() << "Trying to call glTransformFeedbackVaryings() without "
10918 "current GL context";
10919 LOG(ERROR) << "Trying to call glTransformFeedbackVaryings() without current "
10920 "GL context";
10921 }
10922
10923 void NoContextGLApi::glUniform1fFn(GLint location, GLfloat x) {
10924 NOTREACHED() << "Trying to call glUniform1f() without current GL context";
10925 LOG(ERROR) << "Trying to call glUniform1f() without current GL context";
10926 }
10927
10928 void NoContextGLApi::glUniform1fvFn(GLint location,
10929 GLsizei count,
10930 const GLfloat* v) {
10931 NOTREACHED() << "Trying to call glUniform1fv() without current GL context";
10932 LOG(ERROR) << "Trying to call glUniform1fv() without current GL context";
10933 }
10934
10935 void NoContextGLApi::glUniform1iFn(GLint location, GLint x) {
10936 NOTREACHED() << "Trying to call glUniform1i() without current GL context";
10937 LOG(ERROR) << "Trying to call glUniform1i() without current GL context";
10938 }
10939
10940 void NoContextGLApi::glUniform1ivFn(GLint location,
10941 GLsizei count,
10942 const GLint* v) {
10943 NOTREACHED() << "Trying to call glUniform1iv() without current GL context";
10944 LOG(ERROR) << "Trying to call glUniform1iv() without current GL context";
10945 }
10946
10947 void NoContextGLApi::glUniform1uiFn(GLint location, GLuint v0) {
10948 NOTREACHED() << "Trying to call glUniform1ui() without current GL context";
10949 LOG(ERROR) << "Trying to call glUniform1ui() without current GL context";
10950 }
10951
10952 void NoContextGLApi::glUniform1uivFn(GLint location,
10953 GLsizei count,
10954 const GLuint* v) {
10955 NOTREACHED() << "Trying to call glUniform1uiv() without current GL context";
10956 LOG(ERROR) << "Trying to call glUniform1uiv() without current GL context";
10957 }
10958
10959 void NoContextGLApi::glUniform2fFn(GLint location, GLfloat x, GLfloat y) {
10960 NOTREACHED() << "Trying to call glUniform2f() without current GL context";
10961 LOG(ERROR) << "Trying to call glUniform2f() without current GL context";
10962 }
10963
10964 void NoContextGLApi::glUniform2fvFn(GLint location,
10965 GLsizei count,
10966 const GLfloat* v) {
10967 NOTREACHED() << "Trying to call glUniform2fv() without current GL context";
10968 LOG(ERROR) << "Trying to call glUniform2fv() without current GL context";
10969 }
10970
10971 void NoContextGLApi::glUniform2iFn(GLint location, GLint x, GLint y) {
10972 NOTREACHED() << "Trying to call glUniform2i() without current GL context";
10973 LOG(ERROR) << "Trying to call glUniform2i() without current GL context";
10974 }
10975
10976 void NoContextGLApi::glUniform2ivFn(GLint location,
10977 GLsizei count,
10978 const GLint* v) {
10979 NOTREACHED() << "Trying to call glUniform2iv() without current GL context";
10980 LOG(ERROR) << "Trying to call glUniform2iv() without current GL context";
10981 }
10982
10983 void NoContextGLApi::glUniform2uiFn(GLint location, GLuint v0, GLuint v1) {
10984 NOTREACHED() << "Trying to call glUniform2ui() without current GL context";
10985 LOG(ERROR) << "Trying to call glUniform2ui() without current GL context";
10986 }
10987
10988 void NoContextGLApi::glUniform2uivFn(GLint location,
10989 GLsizei count,
10990 const GLuint* v) {
10991 NOTREACHED() << "Trying to call glUniform2uiv() without current GL context";
10992 LOG(ERROR) << "Trying to call glUniform2uiv() without current GL context";
10993 }
10994
10995 void NoContextGLApi::glUniform3fFn(GLint location,
10996 GLfloat x,
10997 GLfloat y,
10998 GLfloat z) {
10999 NOTREACHED() << "Trying to call glUniform3f() without current GL context";
11000 LOG(ERROR) << "Trying to call glUniform3f() without current GL context";
11001 }
11002
11003 void NoContextGLApi::glUniform3fvFn(GLint location,
11004 GLsizei count,
11005 const GLfloat* v) {
11006 NOTREACHED() << "Trying to call glUniform3fv() without current GL context";
11007 LOG(ERROR) << "Trying to call glUniform3fv() without current GL context";
11008 }
11009
11010 void NoContextGLApi::glUniform3iFn(GLint location, GLint x, GLint y, GLint z) {
11011 NOTREACHED() << "Trying to call glUniform3i() without current GL context";
11012 LOG(ERROR) << "Trying to call glUniform3i() without current GL context";
11013 }
11014
11015 void NoContextGLApi::glUniform3ivFn(GLint location,
11016 GLsizei count,
11017 const GLint* v) {
11018 NOTREACHED() << "Trying to call glUniform3iv() without current GL context";
11019 LOG(ERROR) << "Trying to call glUniform3iv() without current GL context";
11020 }
11021
11022 void NoContextGLApi::glUniform3uiFn(GLint location,
11023 GLuint v0,
11024 GLuint v1,
11025 GLuint v2) {
11026 NOTREACHED() << "Trying to call glUniform3ui() without current GL context";
11027 LOG(ERROR) << "Trying to call glUniform3ui() without current GL context";
11028 }
11029
11030 void NoContextGLApi::glUniform3uivFn(GLint location,
11031 GLsizei count,
11032 const GLuint* v) {
11033 NOTREACHED() << "Trying to call glUniform3uiv() without current GL context";
11034 LOG(ERROR) << "Trying to call glUniform3uiv() without current GL context";
11035 }
11036
11037 void NoContextGLApi::glUniform4fFn(GLint location,
11038 GLfloat x,
11039 GLfloat y,
11040 GLfloat z,
11041 GLfloat w) {
11042 NOTREACHED() << "Trying to call glUniform4f() without current GL context";
11043 LOG(ERROR) << "Trying to call glUniform4f() without current GL context";
11044 }
11045
11046 void NoContextGLApi::glUniform4fvFn(GLint location,
11047 GLsizei count,
11048 const GLfloat* v) {
11049 NOTREACHED() << "Trying to call glUniform4fv() without current GL context";
11050 LOG(ERROR) << "Trying to call glUniform4fv() without current GL context";
11051 }
11052
11053 void NoContextGLApi::glUniform4iFn(GLint location,
11054 GLint x,
11055 GLint y,
11056 GLint z,
11057 GLint w) {
11058 NOTREACHED() << "Trying to call glUniform4i() without current GL context";
11059 LOG(ERROR) << "Trying to call glUniform4i() without current GL context";
11060 }
11061
11062 void NoContextGLApi::glUniform4ivFn(GLint location,
11063 GLsizei count,
11064 const GLint* v) {
11065 NOTREACHED() << "Trying to call glUniform4iv() without current GL context";
11066 LOG(ERROR) << "Trying to call glUniform4iv() without current GL context";
11067 }
11068
11069 void NoContextGLApi::glUniform4uiFn(GLint location,
11070 GLuint v0,
11071 GLuint v1,
11072 GLuint v2,
11073 GLuint v3) {
11074 NOTREACHED() << "Trying to call glUniform4ui() without current GL context";
11075 LOG(ERROR) << "Trying to call glUniform4ui() without current GL context";
11076 }
11077
11078 void NoContextGLApi::glUniform4uivFn(GLint location,
11079 GLsizei count,
11080 const GLuint* v) {
11081 NOTREACHED() << "Trying to call glUniform4uiv() without current GL context";
11082 LOG(ERROR) << "Trying to call glUniform4uiv() without current GL context";
11083 }
11084
11085 void NoContextGLApi::glUniformBlockBindingFn(GLuint program,
11086 GLuint uniformBlockIndex,
11087 GLuint uniformBlockBinding) {
11088 NOTREACHED()
11089 << "Trying to call glUniformBlockBinding() without current GL context";
11090 LOG(ERROR)
11091 << "Trying to call glUniformBlockBinding() without current GL context";
11092 }
11093
11094 void NoContextGLApi::glUniformMatrix2fvFn(GLint location,
11095 GLsizei count,
11096 GLboolean transpose,
11097 const GLfloat* value) {
11098 NOTREACHED()
11099 << "Trying to call glUniformMatrix2fv() without current GL context";
11100 LOG(ERROR)
11101 << "Trying to call glUniformMatrix2fv() without current GL context";
11102 }
11103
11104 void NoContextGLApi::glUniformMatrix2x3fvFn(GLint location,
11105 GLsizei count,
11106 GLboolean transpose,
11107 const GLfloat* value) {
11108 NOTREACHED()
11109 << "Trying to call glUniformMatrix2x3fv() without current GL context";
11110 LOG(ERROR)
11111 << "Trying to call glUniformMatrix2x3fv() without current GL context";
11112 }
11113
11114 void NoContextGLApi::glUniformMatrix2x4fvFn(GLint location,
11115 GLsizei count,
11116 GLboolean transpose,
11117 const GLfloat* value) {
11118 NOTREACHED()
11119 << "Trying to call glUniformMatrix2x4fv() without current GL context";
11120 LOG(ERROR)
11121 << "Trying to call glUniformMatrix2x4fv() without current GL context";
11122 }
11123
11124 void NoContextGLApi::glUniformMatrix3fvFn(GLint location,
11125 GLsizei count,
11126 GLboolean transpose,
11127 const GLfloat* value) {
11128 NOTREACHED()
11129 << "Trying to call glUniformMatrix3fv() without current GL context";
11130 LOG(ERROR)
11131 << "Trying to call glUniformMatrix3fv() without current GL context";
11132 }
11133
11134 void NoContextGLApi::glUniformMatrix3x2fvFn(GLint location,
11135 GLsizei count,
11136 GLboolean transpose,
11137 const GLfloat* value) {
11138 NOTREACHED()
11139 << "Trying to call glUniformMatrix3x2fv() without current GL context";
11140 LOG(ERROR)
11141 << "Trying to call glUniformMatrix3x2fv() without current GL context";
11142 }
11143
11144 void NoContextGLApi::glUniformMatrix3x4fvFn(GLint location,
11145 GLsizei count,
11146 GLboolean transpose,
11147 const GLfloat* value) {
11148 NOTREACHED()
11149 << "Trying to call glUniformMatrix3x4fv() without current GL context";
11150 LOG(ERROR)
11151 << "Trying to call glUniformMatrix3x4fv() without current GL context";
11152 }
11153
11154 void NoContextGLApi::glUniformMatrix4fvFn(GLint location,
11155 GLsizei count,
11156 GLboolean transpose,
11157 const GLfloat* value) {
11158 NOTREACHED()
11159 << "Trying to call glUniformMatrix4fv() without current GL context";
11160 LOG(ERROR)
11161 << "Trying to call glUniformMatrix4fv() without current GL context";
11162 }
11163
11164 void NoContextGLApi::glUniformMatrix4x2fvFn(GLint location,
11165 GLsizei count,
11166 GLboolean transpose,
11167 const GLfloat* value) {
11168 NOTREACHED()
11169 << "Trying to call glUniformMatrix4x2fv() without current GL context";
11170 LOG(ERROR)
11171 << "Trying to call glUniformMatrix4x2fv() without current GL context";
11172 }
11173
11174 void NoContextGLApi::glUniformMatrix4x3fvFn(GLint location,
11175 GLsizei count,
11176 GLboolean transpose,
11177 const GLfloat* value) {
11178 NOTREACHED()
11179 << "Trying to call glUniformMatrix4x3fv() without current GL context";
11180 LOG(ERROR)
11181 << "Trying to call glUniformMatrix4x3fv() without current GL context";
11182 }
11183
11184 GLboolean NoContextGLApi::glUnmapBufferFn(GLenum target) {
11185 NOTREACHED() << "Trying to call glUnmapBuffer() without current GL context";
11186 LOG(ERROR) << "Trying to call glUnmapBuffer() without current GL context";
11187 return GL_FALSE;
11188 }
11189
11190 void NoContextGLApi::glUseProgramFn(GLuint program) {
11191 NOTREACHED() << "Trying to call glUseProgram() without current GL context";
11192 LOG(ERROR) << "Trying to call glUseProgram() without current GL context";
11193 }
11194
11195 void NoContextGLApi::glValidateProgramFn(GLuint program) {
11196 NOTREACHED()
11197 << "Trying to call glValidateProgram() without current GL context";
11198 LOG(ERROR) << "Trying to call glValidateProgram() without current GL context";
11199 }
11200
11201 void NoContextGLApi::glVertexAttrib1fFn(GLuint indx, GLfloat x) {
11202 NOTREACHED()
11203 << "Trying to call glVertexAttrib1f() without current GL context";
11204 LOG(ERROR) << "Trying to call glVertexAttrib1f() without current GL context";
11205 }
11206
11207 void NoContextGLApi::glVertexAttrib1fvFn(GLuint indx, const GLfloat* values) {
11208 NOTREACHED()
11209 << "Trying to call glVertexAttrib1fv() without current GL context";
11210 LOG(ERROR) << "Trying to call glVertexAttrib1fv() without current GL context";
11211 }
11212
11213 void NoContextGLApi::glVertexAttrib2fFn(GLuint indx, GLfloat x, GLfloat y) {
11214 NOTREACHED()
11215 << "Trying to call glVertexAttrib2f() without current GL context";
11216 LOG(ERROR) << "Trying to call glVertexAttrib2f() without current GL context";
11217 }
11218
11219 void NoContextGLApi::glVertexAttrib2fvFn(GLuint indx, const GLfloat* values) {
11220 NOTREACHED()
11221 << "Trying to call glVertexAttrib2fv() without current GL context";
11222 LOG(ERROR) << "Trying to call glVertexAttrib2fv() without current GL context";
11223 }
11224
11225 void NoContextGLApi::glVertexAttrib3fFn(GLuint indx,
11226 GLfloat x,
11227 GLfloat y,
11228 GLfloat z) {
11229 NOTREACHED()
11230 << "Trying to call glVertexAttrib3f() without current GL context";
11231 LOG(ERROR) << "Trying to call glVertexAttrib3f() without current GL context";
11232 }
11233
11234 void NoContextGLApi::glVertexAttrib3fvFn(GLuint indx, const GLfloat* values) {
11235 NOTREACHED()
11236 << "Trying to call glVertexAttrib3fv() without current GL context";
11237 LOG(ERROR) << "Trying to call glVertexAttrib3fv() without current GL context";
11238 }
11239
11240 void NoContextGLApi::glVertexAttrib4fFn(GLuint indx,
11241 GLfloat x,
11242 GLfloat y,
11243 GLfloat z,
11244 GLfloat w) {
11245 NOTREACHED()
11246 << "Trying to call glVertexAttrib4f() without current GL context";
11247 LOG(ERROR) << "Trying to call glVertexAttrib4f() without current GL context";
11248 }
11249
11250 void NoContextGLApi::glVertexAttrib4fvFn(GLuint indx, const GLfloat* values) {
11251 NOTREACHED()
11252 << "Trying to call glVertexAttrib4fv() without current GL context";
11253 LOG(ERROR) << "Trying to call glVertexAttrib4fv() without current GL context";
11254 }
11255
11256 void NoContextGLApi::glVertexAttribDivisorANGLEFn(GLuint index,
11257 GLuint divisor) {
11258 NOTREACHED() << "Trying to call glVertexAttribDivisorANGLE() without current "
11259 "GL context";
11260 LOG(ERROR) << "Trying to call glVertexAttribDivisorANGLE() without current "
11261 "GL context";
11262 }
11263
11264 void NoContextGLApi::glVertexAttribI4iFn(GLuint indx,
11265 GLint x,
11266 GLint y,
11267 GLint z,
11268 GLint w) {
11269 NOTREACHED()
11270 << "Trying to call glVertexAttribI4i() without current GL context";
11271 LOG(ERROR) << "Trying to call glVertexAttribI4i() without current GL context";
11272 }
11273
11274 void NoContextGLApi::glVertexAttribI4ivFn(GLuint indx, const GLint* values) {
11275 NOTREACHED()
11276 << "Trying to call glVertexAttribI4iv() without current GL context";
11277 LOG(ERROR)
11278 << "Trying to call glVertexAttribI4iv() without current GL context";
11279 }
11280
11281 void NoContextGLApi::glVertexAttribI4uiFn(GLuint indx,
11282 GLuint x,
11283 GLuint y,
11284 GLuint z,
11285 GLuint w) {
11286 NOTREACHED()
11287 << "Trying to call glVertexAttribI4ui() without current GL context";
11288 LOG(ERROR)
11289 << "Trying to call glVertexAttribI4ui() without current GL context";
11290 }
11291
11292 void NoContextGLApi::glVertexAttribI4uivFn(GLuint indx, const GLuint* values) {
11293 NOTREACHED()
11294 << "Trying to call glVertexAttribI4uiv() without current GL context";
11295 LOG(ERROR)
11296 << "Trying to call glVertexAttribI4uiv() without current GL context";
11297 }
11298
11299 void NoContextGLApi::glVertexAttribIPointerFn(GLuint indx,
11300 GLint size,
11301 GLenum type,
11302 GLsizei stride,
11303 const void* ptr) {
11304 NOTREACHED()
11305 << "Trying to call glVertexAttribIPointer() without current GL context";
11306 LOG(ERROR)
11307 << "Trying to call glVertexAttribIPointer() without current GL context";
11308 }
11309
11310 void NoContextGLApi::glVertexAttribPointerFn(GLuint indx,
11311 GLint size,
11312 GLenum type,
11313 GLboolean normalized,
11314 GLsizei stride,
11315 const void* ptr) {
11316 NOTREACHED()
11317 << "Trying to call glVertexAttribPointer() without current GL context";
11318 LOG(ERROR)
11319 << "Trying to call glVertexAttribPointer() without current GL context";
11320 }
11321
11322 void NoContextGLApi::glViewportFn(GLint x,
11323 GLint y,
11324 GLsizei width,
11325 GLsizei height) {
11326 NOTREACHED() << "Trying to call glViewport() without current GL context";
11327 LOG(ERROR) << "Trying to call glViewport() without current GL context";
11328 }
11329
11330 GLenum NoContextGLApi::glWaitSyncFn(GLsync sync,
11331 GLbitfield flags,
11332 GLuint64 timeout) {
11333 NOTREACHED() << "Trying to call glWaitSync() without current GL context";
11334 LOG(ERROR) << "Trying to call glWaitSync() without current GL context";
11335 return static_cast<GLenum>(0);
11336 }
11337
11338 } // namespace gfx
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698