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.
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
13 #include "base/trace_event/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"
23 static bool g_debugBindingsInitialized
;
26 void DriverGL::InitializeStaticBindings() {
27 fn
.glActiveTextureFn
= reinterpret_cast<glActiveTextureProc
>(
28 GetGLProcAddress("glActiveTexture"));
30 reinterpret_cast<glAttachShaderProc
>(GetGLProcAddress("glAttachShader"));
31 fn
.glBeginQueryFn
= 0;
32 fn
.glBeginTransformFeedbackFn
= 0;
33 fn
.glBindAttribLocationFn
= reinterpret_cast<glBindAttribLocationProc
>(
34 GetGLProcAddress("glBindAttribLocation"));
36 reinterpret_cast<glBindBufferProc
>(GetGLProcAddress("glBindBuffer"));
37 fn
.glBindBufferBaseFn
= 0;
38 fn
.glBindBufferRangeFn
= 0;
39 fn
.glBindFragDataLocationFn
= 0;
40 fn
.glBindFragDataLocationIndexedFn
= 0;
41 fn
.glBindFramebufferEXTFn
= 0;
42 fn
.glBindRenderbufferEXTFn
= 0;
43 fn
.glBindSamplerFn
= 0;
45 reinterpret_cast<glBindTextureProc
>(GetGLProcAddress("glBindTexture"));
46 fn
.glBindTransformFeedbackFn
= 0;
47 fn
.glBindVertexArrayOESFn
= 0;
48 fn
.glBlendBarrierKHRFn
= 0;
50 reinterpret_cast<glBlendColorProc
>(GetGLProcAddress("glBlendColor"));
51 fn
.glBlendEquationFn
= reinterpret_cast<glBlendEquationProc
>(
52 GetGLProcAddress("glBlendEquation"));
53 fn
.glBlendEquationSeparateFn
= reinterpret_cast<glBlendEquationSeparateProc
>(
54 GetGLProcAddress("glBlendEquationSeparate"));
56 reinterpret_cast<glBlendFuncProc
>(GetGLProcAddress("glBlendFunc"));
57 fn
.glBlendFuncSeparateFn
= reinterpret_cast<glBlendFuncSeparateProc
>(
58 GetGLProcAddress("glBlendFuncSeparate"));
59 fn
.glBlitFramebufferFn
= 0;
60 fn
.glBlitFramebufferANGLEFn
= 0;
61 fn
.glBlitFramebufferEXTFn
= 0;
63 reinterpret_cast<glBufferDataProc
>(GetGLProcAddress("glBufferData"));
64 fn
.glBufferSubDataFn
= reinterpret_cast<glBufferSubDataProc
>(
65 GetGLProcAddress("glBufferSubData"));
66 fn
.glCheckFramebufferStatusEXTFn
= 0;
67 fn
.glClearFn
= reinterpret_cast<glClearProc
>(GetGLProcAddress("glClear"));
68 fn
.glClearBufferfiFn
= 0;
69 fn
.glClearBufferfvFn
= 0;
70 fn
.glClearBufferivFn
= 0;
71 fn
.glClearBufferuivFn
= 0;
73 reinterpret_cast<glClearColorProc
>(GetGLProcAddress("glClearColor"));
75 reinterpret_cast<glClearDepthProc
>(GetGLProcAddress("glClearDepth"));
76 fn
.glClearDepthfFn
= 0;
78 reinterpret_cast<glClearStencilProc
>(GetGLProcAddress("glClearStencil"));
79 fn
.glClientWaitSyncFn
= 0;
81 reinterpret_cast<glColorMaskProc
>(GetGLProcAddress("glColorMask"));
82 fn
.glCompileShaderFn
= reinterpret_cast<glCompileShaderProc
>(
83 GetGLProcAddress("glCompileShader"));
84 fn
.glCompressedTexImage2DFn
= reinterpret_cast<glCompressedTexImage2DProc
>(
85 GetGLProcAddress("glCompressedTexImage2D"));
86 fn
.glCompressedTexImage3DFn
= 0;
87 fn
.glCompressedTexSubImage2DFn
=
88 reinterpret_cast<glCompressedTexSubImage2DProc
>(
89 GetGLProcAddress("glCompressedTexSubImage2D"));
90 fn
.glCompressedTexSubImage3DFn
= 0;
91 fn
.glCopyBufferSubDataFn
= 0;
92 fn
.glCopyTexImage2DFn
= reinterpret_cast<glCopyTexImage2DProc
>(
93 GetGLProcAddress("glCopyTexImage2D"));
94 fn
.glCopyTexSubImage2DFn
= reinterpret_cast<glCopyTexSubImage2DProc
>(
95 GetGLProcAddress("glCopyTexSubImage2D"));
96 fn
.glCopyTexSubImage3DFn
= 0;
97 fn
.glCreateProgramFn
= reinterpret_cast<glCreateProgramProc
>(
98 GetGLProcAddress("glCreateProgram"));
100 reinterpret_cast<glCreateShaderProc
>(GetGLProcAddress("glCreateShader"));
102 reinterpret_cast<glCullFaceProc
>(GetGLProcAddress("glCullFace"));
103 fn
.glDeleteBuffersARBFn
= reinterpret_cast<glDeleteBuffersARBProc
>(
104 GetGLProcAddress("glDeleteBuffers"));
105 fn
.glDeleteFencesAPPLEFn
= 0;
106 fn
.glDeleteFencesNVFn
= 0;
107 fn
.glDeleteFramebuffersEXTFn
= 0;
108 fn
.glDeleteProgramFn
= reinterpret_cast<glDeleteProgramProc
>(
109 GetGLProcAddress("glDeleteProgram"));
110 fn
.glDeleteQueriesFn
= 0;
111 fn
.glDeleteRenderbuffersEXTFn
= 0;
112 fn
.glDeleteSamplersFn
= 0;
113 fn
.glDeleteShaderFn
=
114 reinterpret_cast<glDeleteShaderProc
>(GetGLProcAddress("glDeleteShader"));
115 fn
.glDeleteSyncFn
= 0;
116 fn
.glDeleteTexturesFn
= reinterpret_cast<glDeleteTexturesProc
>(
117 GetGLProcAddress("glDeleteTextures"));
118 fn
.glDeleteTransformFeedbacksFn
= 0;
119 fn
.glDeleteVertexArraysOESFn
= 0;
121 reinterpret_cast<glDepthFuncProc
>(GetGLProcAddress("glDepthFunc"));
123 reinterpret_cast<glDepthMaskProc
>(GetGLProcAddress("glDepthMask"));
125 reinterpret_cast<glDepthRangeProc
>(GetGLProcAddress("glDepthRange"));
126 fn
.glDepthRangefFn
= 0;
127 fn
.glDetachShaderFn
=
128 reinterpret_cast<glDetachShaderProc
>(GetGLProcAddress("glDetachShader"));
130 reinterpret_cast<glDisableProc
>(GetGLProcAddress("glDisable"));
131 fn
.glDisableVertexAttribArrayFn
=
132 reinterpret_cast<glDisableVertexAttribArrayProc
>(
133 GetGLProcAddress("glDisableVertexAttribArray"));
134 fn
.glDiscardFramebufferEXTFn
= 0;
136 reinterpret_cast<glDrawArraysProc
>(GetGLProcAddress("glDrawArrays"));
137 fn
.glDrawArraysInstancedANGLEFn
= 0;
138 fn
.glDrawBufferFn
= 0;
139 fn
.glDrawBuffersARBFn
= 0;
140 fn
.glDrawElementsFn
=
141 reinterpret_cast<glDrawElementsProc
>(GetGLProcAddress("glDrawElements"));
142 fn
.glDrawElementsInstancedANGLEFn
= 0;
143 fn
.glDrawRangeElementsFn
= 0;
144 fn
.glEGLImageTargetRenderbufferStorageOESFn
= 0;
145 fn
.glEGLImageTargetTexture2DOESFn
= 0;
146 fn
.glEnableFn
= reinterpret_cast<glEnableProc
>(GetGLProcAddress("glEnable"));
147 fn
.glEnableVertexAttribArrayFn
=
148 reinterpret_cast<glEnableVertexAttribArrayProc
>(
149 GetGLProcAddress("glEnableVertexAttribArray"));
151 fn
.glEndTransformFeedbackFn
= 0;
152 fn
.glFenceSyncFn
= 0;
153 fn
.glFinishFn
= reinterpret_cast<glFinishProc
>(GetGLProcAddress("glFinish"));
154 fn
.glFinishFenceAPPLEFn
= 0;
155 fn
.glFinishFenceNVFn
= 0;
156 fn
.glFlushFn
= reinterpret_cast<glFlushProc
>(GetGLProcAddress("glFlush"));
157 fn
.glFlushMappedBufferRangeFn
= 0;
158 fn
.glFramebufferRenderbufferEXTFn
= 0;
159 fn
.glFramebufferTexture2DEXTFn
= 0;
160 fn
.glFramebufferTexture2DMultisampleEXTFn
= 0;
161 fn
.glFramebufferTexture2DMultisampleIMGFn
= 0;
162 fn
.glFramebufferTextureLayerFn
= 0;
164 reinterpret_cast<glFrontFaceProc
>(GetGLProcAddress("glFrontFace"));
165 fn
.glGenBuffersARBFn
=
166 reinterpret_cast<glGenBuffersARBProc
>(GetGLProcAddress("glGenBuffers"));
167 fn
.glGenerateMipmapEXTFn
= 0;
168 fn
.glGenFencesAPPLEFn
= 0;
169 fn
.glGenFencesNVFn
= 0;
170 fn
.glGenFramebuffersEXTFn
= 0;
171 fn
.glGenQueriesFn
= 0;
172 fn
.glGenRenderbuffersEXTFn
= 0;
173 fn
.glGenSamplersFn
= 0;
175 reinterpret_cast<glGenTexturesProc
>(GetGLProcAddress("glGenTextures"));
176 fn
.glGenTransformFeedbacksFn
= 0;
177 fn
.glGenVertexArraysOESFn
= 0;
178 fn
.glGetActiveAttribFn
= reinterpret_cast<glGetActiveAttribProc
>(
179 GetGLProcAddress("glGetActiveAttrib"));
180 fn
.glGetActiveUniformFn
= reinterpret_cast<glGetActiveUniformProc
>(
181 GetGLProcAddress("glGetActiveUniform"));
182 fn
.glGetActiveUniformBlockivFn
= 0;
183 fn
.glGetActiveUniformBlockNameFn
= 0;
184 fn
.glGetActiveUniformsivFn
= 0;
185 fn
.glGetAttachedShadersFn
= reinterpret_cast<glGetAttachedShadersProc
>(
186 GetGLProcAddress("glGetAttachedShaders"));
187 fn
.glGetAttribLocationFn
= reinterpret_cast<glGetAttribLocationProc
>(
188 GetGLProcAddress("glGetAttribLocation"));
190 reinterpret_cast<glGetBooleanvProc
>(GetGLProcAddress("glGetBooleanv"));
191 fn
.glGetBufferParameterivFn
= reinterpret_cast<glGetBufferParameterivProc
>(
192 GetGLProcAddress("glGetBufferParameteriv"));
194 reinterpret_cast<glGetErrorProc
>(GetGLProcAddress("glGetError"));
195 fn
.glGetFenceivNVFn
= 0;
197 reinterpret_cast<glGetFloatvProc
>(GetGLProcAddress("glGetFloatv"));
198 fn
.glGetFragDataLocationFn
= 0;
199 fn
.glGetFramebufferAttachmentParameterivEXTFn
= 0;
200 fn
.glGetGraphicsResetStatusARBFn
= 0;
201 fn
.glGetInteger64i_vFn
= 0;
202 fn
.glGetInteger64vFn
= 0;
203 fn
.glGetIntegeri_vFn
= 0;
205 reinterpret_cast<glGetIntegervProc
>(GetGLProcAddress("glGetIntegerv"));
206 fn
.glGetInternalformativFn
= 0;
207 fn
.glGetProgramBinaryFn
= 0;
208 fn
.glGetProgramInfoLogFn
= reinterpret_cast<glGetProgramInfoLogProc
>(
209 GetGLProcAddress("glGetProgramInfoLog"));
210 fn
.glGetProgramivFn
=
211 reinterpret_cast<glGetProgramivProc
>(GetGLProcAddress("glGetProgramiv"));
212 fn
.glGetProgramResourceLocationFn
= 0;
213 fn
.glGetQueryivFn
= 0;
214 fn
.glGetQueryObjecti64vFn
= 0;
215 fn
.glGetQueryObjectivFn
= 0;
216 fn
.glGetQueryObjectui64vFn
= 0;
217 fn
.glGetQueryObjectuivFn
= 0;
218 fn
.glGetRenderbufferParameterivEXTFn
= 0;
219 fn
.glGetSamplerParameterfvFn
= 0;
220 fn
.glGetSamplerParameterivFn
= 0;
221 fn
.glGetShaderInfoLogFn
= reinterpret_cast<glGetShaderInfoLogProc
>(
222 GetGLProcAddress("glGetShaderInfoLog"));
224 reinterpret_cast<glGetShaderivProc
>(GetGLProcAddress("glGetShaderiv"));
225 fn
.glGetShaderPrecisionFormatFn
= 0;
226 fn
.glGetShaderSourceFn
= reinterpret_cast<glGetShaderSourceProc
>(
227 GetGLProcAddress("glGetShaderSource"));
229 reinterpret_cast<glGetStringProc
>(GetGLProcAddress("glGetString"));
231 reinterpret_cast<glGetStringiProc
>(GetGLProcAddress("glGetStringi"));
232 fn
.glGetSyncivFn
= 0;
233 fn
.glGetTexLevelParameterfvFn
= 0;
234 fn
.glGetTexLevelParameterivFn
= 0;
235 fn
.glGetTexParameterfvFn
= reinterpret_cast<glGetTexParameterfvProc
>(
236 GetGLProcAddress("glGetTexParameterfv"));
237 fn
.glGetTexParameterivFn
= reinterpret_cast<glGetTexParameterivProc
>(
238 GetGLProcAddress("glGetTexParameteriv"));
239 fn
.glGetTransformFeedbackVaryingFn
= 0;
240 fn
.glGetTranslatedShaderSourceANGLEFn
= 0;
241 fn
.glGetUniformBlockIndexFn
= 0;
242 fn
.glGetUniformfvFn
=
243 reinterpret_cast<glGetUniformfvProc
>(GetGLProcAddress("glGetUniformfv"));
244 fn
.glGetUniformIndicesFn
= 0;
245 fn
.glGetUniformivFn
=
246 reinterpret_cast<glGetUniformivProc
>(GetGLProcAddress("glGetUniformiv"));
247 fn
.glGetUniformLocationFn
= reinterpret_cast<glGetUniformLocationProc
>(
248 GetGLProcAddress("glGetUniformLocation"));
249 fn
.glGetUniformuivFn
= 0;
250 fn
.glGetVertexAttribfvFn
= reinterpret_cast<glGetVertexAttribfvProc
>(
251 GetGLProcAddress("glGetVertexAttribfv"));
252 fn
.glGetVertexAttribivFn
= reinterpret_cast<glGetVertexAttribivProc
>(
253 GetGLProcAddress("glGetVertexAttribiv"));
254 fn
.glGetVertexAttribPointervFn
=
255 reinterpret_cast<glGetVertexAttribPointervProc
>(
256 GetGLProcAddress("glGetVertexAttribPointerv"));
257 fn
.glHintFn
= reinterpret_cast<glHintProc
>(GetGLProcAddress("glHint"));
258 fn
.glInsertEventMarkerEXTFn
= 0;
259 fn
.glInvalidateFramebufferFn
= 0;
260 fn
.glInvalidateSubFramebufferFn
= 0;
262 reinterpret_cast<glIsBufferProc
>(GetGLProcAddress("glIsBuffer"));
264 reinterpret_cast<glIsEnabledProc
>(GetGLProcAddress("glIsEnabled"));
265 fn
.glIsFenceAPPLEFn
= 0;
266 fn
.glIsFenceNVFn
= 0;
267 fn
.glIsFramebufferEXTFn
= 0;
269 reinterpret_cast<glIsProgramProc
>(GetGLProcAddress("glIsProgram"));
271 fn
.glIsRenderbufferEXTFn
= 0;
272 fn
.glIsSamplerFn
= 0;
274 reinterpret_cast<glIsShaderProc
>(GetGLProcAddress("glIsShader"));
277 reinterpret_cast<glIsTextureProc
>(GetGLProcAddress("glIsTexture"));
278 fn
.glIsTransformFeedbackFn
= 0;
279 fn
.glIsVertexArrayOESFn
= 0;
281 reinterpret_cast<glLineWidthProc
>(GetGLProcAddress("glLineWidth"));
283 reinterpret_cast<glLinkProgramProc
>(GetGLProcAddress("glLinkProgram"));
284 fn
.glMapBufferFn
= 0;
285 fn
.glMapBufferRangeFn
= 0;
286 fn
.glMatrixLoadfEXTFn
= 0;
287 fn
.glMatrixLoadIdentityEXTFn
= 0;
288 fn
.glPauseTransformFeedbackFn
= 0;
290 reinterpret_cast<glPixelStoreiProc
>(GetGLProcAddress("glPixelStorei"));
291 fn
.glPointParameteriFn
= 0;
292 fn
.glPolygonOffsetFn
= reinterpret_cast<glPolygonOffsetProc
>(
293 GetGLProcAddress("glPolygonOffset"));
294 fn
.glPopGroupMarkerEXTFn
= 0;
295 fn
.glProgramBinaryFn
= 0;
296 fn
.glProgramParameteriFn
= 0;
297 fn
.glPushGroupMarkerEXTFn
= 0;
298 fn
.glQueryCounterFn
= 0;
299 fn
.glReadBufferFn
= 0;
301 reinterpret_cast<glReadPixelsProc
>(GetGLProcAddress("glReadPixels"));
302 fn
.glReleaseShaderCompilerFn
= 0;
303 fn
.glRenderbufferStorageEXTFn
= 0;
304 fn
.glRenderbufferStorageMultisampleFn
= 0;
305 fn
.glRenderbufferStorageMultisampleANGLEFn
= 0;
306 fn
.glRenderbufferStorageMultisampleEXTFn
= 0;
307 fn
.glRenderbufferStorageMultisampleIMGFn
= 0;
308 fn
.glResumeTransformFeedbackFn
= 0;
309 fn
.glSampleCoverageFn
= reinterpret_cast<glSampleCoverageProc
>(
310 GetGLProcAddress("glSampleCoverage"));
311 fn
.glSamplerParameterfFn
= 0;
312 fn
.glSamplerParameterfvFn
= 0;
313 fn
.glSamplerParameteriFn
= 0;
314 fn
.glSamplerParameterivFn
= 0;
316 reinterpret_cast<glScissorProc
>(GetGLProcAddress("glScissor"));
317 fn
.glSetFenceAPPLEFn
= 0;
318 fn
.glSetFenceNVFn
= 0;
319 fn
.glShaderBinaryFn
= 0;
320 fn
.glShaderSourceFn
=
321 reinterpret_cast<glShaderSourceProc
>(GetGLProcAddress("glShaderSource"));
323 reinterpret_cast<glStencilFuncProc
>(GetGLProcAddress("glStencilFunc"));
324 fn
.glStencilFuncSeparateFn
= reinterpret_cast<glStencilFuncSeparateProc
>(
325 GetGLProcAddress("glStencilFuncSeparate"));
327 reinterpret_cast<glStencilMaskProc
>(GetGLProcAddress("glStencilMask"));
328 fn
.glStencilMaskSeparateFn
= reinterpret_cast<glStencilMaskSeparateProc
>(
329 GetGLProcAddress("glStencilMaskSeparate"));
331 reinterpret_cast<glStencilOpProc
>(GetGLProcAddress("glStencilOp"));
332 fn
.glStencilOpSeparateFn
= reinterpret_cast<glStencilOpSeparateProc
>(
333 GetGLProcAddress("glStencilOpSeparate"));
334 fn
.glTestFenceAPPLEFn
= 0;
335 fn
.glTestFenceNVFn
= 0;
337 reinterpret_cast<glTexImage2DProc
>(GetGLProcAddress("glTexImage2D"));
338 fn
.glTexImage3DFn
= 0;
339 fn
.glTexParameterfFn
= reinterpret_cast<glTexParameterfProc
>(
340 GetGLProcAddress("glTexParameterf"));
341 fn
.glTexParameterfvFn
= reinterpret_cast<glTexParameterfvProc
>(
342 GetGLProcAddress("glTexParameterfv"));
343 fn
.glTexParameteriFn
= reinterpret_cast<glTexParameteriProc
>(
344 GetGLProcAddress("glTexParameteri"));
345 fn
.glTexParameterivFn
= reinterpret_cast<glTexParameterivProc
>(
346 GetGLProcAddress("glTexParameteriv"));
347 fn
.glTexStorage2DEXTFn
= 0;
348 fn
.glTexStorage3DFn
= 0;
349 fn
.glTexSubImage2DFn
= reinterpret_cast<glTexSubImage2DProc
>(
350 GetGLProcAddress("glTexSubImage2D"));
351 fn
.glTexSubImage3DFn
= 0;
352 fn
.glTransformFeedbackVaryingsFn
= 0;
354 reinterpret_cast<glUniform1fProc
>(GetGLProcAddress("glUniform1f"));
356 reinterpret_cast<glUniform1fvProc
>(GetGLProcAddress("glUniform1fv"));
358 reinterpret_cast<glUniform1iProc
>(GetGLProcAddress("glUniform1i"));
360 reinterpret_cast<glUniform1ivProc
>(GetGLProcAddress("glUniform1iv"));
361 fn
.glUniform1uiFn
= 0;
362 fn
.glUniform1uivFn
= 0;
364 reinterpret_cast<glUniform2fProc
>(GetGLProcAddress("glUniform2f"));
366 reinterpret_cast<glUniform2fvProc
>(GetGLProcAddress("glUniform2fv"));
368 reinterpret_cast<glUniform2iProc
>(GetGLProcAddress("glUniform2i"));
370 reinterpret_cast<glUniform2ivProc
>(GetGLProcAddress("glUniform2iv"));
371 fn
.glUniform2uiFn
= 0;
372 fn
.glUniform2uivFn
= 0;
374 reinterpret_cast<glUniform3fProc
>(GetGLProcAddress("glUniform3f"));
376 reinterpret_cast<glUniform3fvProc
>(GetGLProcAddress("glUniform3fv"));
378 reinterpret_cast<glUniform3iProc
>(GetGLProcAddress("glUniform3i"));
380 reinterpret_cast<glUniform3ivProc
>(GetGLProcAddress("glUniform3iv"));
381 fn
.glUniform3uiFn
= 0;
382 fn
.glUniform3uivFn
= 0;
384 reinterpret_cast<glUniform4fProc
>(GetGLProcAddress("glUniform4f"));
386 reinterpret_cast<glUniform4fvProc
>(GetGLProcAddress("glUniform4fv"));
388 reinterpret_cast<glUniform4iProc
>(GetGLProcAddress("glUniform4i"));
390 reinterpret_cast<glUniform4ivProc
>(GetGLProcAddress("glUniform4iv"));
391 fn
.glUniform4uiFn
= 0;
392 fn
.glUniform4uivFn
= 0;
393 fn
.glUniformBlockBindingFn
= 0;
394 fn
.glUniformMatrix2fvFn
= reinterpret_cast<glUniformMatrix2fvProc
>(
395 GetGLProcAddress("glUniformMatrix2fv"));
396 fn
.glUniformMatrix2x3fvFn
= 0;
397 fn
.glUniformMatrix2x4fvFn
= 0;
398 fn
.glUniformMatrix3fvFn
= reinterpret_cast<glUniformMatrix3fvProc
>(
399 GetGLProcAddress("glUniformMatrix3fv"));
400 fn
.glUniformMatrix3x2fvFn
= 0;
401 fn
.glUniformMatrix3x4fvFn
= 0;
402 fn
.glUniformMatrix4fvFn
= reinterpret_cast<glUniformMatrix4fvProc
>(
403 GetGLProcAddress("glUniformMatrix4fv"));
404 fn
.glUniformMatrix4x2fvFn
= 0;
405 fn
.glUniformMatrix4x3fvFn
= 0;
406 fn
.glUnmapBufferFn
= 0;
408 reinterpret_cast<glUseProgramProc
>(GetGLProcAddress("glUseProgram"));
409 fn
.glValidateProgramFn
= reinterpret_cast<glValidateProgramProc
>(
410 GetGLProcAddress("glValidateProgram"));
411 fn
.glVertexAttrib1fFn
= reinterpret_cast<glVertexAttrib1fProc
>(
412 GetGLProcAddress("glVertexAttrib1f"));
413 fn
.glVertexAttrib1fvFn
= reinterpret_cast<glVertexAttrib1fvProc
>(
414 GetGLProcAddress("glVertexAttrib1fv"));
415 fn
.glVertexAttrib2fFn
= reinterpret_cast<glVertexAttrib2fProc
>(
416 GetGLProcAddress("glVertexAttrib2f"));
417 fn
.glVertexAttrib2fvFn
= reinterpret_cast<glVertexAttrib2fvProc
>(
418 GetGLProcAddress("glVertexAttrib2fv"));
419 fn
.glVertexAttrib3fFn
= reinterpret_cast<glVertexAttrib3fProc
>(
420 GetGLProcAddress("glVertexAttrib3f"));
421 fn
.glVertexAttrib3fvFn
= reinterpret_cast<glVertexAttrib3fvProc
>(
422 GetGLProcAddress("glVertexAttrib3fv"));
423 fn
.glVertexAttrib4fFn
= reinterpret_cast<glVertexAttrib4fProc
>(
424 GetGLProcAddress("glVertexAttrib4f"));
425 fn
.glVertexAttrib4fvFn
= reinterpret_cast<glVertexAttrib4fvProc
>(
426 GetGLProcAddress("glVertexAttrib4fv"));
427 fn
.glVertexAttribDivisorANGLEFn
= 0;
428 fn
.glVertexAttribI4iFn
= 0;
429 fn
.glVertexAttribI4ivFn
= 0;
430 fn
.glVertexAttribI4uiFn
= 0;
431 fn
.glVertexAttribI4uivFn
= 0;
432 fn
.glVertexAttribIPointerFn
= 0;
433 fn
.glVertexAttribPointerFn
= reinterpret_cast<glVertexAttribPointerProc
>(
434 GetGLProcAddress("glVertexAttribPointer"));
436 reinterpret_cast<glViewportProc
>(GetGLProcAddress("glViewport"));
440 void DriverGL::InitializeDynamicBindings(GLContext
* context
) {
441 DCHECK(context
&& context
->IsCurrent(NULL
));
442 const GLVersionInfo
* ver
= context
->GetVersionInfo();
443 ALLOW_UNUSED_LOCAL(ver
);
444 std::string extensions
= context
->GetExtensions() + " ";
445 ALLOW_UNUSED_LOCAL(extensions
);
447 ext
.b_GL_ANGLE_framebuffer_blit
=
448 extensions
.find("GL_ANGLE_framebuffer_blit ") != std::string::npos
;
449 ext
.b_GL_ANGLE_framebuffer_multisample
=
450 extensions
.find("GL_ANGLE_framebuffer_multisample ") != std::string::npos
;
451 ext
.b_GL_ANGLE_instanced_arrays
=
452 extensions
.find("GL_ANGLE_instanced_arrays ") != std::string::npos
;
453 ext
.b_GL_ANGLE_translated_shader_source
=
454 extensions
.find("GL_ANGLE_translated_shader_source ") !=
456 ext
.b_GL_APPLE_fence
=
457 extensions
.find("GL_APPLE_fence ") != std::string::npos
;
458 ext
.b_GL_APPLE_vertex_array_object
=
459 extensions
.find("GL_APPLE_vertex_array_object ") != std::string::npos
;
460 ext
.b_GL_ARB_draw_buffers
=
461 extensions
.find("GL_ARB_draw_buffers ") != std::string::npos
;
462 ext
.b_GL_ARB_draw_instanced
=
463 extensions
.find("GL_ARB_draw_instanced ") != std::string::npos
;
464 ext
.b_GL_ARB_get_program_binary
=
465 extensions
.find("GL_ARB_get_program_binary ") != std::string::npos
;
466 ext
.b_GL_ARB_instanced_arrays
=
467 extensions
.find("GL_ARB_instanced_arrays ") != std::string::npos
;
468 ext
.b_GL_ARB_map_buffer_range
=
469 extensions
.find("GL_ARB_map_buffer_range ") != std::string::npos
;
470 ext
.b_GL_ARB_occlusion_query
=
471 extensions
.find("GL_ARB_occlusion_query ") != std::string::npos
;
472 ext
.b_GL_ARB_robustness
=
473 extensions
.find("GL_ARB_robustness ") != std::string::npos
;
474 ext
.b_GL_ARB_sync
= extensions
.find("GL_ARB_sync ") != std::string::npos
;
475 ext
.b_GL_ARB_texture_storage
=
476 extensions
.find("GL_ARB_texture_storage ") != std::string::npos
;
477 ext
.b_GL_ARB_timer_query
=
478 extensions
.find("GL_ARB_timer_query ") != std::string::npos
;
479 ext
.b_GL_ARB_vertex_array_object
=
480 extensions
.find("GL_ARB_vertex_array_object ") != std::string::npos
;
481 ext
.b_GL_CHROMIUM_gles_depth_binding_hack
=
482 extensions
.find("GL_CHROMIUM_gles_depth_binding_hack ") !=
484 ext
.b_GL_CHROMIUM_glgetstringi_hack
=
485 extensions
.find("GL_CHROMIUM_glgetstringi_hack ") != std::string::npos
;
486 ext
.b_GL_EXT_debug_marker
=
487 extensions
.find("GL_EXT_debug_marker ") != std::string::npos
;
488 ext
.b_GL_EXT_direct_state_access
=
489 extensions
.find("GL_EXT_direct_state_access ") != std::string::npos
;
490 ext
.b_GL_EXT_discard_framebuffer
=
491 extensions
.find("GL_EXT_discard_framebuffer ") != std::string::npos
;
492 ext
.b_GL_EXT_disjoint_timer_query
=
493 extensions
.find("GL_EXT_disjoint_timer_query ") != std::string::npos
;
494 ext
.b_GL_EXT_draw_buffers
=
495 extensions
.find("GL_EXT_draw_buffers ") != std::string::npos
;
496 ext
.b_GL_EXT_framebuffer_blit
=
497 extensions
.find("GL_EXT_framebuffer_blit ") != std::string::npos
;
498 ext
.b_GL_EXT_framebuffer_multisample
=
499 extensions
.find("GL_EXT_framebuffer_multisample ") != std::string::npos
;
500 ext
.b_GL_EXT_framebuffer_object
=
501 extensions
.find("GL_EXT_framebuffer_object ") != std::string::npos
;
502 ext
.b_GL_EXT_map_buffer_range
=
503 extensions
.find("GL_EXT_map_buffer_range ") != std::string::npos
;
504 ext
.b_GL_EXT_multisampled_render_to_texture
=
505 extensions
.find("GL_EXT_multisampled_render_to_texture ") !=
507 ext
.b_GL_EXT_occlusion_query_boolean
=
508 extensions
.find("GL_EXT_occlusion_query_boolean ") != std::string::npos
;
509 ext
.b_GL_EXT_robustness
=
510 extensions
.find("GL_EXT_robustness ") != std::string::npos
;
511 ext
.b_GL_EXT_texture_storage
=
512 extensions
.find("GL_EXT_texture_storage ") != std::string::npos
;
513 ext
.b_GL_EXT_timer_query
=
514 extensions
.find("GL_EXT_timer_query ") != std::string::npos
;
515 ext
.b_GL_IMG_multisampled_render_to_texture
=
516 extensions
.find("GL_IMG_multisampled_render_to_texture ") !=
518 ext
.b_GL_KHR_blend_equation_advanced
=
519 extensions
.find("GL_KHR_blend_equation_advanced ") != std::string::npos
;
520 ext
.b_GL_KHR_robustness
=
521 extensions
.find("GL_KHR_robustness ") != std::string::npos
;
522 ext
.b_GL_NV_blend_equation_advanced
=
523 extensions
.find("GL_NV_blend_equation_advanced ") != std::string::npos
;
524 ext
.b_GL_NV_fence
= extensions
.find("GL_NV_fence ") != std::string::npos
;
525 ext
.b_GL_NV_path_rendering
=
526 extensions
.find("GL_NV_path_rendering ") != std::string::npos
;
527 ext
.b_GL_OES_EGL_image
=
528 extensions
.find("GL_OES_EGL_image ") != std::string::npos
;
529 ext
.b_GL_OES_get_program_binary
=
530 extensions
.find("GL_OES_get_program_binary ") != std::string::npos
;
531 ext
.b_GL_OES_mapbuffer
=
532 extensions
.find("GL_OES_mapbuffer ") != std::string::npos
;
533 ext
.b_GL_OES_vertex_array_object
=
534 extensions
.find("GL_OES_vertex_array_object ") != std::string::npos
;
536 debug_fn
.glBeginQueryFn
= 0;
537 if (!ver
->is_es
|| ver
->IsAtLeastGLES(3u, 0u)) {
539 reinterpret_cast<glBeginQueryProc
>(GetGLProcAddress("glBeginQuery"));
540 DCHECK(fn
.glBeginQueryFn
);
541 } else if (ext
.b_GL_ARB_occlusion_query
) {
543 reinterpret_cast<glBeginQueryProc
>(GetGLProcAddress("glBeginQueryARB"));
544 DCHECK(fn
.glBeginQueryFn
);
545 } else if (ext
.b_GL_EXT_disjoint_timer_query
||
546 ext
.b_GL_EXT_occlusion_query_boolean
) {
548 reinterpret_cast<glBeginQueryProc
>(GetGLProcAddress("glBeginQueryEXT"));
549 DCHECK(fn
.glBeginQueryFn
);
552 debug_fn
.glBeginTransformFeedbackFn
= 0;
553 if (ver
->IsAtLeastGL(3u, 0u) || ver
->IsAtLeastGLES(3u, 0u)) {
554 fn
.glBeginTransformFeedbackFn
=
555 reinterpret_cast<glBeginTransformFeedbackProc
>(
556 GetGLProcAddress("glBeginTransformFeedback"));
557 DCHECK(fn
.glBeginTransformFeedbackFn
);
560 debug_fn
.glBindBufferBaseFn
= 0;
561 if (ver
->IsAtLeastGL(3u, 0u) || ver
->IsAtLeastGLES(3u, 0u)) {
562 fn
.glBindBufferBaseFn
= reinterpret_cast<glBindBufferBaseProc
>(
563 GetGLProcAddress("glBindBufferBase"));
564 DCHECK(fn
.glBindBufferBaseFn
);
567 debug_fn
.glBindBufferRangeFn
= 0;
568 if (ver
->IsAtLeastGL(3u, 0u) || ver
->IsAtLeastGLES(3u, 0u)) {
569 fn
.glBindBufferRangeFn
= reinterpret_cast<glBindBufferRangeProc
>(
570 GetGLProcAddress("glBindBufferRange"));
571 DCHECK(fn
.glBindBufferRangeFn
);
574 debug_fn
.glBindFragDataLocationFn
= 0;
575 if (ver
->IsAtLeastGL(3u, 0u)) {
576 fn
.glBindFragDataLocationFn
= reinterpret_cast<glBindFragDataLocationProc
>(
577 GetGLProcAddress("glBindFragDataLocation"));
578 DCHECK(fn
.glBindFragDataLocationFn
);
581 debug_fn
.glBindFragDataLocationIndexedFn
= 0;
582 if (ver
->IsAtLeastGL(3u, 3u)) {
583 fn
.glBindFragDataLocationIndexedFn
=
584 reinterpret_cast<glBindFragDataLocationIndexedProc
>(
585 GetGLProcAddress("glBindFragDataLocationIndexed"));
586 DCHECK(fn
.glBindFragDataLocationIndexedFn
);
589 debug_fn
.glBindFramebufferEXTFn
= 0;
590 if (ver
->IsAtLeastGL(3u, 0u) || ver
->is_es
) {
591 fn
.glBindFramebufferEXTFn
= reinterpret_cast<glBindFramebufferEXTProc
>(
592 GetGLProcAddress("glBindFramebuffer"));
593 DCHECK(fn
.glBindFramebufferEXTFn
);
594 } else if (ext
.b_GL_EXT_framebuffer_object
) {
595 fn
.glBindFramebufferEXTFn
= reinterpret_cast<glBindFramebufferEXTProc
>(
596 GetGLProcAddress("glBindFramebufferEXT"));
597 DCHECK(fn
.glBindFramebufferEXTFn
);
600 debug_fn
.glBindRenderbufferEXTFn
= 0;
601 if (ver
->IsAtLeastGL(3u, 0u) || ver
->is_es
) {
602 fn
.glBindRenderbufferEXTFn
= reinterpret_cast<glBindRenderbufferEXTProc
>(
603 GetGLProcAddress("glBindRenderbuffer"));
604 DCHECK(fn
.glBindRenderbufferEXTFn
);
605 } else if (ext
.b_GL_EXT_framebuffer_object
) {
606 fn
.glBindRenderbufferEXTFn
= reinterpret_cast<glBindRenderbufferEXTProc
>(
607 GetGLProcAddress("glBindRenderbufferEXT"));
608 DCHECK(fn
.glBindRenderbufferEXTFn
);
611 debug_fn
.glBindSamplerFn
= 0;
612 if (ver
->IsAtLeastGL(3u, 3u) || ver
->IsAtLeastGLES(3u, 0u)) {
614 reinterpret_cast<glBindSamplerProc
>(GetGLProcAddress("glBindSampler"));
615 DCHECK(fn
.glBindSamplerFn
);
618 debug_fn
.glBindTransformFeedbackFn
= 0;
619 if (ver
->IsAtLeastGLES(3u, 0u) || ver
->IsAtLeastGL(4u, 0u)) {
620 fn
.glBindTransformFeedbackFn
=
621 reinterpret_cast<glBindTransformFeedbackProc
>(
622 GetGLProcAddress("glBindTransformFeedback"));
623 DCHECK(fn
.glBindTransformFeedbackFn
);
626 debug_fn
.glBindVertexArrayOESFn
= 0;
627 if (ver
->IsAtLeastGL(3u, 0u) || ver
->IsAtLeastGLES(3u, 0u) ||
628 ext
.b_GL_ARB_vertex_array_object
) {
629 fn
.glBindVertexArrayOESFn
= reinterpret_cast<glBindVertexArrayOESProc
>(
630 GetGLProcAddress("glBindVertexArray"));
631 DCHECK(fn
.glBindVertexArrayOESFn
);
632 } else if (ext
.b_GL_OES_vertex_array_object
) {
633 fn
.glBindVertexArrayOESFn
= reinterpret_cast<glBindVertexArrayOESProc
>(
634 GetGLProcAddress("glBindVertexArrayOES"));
635 DCHECK(fn
.glBindVertexArrayOESFn
);
636 } else if (ext
.b_GL_APPLE_vertex_array_object
) {
637 fn
.glBindVertexArrayOESFn
= reinterpret_cast<glBindVertexArrayOESProc
>(
638 GetGLProcAddress("glBindVertexArrayAPPLE"));
639 DCHECK(fn
.glBindVertexArrayOESFn
);
642 debug_fn
.glBlendBarrierKHRFn
= 0;
643 if (ext
.b_GL_NV_blend_equation_advanced
) {
644 fn
.glBlendBarrierKHRFn
= reinterpret_cast<glBlendBarrierKHRProc
>(
645 GetGLProcAddress("glBlendBarrierNV"));
646 DCHECK(fn
.glBlendBarrierKHRFn
);
647 } else if (ext
.b_GL_KHR_blend_equation_advanced
) {
648 fn
.glBlendBarrierKHRFn
= reinterpret_cast<glBlendBarrierKHRProc
>(
649 GetGLProcAddress("glBlendBarrierKHR"));
650 DCHECK(fn
.glBlendBarrierKHRFn
);
653 debug_fn
.glBlitFramebufferFn
= 0;
654 if (ver
->IsAtLeastGL(3u, 0u) || ver
->IsAtLeastGLES(3u, 0u)) {
655 fn
.glBlitFramebufferFn
= reinterpret_cast<glBlitFramebufferProc
>(
656 GetGLProcAddress("glBlitFramebuffer"));
657 DCHECK(fn
.glBlitFramebufferFn
);
660 debug_fn
.glBlitFramebufferANGLEFn
= 0;
661 if (ver
->IsAtLeastGL(3u, 0u) || ver
->IsAtLeastGLES(3u, 0u)) {
662 fn
.glBlitFramebufferANGLEFn
= reinterpret_cast<glBlitFramebufferANGLEProc
>(
663 GetGLProcAddress("glBlitFramebuffer"));
664 DCHECK(fn
.glBlitFramebufferANGLEFn
);
665 } else if (ext
.b_GL_ANGLE_framebuffer_blit
) {
666 fn
.glBlitFramebufferANGLEFn
= reinterpret_cast<glBlitFramebufferANGLEProc
>(
667 GetGLProcAddress("glBlitFramebufferANGLE"));
668 DCHECK(fn
.glBlitFramebufferANGLEFn
);
671 debug_fn
.glBlitFramebufferEXTFn
= 0;
672 if (ver
->IsAtLeastGL(3u, 0u) || ver
->IsAtLeastGLES(3u, 0u)) {
673 fn
.glBlitFramebufferEXTFn
= reinterpret_cast<glBlitFramebufferEXTProc
>(
674 GetGLProcAddress("glBlitFramebuffer"));
675 DCHECK(fn
.glBlitFramebufferEXTFn
);
676 } else if (ext
.b_GL_EXT_framebuffer_blit
) {
677 fn
.glBlitFramebufferEXTFn
= reinterpret_cast<glBlitFramebufferEXTProc
>(
678 GetGLProcAddress("glBlitFramebufferEXT"));
679 DCHECK(fn
.glBlitFramebufferEXTFn
);
682 debug_fn
.glCheckFramebufferStatusEXTFn
= 0;
683 if (ver
->IsAtLeastGL(3u, 0u) || ver
->is_es
) {
684 fn
.glCheckFramebufferStatusEXTFn
=
685 reinterpret_cast<glCheckFramebufferStatusEXTProc
>(
686 GetGLProcAddress("glCheckFramebufferStatus"));
687 DCHECK(fn
.glCheckFramebufferStatusEXTFn
);
688 } else if (ext
.b_GL_EXT_framebuffer_object
) {
689 fn
.glCheckFramebufferStatusEXTFn
=
690 reinterpret_cast<glCheckFramebufferStatusEXTProc
>(
691 GetGLProcAddress("glCheckFramebufferStatusEXT"));
692 DCHECK(fn
.glCheckFramebufferStatusEXTFn
);
695 debug_fn
.glClearBufferfiFn
= 0;
696 if (ver
->IsAtLeastGL(3u, 0u) || ver
->IsAtLeastGLES(3u, 0u)) {
697 fn
.glClearBufferfiFn
= reinterpret_cast<glClearBufferfiProc
>(
698 GetGLProcAddress("glClearBufferfi"));
699 DCHECK(fn
.glClearBufferfiFn
);
702 debug_fn
.glClearBufferfvFn
= 0;
703 if (ver
->IsAtLeastGL(3u, 0u) || ver
->IsAtLeastGLES(3u, 0u)) {
704 fn
.glClearBufferfvFn
= reinterpret_cast<glClearBufferfvProc
>(
705 GetGLProcAddress("glClearBufferfv"));
706 DCHECK(fn
.glClearBufferfvFn
);
709 debug_fn
.glClearBufferivFn
= 0;
710 if (ver
->IsAtLeastGL(3u, 0u) || ver
->IsAtLeastGLES(3u, 0u)) {
711 fn
.glClearBufferivFn
= reinterpret_cast<glClearBufferivProc
>(
712 GetGLProcAddress("glClearBufferiv"));
713 DCHECK(fn
.glClearBufferivFn
);
716 debug_fn
.glClearBufferuivFn
= 0;
717 if (ver
->IsAtLeastGL(3u, 0u) || ver
->IsAtLeastGLES(3u, 0u)) {
718 fn
.glClearBufferuivFn
= reinterpret_cast<glClearBufferuivProc
>(
719 GetGLProcAddress("glClearBufferuiv"));
720 DCHECK(fn
.glClearBufferuivFn
);
723 debug_fn
.glClearDepthfFn
= 0;
724 if (ver
->IsAtLeastGL(4u, 1u) || ver
->is_es
) {
726 reinterpret_cast<glClearDepthfProc
>(GetGLProcAddress("glClearDepthf"));
727 DCHECK(fn
.glClearDepthfFn
);
730 debug_fn
.glClientWaitSyncFn
= 0;
731 if (ver
->IsAtLeastGL(3u, 2u) || ver
->IsAtLeastGLES(3u, 0u) ||
733 fn
.glClientWaitSyncFn
= reinterpret_cast<glClientWaitSyncProc
>(
734 GetGLProcAddress("glClientWaitSync"));
735 DCHECK(fn
.glClientWaitSyncFn
);
738 debug_fn
.glCompressedTexImage3DFn
= 0;
739 if (!ver
->is_es
|| ver
->IsAtLeastGLES(3u, 0u)) {
740 fn
.glCompressedTexImage3DFn
= reinterpret_cast<glCompressedTexImage3DProc
>(
741 GetGLProcAddress("glCompressedTexImage3D"));
742 DCHECK(fn
.glCompressedTexImage3DFn
);
745 debug_fn
.glCompressedTexSubImage3DFn
= 0;
746 if (!ver
->is_es
|| ver
->IsAtLeastGLES(3u, 0u)) {
747 fn
.glCompressedTexSubImage3DFn
=
748 reinterpret_cast<glCompressedTexSubImage3DProc
>(
749 GetGLProcAddress("glCompressedTexSubImage3D"));
750 DCHECK(fn
.glCompressedTexSubImage3DFn
);
753 debug_fn
.glCopyBufferSubDataFn
= 0;
754 if (ver
->IsAtLeastGLES(3u, 0u) || ver
->IsAtLeastGL(3u, 1u)) {
755 fn
.glCopyBufferSubDataFn
= reinterpret_cast<glCopyBufferSubDataProc
>(
756 GetGLProcAddress("glCopyBufferSubData"));
757 DCHECK(fn
.glCopyBufferSubDataFn
);
760 debug_fn
.glCopyTexSubImage3DFn
= 0;
761 if (!ver
->is_es
|| ver
->IsAtLeastGLES(3u, 0u)) {
762 fn
.glCopyTexSubImage3DFn
= reinterpret_cast<glCopyTexSubImage3DProc
>(
763 GetGLProcAddress("glCopyTexSubImage3D"));
764 DCHECK(fn
.glCopyTexSubImage3DFn
);
767 debug_fn
.glDeleteFencesAPPLEFn
= 0;
768 if (ext
.b_GL_APPLE_fence
) {
769 fn
.glDeleteFencesAPPLEFn
= reinterpret_cast<glDeleteFencesAPPLEProc
>(
770 GetGLProcAddress("glDeleteFencesAPPLE"));
771 DCHECK(fn
.glDeleteFencesAPPLEFn
);
774 debug_fn
.glDeleteFencesNVFn
= 0;
775 if (ext
.b_GL_NV_fence
) {
776 fn
.glDeleteFencesNVFn
= reinterpret_cast<glDeleteFencesNVProc
>(
777 GetGLProcAddress("glDeleteFencesNV"));
778 DCHECK(fn
.glDeleteFencesNVFn
);
781 debug_fn
.glDeleteFramebuffersEXTFn
= 0;
782 if (ver
->IsAtLeastGL(3u, 0u) || ver
->is_es
) {
783 fn
.glDeleteFramebuffersEXTFn
=
784 reinterpret_cast<glDeleteFramebuffersEXTProc
>(
785 GetGLProcAddress("glDeleteFramebuffers"));
786 DCHECK(fn
.glDeleteFramebuffersEXTFn
);
787 } else if (ext
.b_GL_EXT_framebuffer_object
) {
788 fn
.glDeleteFramebuffersEXTFn
=
789 reinterpret_cast<glDeleteFramebuffersEXTProc
>(
790 GetGLProcAddress("glDeleteFramebuffersEXT"));
791 DCHECK(fn
.glDeleteFramebuffersEXTFn
);
794 debug_fn
.glDeleteQueriesFn
= 0;
795 if (!ver
->is_es
|| ver
->IsAtLeastGLES(3u, 0u)) {
796 fn
.glDeleteQueriesFn
= reinterpret_cast<glDeleteQueriesProc
>(
797 GetGLProcAddress("glDeleteQueries"));
798 DCHECK(fn
.glDeleteQueriesFn
);
799 } else if (ext
.b_GL_ARB_occlusion_query
) {
800 fn
.glDeleteQueriesFn
= reinterpret_cast<glDeleteQueriesProc
>(
801 GetGLProcAddress("glDeleteQueriesARB"));
802 DCHECK(fn
.glDeleteQueriesFn
);
803 } else if (ext
.b_GL_EXT_disjoint_timer_query
||
804 ext
.b_GL_EXT_occlusion_query_boolean
) {
805 fn
.glDeleteQueriesFn
= reinterpret_cast<glDeleteQueriesProc
>(
806 GetGLProcAddress("glDeleteQueriesEXT"));
807 DCHECK(fn
.glDeleteQueriesFn
);
810 debug_fn
.glDeleteRenderbuffersEXTFn
= 0;
811 if (ver
->IsAtLeastGL(3u, 0u) || ver
->is_es
) {
812 fn
.glDeleteRenderbuffersEXTFn
=
813 reinterpret_cast<glDeleteRenderbuffersEXTProc
>(
814 GetGLProcAddress("glDeleteRenderbuffers"));
815 DCHECK(fn
.glDeleteRenderbuffersEXTFn
);
816 } else if (ext
.b_GL_EXT_framebuffer_object
) {
817 fn
.glDeleteRenderbuffersEXTFn
=
818 reinterpret_cast<glDeleteRenderbuffersEXTProc
>(
819 GetGLProcAddress("glDeleteRenderbuffersEXT"));
820 DCHECK(fn
.glDeleteRenderbuffersEXTFn
);
823 debug_fn
.glDeleteSamplersFn
= 0;
824 if (ver
->IsAtLeastGL(3u, 3u) || ver
->IsAtLeastGLES(3u, 0u)) {
825 fn
.glDeleteSamplersFn
= reinterpret_cast<glDeleteSamplersProc
>(
826 GetGLProcAddress("glDeleteSamplers"));
827 DCHECK(fn
.glDeleteSamplersFn
);
830 debug_fn
.glDeleteSyncFn
= 0;
831 if (ver
->IsAtLeastGL(3u, 2u) || ver
->IsAtLeastGLES(3u, 0u) ||
834 reinterpret_cast<glDeleteSyncProc
>(GetGLProcAddress("glDeleteSync"));
835 DCHECK(fn
.glDeleteSyncFn
);
838 debug_fn
.glDeleteTransformFeedbacksFn
= 0;
839 if (ver
->IsAtLeastGLES(3u, 0u) || ver
->IsAtLeastGL(4u, 0u)) {
840 fn
.glDeleteTransformFeedbacksFn
=
841 reinterpret_cast<glDeleteTransformFeedbacksProc
>(
842 GetGLProcAddress("glDeleteTransformFeedbacks"));
843 DCHECK(fn
.glDeleteTransformFeedbacksFn
);
846 debug_fn
.glDeleteVertexArraysOESFn
= 0;
847 if (ver
->IsAtLeastGL(3u, 0u) || ver
->IsAtLeastGLES(3u, 0u) ||
848 ext
.b_GL_ARB_vertex_array_object
) {
849 fn
.glDeleteVertexArraysOESFn
=
850 reinterpret_cast<glDeleteVertexArraysOESProc
>(
851 GetGLProcAddress("glDeleteVertexArrays"));
852 DCHECK(fn
.glDeleteVertexArraysOESFn
);
853 } else if (ext
.b_GL_OES_vertex_array_object
) {
854 fn
.glDeleteVertexArraysOESFn
=
855 reinterpret_cast<glDeleteVertexArraysOESProc
>(
856 GetGLProcAddress("glDeleteVertexArraysOES"));
857 DCHECK(fn
.glDeleteVertexArraysOESFn
);
858 } else if (ext
.b_GL_APPLE_vertex_array_object
) {
859 fn
.glDeleteVertexArraysOESFn
=
860 reinterpret_cast<glDeleteVertexArraysOESProc
>(
861 GetGLProcAddress("glDeleteVertexArraysAPPLE"));
862 DCHECK(fn
.glDeleteVertexArraysOESFn
);
865 debug_fn
.glDepthRangefFn
= 0;
866 if (ver
->IsAtLeastGL(4u, 1u) || ver
->is_es
) {
868 reinterpret_cast<glDepthRangefProc
>(GetGLProcAddress("glDepthRangef"));
869 DCHECK(fn
.glDepthRangefFn
);
872 debug_fn
.glDiscardFramebufferEXTFn
= 0;
873 if (ext
.b_GL_EXT_discard_framebuffer
) {
874 fn
.glDiscardFramebufferEXTFn
=
875 reinterpret_cast<glDiscardFramebufferEXTProc
>(
876 GetGLProcAddress("glDiscardFramebufferEXT"));
877 DCHECK(fn
.glDiscardFramebufferEXTFn
);
880 debug_fn
.glDrawArraysInstancedANGLEFn
= 0;
881 if (ver
->IsAtLeastGLES(3u, 0u) || ver
->IsAtLeastGL(3u, 1u)) {
882 fn
.glDrawArraysInstancedANGLEFn
=
883 reinterpret_cast<glDrawArraysInstancedANGLEProc
>(
884 GetGLProcAddress("glDrawArraysInstanced"));
885 DCHECK(fn
.glDrawArraysInstancedANGLEFn
);
886 } else if (ext
.b_GL_ARB_draw_instanced
) {
887 fn
.glDrawArraysInstancedANGLEFn
=
888 reinterpret_cast<glDrawArraysInstancedANGLEProc
>(
889 GetGLProcAddress("glDrawArraysInstancedARB"));
890 DCHECK(fn
.glDrawArraysInstancedANGLEFn
);
891 } else if (ext
.b_GL_ANGLE_instanced_arrays
) {
892 fn
.glDrawArraysInstancedANGLEFn
=
893 reinterpret_cast<glDrawArraysInstancedANGLEProc
>(
894 GetGLProcAddress("glDrawArraysInstancedANGLE"));
895 DCHECK(fn
.glDrawArraysInstancedANGLEFn
);
898 debug_fn
.glDrawBufferFn
= 0;
901 reinterpret_cast<glDrawBufferProc
>(GetGLProcAddress("glDrawBuffer"));
902 DCHECK(fn
.glDrawBufferFn
);
905 debug_fn
.glDrawBuffersARBFn
= 0;
906 if (!ver
->is_es
|| ver
->IsAtLeastGLES(3u, 0u)) {
907 fn
.glDrawBuffersARBFn
= reinterpret_cast<glDrawBuffersARBProc
>(
908 GetGLProcAddress("glDrawBuffers"));
909 DCHECK(fn
.glDrawBuffersARBFn
);
910 } else if (ext
.b_GL_ARB_draw_buffers
) {
911 fn
.glDrawBuffersARBFn
= reinterpret_cast<glDrawBuffersARBProc
>(
912 GetGLProcAddress("glDrawBuffersARB"));
913 DCHECK(fn
.glDrawBuffersARBFn
);
914 } else if (ext
.b_GL_EXT_draw_buffers
) {
915 fn
.glDrawBuffersARBFn
= reinterpret_cast<glDrawBuffersARBProc
>(
916 GetGLProcAddress("glDrawBuffersEXT"));
917 DCHECK(fn
.glDrawBuffersARBFn
);
920 debug_fn
.glDrawElementsInstancedANGLEFn
= 0;
921 if (ver
->IsAtLeastGLES(3u, 0u) || ver
->IsAtLeastGL(3u, 1u)) {
922 fn
.glDrawElementsInstancedANGLEFn
=
923 reinterpret_cast<glDrawElementsInstancedANGLEProc
>(
924 GetGLProcAddress("glDrawElementsInstanced"));
925 DCHECK(fn
.glDrawElementsInstancedANGLEFn
);
926 } else if (ext
.b_GL_ARB_draw_instanced
) {
927 fn
.glDrawElementsInstancedANGLEFn
=
928 reinterpret_cast<glDrawElementsInstancedANGLEProc
>(
929 GetGLProcAddress("glDrawElementsInstancedARB"));
930 DCHECK(fn
.glDrawElementsInstancedANGLEFn
);
931 } else if (ext
.b_GL_ANGLE_instanced_arrays
) {
932 fn
.glDrawElementsInstancedANGLEFn
=
933 reinterpret_cast<glDrawElementsInstancedANGLEProc
>(
934 GetGLProcAddress("glDrawElementsInstancedANGLE"));
935 DCHECK(fn
.glDrawElementsInstancedANGLEFn
);
938 debug_fn
.glDrawRangeElementsFn
= 0;
939 if (!ver
->is_es
|| ver
->IsAtLeastGLES(3u, 0u)) {
940 fn
.glDrawRangeElementsFn
= reinterpret_cast<glDrawRangeElementsProc
>(
941 GetGLProcAddress("glDrawRangeElements"));
942 DCHECK(fn
.glDrawRangeElementsFn
);
945 debug_fn
.glEGLImageTargetRenderbufferStorageOESFn
= 0;
946 if (ext
.b_GL_OES_EGL_image
) {
947 fn
.glEGLImageTargetRenderbufferStorageOESFn
=
948 reinterpret_cast<glEGLImageTargetRenderbufferStorageOESProc
>(
949 GetGLProcAddress("glEGLImageTargetRenderbufferStorageOES"));
950 DCHECK(fn
.glEGLImageTargetRenderbufferStorageOESFn
);
953 debug_fn
.glEGLImageTargetTexture2DOESFn
= 0;
954 if (ext
.b_GL_OES_EGL_image
) {
955 fn
.glEGLImageTargetTexture2DOESFn
=
956 reinterpret_cast<glEGLImageTargetTexture2DOESProc
>(
957 GetGLProcAddress("glEGLImageTargetTexture2DOES"));
958 DCHECK(fn
.glEGLImageTargetTexture2DOESFn
);
961 debug_fn
.glEndQueryFn
= 0;
962 if (!ver
->is_es
|| ver
->IsAtLeastGLES(3u, 0u)) {
964 reinterpret_cast<glEndQueryProc
>(GetGLProcAddress("glEndQuery"));
965 DCHECK(fn
.glEndQueryFn
);
966 } else if (ext
.b_GL_ARB_occlusion_query
) {
968 reinterpret_cast<glEndQueryProc
>(GetGLProcAddress("glEndQueryARB"));
969 DCHECK(fn
.glEndQueryFn
);
970 } else if (ext
.b_GL_EXT_disjoint_timer_query
||
971 ext
.b_GL_EXT_occlusion_query_boolean
) {
973 reinterpret_cast<glEndQueryProc
>(GetGLProcAddress("glEndQueryEXT"));
974 DCHECK(fn
.glEndQueryFn
);
977 debug_fn
.glEndTransformFeedbackFn
= 0;
978 if (ver
->IsAtLeastGL(3u, 0u) || ver
->IsAtLeastGLES(3u, 0u)) {
979 fn
.glEndTransformFeedbackFn
= reinterpret_cast<glEndTransformFeedbackProc
>(
980 GetGLProcAddress("glEndTransformFeedback"));
981 DCHECK(fn
.glEndTransformFeedbackFn
);
984 debug_fn
.glFenceSyncFn
= 0;
985 if (ver
->IsAtLeastGL(3u, 2u) || ver
->IsAtLeastGLES(3u, 0u) ||
988 reinterpret_cast<glFenceSyncProc
>(GetGLProcAddress("glFenceSync"));
989 DCHECK(fn
.glFenceSyncFn
);
992 debug_fn
.glFinishFenceAPPLEFn
= 0;
993 if (ext
.b_GL_APPLE_fence
) {
994 fn
.glFinishFenceAPPLEFn
= reinterpret_cast<glFinishFenceAPPLEProc
>(
995 GetGLProcAddress("glFinishFenceAPPLE"));
996 DCHECK(fn
.glFinishFenceAPPLEFn
);
999 debug_fn
.glFinishFenceNVFn
= 0;
1000 if (ext
.b_GL_NV_fence
) {
1001 fn
.glFinishFenceNVFn
= reinterpret_cast<glFinishFenceNVProc
>(
1002 GetGLProcAddress("glFinishFenceNV"));
1003 DCHECK(fn
.glFinishFenceNVFn
);
1006 debug_fn
.glFlushMappedBufferRangeFn
= 0;
1007 if (ver
->IsAtLeastGL(3u, 0u) || ver
->IsAtLeastGLES(3u, 0u)) {
1008 fn
.glFlushMappedBufferRangeFn
=
1009 reinterpret_cast<glFlushMappedBufferRangeProc
>(
1010 GetGLProcAddress("glFlushMappedBufferRange"));
1011 DCHECK(fn
.glFlushMappedBufferRangeFn
);
1014 debug_fn
.glFramebufferRenderbufferEXTFn
= 0;
1015 if (ver
->IsAtLeastGL(3u, 0u) || ver
->is_es
) {
1016 fn
.glFramebufferRenderbufferEXTFn
=
1017 reinterpret_cast<glFramebufferRenderbufferEXTProc
>(
1018 GetGLProcAddress("glFramebufferRenderbuffer"));
1019 DCHECK(fn
.glFramebufferRenderbufferEXTFn
);
1020 } else if (ext
.b_GL_EXT_framebuffer_object
) {
1021 fn
.glFramebufferRenderbufferEXTFn
=
1022 reinterpret_cast<glFramebufferRenderbufferEXTProc
>(
1023 GetGLProcAddress("glFramebufferRenderbufferEXT"));
1024 DCHECK(fn
.glFramebufferRenderbufferEXTFn
);
1027 debug_fn
.glFramebufferTexture2DEXTFn
= 0;
1028 if (ver
->IsAtLeastGL(3u, 0u) || ver
->is_es
) {
1029 fn
.glFramebufferTexture2DEXTFn
=
1030 reinterpret_cast<glFramebufferTexture2DEXTProc
>(
1031 GetGLProcAddress("glFramebufferTexture2D"));
1032 DCHECK(fn
.glFramebufferTexture2DEXTFn
);
1033 } else if (ext
.b_GL_EXT_framebuffer_object
) {
1034 fn
.glFramebufferTexture2DEXTFn
=
1035 reinterpret_cast<glFramebufferTexture2DEXTProc
>(
1036 GetGLProcAddress("glFramebufferTexture2DEXT"));
1037 DCHECK(fn
.glFramebufferTexture2DEXTFn
);
1040 debug_fn
.glFramebufferTexture2DMultisampleEXTFn
= 0;
1041 if (ext
.b_GL_EXT_multisampled_render_to_texture
) {
1042 fn
.glFramebufferTexture2DMultisampleEXTFn
=
1043 reinterpret_cast<glFramebufferTexture2DMultisampleEXTProc
>(
1044 GetGLProcAddress("glFramebufferTexture2DMultisampleEXT"));
1045 DCHECK(fn
.glFramebufferTexture2DMultisampleEXTFn
);
1048 debug_fn
.glFramebufferTexture2DMultisampleIMGFn
= 0;
1049 if (ext
.b_GL_IMG_multisampled_render_to_texture
) {
1050 fn
.glFramebufferTexture2DMultisampleIMGFn
=
1051 reinterpret_cast<glFramebufferTexture2DMultisampleIMGProc
>(
1052 GetGLProcAddress("glFramebufferTexture2DMultisampleIMG"));
1053 DCHECK(fn
.glFramebufferTexture2DMultisampleIMGFn
);
1056 debug_fn
.glFramebufferTextureLayerFn
= 0;
1057 if (ver
->IsAtLeastGL(3u, 0u) || ver
->IsAtLeastGLES(3u, 0u)) {
1058 fn
.glFramebufferTextureLayerFn
=
1059 reinterpret_cast<glFramebufferTextureLayerProc
>(
1060 GetGLProcAddress("glFramebufferTextureLayer"));
1061 DCHECK(fn
.glFramebufferTextureLayerFn
);
1064 debug_fn
.glGenerateMipmapEXTFn
= 0;
1065 if (ver
->IsAtLeastGL(3u, 0u) || ver
->is_es
) {
1066 fn
.glGenerateMipmapEXTFn
= reinterpret_cast<glGenerateMipmapEXTProc
>(
1067 GetGLProcAddress("glGenerateMipmap"));
1068 DCHECK(fn
.glGenerateMipmapEXTFn
);
1069 } else if (ext
.b_GL_EXT_framebuffer_object
) {
1070 fn
.glGenerateMipmapEXTFn
= reinterpret_cast<glGenerateMipmapEXTProc
>(
1071 GetGLProcAddress("glGenerateMipmapEXT"));
1072 DCHECK(fn
.glGenerateMipmapEXTFn
);
1075 debug_fn
.glGenFencesAPPLEFn
= 0;
1076 if (ext
.b_GL_APPLE_fence
) {
1077 fn
.glGenFencesAPPLEFn
= reinterpret_cast<glGenFencesAPPLEProc
>(
1078 GetGLProcAddress("glGenFencesAPPLE"));
1079 DCHECK(fn
.glGenFencesAPPLEFn
);
1082 debug_fn
.glGenFencesNVFn
= 0;
1083 if (ext
.b_GL_NV_fence
) {
1084 fn
.glGenFencesNVFn
=
1085 reinterpret_cast<glGenFencesNVProc
>(GetGLProcAddress("glGenFencesNV"));
1086 DCHECK(fn
.glGenFencesNVFn
);
1089 debug_fn
.glGenFramebuffersEXTFn
= 0;
1090 if (ver
->IsAtLeastGL(3u, 0u) || ver
->is_es
) {
1091 fn
.glGenFramebuffersEXTFn
= reinterpret_cast<glGenFramebuffersEXTProc
>(
1092 GetGLProcAddress("glGenFramebuffers"));
1093 DCHECK(fn
.glGenFramebuffersEXTFn
);
1094 } else if (ext
.b_GL_EXT_framebuffer_object
) {
1095 fn
.glGenFramebuffersEXTFn
= reinterpret_cast<glGenFramebuffersEXTProc
>(
1096 GetGLProcAddress("glGenFramebuffersEXT"));
1097 DCHECK(fn
.glGenFramebuffersEXTFn
);
1100 debug_fn
.glGenQueriesFn
= 0;
1101 if (!ver
->is_es
|| ver
->IsAtLeastGLES(3u, 0u)) {
1103 reinterpret_cast<glGenQueriesProc
>(GetGLProcAddress("glGenQueries"));
1104 DCHECK(fn
.glGenQueriesFn
);
1105 } else if (ext
.b_GL_ARB_occlusion_query
) {
1107 reinterpret_cast<glGenQueriesProc
>(GetGLProcAddress("glGenQueriesARB"));
1108 DCHECK(fn
.glGenQueriesFn
);
1109 } else if (ext
.b_GL_EXT_disjoint_timer_query
||
1110 ext
.b_GL_EXT_occlusion_query_boolean
) {
1112 reinterpret_cast<glGenQueriesProc
>(GetGLProcAddress("glGenQueriesEXT"));
1113 DCHECK(fn
.glGenQueriesFn
);
1116 debug_fn
.glGenRenderbuffersEXTFn
= 0;
1117 if (ver
->IsAtLeastGL(3u, 0u) || ver
->is_es
) {
1118 fn
.glGenRenderbuffersEXTFn
= reinterpret_cast<glGenRenderbuffersEXTProc
>(
1119 GetGLProcAddress("glGenRenderbuffers"));
1120 DCHECK(fn
.glGenRenderbuffersEXTFn
);
1121 } else if (ext
.b_GL_EXT_framebuffer_object
) {
1122 fn
.glGenRenderbuffersEXTFn
= reinterpret_cast<glGenRenderbuffersEXTProc
>(
1123 GetGLProcAddress("glGenRenderbuffersEXT"));
1124 DCHECK(fn
.glGenRenderbuffersEXTFn
);
1127 debug_fn
.glGenSamplersFn
= 0;
1128 if (ver
->IsAtLeastGL(3u, 3u) || ver
->IsAtLeastGLES(3u, 0u)) {
1129 fn
.glGenSamplersFn
=
1130 reinterpret_cast<glGenSamplersProc
>(GetGLProcAddress("glGenSamplers"));
1131 DCHECK(fn
.glGenSamplersFn
);
1134 debug_fn
.glGenTransformFeedbacksFn
= 0;
1135 if (ver
->IsAtLeastGLES(3u, 0u) || ver
->IsAtLeastGL(4u, 0u)) {
1136 fn
.glGenTransformFeedbacksFn
=
1137 reinterpret_cast<glGenTransformFeedbacksProc
>(
1138 GetGLProcAddress("glGenTransformFeedbacks"));
1139 DCHECK(fn
.glGenTransformFeedbacksFn
);
1142 debug_fn
.glGenVertexArraysOESFn
= 0;
1143 if (ver
->IsAtLeastGL(3u, 0u) || ver
->IsAtLeastGLES(3u, 0u) ||
1144 ext
.b_GL_ARB_vertex_array_object
) {
1145 fn
.glGenVertexArraysOESFn
= reinterpret_cast<glGenVertexArraysOESProc
>(
1146 GetGLProcAddress("glGenVertexArrays"));
1147 DCHECK(fn
.glGenVertexArraysOESFn
);
1148 } else if (ext
.b_GL_OES_vertex_array_object
) {
1149 fn
.glGenVertexArraysOESFn
= reinterpret_cast<glGenVertexArraysOESProc
>(
1150 GetGLProcAddress("glGenVertexArraysOES"));
1151 DCHECK(fn
.glGenVertexArraysOESFn
);
1152 } else if (ext
.b_GL_APPLE_vertex_array_object
) {
1153 fn
.glGenVertexArraysOESFn
= reinterpret_cast<glGenVertexArraysOESProc
>(
1154 GetGLProcAddress("glGenVertexArraysAPPLE"));
1155 DCHECK(fn
.glGenVertexArraysOESFn
);
1158 debug_fn
.glGetActiveUniformBlockivFn
= 0;
1159 if (ver
->IsAtLeastGLES(3u, 0u) || ver
->IsAtLeastGL(3u, 1u)) {
1160 fn
.glGetActiveUniformBlockivFn
=
1161 reinterpret_cast<glGetActiveUniformBlockivProc
>(
1162 GetGLProcAddress("glGetActiveUniformBlockiv"));
1163 DCHECK(fn
.glGetActiveUniformBlockivFn
);
1166 debug_fn
.glGetActiveUniformBlockNameFn
= 0;
1167 if (ver
->IsAtLeastGLES(3u, 0u) || ver
->IsAtLeastGL(3u, 1u)) {
1168 fn
.glGetActiveUniformBlockNameFn
=
1169 reinterpret_cast<glGetActiveUniformBlockNameProc
>(
1170 GetGLProcAddress("glGetActiveUniformBlockName"));
1171 DCHECK(fn
.glGetActiveUniformBlockNameFn
);
1174 debug_fn
.glGetActiveUniformsivFn
= 0;
1175 if (ver
->IsAtLeastGLES(3u, 0u) || ver
->IsAtLeastGL(3u, 1u)) {
1176 fn
.glGetActiveUniformsivFn
= reinterpret_cast<glGetActiveUniformsivProc
>(
1177 GetGLProcAddress("glGetActiveUniformsiv"));
1178 DCHECK(fn
.glGetActiveUniformsivFn
);
1181 debug_fn
.glGetFenceivNVFn
= 0;
1182 if (ext
.b_GL_NV_fence
) {
1183 fn
.glGetFenceivNVFn
= reinterpret_cast<glGetFenceivNVProc
>(
1184 GetGLProcAddress("glGetFenceivNV"));
1185 DCHECK(fn
.glGetFenceivNVFn
);
1188 debug_fn
.glGetFragDataLocationFn
= 0;
1189 if (ver
->IsAtLeastGL(3u, 0u) || ver
->IsAtLeastGLES(3u, 0u)) {
1190 fn
.glGetFragDataLocationFn
= reinterpret_cast<glGetFragDataLocationProc
>(
1191 GetGLProcAddress("glGetFragDataLocation"));
1192 DCHECK(fn
.glGetFragDataLocationFn
);
1195 debug_fn
.glGetFramebufferAttachmentParameterivEXTFn
= 0;
1196 if (ver
->IsAtLeastGL(3u, 0u) || ver
->is_es
) {
1197 fn
.glGetFramebufferAttachmentParameterivEXTFn
=
1198 reinterpret_cast<glGetFramebufferAttachmentParameterivEXTProc
>(
1199 GetGLProcAddress("glGetFramebufferAttachmentParameteriv"));
1200 DCHECK(fn
.glGetFramebufferAttachmentParameterivEXTFn
);
1201 } else if (ext
.b_GL_EXT_framebuffer_object
) {
1202 fn
.glGetFramebufferAttachmentParameterivEXTFn
=
1203 reinterpret_cast<glGetFramebufferAttachmentParameterivEXTProc
>(
1204 GetGLProcAddress("glGetFramebufferAttachmentParameterivEXT"));
1205 DCHECK(fn
.glGetFramebufferAttachmentParameterivEXTFn
);
1208 debug_fn
.glGetGraphicsResetStatusARBFn
= 0;
1209 if (ver
->IsAtLeastGL(4u, 5u)) {
1210 fn
.glGetGraphicsResetStatusARBFn
=
1211 reinterpret_cast<glGetGraphicsResetStatusARBProc
>(
1212 GetGLProcAddress("glGetGraphicsResetStatus"));
1213 DCHECK(fn
.glGetGraphicsResetStatusARBFn
);
1214 } else if (ext
.b_GL_ARB_robustness
) {
1215 fn
.glGetGraphicsResetStatusARBFn
=
1216 reinterpret_cast<glGetGraphicsResetStatusARBProc
>(
1217 GetGLProcAddress("glGetGraphicsResetStatusARB"));
1218 DCHECK(fn
.glGetGraphicsResetStatusARBFn
);
1219 } else if (ext
.b_GL_KHR_robustness
) {
1220 fn
.glGetGraphicsResetStatusARBFn
=
1221 reinterpret_cast<glGetGraphicsResetStatusARBProc
>(
1222 GetGLProcAddress("glGetGraphicsResetStatusKHR"));
1223 DCHECK(fn
.glGetGraphicsResetStatusARBFn
);
1224 } else if (ext
.b_GL_EXT_robustness
) {
1225 fn
.glGetGraphicsResetStatusARBFn
=
1226 reinterpret_cast<glGetGraphicsResetStatusARBProc
>(
1227 GetGLProcAddress("glGetGraphicsResetStatusEXT"));
1228 DCHECK(fn
.glGetGraphicsResetStatusARBFn
);
1231 debug_fn
.glGetInteger64i_vFn
= 0;
1232 if (ver
->IsAtLeastGL(3u, 2u) || ver
->IsAtLeastGLES(3u, 0u)) {
1233 fn
.glGetInteger64i_vFn
= reinterpret_cast<glGetInteger64i_vProc
>(
1234 GetGLProcAddress("glGetInteger64i_v"));
1235 DCHECK(fn
.glGetInteger64i_vFn
);
1238 debug_fn
.glGetInteger64vFn
= 0;
1239 if (ver
->IsAtLeastGL(3u, 2u) || ver
->IsAtLeastGLES(3u, 0u)) {
1240 fn
.glGetInteger64vFn
= reinterpret_cast<glGetInteger64vProc
>(
1241 GetGLProcAddress("glGetInteger64v"));
1242 DCHECK(fn
.glGetInteger64vFn
);
1245 debug_fn
.glGetIntegeri_vFn
= 0;
1246 if (ver
->IsAtLeastGL(3u, 0u) || ver
->IsAtLeastGLES(3u, 0u)) {
1247 fn
.glGetIntegeri_vFn
= reinterpret_cast<glGetIntegeri_vProc
>(
1248 GetGLProcAddress("glGetIntegeri_v"));
1249 DCHECK(fn
.glGetIntegeri_vFn
);
1252 debug_fn
.glGetInternalformativFn
= 0;
1253 if (ver
->IsAtLeastGL(4u, 2u) || ver
->IsAtLeastGLES(3u, 0u)) {
1254 fn
.glGetInternalformativFn
= reinterpret_cast<glGetInternalformativProc
>(
1255 GetGLProcAddress("glGetInternalformativ"));
1256 DCHECK(fn
.glGetInternalformativFn
);
1259 debug_fn
.glGetProgramBinaryFn
= 0;
1260 if (ver
->IsAtLeastGL(4u, 1u) || ver
->IsAtLeastGLES(3u, 0u) ||
1261 ext
.b_GL_ARB_get_program_binary
) {
1262 fn
.glGetProgramBinaryFn
= reinterpret_cast<glGetProgramBinaryProc
>(
1263 GetGLProcAddress("glGetProgramBinary"));
1264 DCHECK(fn
.glGetProgramBinaryFn
);
1265 } else if (ext
.b_GL_OES_get_program_binary
) {
1266 fn
.glGetProgramBinaryFn
= reinterpret_cast<glGetProgramBinaryProc
>(
1267 GetGLProcAddress("glGetProgramBinaryOES"));
1268 DCHECK(fn
.glGetProgramBinaryFn
);
1271 debug_fn
.glGetProgramResourceLocationFn
= 0;
1272 if (ver
->IsAtLeastGL(4u, 3u) || ver
->IsAtLeastGLES(3u, 1u)) {
1273 fn
.glGetProgramResourceLocationFn
=
1274 reinterpret_cast<glGetProgramResourceLocationProc
>(
1275 GetGLProcAddress("glGetProgramResourceLocation"));
1276 DCHECK(fn
.glGetProgramResourceLocationFn
);
1279 debug_fn
.glGetQueryivFn
= 0;
1280 if (!ver
->is_es
|| ver
->IsAtLeastGLES(3u, 0u)) {
1282 reinterpret_cast<glGetQueryivProc
>(GetGLProcAddress("glGetQueryiv"));
1283 DCHECK(fn
.glGetQueryivFn
);
1284 } else if (ext
.b_GL_ARB_occlusion_query
) {
1286 reinterpret_cast<glGetQueryivProc
>(GetGLProcAddress("glGetQueryivARB"));
1287 DCHECK(fn
.glGetQueryivFn
);
1288 } else if (ext
.b_GL_EXT_disjoint_timer_query
||
1289 ext
.b_GL_EXT_occlusion_query_boolean
) {
1291 reinterpret_cast<glGetQueryivProc
>(GetGLProcAddress("glGetQueryivEXT"));
1292 DCHECK(fn
.glGetQueryivFn
);
1295 debug_fn
.glGetQueryObjecti64vFn
= 0;
1296 if (ver
->IsAtLeastGL(3u, 3u) || ext
.b_GL_ARB_timer_query
) {
1297 fn
.glGetQueryObjecti64vFn
= reinterpret_cast<glGetQueryObjecti64vProc
>(
1298 GetGLProcAddress("glGetQueryObjecti64v"));
1299 DCHECK(fn
.glGetQueryObjecti64vFn
);
1300 } else if (ext
.b_GL_EXT_timer_query
|| ext
.b_GL_EXT_disjoint_timer_query
) {
1301 fn
.glGetQueryObjecti64vFn
= reinterpret_cast<glGetQueryObjecti64vProc
>(
1302 GetGLProcAddress("glGetQueryObjecti64vEXT"));
1303 DCHECK(fn
.glGetQueryObjecti64vFn
);
1306 debug_fn
.glGetQueryObjectivFn
= 0;
1308 fn
.glGetQueryObjectivFn
= reinterpret_cast<glGetQueryObjectivProc
>(
1309 GetGLProcAddress("glGetQueryObjectiv"));
1310 DCHECK(fn
.glGetQueryObjectivFn
);
1311 } else if (ext
.b_GL_ARB_occlusion_query
) {
1312 fn
.glGetQueryObjectivFn
= reinterpret_cast<glGetQueryObjectivProc
>(
1313 GetGLProcAddress("glGetQueryObjectivARB"));
1314 DCHECK(fn
.glGetQueryObjectivFn
);
1315 } else if (ext
.b_GL_EXT_disjoint_timer_query
) {
1316 fn
.glGetQueryObjectivFn
= reinterpret_cast<glGetQueryObjectivProc
>(
1317 GetGLProcAddress("glGetQueryObjectivEXT"));
1318 DCHECK(fn
.glGetQueryObjectivFn
);
1321 debug_fn
.glGetQueryObjectui64vFn
= 0;
1322 if (ver
->IsAtLeastGL(3u, 3u) || ext
.b_GL_ARB_timer_query
) {
1323 fn
.glGetQueryObjectui64vFn
= reinterpret_cast<glGetQueryObjectui64vProc
>(
1324 GetGLProcAddress("glGetQueryObjectui64v"));
1325 DCHECK(fn
.glGetQueryObjectui64vFn
);
1326 } else if (ext
.b_GL_EXT_timer_query
|| ext
.b_GL_EXT_disjoint_timer_query
) {
1327 fn
.glGetQueryObjectui64vFn
= reinterpret_cast<glGetQueryObjectui64vProc
>(
1328 GetGLProcAddress("glGetQueryObjectui64vEXT"));
1329 DCHECK(fn
.glGetQueryObjectui64vFn
);
1332 debug_fn
.glGetQueryObjectuivFn
= 0;
1333 if (!ver
->is_es
|| ver
->IsAtLeastGLES(3u, 0u)) {
1334 fn
.glGetQueryObjectuivFn
= reinterpret_cast<glGetQueryObjectuivProc
>(
1335 GetGLProcAddress("glGetQueryObjectuiv"));
1336 DCHECK(fn
.glGetQueryObjectuivFn
);
1337 } else if (ext
.b_GL_ARB_occlusion_query
) {
1338 fn
.glGetQueryObjectuivFn
= reinterpret_cast<glGetQueryObjectuivProc
>(
1339 GetGLProcAddress("glGetQueryObjectuivARB"));
1340 DCHECK(fn
.glGetQueryObjectuivFn
);
1341 } else if (ext
.b_GL_EXT_disjoint_timer_query
||
1342 ext
.b_GL_EXT_occlusion_query_boolean
) {
1343 fn
.glGetQueryObjectuivFn
= reinterpret_cast<glGetQueryObjectuivProc
>(
1344 GetGLProcAddress("glGetQueryObjectuivEXT"));
1345 DCHECK(fn
.glGetQueryObjectuivFn
);
1348 debug_fn
.glGetRenderbufferParameterivEXTFn
= 0;
1349 if (ver
->IsAtLeastGL(3u, 0u) || ver
->is_es
) {
1350 fn
.glGetRenderbufferParameterivEXTFn
=
1351 reinterpret_cast<glGetRenderbufferParameterivEXTProc
>(
1352 GetGLProcAddress("glGetRenderbufferParameteriv"));
1353 DCHECK(fn
.glGetRenderbufferParameterivEXTFn
);
1354 } else if (ext
.b_GL_EXT_framebuffer_object
) {
1355 fn
.glGetRenderbufferParameterivEXTFn
=
1356 reinterpret_cast<glGetRenderbufferParameterivEXTProc
>(
1357 GetGLProcAddress("glGetRenderbufferParameterivEXT"));
1358 DCHECK(fn
.glGetRenderbufferParameterivEXTFn
);
1361 debug_fn
.glGetSamplerParameterfvFn
= 0;
1362 if (ver
->IsAtLeastGL(3u, 3u) || ver
->IsAtLeastGLES(3u, 0u)) {
1363 fn
.glGetSamplerParameterfvFn
=
1364 reinterpret_cast<glGetSamplerParameterfvProc
>(
1365 GetGLProcAddress("glGetSamplerParameterfv"));
1366 DCHECK(fn
.glGetSamplerParameterfvFn
);
1369 debug_fn
.glGetSamplerParameterivFn
= 0;
1370 if (ver
->IsAtLeastGL(3u, 3u) || ver
->IsAtLeastGLES(3u, 0u)) {
1371 fn
.glGetSamplerParameterivFn
=
1372 reinterpret_cast<glGetSamplerParameterivProc
>(
1373 GetGLProcAddress("glGetSamplerParameteriv"));
1374 DCHECK(fn
.glGetSamplerParameterivFn
);
1377 debug_fn
.glGetShaderPrecisionFormatFn
= 0;
1378 if (ver
->IsAtLeastGL(4u, 1u) || ver
->is_es
) {
1379 fn
.glGetShaderPrecisionFormatFn
=
1380 reinterpret_cast<glGetShaderPrecisionFormatProc
>(
1381 GetGLProcAddress("glGetShaderPrecisionFormat"));
1382 DCHECK(fn
.glGetShaderPrecisionFormatFn
);
1385 debug_fn
.glGetSyncivFn
= 0;
1386 if (ver
->IsAtLeastGL(3u, 2u) || ver
->IsAtLeastGLES(3u, 0u) ||
1387 ext
.b_GL_ARB_sync
) {
1389 reinterpret_cast<glGetSyncivProc
>(GetGLProcAddress("glGetSynciv"));
1390 DCHECK(fn
.glGetSyncivFn
);
1393 debug_fn
.glGetTexLevelParameterfvFn
= 0;
1394 if (!ver
->is_es
|| ver
->IsAtLeastGLES(3u, 1u)) {
1395 fn
.glGetTexLevelParameterfvFn
=
1396 reinterpret_cast<glGetTexLevelParameterfvProc
>(
1397 GetGLProcAddress("glGetTexLevelParameterfv"));
1398 DCHECK(fn
.glGetTexLevelParameterfvFn
);
1401 debug_fn
.glGetTexLevelParameterivFn
= 0;
1402 if (!ver
->is_es
|| ver
->IsAtLeastGLES(3u, 1u)) {
1403 fn
.glGetTexLevelParameterivFn
=
1404 reinterpret_cast<glGetTexLevelParameterivProc
>(
1405 GetGLProcAddress("glGetTexLevelParameteriv"));
1406 DCHECK(fn
.glGetTexLevelParameterivFn
);
1409 debug_fn
.glGetTransformFeedbackVaryingFn
= 0;
1410 if (ver
->IsAtLeastGL(3u, 0u) || ver
->IsAtLeastGLES(3u, 0u)) {
1411 fn
.glGetTransformFeedbackVaryingFn
=
1412 reinterpret_cast<glGetTransformFeedbackVaryingProc
>(
1413 GetGLProcAddress("glGetTransformFeedbackVarying"));
1414 DCHECK(fn
.glGetTransformFeedbackVaryingFn
);
1417 debug_fn
.glGetTranslatedShaderSourceANGLEFn
= 0;
1418 if (ext
.b_GL_ANGLE_translated_shader_source
) {
1419 fn
.glGetTranslatedShaderSourceANGLEFn
=
1420 reinterpret_cast<glGetTranslatedShaderSourceANGLEProc
>(
1421 GetGLProcAddress("glGetTranslatedShaderSourceANGLE"));
1422 DCHECK(fn
.glGetTranslatedShaderSourceANGLEFn
);
1425 debug_fn
.glGetUniformBlockIndexFn
= 0;
1426 if (ver
->IsAtLeastGLES(3u, 0u) || ver
->IsAtLeastGL(3u, 1u)) {
1427 fn
.glGetUniformBlockIndexFn
= reinterpret_cast<glGetUniformBlockIndexProc
>(
1428 GetGLProcAddress("glGetUniformBlockIndex"));
1429 DCHECK(fn
.glGetUniformBlockIndexFn
);
1432 debug_fn
.glGetUniformIndicesFn
= 0;
1433 if (ver
->IsAtLeastGLES(3u, 0u) || ver
->IsAtLeastGL(3u, 1u)) {
1434 fn
.glGetUniformIndicesFn
= reinterpret_cast<glGetUniformIndicesProc
>(
1435 GetGLProcAddress("glGetUniformIndices"));
1436 DCHECK(fn
.glGetUniformIndicesFn
);
1439 debug_fn
.glGetUniformuivFn
= 0;
1440 if (ver
->IsAtLeastGL(3u, 0u) || ver
->IsAtLeastGLES(3u, 0u)) {
1441 fn
.glGetUniformuivFn
= reinterpret_cast<glGetUniformuivProc
>(
1442 GetGLProcAddress("glGetUniformuiv"));
1443 DCHECK(fn
.glGetUniformuivFn
);
1446 debug_fn
.glInsertEventMarkerEXTFn
= 0;
1447 if (ext
.b_GL_EXT_debug_marker
) {
1448 fn
.glInsertEventMarkerEXTFn
= reinterpret_cast<glInsertEventMarkerEXTProc
>(
1449 GetGLProcAddress("glInsertEventMarkerEXT"));
1450 DCHECK(fn
.glInsertEventMarkerEXTFn
);
1453 debug_fn
.glInvalidateFramebufferFn
= 0;
1454 if (ver
->IsAtLeastGL(4u, 3u) || ver
->IsAtLeastGLES(3u, 0u)) {
1455 fn
.glInvalidateFramebufferFn
=
1456 reinterpret_cast<glInvalidateFramebufferProc
>(
1457 GetGLProcAddress("glInvalidateFramebuffer"));
1458 DCHECK(fn
.glInvalidateFramebufferFn
);
1461 debug_fn
.glInvalidateSubFramebufferFn
= 0;
1462 if (ver
->IsAtLeastGL(4u, 3u) || ver
->IsAtLeastGLES(3u, 0u)) {
1463 fn
.glInvalidateSubFramebufferFn
=
1464 reinterpret_cast<glInvalidateSubFramebufferProc
>(
1465 GetGLProcAddress("glInvalidateSubFramebuffer"));
1466 DCHECK(fn
.glInvalidateSubFramebufferFn
);
1469 debug_fn
.glIsFenceAPPLEFn
= 0;
1470 if (ext
.b_GL_APPLE_fence
) {
1471 fn
.glIsFenceAPPLEFn
= reinterpret_cast<glIsFenceAPPLEProc
>(
1472 GetGLProcAddress("glIsFenceAPPLE"));
1473 DCHECK(fn
.glIsFenceAPPLEFn
);
1476 debug_fn
.glIsFenceNVFn
= 0;
1477 if (ext
.b_GL_NV_fence
) {
1479 reinterpret_cast<glIsFenceNVProc
>(GetGLProcAddress("glIsFenceNV"));
1480 DCHECK(fn
.glIsFenceNVFn
);
1483 debug_fn
.glIsFramebufferEXTFn
= 0;
1484 if (ver
->IsAtLeastGL(3u, 0u) || ver
->is_es
) {
1485 fn
.glIsFramebufferEXTFn
= reinterpret_cast<glIsFramebufferEXTProc
>(
1486 GetGLProcAddress("glIsFramebuffer"));
1487 DCHECK(fn
.glIsFramebufferEXTFn
);
1488 } else if (ext
.b_GL_EXT_framebuffer_object
) {
1489 fn
.glIsFramebufferEXTFn
= reinterpret_cast<glIsFramebufferEXTProc
>(
1490 GetGLProcAddress("glIsFramebufferEXT"));
1491 DCHECK(fn
.glIsFramebufferEXTFn
);
1494 debug_fn
.glIsQueryFn
= 0;
1495 if (!ver
->is_es
|| ver
->IsAtLeastGLES(3u, 0u)) {
1497 reinterpret_cast<glIsQueryProc
>(GetGLProcAddress("glIsQuery"));
1498 DCHECK(fn
.glIsQueryFn
);
1499 } else if (ext
.b_GL_ARB_occlusion_query
) {
1501 reinterpret_cast<glIsQueryProc
>(GetGLProcAddress("glIsQueryARB"));
1502 DCHECK(fn
.glIsQueryFn
);
1503 } else if (ext
.b_GL_EXT_disjoint_timer_query
||
1504 ext
.b_GL_EXT_occlusion_query_boolean
) {
1506 reinterpret_cast<glIsQueryProc
>(GetGLProcAddress("glIsQueryEXT"));
1507 DCHECK(fn
.glIsQueryFn
);
1510 debug_fn
.glIsRenderbufferEXTFn
= 0;
1511 if (ver
->IsAtLeastGL(3u, 0u) || ver
->is_es
) {
1512 fn
.glIsRenderbufferEXTFn
= reinterpret_cast<glIsRenderbufferEXTProc
>(
1513 GetGLProcAddress("glIsRenderbuffer"));
1514 DCHECK(fn
.glIsRenderbufferEXTFn
);
1515 } else if (ext
.b_GL_EXT_framebuffer_object
) {
1516 fn
.glIsRenderbufferEXTFn
= reinterpret_cast<glIsRenderbufferEXTProc
>(
1517 GetGLProcAddress("glIsRenderbufferEXT"));
1518 DCHECK(fn
.glIsRenderbufferEXTFn
);
1521 debug_fn
.glIsSamplerFn
= 0;
1522 if (ver
->IsAtLeastGL(3u, 3u) || ver
->IsAtLeastGLES(3u, 0u)) {
1524 reinterpret_cast<glIsSamplerProc
>(GetGLProcAddress("glIsSampler"));
1525 DCHECK(fn
.glIsSamplerFn
);
1528 debug_fn
.glIsSyncFn
= 0;
1529 if (ver
->IsAtLeastGL(3u, 2u) || ver
->IsAtLeastGLES(3u, 0u) ||
1530 ext
.b_GL_ARB_sync
) {
1532 reinterpret_cast<glIsSyncProc
>(GetGLProcAddress("glIsSync"));
1533 DCHECK(fn
.glIsSyncFn
);
1536 debug_fn
.glIsTransformFeedbackFn
= 0;
1537 if (ver
->IsAtLeastGLES(3u, 0u) || ver
->IsAtLeastGL(4u, 0u)) {
1538 fn
.glIsTransformFeedbackFn
= reinterpret_cast<glIsTransformFeedbackProc
>(
1539 GetGLProcAddress("glIsTransformFeedback"));
1540 DCHECK(fn
.glIsTransformFeedbackFn
);
1543 debug_fn
.glIsVertexArrayOESFn
= 0;
1544 if (ver
->IsAtLeastGL(3u, 0u) || ver
->IsAtLeastGLES(3u, 0u) ||
1545 ext
.b_GL_ARB_vertex_array_object
) {
1546 fn
.glIsVertexArrayOESFn
= reinterpret_cast<glIsVertexArrayOESProc
>(
1547 GetGLProcAddress("glIsVertexArray"));
1548 DCHECK(fn
.glIsVertexArrayOESFn
);
1549 } else if (ext
.b_GL_OES_vertex_array_object
) {
1550 fn
.glIsVertexArrayOESFn
= reinterpret_cast<glIsVertexArrayOESProc
>(
1551 GetGLProcAddress("glIsVertexArrayOES"));
1552 DCHECK(fn
.glIsVertexArrayOESFn
);
1553 } else if (ext
.b_GL_APPLE_vertex_array_object
) {
1554 fn
.glIsVertexArrayOESFn
= reinterpret_cast<glIsVertexArrayOESProc
>(
1555 GetGLProcAddress("glIsVertexArrayAPPLE"));
1556 DCHECK(fn
.glIsVertexArrayOESFn
);
1559 debug_fn
.glMapBufferFn
= 0;
1562 reinterpret_cast<glMapBufferProc
>(GetGLProcAddress("glMapBuffer"));
1563 DCHECK(fn
.glMapBufferFn
);
1564 } else if (ext
.b_GL_OES_mapbuffer
) {
1566 reinterpret_cast<glMapBufferProc
>(GetGLProcAddress("glMapBufferOES"));
1567 DCHECK(fn
.glMapBufferFn
);
1570 debug_fn
.glMapBufferRangeFn
= 0;
1571 if (ver
->IsAtLeastGL(3u, 0u) || ver
->IsAtLeastGLES(3u, 0u) ||
1572 ext
.b_GL_ARB_map_buffer_range
) {
1573 fn
.glMapBufferRangeFn
= reinterpret_cast<glMapBufferRangeProc
>(
1574 GetGLProcAddress("glMapBufferRange"));
1575 DCHECK(fn
.glMapBufferRangeFn
);
1576 } else if (ext
.b_GL_EXT_map_buffer_range
) {
1577 fn
.glMapBufferRangeFn
= reinterpret_cast<glMapBufferRangeProc
>(
1578 GetGLProcAddress("glMapBufferRangeEXT"));
1579 DCHECK(fn
.glMapBufferRangeFn
);
1582 debug_fn
.glMatrixLoadfEXTFn
= 0;
1583 if (ext
.b_GL_EXT_direct_state_access
|| ext
.b_GL_NV_path_rendering
) {
1584 fn
.glMatrixLoadfEXTFn
= reinterpret_cast<glMatrixLoadfEXTProc
>(
1585 GetGLProcAddress("glMatrixLoadfEXT"));
1586 DCHECK(fn
.glMatrixLoadfEXTFn
);
1589 debug_fn
.glMatrixLoadIdentityEXTFn
= 0;
1590 if (ext
.b_GL_EXT_direct_state_access
|| ext
.b_GL_NV_path_rendering
) {
1591 fn
.glMatrixLoadIdentityEXTFn
=
1592 reinterpret_cast<glMatrixLoadIdentityEXTProc
>(
1593 GetGLProcAddress("glMatrixLoadIdentityEXT"));
1594 DCHECK(fn
.glMatrixLoadIdentityEXTFn
);
1597 debug_fn
.glPauseTransformFeedbackFn
= 0;
1598 if (ver
->IsAtLeastGLES(3u, 0u) || ver
->IsAtLeastGL(4u, 0u)) {
1599 fn
.glPauseTransformFeedbackFn
=
1600 reinterpret_cast<glPauseTransformFeedbackProc
>(
1601 GetGLProcAddress("glPauseTransformFeedback"));
1602 DCHECK(fn
.glPauseTransformFeedbackFn
);
1605 debug_fn
.glPointParameteriFn
= 0;
1607 fn
.glPointParameteriFn
= reinterpret_cast<glPointParameteriProc
>(
1608 GetGLProcAddress("glPointParameteri"));
1609 DCHECK(fn
.glPointParameteriFn
);
1612 debug_fn
.glPopGroupMarkerEXTFn
= 0;
1613 if (ext
.b_GL_EXT_debug_marker
) {
1614 fn
.glPopGroupMarkerEXTFn
= reinterpret_cast<glPopGroupMarkerEXTProc
>(
1615 GetGLProcAddress("glPopGroupMarkerEXT"));
1616 DCHECK(fn
.glPopGroupMarkerEXTFn
);
1619 debug_fn
.glProgramBinaryFn
= 0;
1620 if (ver
->IsAtLeastGL(4u, 1u) || ver
->IsAtLeastGLES(3u, 0u) ||
1621 ext
.b_GL_ARB_get_program_binary
) {
1622 fn
.glProgramBinaryFn
= reinterpret_cast<glProgramBinaryProc
>(
1623 GetGLProcAddress("glProgramBinary"));
1624 DCHECK(fn
.glProgramBinaryFn
);
1625 } else if (ext
.b_GL_OES_get_program_binary
) {
1626 fn
.glProgramBinaryFn
= reinterpret_cast<glProgramBinaryProc
>(
1627 GetGLProcAddress("glProgramBinaryOES"));
1628 DCHECK(fn
.glProgramBinaryFn
);
1631 debug_fn
.glProgramParameteriFn
= 0;
1632 if (ver
->IsAtLeastGL(4u, 1u) || ver
->IsAtLeastGLES(3u, 0u) ||
1633 ext
.b_GL_ARB_get_program_binary
) {
1634 fn
.glProgramParameteriFn
= reinterpret_cast<glProgramParameteriProc
>(
1635 GetGLProcAddress("glProgramParameteri"));
1636 DCHECK(fn
.glProgramParameteriFn
);
1639 debug_fn
.glPushGroupMarkerEXTFn
= 0;
1640 if (ext
.b_GL_EXT_debug_marker
) {
1641 fn
.glPushGroupMarkerEXTFn
= reinterpret_cast<glPushGroupMarkerEXTProc
>(
1642 GetGLProcAddress("glPushGroupMarkerEXT"));
1643 DCHECK(fn
.glPushGroupMarkerEXTFn
);
1646 debug_fn
.glQueryCounterFn
= 0;
1647 if (ver
->IsAtLeastGL(3u, 3u) || ext
.b_GL_ARB_timer_query
) {
1648 fn
.glQueryCounterFn
= reinterpret_cast<glQueryCounterProc
>(
1649 GetGLProcAddress("glQueryCounter"));
1650 DCHECK(fn
.glQueryCounterFn
);
1651 } else if (ext
.b_GL_EXT_disjoint_timer_query
) {
1652 fn
.glQueryCounterFn
= reinterpret_cast<glQueryCounterProc
>(
1653 GetGLProcAddress("glQueryCounterEXT"));
1654 DCHECK(fn
.glQueryCounterFn
);
1657 debug_fn
.glReadBufferFn
= 0;
1658 if (!ver
->is_es
|| ver
->IsAtLeastGLES(3u, 0u)) {
1660 reinterpret_cast<glReadBufferProc
>(GetGLProcAddress("glReadBuffer"));
1661 DCHECK(fn
.glReadBufferFn
);
1664 debug_fn
.glReleaseShaderCompilerFn
= 0;
1665 if (ver
->IsAtLeastGL(4u, 1u) || ver
->is_es
) {
1666 fn
.glReleaseShaderCompilerFn
=
1667 reinterpret_cast<glReleaseShaderCompilerProc
>(
1668 GetGLProcAddress("glReleaseShaderCompiler"));
1669 DCHECK(fn
.glReleaseShaderCompilerFn
);
1672 debug_fn
.glRenderbufferStorageEXTFn
= 0;
1673 if (ver
->IsAtLeastGL(3u, 0u) || ver
->is_es
) {
1674 fn
.glRenderbufferStorageEXTFn
=
1675 reinterpret_cast<glRenderbufferStorageEXTProc
>(
1676 GetGLProcAddress("glRenderbufferStorage"));
1677 DCHECK(fn
.glRenderbufferStorageEXTFn
);
1678 } else if (ext
.b_GL_EXT_framebuffer_object
) {
1679 fn
.glRenderbufferStorageEXTFn
=
1680 reinterpret_cast<glRenderbufferStorageEXTProc
>(
1681 GetGLProcAddress("glRenderbufferStorageEXT"));
1682 DCHECK(fn
.glRenderbufferStorageEXTFn
);
1685 debug_fn
.glRenderbufferStorageMultisampleFn
= 0;
1686 if (ver
->IsAtLeastGL(3u, 0u) || ver
->IsAtLeastGLES(3u, 0u)) {
1687 fn
.glRenderbufferStorageMultisampleFn
=
1688 reinterpret_cast<glRenderbufferStorageMultisampleProc
>(
1689 GetGLProcAddress("glRenderbufferStorageMultisample"));
1690 DCHECK(fn
.glRenderbufferStorageMultisampleFn
);
1693 debug_fn
.glRenderbufferStorageMultisampleANGLEFn
= 0;
1694 if (ext
.b_GL_ANGLE_framebuffer_multisample
) {
1695 fn
.glRenderbufferStorageMultisampleANGLEFn
=
1696 reinterpret_cast<glRenderbufferStorageMultisampleANGLEProc
>(
1697 GetGLProcAddress("glRenderbufferStorageMultisampleANGLE"));
1698 DCHECK(fn
.glRenderbufferStorageMultisampleANGLEFn
);
1701 debug_fn
.glRenderbufferStorageMultisampleEXTFn
= 0;
1702 if (ext
.b_GL_EXT_multisampled_render_to_texture
||
1703 ext
.b_GL_EXT_framebuffer_multisample
) {
1704 fn
.glRenderbufferStorageMultisampleEXTFn
=
1705 reinterpret_cast<glRenderbufferStorageMultisampleEXTProc
>(
1706 GetGLProcAddress("glRenderbufferStorageMultisampleEXT"));
1707 DCHECK(fn
.glRenderbufferStorageMultisampleEXTFn
);
1710 debug_fn
.glRenderbufferStorageMultisampleIMGFn
= 0;
1711 if (ext
.b_GL_IMG_multisampled_render_to_texture
) {
1712 fn
.glRenderbufferStorageMultisampleIMGFn
=
1713 reinterpret_cast<glRenderbufferStorageMultisampleIMGProc
>(
1714 GetGLProcAddress("glRenderbufferStorageMultisampleIMG"));
1715 DCHECK(fn
.glRenderbufferStorageMultisampleIMGFn
);
1718 debug_fn
.glResumeTransformFeedbackFn
= 0;
1719 if (ver
->IsAtLeastGLES(3u, 0u) || ver
->IsAtLeastGL(4u, 0u)) {
1720 fn
.glResumeTransformFeedbackFn
=
1721 reinterpret_cast<glResumeTransformFeedbackProc
>(
1722 GetGLProcAddress("glResumeTransformFeedback"));
1723 DCHECK(fn
.glResumeTransformFeedbackFn
);
1726 debug_fn
.glSamplerParameterfFn
= 0;
1727 if (ver
->IsAtLeastGL(3u, 3u) || ver
->IsAtLeastGLES(3u, 0u)) {
1728 fn
.glSamplerParameterfFn
= reinterpret_cast<glSamplerParameterfProc
>(
1729 GetGLProcAddress("glSamplerParameterf"));
1730 DCHECK(fn
.glSamplerParameterfFn
);
1733 debug_fn
.glSamplerParameterfvFn
= 0;
1734 if (ver
->IsAtLeastGL(3u, 3u) || ver
->IsAtLeastGLES(3u, 0u)) {
1735 fn
.glSamplerParameterfvFn
= reinterpret_cast<glSamplerParameterfvProc
>(
1736 GetGLProcAddress("glSamplerParameterfv"));
1737 DCHECK(fn
.glSamplerParameterfvFn
);
1740 debug_fn
.glSamplerParameteriFn
= 0;
1741 if (ver
->IsAtLeastGL(3u, 3u) || ver
->IsAtLeastGLES(3u, 0u)) {
1742 fn
.glSamplerParameteriFn
= reinterpret_cast<glSamplerParameteriProc
>(
1743 GetGLProcAddress("glSamplerParameteri"));
1744 DCHECK(fn
.glSamplerParameteriFn
);
1747 debug_fn
.glSamplerParameterivFn
= 0;
1748 if (ver
->IsAtLeastGL(3u, 3u) || ver
->IsAtLeastGLES(3u, 0u)) {
1749 fn
.glSamplerParameterivFn
= reinterpret_cast<glSamplerParameterivProc
>(
1750 GetGLProcAddress("glSamplerParameteriv"));
1751 DCHECK(fn
.glSamplerParameterivFn
);
1754 debug_fn
.glSetFenceAPPLEFn
= 0;
1755 if (ext
.b_GL_APPLE_fence
) {
1756 fn
.glSetFenceAPPLEFn
= reinterpret_cast<glSetFenceAPPLEProc
>(
1757 GetGLProcAddress("glSetFenceAPPLE"));
1758 DCHECK(fn
.glSetFenceAPPLEFn
);
1761 debug_fn
.glSetFenceNVFn
= 0;
1762 if (ext
.b_GL_NV_fence
) {
1764 reinterpret_cast<glSetFenceNVProc
>(GetGLProcAddress("glSetFenceNV"));
1765 DCHECK(fn
.glSetFenceNVFn
);
1768 debug_fn
.glShaderBinaryFn
= 0;
1769 if (ver
->IsAtLeastGL(4u, 1u) || ver
->is_es
) {
1770 fn
.glShaderBinaryFn
= reinterpret_cast<glShaderBinaryProc
>(
1771 GetGLProcAddress("glShaderBinary"));
1772 DCHECK(fn
.glShaderBinaryFn
);
1775 debug_fn
.glTestFenceAPPLEFn
= 0;
1776 if (ext
.b_GL_APPLE_fence
) {
1777 fn
.glTestFenceAPPLEFn
= reinterpret_cast<glTestFenceAPPLEProc
>(
1778 GetGLProcAddress("glTestFenceAPPLE"));
1779 DCHECK(fn
.glTestFenceAPPLEFn
);
1782 debug_fn
.glTestFenceNVFn
= 0;
1783 if (ext
.b_GL_NV_fence
) {
1784 fn
.glTestFenceNVFn
=
1785 reinterpret_cast<glTestFenceNVProc
>(GetGLProcAddress("glTestFenceNV"));
1786 DCHECK(fn
.glTestFenceNVFn
);
1789 debug_fn
.glTexImage3DFn
= 0;
1790 if (!ver
->is_es
|| ver
->IsAtLeastGLES(3u, 0u)) {
1792 reinterpret_cast<glTexImage3DProc
>(GetGLProcAddress("glTexImage3D"));
1793 DCHECK(fn
.glTexImage3DFn
);
1796 debug_fn
.glTexStorage2DEXTFn
= 0;
1797 if (ver
->IsAtLeastGL(4u, 2u) || ver
->IsAtLeastGLES(3u, 0u) ||
1798 ext
.b_GL_ARB_texture_storage
) {
1799 fn
.glTexStorage2DEXTFn
= reinterpret_cast<glTexStorage2DEXTProc
>(
1800 GetGLProcAddress("glTexStorage2D"));
1801 DCHECK(fn
.glTexStorage2DEXTFn
);
1802 } else if (ext
.b_GL_EXT_texture_storage
) {
1803 fn
.glTexStorage2DEXTFn
= reinterpret_cast<glTexStorage2DEXTProc
>(
1804 GetGLProcAddress("glTexStorage2DEXT"));
1805 DCHECK(fn
.glTexStorage2DEXTFn
);
1808 debug_fn
.glTexStorage3DFn
= 0;
1809 if (ver
->IsAtLeastGL(4u, 2u) || ver
->IsAtLeastGLES(3u, 0u)) {
1810 fn
.glTexStorage3DFn
= reinterpret_cast<glTexStorage3DProc
>(
1811 GetGLProcAddress("glTexStorage3D"));
1812 DCHECK(fn
.glTexStorage3DFn
);
1815 debug_fn
.glTexSubImage3DFn
= 0;
1816 if (!ver
->is_es
|| ver
->IsAtLeastGLES(3u, 0u)) {
1817 fn
.glTexSubImage3DFn
= reinterpret_cast<glTexSubImage3DProc
>(
1818 GetGLProcAddress("glTexSubImage3D"));
1819 DCHECK(fn
.glTexSubImage3DFn
);
1822 debug_fn
.glTransformFeedbackVaryingsFn
= 0;
1823 if (ver
->IsAtLeastGL(3u, 0u) || ver
->IsAtLeastGLES(3u, 0u)) {
1824 fn
.glTransformFeedbackVaryingsFn
=
1825 reinterpret_cast<glTransformFeedbackVaryingsProc
>(
1826 GetGLProcAddress("glTransformFeedbackVaryings"));
1827 DCHECK(fn
.glTransformFeedbackVaryingsFn
);
1830 debug_fn
.glUniform1uiFn
= 0;
1831 if (ver
->IsAtLeastGL(3u, 0u) || ver
->IsAtLeastGLES(3u, 0u)) {
1833 reinterpret_cast<glUniform1uiProc
>(GetGLProcAddress("glUniform1ui"));
1834 DCHECK(fn
.glUniform1uiFn
);
1837 debug_fn
.glUniform1uivFn
= 0;
1838 if (ver
->IsAtLeastGL(3u, 0u) || ver
->IsAtLeastGLES(3u, 0u)) {
1839 fn
.glUniform1uivFn
=
1840 reinterpret_cast<glUniform1uivProc
>(GetGLProcAddress("glUniform1uiv"));
1841 DCHECK(fn
.glUniform1uivFn
);
1844 debug_fn
.glUniform2uiFn
= 0;
1845 if (ver
->IsAtLeastGL(3u, 0u) || ver
->IsAtLeastGLES(3u, 0u)) {
1847 reinterpret_cast<glUniform2uiProc
>(GetGLProcAddress("glUniform2ui"));
1848 DCHECK(fn
.glUniform2uiFn
);
1851 debug_fn
.glUniform2uivFn
= 0;
1852 if (ver
->IsAtLeastGL(3u, 0u) || ver
->IsAtLeastGLES(3u, 0u)) {
1853 fn
.glUniform2uivFn
=
1854 reinterpret_cast<glUniform2uivProc
>(GetGLProcAddress("glUniform2uiv"));
1855 DCHECK(fn
.glUniform2uivFn
);
1858 debug_fn
.glUniform3uiFn
= 0;
1859 if (ver
->IsAtLeastGL(3u, 0u) || ver
->IsAtLeastGLES(3u, 0u)) {
1861 reinterpret_cast<glUniform3uiProc
>(GetGLProcAddress("glUniform3ui"));
1862 DCHECK(fn
.glUniform3uiFn
);
1865 debug_fn
.glUniform3uivFn
= 0;
1866 if (ver
->IsAtLeastGL(3u, 0u) || ver
->IsAtLeastGLES(3u, 0u)) {
1867 fn
.glUniform3uivFn
=
1868 reinterpret_cast<glUniform3uivProc
>(GetGLProcAddress("glUniform3uiv"));
1869 DCHECK(fn
.glUniform3uivFn
);
1872 debug_fn
.glUniform4uiFn
= 0;
1873 if (ver
->IsAtLeastGL(3u, 0u) || ver
->IsAtLeastGLES(3u, 0u)) {
1875 reinterpret_cast<glUniform4uiProc
>(GetGLProcAddress("glUniform4ui"));
1876 DCHECK(fn
.glUniform4uiFn
);
1879 debug_fn
.glUniform4uivFn
= 0;
1880 if (ver
->IsAtLeastGL(3u, 0u) || ver
->IsAtLeastGLES(3u, 0u)) {
1881 fn
.glUniform4uivFn
=
1882 reinterpret_cast<glUniform4uivProc
>(GetGLProcAddress("glUniform4uiv"));
1883 DCHECK(fn
.glUniform4uivFn
);
1886 debug_fn
.glUniformBlockBindingFn
= 0;
1887 if (ver
->IsAtLeastGLES(3u, 0u) || ver
->IsAtLeastGL(3u, 1u)) {
1888 fn
.glUniformBlockBindingFn
= reinterpret_cast<glUniformBlockBindingProc
>(
1889 GetGLProcAddress("glUniformBlockBinding"));
1890 DCHECK(fn
.glUniformBlockBindingFn
);
1893 debug_fn
.glUniformMatrix2x3fvFn
= 0;
1894 if (!ver
->is_es
|| ver
->IsAtLeastGLES(3u, 0u)) {
1895 fn
.glUniformMatrix2x3fvFn
= reinterpret_cast<glUniformMatrix2x3fvProc
>(
1896 GetGLProcAddress("glUniformMatrix2x3fv"));
1897 DCHECK(fn
.glUniformMatrix2x3fvFn
);
1900 debug_fn
.glUniformMatrix2x4fvFn
= 0;
1901 if (!ver
->is_es
|| ver
->IsAtLeastGLES(3u, 0u)) {
1902 fn
.glUniformMatrix2x4fvFn
= reinterpret_cast<glUniformMatrix2x4fvProc
>(
1903 GetGLProcAddress("glUniformMatrix2x4fv"));
1904 DCHECK(fn
.glUniformMatrix2x4fvFn
);
1907 debug_fn
.glUniformMatrix3x2fvFn
= 0;
1908 if (!ver
->is_es
|| ver
->IsAtLeastGLES(3u, 0u)) {
1909 fn
.glUniformMatrix3x2fvFn
= reinterpret_cast<glUniformMatrix3x2fvProc
>(
1910 GetGLProcAddress("glUniformMatrix3x2fv"));
1911 DCHECK(fn
.glUniformMatrix3x2fvFn
);
1914 debug_fn
.glUniformMatrix3x4fvFn
= 0;
1915 if (!ver
->is_es
|| ver
->IsAtLeastGLES(3u, 0u)) {
1916 fn
.glUniformMatrix3x4fvFn
= reinterpret_cast<glUniformMatrix3x4fvProc
>(
1917 GetGLProcAddress("glUniformMatrix3x4fv"));
1918 DCHECK(fn
.glUniformMatrix3x4fvFn
);
1921 debug_fn
.glUniformMatrix4x2fvFn
= 0;
1922 if (!ver
->is_es
|| ver
->IsAtLeastGLES(3u, 0u)) {
1923 fn
.glUniformMatrix4x2fvFn
= reinterpret_cast<glUniformMatrix4x2fvProc
>(
1924 GetGLProcAddress("glUniformMatrix4x2fv"));
1925 DCHECK(fn
.glUniformMatrix4x2fvFn
);
1928 debug_fn
.glUniformMatrix4x3fvFn
= 0;
1929 if (!ver
->is_es
|| ver
->IsAtLeastGLES(3u, 0u)) {
1930 fn
.glUniformMatrix4x3fvFn
= reinterpret_cast<glUniformMatrix4x3fvProc
>(
1931 GetGLProcAddress("glUniformMatrix4x3fv"));
1932 DCHECK(fn
.glUniformMatrix4x3fvFn
);
1935 debug_fn
.glUnmapBufferFn
= 0;
1936 if (!ver
->is_es
|| ver
->IsAtLeastGLES(3u, 0u)) {
1937 fn
.glUnmapBufferFn
=
1938 reinterpret_cast<glUnmapBufferProc
>(GetGLProcAddress("glUnmapBuffer"));
1939 DCHECK(fn
.glUnmapBufferFn
);
1940 } else if (ext
.b_GL_OES_mapbuffer
) {
1941 fn
.glUnmapBufferFn
= reinterpret_cast<glUnmapBufferProc
>(
1942 GetGLProcAddress("glUnmapBufferOES"));
1943 DCHECK(fn
.glUnmapBufferFn
);
1946 debug_fn
.glVertexAttribDivisorANGLEFn
= 0;
1947 if (ver
->IsAtLeastGL(3u, 3u) || ver
->IsAtLeastGLES(3u, 0u)) {
1948 fn
.glVertexAttribDivisorANGLEFn
=
1949 reinterpret_cast<glVertexAttribDivisorANGLEProc
>(
1950 GetGLProcAddress("glVertexAttribDivisor"));
1951 DCHECK(fn
.glVertexAttribDivisorANGLEFn
);
1952 } else if (ext
.b_GL_ARB_instanced_arrays
) {
1953 fn
.glVertexAttribDivisorANGLEFn
=
1954 reinterpret_cast<glVertexAttribDivisorANGLEProc
>(
1955 GetGLProcAddress("glVertexAttribDivisorARB"));
1956 DCHECK(fn
.glVertexAttribDivisorANGLEFn
);
1957 } else if (ext
.b_GL_ANGLE_instanced_arrays
) {
1958 fn
.glVertexAttribDivisorANGLEFn
=
1959 reinterpret_cast<glVertexAttribDivisorANGLEProc
>(
1960 GetGLProcAddress("glVertexAttribDivisorANGLE"));
1961 DCHECK(fn
.glVertexAttribDivisorANGLEFn
);
1964 debug_fn
.glVertexAttribI4iFn
= 0;
1965 if (ver
->IsAtLeastGL(3u, 0u) || ver
->IsAtLeastGLES(3u, 0u)) {
1966 fn
.glVertexAttribI4iFn
= reinterpret_cast<glVertexAttribI4iProc
>(
1967 GetGLProcAddress("glVertexAttribI4i"));
1968 DCHECK(fn
.glVertexAttribI4iFn
);
1971 debug_fn
.glVertexAttribI4ivFn
= 0;
1972 if (ver
->IsAtLeastGL(3u, 0u) || ver
->IsAtLeastGLES(3u, 0u)) {
1973 fn
.glVertexAttribI4ivFn
= reinterpret_cast<glVertexAttribI4ivProc
>(
1974 GetGLProcAddress("glVertexAttribI4iv"));
1975 DCHECK(fn
.glVertexAttribI4ivFn
);
1978 debug_fn
.glVertexAttribI4uiFn
= 0;
1979 if (ver
->IsAtLeastGL(3u, 0u) || ver
->IsAtLeastGLES(3u, 0u)) {
1980 fn
.glVertexAttribI4uiFn
= reinterpret_cast<glVertexAttribI4uiProc
>(
1981 GetGLProcAddress("glVertexAttribI4ui"));
1982 DCHECK(fn
.glVertexAttribI4uiFn
);
1985 debug_fn
.glVertexAttribI4uivFn
= 0;
1986 if (ver
->IsAtLeastGL(3u, 0u) || ver
->IsAtLeastGLES(3u, 0u)) {
1987 fn
.glVertexAttribI4uivFn
= reinterpret_cast<glVertexAttribI4uivProc
>(
1988 GetGLProcAddress("glVertexAttribI4uiv"));
1989 DCHECK(fn
.glVertexAttribI4uivFn
);
1992 debug_fn
.glVertexAttribIPointerFn
= 0;
1993 if (ver
->IsAtLeastGL(3u, 0u) || ver
->IsAtLeastGLES(3u, 0u)) {
1994 fn
.glVertexAttribIPointerFn
= reinterpret_cast<glVertexAttribIPointerProc
>(
1995 GetGLProcAddress("glVertexAttribIPointer"));
1996 DCHECK(fn
.glVertexAttribIPointerFn
);
1999 debug_fn
.glWaitSyncFn
= 0;
2000 if (ver
->IsAtLeastGL(3u, 2u) || ver
->IsAtLeastGLES(3u, 0u) ||
2001 ext
.b_GL_ARB_sync
) {
2003 reinterpret_cast<glWaitSyncProc
>(GetGLProcAddress("glWaitSync"));
2004 DCHECK(fn
.glWaitSyncFn
);
2007 if (g_debugBindingsInitialized
)
2008 InitializeDebugBindings();
2013 static void GL_BINDING_CALL
Debug_glActiveTexture(GLenum texture
) {
2014 GL_SERVICE_LOG("glActiveTexture"
2015 << "(" << GLEnums::GetStringEnum(texture
) << ")");
2016 g_driver_gl
.debug_fn
.glActiveTextureFn(texture
);
2019 static void GL_BINDING_CALL
2020 Debug_glAttachShader(GLuint program
, GLuint shader
) {
2021 GL_SERVICE_LOG("glAttachShader"
2022 << "(" << program
<< ", " << shader
<< ")");
2023 g_driver_gl
.debug_fn
.glAttachShaderFn(program
, shader
);
2026 static void GL_BINDING_CALL
Debug_glBeginQuery(GLenum target
, GLuint id
) {
2027 GL_SERVICE_LOG("glBeginQuery"
2028 << "(" << GLEnums::GetStringEnum(target
) << ", " << id
<< ")");
2029 g_driver_gl
.debug_fn
.glBeginQueryFn(target
, id
);
2032 static void GL_BINDING_CALL
2033 Debug_glBeginTransformFeedback(GLenum primitiveMode
) {
2034 GL_SERVICE_LOG("glBeginTransformFeedback"
2035 << "(" << GLEnums::GetStringEnum(primitiveMode
) << ")");
2036 g_driver_gl
.debug_fn
.glBeginTransformFeedbackFn(primitiveMode
);
2039 static void GL_BINDING_CALL
2040 Debug_glBindAttribLocation(GLuint program
, GLuint index
, const char* name
) {
2041 GL_SERVICE_LOG("glBindAttribLocation"
2042 << "(" << program
<< ", " << index
<< ", " << name
<< ")");
2043 g_driver_gl
.debug_fn
.glBindAttribLocationFn(program
, index
, name
);
2046 static void GL_BINDING_CALL
Debug_glBindBuffer(GLenum target
, GLuint buffer
) {
2047 GL_SERVICE_LOG("glBindBuffer"
2048 << "(" << GLEnums::GetStringEnum(target
) << ", " << buffer
2050 g_driver_gl
.debug_fn
.glBindBufferFn(target
, buffer
);
2053 static void GL_BINDING_CALL
2054 Debug_glBindBufferBase(GLenum target
, GLuint index
, GLuint buffer
) {
2055 GL_SERVICE_LOG("glBindBufferBase"
2056 << "(" << GLEnums::GetStringEnum(target
) << ", " << index
2057 << ", " << buffer
<< ")");
2058 g_driver_gl
.debug_fn
.glBindBufferBaseFn(target
, index
, buffer
);
2061 static void GL_BINDING_CALL
Debug_glBindBufferRange(GLenum target
,
2066 GL_SERVICE_LOG("glBindBufferRange"
2067 << "(" << GLEnums::GetStringEnum(target
) << ", " << index
2068 << ", " << buffer
<< ", " << offset
<< ", " << size
<< ")");
2069 g_driver_gl
.debug_fn
.glBindBufferRangeFn(target
, index
, buffer
, offset
, size
);
2072 static void GL_BINDING_CALL
Debug_glBindFragDataLocation(GLuint program
,
2075 GL_SERVICE_LOG("glBindFragDataLocation"
2076 << "(" << program
<< ", " << colorNumber
<< ", " << name
2078 g_driver_gl
.debug_fn
.glBindFragDataLocationFn(program
, colorNumber
, name
);
2081 static void GL_BINDING_CALL
2082 Debug_glBindFragDataLocationIndexed(GLuint program
,
2086 GL_SERVICE_LOG("glBindFragDataLocationIndexed"
2087 << "(" << program
<< ", " << colorNumber
<< ", " << index
2088 << ", " << name
<< ")");
2089 g_driver_gl
.debug_fn
.glBindFragDataLocationIndexedFn(program
, colorNumber
,
2093 static void GL_BINDING_CALL
2094 Debug_glBindFramebufferEXT(GLenum target
, GLuint framebuffer
) {
2095 GL_SERVICE_LOG("glBindFramebufferEXT"
2096 << "(" << GLEnums::GetStringEnum(target
) << ", " << framebuffer
2098 g_driver_gl
.debug_fn
.glBindFramebufferEXTFn(target
, framebuffer
);
2101 static void GL_BINDING_CALL
2102 Debug_glBindRenderbufferEXT(GLenum target
, GLuint renderbuffer
) {
2103 GL_SERVICE_LOG("glBindRenderbufferEXT"
2104 << "(" << GLEnums::GetStringEnum(target
) << ", "
2105 << renderbuffer
<< ")");
2106 g_driver_gl
.debug_fn
.glBindRenderbufferEXTFn(target
, renderbuffer
);
2109 static void GL_BINDING_CALL
Debug_glBindSampler(GLuint unit
, GLuint sampler
) {
2110 GL_SERVICE_LOG("glBindSampler"
2111 << "(" << unit
<< ", " << sampler
<< ")");
2112 g_driver_gl
.debug_fn
.glBindSamplerFn(unit
, sampler
);
2115 static void GL_BINDING_CALL
Debug_glBindTexture(GLenum target
, GLuint texture
) {
2116 GL_SERVICE_LOG("glBindTexture"
2117 << "(" << GLEnums::GetStringEnum(target
) << ", " << texture
2119 g_driver_gl
.debug_fn
.glBindTextureFn(target
, texture
);
2122 static void GL_BINDING_CALL
2123 Debug_glBindTransformFeedback(GLenum target
, GLuint id
) {
2124 GL_SERVICE_LOG("glBindTransformFeedback"
2125 << "(" << GLEnums::GetStringEnum(target
) << ", " << id
<< ")");
2126 g_driver_gl
.debug_fn
.glBindTransformFeedbackFn(target
, id
);
2129 static void GL_BINDING_CALL
Debug_glBindVertexArrayOES(GLuint array
) {
2130 GL_SERVICE_LOG("glBindVertexArrayOES"
2131 << "(" << array
<< ")");
2132 g_driver_gl
.debug_fn
.glBindVertexArrayOESFn(array
);
2135 static void GL_BINDING_CALL
Debug_glBlendBarrierKHR(void) {
2136 GL_SERVICE_LOG("glBlendBarrierKHR"
2139 g_driver_gl
.debug_fn
.glBlendBarrierKHRFn();
2142 static void GL_BINDING_CALL
Debug_glBlendColor(GLclampf red
,
2146 GL_SERVICE_LOG("glBlendColor"
2147 << "(" << red
<< ", " << green
<< ", " << blue
<< ", " << alpha
2149 g_driver_gl
.debug_fn
.glBlendColorFn(red
, green
, blue
, alpha
);
2152 static void GL_BINDING_CALL
Debug_glBlendEquation(GLenum mode
) {
2153 GL_SERVICE_LOG("glBlendEquation"
2154 << "(" << GLEnums::GetStringEnum(mode
) << ")");
2155 g_driver_gl
.debug_fn
.glBlendEquationFn(mode
);
2158 static void GL_BINDING_CALL
2159 Debug_glBlendEquationSeparate(GLenum modeRGB
, GLenum modeAlpha
) {
2160 GL_SERVICE_LOG("glBlendEquationSeparate"
2161 << "(" << GLEnums::GetStringEnum(modeRGB
) << ", "
2162 << GLEnums::GetStringEnum(modeAlpha
) << ")");
2163 g_driver_gl
.debug_fn
.glBlendEquationSeparateFn(modeRGB
, modeAlpha
);
2166 static void GL_BINDING_CALL
Debug_glBlendFunc(GLenum sfactor
, GLenum dfactor
) {
2167 GL_SERVICE_LOG("glBlendFunc"
2168 << "(" << GLEnums::GetStringEnum(sfactor
) << ", "
2169 << GLEnums::GetStringEnum(dfactor
) << ")");
2170 g_driver_gl
.debug_fn
.glBlendFuncFn(sfactor
, dfactor
);
2173 static void GL_BINDING_CALL
Debug_glBlendFuncSeparate(GLenum srcRGB
,
2177 GL_SERVICE_LOG("glBlendFuncSeparate"
2178 << "(" << GLEnums::GetStringEnum(srcRGB
) << ", "
2179 << GLEnums::GetStringEnum(dstRGB
) << ", "
2180 << GLEnums::GetStringEnum(srcAlpha
) << ", "
2181 << GLEnums::GetStringEnum(dstAlpha
) << ")");
2182 g_driver_gl
.debug_fn
.glBlendFuncSeparateFn(srcRGB
, dstRGB
, srcAlpha
,
2186 static void GL_BINDING_CALL
Debug_glBlitFramebuffer(GLint srcX0
,
2196 GL_SERVICE_LOG("glBlitFramebuffer"
2197 << "(" << srcX0
<< ", " << srcY0
<< ", " << srcX1
<< ", "
2198 << srcY1
<< ", " << dstX0
<< ", " << dstY0
<< ", " << dstX1
2199 << ", " << dstY1
<< ", " << mask
<< ", "
2200 << GLEnums::GetStringEnum(filter
) << ")");
2201 g_driver_gl
.debug_fn
.glBlitFramebufferFn(srcX0
, srcY0
, srcX1
, srcY1
, dstX0
,
2202 dstY0
, dstX1
, dstY1
, mask
, filter
);
2205 static void GL_BINDING_CALL
Debug_glBlitFramebufferANGLE(GLint srcX0
,
2215 GL_SERVICE_LOG("glBlitFramebufferANGLE"
2216 << "(" << srcX0
<< ", " << srcY0
<< ", " << srcX1
<< ", "
2217 << srcY1
<< ", " << dstX0
<< ", " << dstY0
<< ", " << dstX1
2218 << ", " << dstY1
<< ", " << mask
<< ", "
2219 << GLEnums::GetStringEnum(filter
) << ")");
2220 g_driver_gl
.debug_fn
.glBlitFramebufferANGLEFn(
2221 srcX0
, srcY0
, srcX1
, srcY1
, dstX0
, dstY0
, dstX1
, dstY1
, mask
, filter
);
2224 static void GL_BINDING_CALL
Debug_glBlitFramebufferEXT(GLint srcX0
,
2234 GL_SERVICE_LOG("glBlitFramebufferEXT"
2235 << "(" << srcX0
<< ", " << srcY0
<< ", " << srcX1
<< ", "
2236 << srcY1
<< ", " << dstX0
<< ", " << dstY0
<< ", " << dstX1
2237 << ", " << dstY1
<< ", " << mask
<< ", "
2238 << GLEnums::GetStringEnum(filter
) << ")");
2239 g_driver_gl
.debug_fn
.glBlitFramebufferEXTFn(
2240 srcX0
, srcY0
, srcX1
, srcY1
, dstX0
, dstY0
, dstX1
, dstY1
, mask
, filter
);
2243 static void GL_BINDING_CALL
Debug_glBufferData(GLenum target
,
2247 GL_SERVICE_LOG("glBufferData"
2248 << "(" << GLEnums::GetStringEnum(target
) << ", " << size
2249 << ", " << static_cast<const void*>(data
) << ", "
2250 << GLEnums::GetStringEnum(usage
) << ")");
2251 g_driver_gl
.debug_fn
.glBufferDataFn(target
, size
, data
, usage
);
2254 static void GL_BINDING_CALL
Debug_glBufferSubData(GLenum target
,
2258 GL_SERVICE_LOG("glBufferSubData"
2259 << "(" << GLEnums::GetStringEnum(target
) << ", " << offset
2260 << ", " << size
<< ", " << static_cast<const void*>(data
)
2262 g_driver_gl
.debug_fn
.glBufferSubDataFn(target
, offset
, size
, data
);
2265 static GLenum GL_BINDING_CALL
Debug_glCheckFramebufferStatusEXT(GLenum target
) {
2266 GL_SERVICE_LOG("glCheckFramebufferStatusEXT"
2267 << "(" << GLEnums::GetStringEnum(target
) << ")");
2268 GLenum result
= g_driver_gl
.debug_fn
.glCheckFramebufferStatusEXTFn(target
);
2270 GL_SERVICE_LOG("GL_RESULT: " << GLEnums::GetStringEnum(result
));
2275 static void GL_BINDING_CALL
Debug_glClear(GLbitfield mask
) {
2276 GL_SERVICE_LOG("glClear"
2277 << "(" << mask
<< ")");
2278 g_driver_gl
.debug_fn
.glClearFn(mask
);
2281 static void GL_BINDING_CALL
Debug_glClearBufferfi(GLenum buffer
,
2283 const GLfloat depth
,
2285 GL_SERVICE_LOG("glClearBufferfi"
2286 << "(" << GLEnums::GetStringEnum(buffer
) << ", " << drawbuffer
2287 << ", " << depth
<< ", " << stencil
<< ")");
2288 g_driver_gl
.debug_fn
.glClearBufferfiFn(buffer
, drawbuffer
, depth
, stencil
);
2291 static void GL_BINDING_CALL
2292 Debug_glClearBufferfv(GLenum buffer
, GLint drawbuffer
, const GLfloat
* value
) {
2293 GL_SERVICE_LOG("glClearBufferfv"
2294 << "(" << GLEnums::GetStringEnum(buffer
) << ", " << drawbuffer
2295 << ", " << static_cast<const void*>(value
) << ")");
2296 g_driver_gl
.debug_fn
.glClearBufferfvFn(buffer
, drawbuffer
, value
);
2299 static void GL_BINDING_CALL
2300 Debug_glClearBufferiv(GLenum buffer
, GLint drawbuffer
, const GLint
* value
) {
2301 GL_SERVICE_LOG("glClearBufferiv"
2302 << "(" << GLEnums::GetStringEnum(buffer
) << ", " << drawbuffer
2303 << ", " << static_cast<const void*>(value
) << ")");
2304 g_driver_gl
.debug_fn
.glClearBufferivFn(buffer
, drawbuffer
, value
);
2307 static void GL_BINDING_CALL
2308 Debug_glClearBufferuiv(GLenum buffer
, GLint drawbuffer
, const GLuint
* value
) {
2309 GL_SERVICE_LOG("glClearBufferuiv"
2310 << "(" << GLEnums::GetStringEnum(buffer
) << ", " << drawbuffer
2311 << ", " << static_cast<const void*>(value
) << ")");
2312 g_driver_gl
.debug_fn
.glClearBufferuivFn(buffer
, drawbuffer
, value
);
2315 static void GL_BINDING_CALL
Debug_glClearColor(GLclampf red
,
2319 GL_SERVICE_LOG("glClearColor"
2320 << "(" << red
<< ", " << green
<< ", " << blue
<< ", " << alpha
2322 g_driver_gl
.debug_fn
.glClearColorFn(red
, green
, blue
, alpha
);
2325 static void GL_BINDING_CALL
Debug_glClearDepth(GLclampd depth
) {
2326 GL_SERVICE_LOG("glClearDepth"
2327 << "(" << depth
<< ")");
2328 g_driver_gl
.debug_fn
.glClearDepthFn(depth
);
2331 static void GL_BINDING_CALL
Debug_glClearDepthf(GLclampf depth
) {
2332 GL_SERVICE_LOG("glClearDepthf"
2333 << "(" << depth
<< ")");
2334 g_driver_gl
.debug_fn
.glClearDepthfFn(depth
);
2337 static void GL_BINDING_CALL
Debug_glClearStencil(GLint s
) {
2338 GL_SERVICE_LOG("glClearStencil"
2339 << "(" << s
<< ")");
2340 g_driver_gl
.debug_fn
.glClearStencilFn(s
);
2343 static GLenum GL_BINDING_CALL
2344 Debug_glClientWaitSync(GLsync sync
, GLbitfield flags
, GLuint64 timeout
) {
2345 GL_SERVICE_LOG("glClientWaitSync"
2346 << "(" << sync
<< ", " << flags
<< ", " << timeout
<< ")");
2347 GLenum result
= g_driver_gl
.debug_fn
.glClientWaitSyncFn(sync
, flags
, timeout
);
2348 GL_SERVICE_LOG("GL_RESULT: " << result
);
2352 static void GL_BINDING_CALL
Debug_glColorMask(GLboolean red
,
2356 GL_SERVICE_LOG("glColorMask"
2357 << "(" << GLEnums::GetStringBool(red
) << ", "
2358 << GLEnums::GetStringBool(green
) << ", "
2359 << GLEnums::GetStringBool(blue
) << ", "
2360 << GLEnums::GetStringBool(alpha
) << ")");
2361 g_driver_gl
.debug_fn
.glColorMaskFn(red
, green
, blue
, alpha
);
2364 static void GL_BINDING_CALL
Debug_glCompileShader(GLuint shader
) {
2365 GL_SERVICE_LOG("glCompileShader"
2366 << "(" << shader
<< ")");
2367 g_driver_gl
.debug_fn
.glCompileShaderFn(shader
);
2370 static void GL_BINDING_CALL
Debug_glCompressedTexImage2D(GLenum target
,
2372 GLenum internalformat
,
2378 GL_SERVICE_LOG("glCompressedTexImage2D"
2379 << "(" << GLEnums::GetStringEnum(target
) << ", " << level
2380 << ", " << GLEnums::GetStringEnum(internalformat
) << ", "
2381 << width
<< ", " << height
<< ", " << border
<< ", "
2382 << imageSize
<< ", " << static_cast<const void*>(data
) << ")");
2383 g_driver_gl
.debug_fn
.glCompressedTexImage2DFn(
2384 target
, level
, internalformat
, width
, height
, border
, imageSize
, data
);
2387 static void GL_BINDING_CALL
Debug_glCompressedTexImage3D(GLenum target
,
2389 GLenum internalformat
,
2396 GL_SERVICE_LOG("glCompressedTexImage3D"
2397 << "(" << GLEnums::GetStringEnum(target
) << ", " << level
2398 << ", " << GLEnums::GetStringEnum(internalformat
) << ", "
2399 << width
<< ", " << height
<< ", " << depth
<< ", " << border
2400 << ", " << imageSize
<< ", " << static_cast<const void*>(data
)
2402 g_driver_gl
.debug_fn
.glCompressedTexImage3DFn(target
, level
, internalformat
,
2403 width
, height
, depth
, border
,
2407 static void GL_BINDING_CALL
Debug_glCompressedTexSubImage2D(GLenum target
,
2416 GL_SERVICE_LOG("glCompressedTexSubImage2D"
2417 << "(" << GLEnums::GetStringEnum(target
) << ", " << level
2418 << ", " << xoffset
<< ", " << yoffset
<< ", " << width
<< ", "
2419 << height
<< ", " << GLEnums::GetStringEnum(format
) << ", "
2420 << imageSize
<< ", " << static_cast<const void*>(data
) << ")");
2421 g_driver_gl
.debug_fn
.glCompressedTexSubImage2DFn(
2422 target
, level
, xoffset
, yoffset
, width
, height
, format
, imageSize
, data
);
2425 static void GL_BINDING_CALL
Debug_glCompressedTexSubImage3D(GLenum target
,
2436 GL_SERVICE_LOG("glCompressedTexSubImage3D"
2437 << "(" << GLEnums::GetStringEnum(target
) << ", " << level
2438 << ", " << xoffset
<< ", " << yoffset
<< ", " << zoffset
2439 << ", " << width
<< ", " << height
<< ", " << depth
<< ", "
2440 << GLEnums::GetStringEnum(format
) << ", " << imageSize
<< ", "
2441 << static_cast<const void*>(data
) << ")");
2442 g_driver_gl
.debug_fn
.glCompressedTexSubImage3DFn(
2443 target
, level
, xoffset
, yoffset
, zoffset
, width
, height
, depth
, format
,
2447 static void GL_BINDING_CALL
Debug_glCopyBufferSubData(GLenum readTarget
,
2449 GLintptr readOffset
,
2450 GLintptr writeOffset
,
2452 GL_SERVICE_LOG("glCopyBufferSubData"
2453 << "(" << GLEnums::GetStringEnum(readTarget
) << ", "
2454 << GLEnums::GetStringEnum(writeTarget
) << ", " << readOffset
2455 << ", " << writeOffset
<< ", " << size
<< ")");
2456 g_driver_gl
.debug_fn
.glCopyBufferSubDataFn(readTarget
, writeTarget
,
2457 readOffset
, writeOffset
, size
);
2460 static void GL_BINDING_CALL
Debug_glCopyTexImage2D(GLenum target
,
2462 GLenum internalformat
,
2468 GL_SERVICE_LOG("glCopyTexImage2D"
2469 << "(" << GLEnums::GetStringEnum(target
) << ", " << level
2470 << ", " << GLEnums::GetStringEnum(internalformat
) << ", " << x
2471 << ", " << y
<< ", " << width
<< ", " << height
<< ", "
2473 g_driver_gl
.debug_fn
.glCopyTexImage2DFn(target
, level
, internalformat
, x
, y
,
2474 width
, height
, border
);
2477 static void GL_BINDING_CALL
Debug_glCopyTexSubImage2D(GLenum target
,
2485 GL_SERVICE_LOG("glCopyTexSubImage2D"
2486 << "(" << GLEnums::GetStringEnum(target
) << ", " << level
2487 << ", " << xoffset
<< ", " << yoffset
<< ", " << x
<< ", " << y
2488 << ", " << width
<< ", " << height
<< ")");
2489 g_driver_gl
.debug_fn
.glCopyTexSubImage2DFn(target
, level
, xoffset
, yoffset
, x
,
2493 static void GL_BINDING_CALL
Debug_glCopyTexSubImage3D(GLenum target
,
2502 GL_SERVICE_LOG("glCopyTexSubImage3D"
2503 << "(" << GLEnums::GetStringEnum(target
) << ", " << level
2504 << ", " << xoffset
<< ", " << yoffset
<< ", " << zoffset
2505 << ", " << x
<< ", " << y
<< ", " << width
<< ", " << height
2507 g_driver_gl
.debug_fn
.glCopyTexSubImage3DFn(target
, level
, xoffset
, yoffset
,
2508 zoffset
, x
, y
, width
, height
);
2511 static GLuint GL_BINDING_CALL
Debug_glCreateProgram(void) {
2512 GL_SERVICE_LOG("glCreateProgram"
2515 GLuint result
= g_driver_gl
.debug_fn
.glCreateProgramFn();
2516 GL_SERVICE_LOG("GL_RESULT: " << result
);
2520 static GLuint GL_BINDING_CALL
Debug_glCreateShader(GLenum type
) {
2521 GL_SERVICE_LOG("glCreateShader"
2522 << "(" << GLEnums::GetStringEnum(type
) << ")");
2523 GLuint result
= g_driver_gl
.debug_fn
.glCreateShaderFn(type
);
2524 GL_SERVICE_LOG("GL_RESULT: " << result
);
2528 static void GL_BINDING_CALL
Debug_glCullFace(GLenum mode
) {
2529 GL_SERVICE_LOG("glCullFace"
2530 << "(" << GLEnums::GetStringEnum(mode
) << ")");
2531 g_driver_gl
.debug_fn
.glCullFaceFn(mode
);
2534 static void GL_BINDING_CALL
2535 Debug_glDeleteBuffersARB(GLsizei n
, const GLuint
* buffers
) {
2536 GL_SERVICE_LOG("glDeleteBuffersARB"
2537 << "(" << n
<< ", " << static_cast<const void*>(buffers
)
2539 g_driver_gl
.debug_fn
.glDeleteBuffersARBFn(n
, buffers
);
2542 static void GL_BINDING_CALL
2543 Debug_glDeleteFencesAPPLE(GLsizei n
, const GLuint
* fences
) {
2544 GL_SERVICE_LOG("glDeleteFencesAPPLE"
2545 << "(" << n
<< ", " << static_cast<const void*>(fences
)
2547 g_driver_gl
.debug_fn
.glDeleteFencesAPPLEFn(n
, fences
);
2550 static void GL_BINDING_CALL
2551 Debug_glDeleteFencesNV(GLsizei n
, const GLuint
* fences
) {
2552 GL_SERVICE_LOG("glDeleteFencesNV"
2553 << "(" << n
<< ", " << static_cast<const void*>(fences
)
2555 g_driver_gl
.debug_fn
.glDeleteFencesNVFn(n
, fences
);
2558 static void GL_BINDING_CALL
2559 Debug_glDeleteFramebuffersEXT(GLsizei n
, const GLuint
* framebuffers
) {
2560 GL_SERVICE_LOG("glDeleteFramebuffersEXT"
2561 << "(" << n
<< ", " << static_cast<const void*>(framebuffers
)
2563 g_driver_gl
.debug_fn
.glDeleteFramebuffersEXTFn(n
, framebuffers
);
2566 static void GL_BINDING_CALL
Debug_glDeleteProgram(GLuint program
) {
2567 GL_SERVICE_LOG("glDeleteProgram"
2568 << "(" << program
<< ")");
2569 g_driver_gl
.debug_fn
.glDeleteProgramFn(program
);
2572 static void GL_BINDING_CALL
2573 Debug_glDeleteQueries(GLsizei n
, const GLuint
* ids
) {
2574 GL_SERVICE_LOG("glDeleteQueries"
2575 << "(" << n
<< ", " << static_cast<const void*>(ids
) << ")");
2576 g_driver_gl
.debug_fn
.glDeleteQueriesFn(n
, ids
);
2579 static void GL_BINDING_CALL
2580 Debug_glDeleteRenderbuffersEXT(GLsizei n
, const GLuint
* renderbuffers
) {
2581 GL_SERVICE_LOG("glDeleteRenderbuffersEXT"
2582 << "(" << n
<< ", " << static_cast<const void*>(renderbuffers
)
2584 g_driver_gl
.debug_fn
.glDeleteRenderbuffersEXTFn(n
, renderbuffers
);
2587 static void GL_BINDING_CALL
2588 Debug_glDeleteSamplers(GLsizei n
, const GLuint
* samplers
) {
2589 GL_SERVICE_LOG("glDeleteSamplers"
2590 << "(" << n
<< ", " << static_cast<const void*>(samplers
)
2592 g_driver_gl
.debug_fn
.glDeleteSamplersFn(n
, samplers
);
2595 static void GL_BINDING_CALL
Debug_glDeleteShader(GLuint shader
) {
2596 GL_SERVICE_LOG("glDeleteShader"
2597 << "(" << shader
<< ")");
2598 g_driver_gl
.debug_fn
.glDeleteShaderFn(shader
);
2601 static void GL_BINDING_CALL
Debug_glDeleteSync(GLsync sync
) {
2602 GL_SERVICE_LOG("glDeleteSync"
2603 << "(" << sync
<< ")");
2604 g_driver_gl
.debug_fn
.glDeleteSyncFn(sync
);
2607 static void GL_BINDING_CALL
2608 Debug_glDeleteTextures(GLsizei n
, const GLuint
* textures
) {
2609 GL_SERVICE_LOG("glDeleteTextures"
2610 << "(" << n
<< ", " << static_cast<const void*>(textures
)
2612 g_driver_gl
.debug_fn
.glDeleteTexturesFn(n
, textures
);
2615 static void GL_BINDING_CALL
2616 Debug_glDeleteTransformFeedbacks(GLsizei n
, const GLuint
* ids
) {
2617 GL_SERVICE_LOG("glDeleteTransformFeedbacks"
2618 << "(" << n
<< ", " << static_cast<const void*>(ids
) << ")");
2619 g_driver_gl
.debug_fn
.glDeleteTransformFeedbacksFn(n
, ids
);
2622 static void GL_BINDING_CALL
2623 Debug_glDeleteVertexArraysOES(GLsizei n
, const GLuint
* arrays
) {
2624 GL_SERVICE_LOG("glDeleteVertexArraysOES"
2625 << "(" << n
<< ", " << static_cast<const void*>(arrays
)
2627 g_driver_gl
.debug_fn
.glDeleteVertexArraysOESFn(n
, arrays
);
2630 static void GL_BINDING_CALL
Debug_glDepthFunc(GLenum func
) {
2631 GL_SERVICE_LOG("glDepthFunc"
2632 << "(" << GLEnums::GetStringEnum(func
) << ")");
2633 g_driver_gl
.debug_fn
.glDepthFuncFn(func
);
2636 static void GL_BINDING_CALL
Debug_glDepthMask(GLboolean flag
) {
2637 GL_SERVICE_LOG("glDepthMask"
2638 << "(" << GLEnums::GetStringBool(flag
) << ")");
2639 g_driver_gl
.debug_fn
.glDepthMaskFn(flag
);
2642 static void GL_BINDING_CALL
Debug_glDepthRange(GLclampd zNear
, GLclampd zFar
) {
2643 GL_SERVICE_LOG("glDepthRange"
2644 << "(" << zNear
<< ", " << zFar
<< ")");
2645 g_driver_gl
.debug_fn
.glDepthRangeFn(zNear
, zFar
);
2648 static void GL_BINDING_CALL
Debug_glDepthRangef(GLclampf zNear
, GLclampf zFar
) {
2649 GL_SERVICE_LOG("glDepthRangef"
2650 << "(" << zNear
<< ", " << zFar
<< ")");
2651 g_driver_gl
.debug_fn
.glDepthRangefFn(zNear
, zFar
);
2654 static void GL_BINDING_CALL
2655 Debug_glDetachShader(GLuint program
, GLuint shader
) {
2656 GL_SERVICE_LOG("glDetachShader"
2657 << "(" << program
<< ", " << shader
<< ")");
2658 g_driver_gl
.debug_fn
.glDetachShaderFn(program
, shader
);
2661 static void GL_BINDING_CALL
Debug_glDisable(GLenum cap
) {
2662 GL_SERVICE_LOG("glDisable"
2663 << "(" << GLEnums::GetStringEnum(cap
) << ")");
2664 g_driver_gl
.debug_fn
.glDisableFn(cap
);
2667 static void GL_BINDING_CALL
Debug_glDisableVertexAttribArray(GLuint index
) {
2668 GL_SERVICE_LOG("glDisableVertexAttribArray"
2669 << "(" << index
<< ")");
2670 g_driver_gl
.debug_fn
.glDisableVertexAttribArrayFn(index
);
2673 static void GL_BINDING_CALL
2674 Debug_glDiscardFramebufferEXT(GLenum target
,
2675 GLsizei numAttachments
,
2676 const GLenum
* attachments
) {
2677 GL_SERVICE_LOG("glDiscardFramebufferEXT"
2678 << "(" << GLEnums::GetStringEnum(target
) << ", "
2679 << numAttachments
<< ", "
2680 << static_cast<const void*>(attachments
) << ")");
2681 g_driver_gl
.debug_fn
.glDiscardFramebufferEXTFn(target
, numAttachments
,
2685 static void GL_BINDING_CALL
2686 Debug_glDrawArrays(GLenum mode
, GLint first
, GLsizei count
) {
2687 GL_SERVICE_LOG("glDrawArrays"
2688 << "(" << GLEnums::GetStringEnum(mode
) << ", " << first
<< ", "
2690 g_driver_gl
.debug_fn
.glDrawArraysFn(mode
, first
, count
);
2693 static void GL_BINDING_CALL
2694 Debug_glDrawArraysInstancedANGLE(GLenum mode
,
2697 GLsizei primcount
) {
2698 GL_SERVICE_LOG("glDrawArraysInstancedANGLE"
2699 << "(" << GLEnums::GetStringEnum(mode
) << ", " << first
<< ", "
2700 << count
<< ", " << primcount
<< ")");
2701 g_driver_gl
.debug_fn
.glDrawArraysInstancedANGLEFn(mode
, first
, count
,
2705 static void GL_BINDING_CALL
Debug_glDrawBuffer(GLenum mode
) {
2706 GL_SERVICE_LOG("glDrawBuffer"
2707 << "(" << GLEnums::GetStringEnum(mode
) << ")");
2708 g_driver_gl
.debug_fn
.glDrawBufferFn(mode
);
2711 static void GL_BINDING_CALL
2712 Debug_glDrawBuffersARB(GLsizei n
, const GLenum
* bufs
) {
2713 GL_SERVICE_LOG("glDrawBuffersARB"
2714 << "(" << n
<< ", " << static_cast<const void*>(bufs
) << ")");
2715 g_driver_gl
.debug_fn
.glDrawBuffersARBFn(n
, bufs
);
2718 static void GL_BINDING_CALL
Debug_glDrawElements(GLenum mode
,
2721 const void* indices
) {
2722 GL_SERVICE_LOG("glDrawElements"
2723 << "(" << GLEnums::GetStringEnum(mode
) << ", " << count
<< ", "
2724 << GLEnums::GetStringEnum(type
) << ", "
2725 << static_cast<const void*>(indices
) << ")");
2726 g_driver_gl
.debug_fn
.glDrawElementsFn(mode
, count
, type
, indices
);
2729 static void GL_BINDING_CALL
2730 Debug_glDrawElementsInstancedANGLE(GLenum mode
,
2733 const void* indices
,
2734 GLsizei primcount
) {
2735 GL_SERVICE_LOG("glDrawElementsInstancedANGLE"
2736 << "(" << GLEnums::GetStringEnum(mode
) << ", " << count
<< ", "
2737 << GLEnums::GetStringEnum(type
) << ", "
2738 << static_cast<const void*>(indices
) << ", " << primcount
2740 g_driver_gl
.debug_fn
.glDrawElementsInstancedANGLEFn(mode
, count
, type
,
2741 indices
, primcount
);
2744 static void GL_BINDING_CALL
Debug_glDrawRangeElements(GLenum mode
,
2749 const void* indices
) {
2750 GL_SERVICE_LOG("glDrawRangeElements"
2751 << "(" << GLEnums::GetStringEnum(mode
) << ", " << start
<< ", "
2752 << end
<< ", " << count
<< ", " << GLEnums::GetStringEnum(type
)
2753 << ", " << static_cast<const void*>(indices
) << ")");
2754 g_driver_gl
.debug_fn
.glDrawRangeElementsFn(mode
, start
, end
, count
, type
,
2758 static void GL_BINDING_CALL
2759 Debug_glEGLImageTargetRenderbufferStorageOES(GLenum target
,
2760 GLeglImageOES image
) {
2761 GL_SERVICE_LOG("glEGLImageTargetRenderbufferStorageOES"
2762 << "(" << GLEnums::GetStringEnum(target
) << ", " << image
2764 g_driver_gl
.debug_fn
.glEGLImageTargetRenderbufferStorageOESFn(target
, image
);
2767 static void GL_BINDING_CALL
2768 Debug_glEGLImageTargetTexture2DOES(GLenum target
, GLeglImageOES image
) {
2769 GL_SERVICE_LOG("glEGLImageTargetTexture2DOES"
2770 << "(" << GLEnums::GetStringEnum(target
) << ", " << image
2772 g_driver_gl
.debug_fn
.glEGLImageTargetTexture2DOESFn(target
, image
);
2775 static void GL_BINDING_CALL
Debug_glEnable(GLenum cap
) {
2776 GL_SERVICE_LOG("glEnable"
2777 << "(" << GLEnums::GetStringEnum(cap
) << ")");
2778 g_driver_gl
.debug_fn
.glEnableFn(cap
);
2781 static void GL_BINDING_CALL
Debug_glEnableVertexAttribArray(GLuint index
) {
2782 GL_SERVICE_LOG("glEnableVertexAttribArray"
2783 << "(" << index
<< ")");
2784 g_driver_gl
.debug_fn
.glEnableVertexAttribArrayFn(index
);
2787 static void GL_BINDING_CALL
Debug_glEndQuery(GLenum target
) {
2788 GL_SERVICE_LOG("glEndQuery"
2789 << "(" << GLEnums::GetStringEnum(target
) << ")");
2790 g_driver_gl
.debug_fn
.glEndQueryFn(target
);
2793 static void GL_BINDING_CALL
Debug_glEndTransformFeedback(void) {
2794 GL_SERVICE_LOG("glEndTransformFeedback"
2797 g_driver_gl
.debug_fn
.glEndTransformFeedbackFn();
2800 static GLsync GL_BINDING_CALL
2801 Debug_glFenceSync(GLenum condition
, GLbitfield flags
) {
2802 GL_SERVICE_LOG("glFenceSync"
2803 << "(" << GLEnums::GetStringEnum(condition
) << ", " << flags
2805 GLsync result
= g_driver_gl
.debug_fn
.glFenceSyncFn(condition
, flags
);
2806 GL_SERVICE_LOG("GL_RESULT: " << result
);
2810 static void GL_BINDING_CALL
Debug_glFinish(void) {
2811 GL_SERVICE_LOG("glFinish"
2814 g_driver_gl
.debug_fn
.glFinishFn();
2817 static void GL_BINDING_CALL
Debug_glFinishFenceAPPLE(GLuint fence
) {
2818 GL_SERVICE_LOG("glFinishFenceAPPLE"
2819 << "(" << fence
<< ")");
2820 g_driver_gl
.debug_fn
.glFinishFenceAPPLEFn(fence
);
2823 static void GL_BINDING_CALL
Debug_glFinishFenceNV(GLuint fence
) {
2824 GL_SERVICE_LOG("glFinishFenceNV"
2825 << "(" << fence
<< ")");
2826 g_driver_gl
.debug_fn
.glFinishFenceNVFn(fence
);
2829 static void GL_BINDING_CALL
Debug_glFlush(void) {
2830 GL_SERVICE_LOG("glFlush"
2833 g_driver_gl
.debug_fn
.glFlushFn();
2836 static void GL_BINDING_CALL
Debug_glFlushMappedBufferRange(GLenum target
,
2838 GLsizeiptr length
) {
2839 GL_SERVICE_LOG("glFlushMappedBufferRange"
2840 << "(" << GLEnums::GetStringEnum(target
) << ", " << offset
2841 << ", " << length
<< ")");
2842 g_driver_gl
.debug_fn
.glFlushMappedBufferRangeFn(target
, offset
, length
);
2845 static void GL_BINDING_CALL
2846 Debug_glFramebufferRenderbufferEXT(GLenum target
,
2848 GLenum renderbuffertarget
,
2849 GLuint renderbuffer
) {
2850 GL_SERVICE_LOG("glFramebufferRenderbufferEXT"
2851 << "(" << GLEnums::GetStringEnum(target
) << ", "
2852 << GLEnums::GetStringEnum(attachment
) << ", "
2853 << GLEnums::GetStringEnum(renderbuffertarget
) << ", "
2854 << renderbuffer
<< ")");
2855 g_driver_gl
.debug_fn
.glFramebufferRenderbufferEXTFn(
2856 target
, attachment
, renderbuffertarget
, renderbuffer
);
2859 static void GL_BINDING_CALL
Debug_glFramebufferTexture2DEXT(GLenum target
,
2864 GL_SERVICE_LOG("glFramebufferTexture2DEXT"
2865 << "(" << GLEnums::GetStringEnum(target
) << ", "
2866 << GLEnums::GetStringEnum(attachment
) << ", "
2867 << GLEnums::GetStringEnum(textarget
) << ", " << texture
<< ", "
2869 g_driver_gl
.debug_fn
.glFramebufferTexture2DEXTFn(target
, attachment
,
2870 textarget
, texture
, level
);
2873 static void GL_BINDING_CALL
2874 Debug_glFramebufferTexture2DMultisampleEXT(GLenum target
,
2880 GL_SERVICE_LOG("glFramebufferTexture2DMultisampleEXT"
2881 << "(" << GLEnums::GetStringEnum(target
) << ", "
2882 << GLEnums::GetStringEnum(attachment
) << ", "
2883 << GLEnums::GetStringEnum(textarget
) << ", " << texture
<< ", "
2884 << level
<< ", " << samples
<< ")");
2885 g_driver_gl
.debug_fn
.glFramebufferTexture2DMultisampleEXTFn(
2886 target
, attachment
, textarget
, texture
, level
, samples
);
2889 static void GL_BINDING_CALL
2890 Debug_glFramebufferTexture2DMultisampleIMG(GLenum target
,
2896 GL_SERVICE_LOG("glFramebufferTexture2DMultisampleIMG"
2897 << "(" << GLEnums::GetStringEnum(target
) << ", "
2898 << GLEnums::GetStringEnum(attachment
) << ", "
2899 << GLEnums::GetStringEnum(textarget
) << ", " << texture
<< ", "
2900 << level
<< ", " << samples
<< ")");
2901 g_driver_gl
.debug_fn
.glFramebufferTexture2DMultisampleIMGFn(
2902 target
, attachment
, textarget
, texture
, level
, samples
);
2905 static void GL_BINDING_CALL
Debug_glFramebufferTextureLayer(GLenum target
,
2910 GL_SERVICE_LOG("glFramebufferTextureLayer"
2911 << "(" << GLEnums::GetStringEnum(target
) << ", "
2912 << GLEnums::GetStringEnum(attachment
) << ", " << texture
2913 << ", " << level
<< ", " << layer
<< ")");
2914 g_driver_gl
.debug_fn
.glFramebufferTextureLayerFn(target
, attachment
, texture
,
2918 static void GL_BINDING_CALL
Debug_glFrontFace(GLenum mode
) {
2919 GL_SERVICE_LOG("glFrontFace"
2920 << "(" << GLEnums::GetStringEnum(mode
) << ")");
2921 g_driver_gl
.debug_fn
.glFrontFaceFn(mode
);
2924 static void GL_BINDING_CALL
Debug_glGenBuffersARB(GLsizei n
, GLuint
* buffers
) {
2925 GL_SERVICE_LOG("glGenBuffersARB"
2926 << "(" << n
<< ", " << static_cast<const void*>(buffers
)
2928 g_driver_gl
.debug_fn
.glGenBuffersARBFn(n
, buffers
);
2931 static void GL_BINDING_CALL
Debug_glGenerateMipmapEXT(GLenum target
) {
2932 GL_SERVICE_LOG("glGenerateMipmapEXT"
2933 << "(" << GLEnums::GetStringEnum(target
) << ")");
2934 g_driver_gl
.debug_fn
.glGenerateMipmapEXTFn(target
);
2937 static void GL_BINDING_CALL
Debug_glGenFencesAPPLE(GLsizei n
, GLuint
* fences
) {
2938 GL_SERVICE_LOG("glGenFencesAPPLE"
2939 << "(" << n
<< ", " << static_cast<const void*>(fences
)
2941 g_driver_gl
.debug_fn
.glGenFencesAPPLEFn(n
, fences
);
2944 static void GL_BINDING_CALL
Debug_glGenFencesNV(GLsizei n
, GLuint
* fences
) {
2945 GL_SERVICE_LOG("glGenFencesNV"
2946 << "(" << n
<< ", " << static_cast<const void*>(fences
)
2948 g_driver_gl
.debug_fn
.glGenFencesNVFn(n
, fences
);
2951 static void GL_BINDING_CALL
2952 Debug_glGenFramebuffersEXT(GLsizei n
, GLuint
* framebuffers
) {
2953 GL_SERVICE_LOG("glGenFramebuffersEXT"
2954 << "(" << n
<< ", " << static_cast<const void*>(framebuffers
)
2956 g_driver_gl
.debug_fn
.glGenFramebuffersEXTFn(n
, framebuffers
);
2959 static void GL_BINDING_CALL
Debug_glGenQueries(GLsizei n
, GLuint
* ids
) {
2960 GL_SERVICE_LOG("glGenQueries"
2961 << "(" << n
<< ", " << static_cast<const void*>(ids
) << ")");
2962 g_driver_gl
.debug_fn
.glGenQueriesFn(n
, ids
);
2965 static void GL_BINDING_CALL
2966 Debug_glGenRenderbuffersEXT(GLsizei n
, GLuint
* renderbuffers
) {
2967 GL_SERVICE_LOG("glGenRenderbuffersEXT"
2968 << "(" << n
<< ", " << static_cast<const void*>(renderbuffers
)
2970 g_driver_gl
.debug_fn
.glGenRenderbuffersEXTFn(n
, renderbuffers
);
2973 static void GL_BINDING_CALL
Debug_glGenSamplers(GLsizei n
, GLuint
* samplers
) {
2974 GL_SERVICE_LOG("glGenSamplers"
2975 << "(" << n
<< ", " << static_cast<const void*>(samplers
)
2977 g_driver_gl
.debug_fn
.glGenSamplersFn(n
, samplers
);
2980 static void GL_BINDING_CALL
Debug_glGenTextures(GLsizei n
, GLuint
* textures
) {
2981 GL_SERVICE_LOG("glGenTextures"
2982 << "(" << n
<< ", " << static_cast<const void*>(textures
)
2984 g_driver_gl
.debug_fn
.glGenTexturesFn(n
, textures
);
2987 static void GL_BINDING_CALL
2988 Debug_glGenTransformFeedbacks(GLsizei n
, GLuint
* ids
) {
2989 GL_SERVICE_LOG("glGenTransformFeedbacks"
2990 << "(" << n
<< ", " << static_cast<const void*>(ids
) << ")");
2991 g_driver_gl
.debug_fn
.glGenTransformFeedbacksFn(n
, ids
);
2994 static void GL_BINDING_CALL
2995 Debug_glGenVertexArraysOES(GLsizei n
, GLuint
* arrays
) {
2996 GL_SERVICE_LOG("glGenVertexArraysOES"
2997 << "(" << n
<< ", " << static_cast<const void*>(arrays
)
2999 g_driver_gl
.debug_fn
.glGenVertexArraysOESFn(n
, arrays
);
3002 static void GL_BINDING_CALL
Debug_glGetActiveAttrib(GLuint program
,
3009 GL_SERVICE_LOG("glGetActiveAttrib"
3010 << "(" << program
<< ", " << index
<< ", " << bufsize
<< ", "
3011 << static_cast<const void*>(length
) << ", "
3012 << static_cast<const void*>(size
) << ", "
3013 << static_cast<const void*>(type
) << ", "
3014 << static_cast<const void*>(name
) << ")");
3015 g_driver_gl
.debug_fn
.glGetActiveAttribFn(program
, index
, bufsize
, length
,
3019 static void GL_BINDING_CALL
Debug_glGetActiveUniform(GLuint program
,
3026 GL_SERVICE_LOG("glGetActiveUniform"
3027 << "(" << program
<< ", " << index
<< ", " << bufsize
<< ", "
3028 << static_cast<const void*>(length
) << ", "
3029 << static_cast<const void*>(size
) << ", "
3030 << static_cast<const void*>(type
) << ", "
3031 << static_cast<const void*>(name
) << ")");
3032 g_driver_gl
.debug_fn
.glGetActiveUniformFn(program
, index
, bufsize
, length
,
3036 static void GL_BINDING_CALL
3037 Debug_glGetActiveUniformBlockiv(GLuint program
,
3038 GLuint uniformBlockIndex
,
3041 GL_SERVICE_LOG("glGetActiveUniformBlockiv"
3042 << "(" << program
<< ", " << uniformBlockIndex
<< ", "
3043 << GLEnums::GetStringEnum(pname
) << ", "
3044 << static_cast<const void*>(params
) << ")");
3045 g_driver_gl
.debug_fn
.glGetActiveUniformBlockivFn(program
, uniformBlockIndex
,
3049 static void GL_BINDING_CALL
3050 Debug_glGetActiveUniformBlockName(GLuint program
,
3051 GLuint uniformBlockIndex
,
3054 char* uniformBlockName
) {
3055 GL_SERVICE_LOG("glGetActiveUniformBlockName"
3056 << "(" << program
<< ", " << uniformBlockIndex
<< ", "
3057 << bufSize
<< ", " << static_cast<const void*>(length
) << ", "
3058 << static_cast<const void*>(uniformBlockName
) << ")");
3059 g_driver_gl
.debug_fn
.glGetActiveUniformBlockNameFn(
3060 program
, uniformBlockIndex
, bufSize
, length
, uniformBlockName
);
3063 static void GL_BINDING_CALL
3064 Debug_glGetActiveUniformsiv(GLuint program
,
3065 GLsizei uniformCount
,
3066 const GLuint
* uniformIndices
,
3069 GL_SERVICE_LOG("glGetActiveUniformsiv"
3070 << "(" << program
<< ", " << uniformCount
<< ", "
3071 << static_cast<const void*>(uniformIndices
) << ", "
3072 << GLEnums::GetStringEnum(pname
) << ", "
3073 << static_cast<const void*>(params
) << ")");
3074 g_driver_gl
.debug_fn
.glGetActiveUniformsivFn(program
, uniformCount
,
3075 uniformIndices
, pname
, params
);
3078 static void GL_BINDING_CALL
Debug_glGetAttachedShaders(GLuint program
,
3082 GL_SERVICE_LOG("glGetAttachedShaders"
3083 << "(" << program
<< ", " << maxcount
<< ", "
3084 << static_cast<const void*>(count
) << ", "
3085 << static_cast<const void*>(shaders
) << ")");
3086 g_driver_gl
.debug_fn
.glGetAttachedShadersFn(program
, maxcount
, count
,
3090 static GLint GL_BINDING_CALL
3091 Debug_glGetAttribLocation(GLuint program
, const char* name
) {
3092 GL_SERVICE_LOG("glGetAttribLocation"
3093 << "(" << program
<< ", " << name
<< ")");
3094 GLint result
= g_driver_gl
.debug_fn
.glGetAttribLocationFn(program
, name
);
3095 GL_SERVICE_LOG("GL_RESULT: " << result
);
3099 static void GL_BINDING_CALL
3100 Debug_glGetBooleanv(GLenum pname
, GLboolean
* params
) {
3101 GL_SERVICE_LOG("glGetBooleanv"
3102 << "(" << GLEnums::GetStringEnum(pname
) << ", "
3103 << static_cast<const void*>(params
) << ")");
3104 g_driver_gl
.debug_fn
.glGetBooleanvFn(pname
, params
);
3107 static void GL_BINDING_CALL
3108 Debug_glGetBufferParameteriv(GLenum target
, GLenum pname
, GLint
* params
) {
3109 GL_SERVICE_LOG("glGetBufferParameteriv"
3110 << "(" << GLEnums::GetStringEnum(target
) << ", "
3111 << GLEnums::GetStringEnum(pname
) << ", "
3112 << static_cast<const void*>(params
) << ")");
3113 g_driver_gl
.debug_fn
.glGetBufferParameterivFn(target
, pname
, params
);
3116 static GLenum GL_BINDING_CALL
Debug_glGetError(void) {
3117 GL_SERVICE_LOG("glGetError"
3120 GLenum result
= g_driver_gl
.debug_fn
.glGetErrorFn();
3122 GL_SERVICE_LOG("GL_RESULT: " << GLEnums::GetStringError(result
));
3127 static void GL_BINDING_CALL
3128 Debug_glGetFenceivNV(GLuint fence
, GLenum pname
, GLint
* params
) {
3129 GL_SERVICE_LOG("glGetFenceivNV"
3130 << "(" << fence
<< ", " << GLEnums::GetStringEnum(pname
)
3131 << ", " << static_cast<const void*>(params
) << ")");
3132 g_driver_gl
.debug_fn
.glGetFenceivNVFn(fence
, pname
, params
);
3135 static void GL_BINDING_CALL
Debug_glGetFloatv(GLenum pname
, GLfloat
* params
) {
3136 GL_SERVICE_LOG("glGetFloatv"
3137 << "(" << GLEnums::GetStringEnum(pname
) << ", "
3138 << static_cast<const void*>(params
) << ")");
3139 g_driver_gl
.debug_fn
.glGetFloatvFn(pname
, params
);
3142 static GLint GL_BINDING_CALL
3143 Debug_glGetFragDataLocation(GLuint program
, const char* name
) {
3144 GL_SERVICE_LOG("glGetFragDataLocation"
3145 << "(" << program
<< ", " << name
<< ")");
3146 GLint result
= g_driver_gl
.debug_fn
.glGetFragDataLocationFn(program
, name
);
3147 GL_SERVICE_LOG("GL_RESULT: " << result
);
3151 static void GL_BINDING_CALL
3152 Debug_glGetFramebufferAttachmentParameterivEXT(GLenum target
,
3156 GL_SERVICE_LOG("glGetFramebufferAttachmentParameterivEXT"
3157 << "(" << GLEnums::GetStringEnum(target
) << ", "
3158 << GLEnums::GetStringEnum(attachment
) << ", "
3159 << GLEnums::GetStringEnum(pname
) << ", "
3160 << static_cast<const void*>(params
) << ")");
3161 g_driver_gl
.debug_fn
.glGetFramebufferAttachmentParameterivEXTFn(
3162 target
, attachment
, pname
, params
);
3165 static GLenum GL_BINDING_CALL
Debug_glGetGraphicsResetStatusARB(void) {
3166 GL_SERVICE_LOG("glGetGraphicsResetStatusARB"
3169 GLenum result
= g_driver_gl
.debug_fn
.glGetGraphicsResetStatusARBFn();
3170 GL_SERVICE_LOG("GL_RESULT: " << result
);
3174 static void GL_BINDING_CALL
3175 Debug_glGetInteger64i_v(GLenum target
, GLuint index
, GLint64
* data
) {
3176 GL_SERVICE_LOG("glGetInteger64i_v"
3177 << "(" << GLEnums::GetStringEnum(target
) << ", " << index
3178 << ", " << static_cast<const void*>(data
) << ")");
3179 g_driver_gl
.debug_fn
.glGetInteger64i_vFn(target
, index
, data
);
3182 static void GL_BINDING_CALL
3183 Debug_glGetInteger64v(GLenum pname
, GLint64
* params
) {
3184 GL_SERVICE_LOG("glGetInteger64v"
3185 << "(" << GLEnums::GetStringEnum(pname
) << ", "
3186 << static_cast<const void*>(params
) << ")");
3187 g_driver_gl
.debug_fn
.glGetInteger64vFn(pname
, params
);
3190 static void GL_BINDING_CALL
3191 Debug_glGetIntegeri_v(GLenum target
, GLuint index
, GLint
* data
) {
3192 GL_SERVICE_LOG("glGetIntegeri_v"
3193 << "(" << GLEnums::GetStringEnum(target
) << ", " << index
3194 << ", " << static_cast<const void*>(data
) << ")");
3195 g_driver_gl
.debug_fn
.glGetIntegeri_vFn(target
, index
, data
);
3198 static void GL_BINDING_CALL
Debug_glGetIntegerv(GLenum pname
, GLint
* params
) {
3199 GL_SERVICE_LOG("glGetIntegerv"
3200 << "(" << GLEnums::GetStringEnum(pname
) << ", "
3201 << static_cast<const void*>(params
) << ")");
3202 g_driver_gl
.debug_fn
.glGetIntegervFn(pname
, params
);
3205 static void GL_BINDING_CALL
Debug_glGetInternalformativ(GLenum target
,
3206 GLenum internalformat
,
3210 GL_SERVICE_LOG("glGetInternalformativ"
3211 << "(" << GLEnums::GetStringEnum(target
) << ", "
3212 << GLEnums::GetStringEnum(internalformat
) << ", "
3213 << GLEnums::GetStringEnum(pname
) << ", " << bufSize
<< ", "
3214 << static_cast<const void*>(params
) << ")");
3215 g_driver_gl
.debug_fn
.glGetInternalformativFn(target
, internalformat
, pname
,
3219 static void GL_BINDING_CALL
Debug_glGetProgramBinary(GLuint program
,
3222 GLenum
* binaryFormat
,
3224 GL_SERVICE_LOG("glGetProgramBinary"
3225 << "(" << program
<< ", " << bufSize
<< ", "
3226 << static_cast<const void*>(length
) << ", "
3227 << static_cast<const void*>(binaryFormat
) << ", "
3228 << static_cast<const void*>(binary
) << ")");
3229 g_driver_gl
.debug_fn
.glGetProgramBinaryFn(program
, bufSize
, length
,
3230 binaryFormat
, binary
);
3233 static void GL_BINDING_CALL
Debug_glGetProgramInfoLog(GLuint program
,
3237 GL_SERVICE_LOG("glGetProgramInfoLog"
3238 << "(" << program
<< ", " << bufsize
<< ", "
3239 << static_cast<const void*>(length
) << ", "
3240 << static_cast<const void*>(infolog
) << ")");
3241 g_driver_gl
.debug_fn
.glGetProgramInfoLogFn(program
, bufsize
, length
, infolog
);
3244 static void GL_BINDING_CALL
3245 Debug_glGetProgramiv(GLuint program
, GLenum pname
, GLint
* params
) {
3246 GL_SERVICE_LOG("glGetProgramiv"
3247 << "(" << program
<< ", " << GLEnums::GetStringEnum(pname
)
3248 << ", " << static_cast<const void*>(params
) << ")");
3249 g_driver_gl
.debug_fn
.glGetProgramivFn(program
, pname
, params
);
3252 static GLint GL_BINDING_CALL
3253 Debug_glGetProgramResourceLocation(GLuint program
,
3254 GLenum programInterface
,
3256 GL_SERVICE_LOG("glGetProgramResourceLocation"
3257 << "(" << program
<< ", "
3258 << GLEnums::GetStringEnum(programInterface
) << ", " << name
3260 GLint result
= g_driver_gl
.debug_fn
.glGetProgramResourceLocationFn(
3261 program
, programInterface
, name
);
3262 GL_SERVICE_LOG("GL_RESULT: " << result
);
3266 static void GL_BINDING_CALL
3267 Debug_glGetQueryiv(GLenum target
, GLenum pname
, GLint
* params
) {
3268 GL_SERVICE_LOG("glGetQueryiv"
3269 << "(" << GLEnums::GetStringEnum(target
) << ", "
3270 << GLEnums::GetStringEnum(pname
) << ", "
3271 << static_cast<const void*>(params
) << ")");
3272 g_driver_gl
.debug_fn
.glGetQueryivFn(target
, pname
, params
);
3275 static void GL_BINDING_CALL
3276 Debug_glGetQueryObjecti64v(GLuint id
, GLenum pname
, GLint64
* params
) {
3277 GL_SERVICE_LOG("glGetQueryObjecti64v"
3278 << "(" << id
<< ", " << GLEnums::GetStringEnum(pname
) << ", "
3279 << static_cast<const void*>(params
) << ")");
3280 g_driver_gl
.debug_fn
.glGetQueryObjecti64vFn(id
, pname
, params
);
3283 static void GL_BINDING_CALL
3284 Debug_glGetQueryObjectiv(GLuint id
, GLenum pname
, GLint
* params
) {
3285 GL_SERVICE_LOG("glGetQueryObjectiv"
3286 << "(" << id
<< ", " << GLEnums::GetStringEnum(pname
) << ", "
3287 << static_cast<const void*>(params
) << ")");
3288 g_driver_gl
.debug_fn
.glGetQueryObjectivFn(id
, pname
, params
);
3291 static void GL_BINDING_CALL
3292 Debug_glGetQueryObjectui64v(GLuint id
, GLenum pname
, GLuint64
* params
) {
3293 GL_SERVICE_LOG("glGetQueryObjectui64v"
3294 << "(" << id
<< ", " << GLEnums::GetStringEnum(pname
) << ", "
3295 << static_cast<const void*>(params
) << ")");
3296 g_driver_gl
.debug_fn
.glGetQueryObjectui64vFn(id
, pname
, params
);
3299 static void GL_BINDING_CALL
3300 Debug_glGetQueryObjectuiv(GLuint id
, GLenum pname
, GLuint
* params
) {
3301 GL_SERVICE_LOG("glGetQueryObjectuiv"
3302 << "(" << id
<< ", " << GLEnums::GetStringEnum(pname
) << ", "
3303 << static_cast<const void*>(params
) << ")");
3304 g_driver_gl
.debug_fn
.glGetQueryObjectuivFn(id
, pname
, params
);
3307 static void GL_BINDING_CALL
3308 Debug_glGetRenderbufferParameterivEXT(GLenum target
,
3311 GL_SERVICE_LOG("glGetRenderbufferParameterivEXT"
3312 << "(" << GLEnums::GetStringEnum(target
) << ", "
3313 << GLEnums::GetStringEnum(pname
) << ", "
3314 << static_cast<const void*>(params
) << ")");
3315 g_driver_gl
.debug_fn
.glGetRenderbufferParameterivEXTFn(target
, pname
, params
);
3318 static void GL_BINDING_CALL
3319 Debug_glGetSamplerParameterfv(GLuint sampler
, GLenum pname
, GLfloat
* params
) {
3320 GL_SERVICE_LOG("glGetSamplerParameterfv"
3321 << "(" << sampler
<< ", " << GLEnums::GetStringEnum(pname
)
3322 << ", " << static_cast<const void*>(params
) << ")");
3323 g_driver_gl
.debug_fn
.glGetSamplerParameterfvFn(sampler
, pname
, params
);
3326 static void GL_BINDING_CALL
3327 Debug_glGetSamplerParameteriv(GLuint sampler
, GLenum pname
, GLint
* params
) {
3328 GL_SERVICE_LOG("glGetSamplerParameteriv"
3329 << "(" << sampler
<< ", " << GLEnums::GetStringEnum(pname
)
3330 << ", " << static_cast<const void*>(params
) << ")");
3331 g_driver_gl
.debug_fn
.glGetSamplerParameterivFn(sampler
, pname
, params
);
3334 static void GL_BINDING_CALL
Debug_glGetShaderInfoLog(GLuint shader
,
3338 GL_SERVICE_LOG("glGetShaderInfoLog"
3339 << "(" << shader
<< ", " << bufsize
<< ", "
3340 << static_cast<const void*>(length
) << ", "
3341 << static_cast<const void*>(infolog
) << ")");
3342 g_driver_gl
.debug_fn
.glGetShaderInfoLogFn(shader
, bufsize
, length
, infolog
);
3345 static void GL_BINDING_CALL
3346 Debug_glGetShaderiv(GLuint shader
, GLenum pname
, GLint
* params
) {
3347 GL_SERVICE_LOG("glGetShaderiv"
3348 << "(" << shader
<< ", " << GLEnums::GetStringEnum(pname
)
3349 << ", " << static_cast<const void*>(params
) << ")");
3350 g_driver_gl
.debug_fn
.glGetShaderivFn(shader
, pname
, params
);
3353 static void GL_BINDING_CALL
3354 Debug_glGetShaderPrecisionFormat(GLenum shadertype
,
3355 GLenum precisiontype
,
3358 GL_SERVICE_LOG("glGetShaderPrecisionFormat"
3359 << "(" << GLEnums::GetStringEnum(shadertype
) << ", "
3360 << GLEnums::GetStringEnum(precisiontype
) << ", "
3361 << static_cast<const void*>(range
) << ", "
3362 << static_cast<const void*>(precision
) << ")");
3363 g_driver_gl
.debug_fn
.glGetShaderPrecisionFormatFn(shadertype
, precisiontype
,
3367 static void GL_BINDING_CALL
Debug_glGetShaderSource(GLuint shader
,
3371 GL_SERVICE_LOG("glGetShaderSource"
3372 << "(" << shader
<< ", " << bufsize
<< ", "
3373 << static_cast<const void*>(length
) << ", "
3374 << static_cast<const void*>(source
) << ")");
3375 g_driver_gl
.debug_fn
.glGetShaderSourceFn(shader
, bufsize
, length
, source
);
3378 static const GLubyte
* GL_BINDING_CALL
Debug_glGetString(GLenum name
) {
3379 GL_SERVICE_LOG("glGetString"
3380 << "(" << GLEnums::GetStringEnum(name
) << ")");
3381 const GLubyte
* result
= g_driver_gl
.debug_fn
.glGetStringFn(name
);
3382 GL_SERVICE_LOG("GL_RESULT: " << result
);
3386 static const GLubyte
* GL_BINDING_CALL
3387 Debug_glGetStringi(GLenum name
, GLuint index
) {
3388 GL_SERVICE_LOG("glGetStringi"
3389 << "(" << GLEnums::GetStringEnum(name
) << ", " << index
3391 const GLubyte
* result
= g_driver_gl
.debug_fn
.glGetStringiFn(name
, index
);
3392 GL_SERVICE_LOG("GL_RESULT: " << result
);
3396 static void GL_BINDING_CALL
Debug_glGetSynciv(GLsync sync
,
3401 GL_SERVICE_LOG("glGetSynciv"
3402 << "(" << sync
<< ", " << GLEnums::GetStringEnum(pname
) << ", "
3403 << bufSize
<< ", " << static_cast<const void*>(length
) << ", "
3404 << static_cast<const void*>(values
) << ")");
3405 g_driver_gl
.debug_fn
.glGetSyncivFn(sync
, pname
, bufSize
, length
, values
);
3408 static void GL_BINDING_CALL
Debug_glGetTexLevelParameterfv(GLenum target
,
3412 GL_SERVICE_LOG("glGetTexLevelParameterfv"
3413 << "(" << GLEnums::GetStringEnum(target
) << ", " << level
3414 << ", " << GLEnums::GetStringEnum(pname
) << ", "
3415 << static_cast<const void*>(params
) << ")");
3416 g_driver_gl
.debug_fn
.glGetTexLevelParameterfvFn(target
, level
, pname
, params
);
3419 static void GL_BINDING_CALL
Debug_glGetTexLevelParameteriv(GLenum target
,
3423 GL_SERVICE_LOG("glGetTexLevelParameteriv"
3424 << "(" << GLEnums::GetStringEnum(target
) << ", " << level
3425 << ", " << GLEnums::GetStringEnum(pname
) << ", "
3426 << static_cast<const void*>(params
) << ")");
3427 g_driver_gl
.debug_fn
.glGetTexLevelParameterivFn(target
, level
, pname
, params
);
3430 static void GL_BINDING_CALL
3431 Debug_glGetTexParameterfv(GLenum target
, GLenum pname
, GLfloat
* params
) {
3432 GL_SERVICE_LOG("glGetTexParameterfv"
3433 << "(" << GLEnums::GetStringEnum(target
) << ", "
3434 << GLEnums::GetStringEnum(pname
) << ", "
3435 << static_cast<const void*>(params
) << ")");
3436 g_driver_gl
.debug_fn
.glGetTexParameterfvFn(target
, pname
, params
);
3439 static void GL_BINDING_CALL
3440 Debug_glGetTexParameteriv(GLenum target
, GLenum pname
, GLint
* params
) {
3441 GL_SERVICE_LOG("glGetTexParameteriv"
3442 << "(" << GLEnums::GetStringEnum(target
) << ", "
3443 << GLEnums::GetStringEnum(pname
) << ", "
3444 << static_cast<const void*>(params
) << ")");
3445 g_driver_gl
.debug_fn
.glGetTexParameterivFn(target
, pname
, params
);
3448 static void GL_BINDING_CALL
Debug_glGetTransformFeedbackVarying(GLuint program
,
3455 GL_SERVICE_LOG("glGetTransformFeedbackVarying"
3456 << "(" << program
<< ", " << index
<< ", " << bufSize
<< ", "
3457 << static_cast<const void*>(length
) << ", "
3458 << static_cast<const void*>(size
) << ", "
3459 << static_cast<const void*>(type
) << ", "
3460 << static_cast<const void*>(name
) << ")");
3461 g_driver_gl
.debug_fn
.glGetTransformFeedbackVaryingFn(
3462 program
, index
, bufSize
, length
, size
, type
, name
);
3465 static void GL_BINDING_CALL
3466 Debug_glGetTranslatedShaderSourceANGLE(GLuint shader
,
3470 GL_SERVICE_LOG("glGetTranslatedShaderSourceANGLE"
3471 << "(" << shader
<< ", " << bufsize
<< ", "
3472 << static_cast<const void*>(length
) << ", "
3473 << static_cast<const void*>(source
) << ")");
3474 g_driver_gl
.debug_fn
.glGetTranslatedShaderSourceANGLEFn(shader
, bufsize
,
3478 static GLuint GL_BINDING_CALL
3479 Debug_glGetUniformBlockIndex(GLuint program
, const char* uniformBlockName
) {
3480 GL_SERVICE_LOG("glGetUniformBlockIndex"
3481 << "(" << program
<< ", " << uniformBlockName
<< ")");
3483 g_driver_gl
.debug_fn
.glGetUniformBlockIndexFn(program
, uniformBlockName
);
3484 GL_SERVICE_LOG("GL_RESULT: " << result
);
3488 static void GL_BINDING_CALL
3489 Debug_glGetUniformfv(GLuint program
, GLint location
, GLfloat
* params
) {
3490 GL_SERVICE_LOG("glGetUniformfv"
3491 << "(" << program
<< ", " << location
<< ", "
3492 << static_cast<const void*>(params
) << ")");
3493 g_driver_gl
.debug_fn
.glGetUniformfvFn(program
, location
, params
);
3496 static void GL_BINDING_CALL
3497 Debug_glGetUniformIndices(GLuint program
,
3498 GLsizei uniformCount
,
3499 const char* const* uniformNames
,
3500 GLuint
* uniformIndices
) {
3501 GL_SERVICE_LOG("glGetUniformIndices"
3502 << "(" << program
<< ", " << uniformCount
<< ", "
3503 << static_cast<const void*>(uniformNames
) << ", "
3504 << static_cast<const void*>(uniformIndices
) << ")");
3505 g_driver_gl
.debug_fn
.glGetUniformIndicesFn(program
, uniformCount
,
3506 uniformNames
, uniformIndices
);
3509 static void GL_BINDING_CALL
3510 Debug_glGetUniformiv(GLuint program
, GLint location
, GLint
* params
) {
3511 GL_SERVICE_LOG("glGetUniformiv"
3512 << "(" << program
<< ", " << location
<< ", "
3513 << static_cast<const void*>(params
) << ")");
3514 g_driver_gl
.debug_fn
.glGetUniformivFn(program
, location
, params
);
3517 static GLint GL_BINDING_CALL
3518 Debug_glGetUniformLocation(GLuint program
, const char* name
) {
3519 GL_SERVICE_LOG("glGetUniformLocation"
3520 << "(" << program
<< ", " << name
<< ")");
3521 GLint result
= g_driver_gl
.debug_fn
.glGetUniformLocationFn(program
, name
);
3522 GL_SERVICE_LOG("GL_RESULT: " << result
);
3526 static void GL_BINDING_CALL
3527 Debug_glGetUniformuiv(GLuint program
, GLint location
, GLuint
* params
) {
3528 GL_SERVICE_LOG("glGetUniformuiv"
3529 << "(" << program
<< ", " << location
<< ", "
3530 << static_cast<const void*>(params
) << ")");
3531 g_driver_gl
.debug_fn
.glGetUniformuivFn(program
, location
, params
);
3534 static void GL_BINDING_CALL
3535 Debug_glGetVertexAttribfv(GLuint index
, GLenum pname
, GLfloat
* params
) {
3536 GL_SERVICE_LOG("glGetVertexAttribfv"
3537 << "(" << index
<< ", " << GLEnums::GetStringEnum(pname
)
3538 << ", " << static_cast<const void*>(params
) << ")");
3539 g_driver_gl
.debug_fn
.glGetVertexAttribfvFn(index
, pname
, params
);
3542 static void GL_BINDING_CALL
3543 Debug_glGetVertexAttribiv(GLuint index
, GLenum pname
, GLint
* params
) {
3544 GL_SERVICE_LOG("glGetVertexAttribiv"
3545 << "(" << index
<< ", " << GLEnums::GetStringEnum(pname
)
3546 << ", " << static_cast<const void*>(params
) << ")");
3547 g_driver_gl
.debug_fn
.glGetVertexAttribivFn(index
, pname
, params
);
3550 static void GL_BINDING_CALL
3551 Debug_glGetVertexAttribPointerv(GLuint index
, GLenum pname
, void** pointer
) {
3552 GL_SERVICE_LOG("glGetVertexAttribPointerv"
3553 << "(" << index
<< ", " << GLEnums::GetStringEnum(pname
)
3554 << ", " << pointer
<< ")");
3555 g_driver_gl
.debug_fn
.glGetVertexAttribPointervFn(index
, pname
, pointer
);
3558 static void GL_BINDING_CALL
Debug_glHint(GLenum target
, GLenum mode
) {
3559 GL_SERVICE_LOG("glHint"
3560 << "(" << GLEnums::GetStringEnum(target
) << ", "
3561 << GLEnums::GetStringEnum(mode
) << ")");
3562 g_driver_gl
.debug_fn
.glHintFn(target
, mode
);
3565 static void GL_BINDING_CALL
3566 Debug_glInsertEventMarkerEXT(GLsizei length
, const char* marker
) {
3567 GL_SERVICE_LOG("glInsertEventMarkerEXT"
3568 << "(" << length
<< ", " << marker
<< ")");
3569 g_driver_gl
.debug_fn
.glInsertEventMarkerEXTFn(length
, marker
);
3572 static void GL_BINDING_CALL
3573 Debug_glInvalidateFramebuffer(GLenum target
,
3574 GLsizei numAttachments
,
3575 const GLenum
* attachments
) {
3576 GL_SERVICE_LOG("glInvalidateFramebuffer"
3577 << "(" << GLEnums::GetStringEnum(target
) << ", "
3578 << numAttachments
<< ", "
3579 << static_cast<const void*>(attachments
) << ")");
3580 g_driver_gl
.debug_fn
.glInvalidateFramebufferFn(target
, numAttachments
,
3584 static void GL_BINDING_CALL
3585 Debug_glInvalidateSubFramebuffer(GLenum target
,
3586 GLsizei numAttachments
,
3587 const GLenum
* attachments
,
3592 GL_SERVICE_LOG("glInvalidateSubFramebuffer"
3593 << "(" << GLEnums::GetStringEnum(target
) << ", "
3594 << numAttachments
<< ", "
3595 << static_cast<const void*>(attachments
) << ", " << x
<< ", "
3596 << y
<< ", " << width
<< ", " << height
<< ")");
3597 g_driver_gl
.debug_fn
.glInvalidateSubFramebufferFn(
3598 target
, numAttachments
, attachments
, x
, y
, width
, height
);
3601 static GLboolean GL_BINDING_CALL
Debug_glIsBuffer(GLuint buffer
) {
3602 GL_SERVICE_LOG("glIsBuffer"
3603 << "(" << buffer
<< ")");
3604 GLboolean result
= g_driver_gl
.debug_fn
.glIsBufferFn(buffer
);
3605 GL_SERVICE_LOG("GL_RESULT: " << result
);
3609 static GLboolean GL_BINDING_CALL
Debug_glIsEnabled(GLenum cap
) {
3610 GL_SERVICE_LOG("glIsEnabled"
3611 << "(" << GLEnums::GetStringEnum(cap
) << ")");
3612 GLboolean result
= g_driver_gl
.debug_fn
.glIsEnabledFn(cap
);
3613 GL_SERVICE_LOG("GL_RESULT: " << result
);
3617 static GLboolean GL_BINDING_CALL
Debug_glIsFenceAPPLE(GLuint fence
) {
3618 GL_SERVICE_LOG("glIsFenceAPPLE"
3619 << "(" << fence
<< ")");
3620 GLboolean result
= g_driver_gl
.debug_fn
.glIsFenceAPPLEFn(fence
);
3621 GL_SERVICE_LOG("GL_RESULT: " << result
);
3625 static GLboolean GL_BINDING_CALL
Debug_glIsFenceNV(GLuint fence
) {
3626 GL_SERVICE_LOG("glIsFenceNV"
3627 << "(" << fence
<< ")");
3628 GLboolean result
= g_driver_gl
.debug_fn
.glIsFenceNVFn(fence
);
3629 GL_SERVICE_LOG("GL_RESULT: " << result
);
3633 static GLboolean GL_BINDING_CALL
Debug_glIsFramebufferEXT(GLuint framebuffer
) {
3634 GL_SERVICE_LOG("glIsFramebufferEXT"
3635 << "(" << framebuffer
<< ")");
3636 GLboolean result
= g_driver_gl
.debug_fn
.glIsFramebufferEXTFn(framebuffer
);
3637 GL_SERVICE_LOG("GL_RESULT: " << result
);
3641 static GLboolean GL_BINDING_CALL
Debug_glIsProgram(GLuint program
) {
3642 GL_SERVICE_LOG("glIsProgram"
3643 << "(" << program
<< ")");
3644 GLboolean result
= g_driver_gl
.debug_fn
.glIsProgramFn(program
);
3645 GL_SERVICE_LOG("GL_RESULT: " << result
);
3649 static GLboolean GL_BINDING_CALL
Debug_glIsQuery(GLuint query
) {
3650 GL_SERVICE_LOG("glIsQuery"
3651 << "(" << query
<< ")");
3652 GLboolean result
= g_driver_gl
.debug_fn
.glIsQueryFn(query
);
3653 GL_SERVICE_LOG("GL_RESULT: " << result
);
3657 static GLboolean GL_BINDING_CALL
3658 Debug_glIsRenderbufferEXT(GLuint renderbuffer
) {
3659 GL_SERVICE_LOG("glIsRenderbufferEXT"
3660 << "(" << renderbuffer
<< ")");
3661 GLboolean result
= g_driver_gl
.debug_fn
.glIsRenderbufferEXTFn(renderbuffer
);
3662 GL_SERVICE_LOG("GL_RESULT: " << result
);
3666 static GLboolean GL_BINDING_CALL
Debug_glIsSampler(GLuint sampler
) {
3667 GL_SERVICE_LOG("glIsSampler"
3668 << "(" << sampler
<< ")");
3669 GLboolean result
= g_driver_gl
.debug_fn
.glIsSamplerFn(sampler
);
3670 GL_SERVICE_LOG("GL_RESULT: " << result
);
3674 static GLboolean GL_BINDING_CALL
Debug_glIsShader(GLuint shader
) {
3675 GL_SERVICE_LOG("glIsShader"
3676 << "(" << shader
<< ")");
3677 GLboolean result
= g_driver_gl
.debug_fn
.glIsShaderFn(shader
);
3678 GL_SERVICE_LOG("GL_RESULT: " << result
);
3682 static GLboolean GL_BINDING_CALL
Debug_glIsSync(GLsync sync
) {
3683 GL_SERVICE_LOG("glIsSync"
3684 << "(" << sync
<< ")");
3685 GLboolean result
= g_driver_gl
.debug_fn
.glIsSyncFn(sync
);
3686 GL_SERVICE_LOG("GL_RESULT: " << result
);
3690 static GLboolean GL_BINDING_CALL
Debug_glIsTexture(GLuint texture
) {
3691 GL_SERVICE_LOG("glIsTexture"
3692 << "(" << texture
<< ")");
3693 GLboolean result
= g_driver_gl
.debug_fn
.glIsTextureFn(texture
);
3694 GL_SERVICE_LOG("GL_RESULT: " << result
);
3698 static GLboolean GL_BINDING_CALL
Debug_glIsTransformFeedback(GLuint id
) {
3699 GL_SERVICE_LOG("glIsTransformFeedback"
3700 << "(" << id
<< ")");
3701 GLboolean result
= g_driver_gl
.debug_fn
.glIsTransformFeedbackFn(id
);
3702 GL_SERVICE_LOG("GL_RESULT: " << result
);
3706 static GLboolean GL_BINDING_CALL
Debug_glIsVertexArrayOES(GLuint array
) {
3707 GL_SERVICE_LOG("glIsVertexArrayOES"
3708 << "(" << array
<< ")");
3709 GLboolean result
= g_driver_gl
.debug_fn
.glIsVertexArrayOESFn(array
);
3710 GL_SERVICE_LOG("GL_RESULT: " << result
);
3714 static void GL_BINDING_CALL
Debug_glLineWidth(GLfloat width
) {
3715 GL_SERVICE_LOG("glLineWidth"
3716 << "(" << width
<< ")");
3717 g_driver_gl
.debug_fn
.glLineWidthFn(width
);
3720 static void GL_BINDING_CALL
Debug_glLinkProgram(GLuint program
) {
3721 GL_SERVICE_LOG("glLinkProgram"
3722 << "(" << program
<< ")");
3723 g_driver_gl
.debug_fn
.glLinkProgramFn(program
);
3726 static void* GL_BINDING_CALL
Debug_glMapBuffer(GLenum target
, GLenum access
) {
3727 GL_SERVICE_LOG("glMapBuffer"
3728 << "(" << GLEnums::GetStringEnum(target
) << ", "
3729 << GLEnums::GetStringEnum(access
) << ")");
3730 void* result
= g_driver_gl
.debug_fn
.glMapBufferFn(target
, access
);
3731 GL_SERVICE_LOG("GL_RESULT: " << result
);
3735 static void* GL_BINDING_CALL
Debug_glMapBufferRange(GLenum target
,
3738 GLbitfield access
) {
3739 GL_SERVICE_LOG("glMapBufferRange"
3740 << "(" << GLEnums::GetStringEnum(target
) << ", " << offset
3741 << ", " << length
<< ", " << access
<< ")");
3743 g_driver_gl
.debug_fn
.glMapBufferRangeFn(target
, offset
, length
, access
);
3744 GL_SERVICE_LOG("GL_RESULT: " << result
);
3748 static void GL_BINDING_CALL
3749 Debug_glMatrixLoadfEXT(GLenum matrixMode
, const GLfloat
* m
) {
3750 GL_SERVICE_LOG("glMatrixLoadfEXT"
3751 << "(" << GLEnums::GetStringEnum(matrixMode
) << ", "
3752 << static_cast<const void*>(m
) << ")");
3753 g_driver_gl
.debug_fn
.glMatrixLoadfEXTFn(matrixMode
, m
);
3756 static void GL_BINDING_CALL
Debug_glMatrixLoadIdentityEXT(GLenum matrixMode
) {
3757 GL_SERVICE_LOG("glMatrixLoadIdentityEXT"
3758 << "(" << GLEnums::GetStringEnum(matrixMode
) << ")");
3759 g_driver_gl
.debug_fn
.glMatrixLoadIdentityEXTFn(matrixMode
);
3762 static void GL_BINDING_CALL
Debug_glPauseTransformFeedback(void) {
3763 GL_SERVICE_LOG("glPauseTransformFeedback"
3766 g_driver_gl
.debug_fn
.glPauseTransformFeedbackFn();
3769 static void GL_BINDING_CALL
Debug_glPixelStorei(GLenum pname
, GLint param
) {
3770 GL_SERVICE_LOG("glPixelStorei"
3771 << "(" << GLEnums::GetStringEnum(pname
) << ", " << param
3773 g_driver_gl
.debug_fn
.glPixelStoreiFn(pname
, param
);
3776 static void GL_BINDING_CALL
Debug_glPointParameteri(GLenum pname
, GLint param
) {
3777 GL_SERVICE_LOG("glPointParameteri"
3778 << "(" << GLEnums::GetStringEnum(pname
) << ", " << param
3780 g_driver_gl
.debug_fn
.glPointParameteriFn(pname
, param
);
3783 static void GL_BINDING_CALL
3784 Debug_glPolygonOffset(GLfloat factor
, GLfloat units
) {
3785 GL_SERVICE_LOG("glPolygonOffset"
3786 << "(" << factor
<< ", " << units
<< ")");
3787 g_driver_gl
.debug_fn
.glPolygonOffsetFn(factor
, units
);
3790 static void GL_BINDING_CALL
Debug_glPopGroupMarkerEXT(void) {
3791 GL_SERVICE_LOG("glPopGroupMarkerEXT"
3794 g_driver_gl
.debug_fn
.glPopGroupMarkerEXTFn();
3797 static void GL_BINDING_CALL
Debug_glProgramBinary(GLuint program
,
3798 GLenum binaryFormat
,
3799 const GLvoid
* binary
,
3801 GL_SERVICE_LOG("glProgramBinary"
3802 << "(" << program
<< ", "
3803 << GLEnums::GetStringEnum(binaryFormat
) << ", "
3804 << static_cast<const void*>(binary
) << ", " << length
<< ")");
3805 g_driver_gl
.debug_fn
.glProgramBinaryFn(program
, binaryFormat
, binary
, length
);
3808 static void GL_BINDING_CALL
3809 Debug_glProgramParameteri(GLuint program
, GLenum pname
, GLint value
) {
3810 GL_SERVICE_LOG("glProgramParameteri"
3811 << "(" << program
<< ", " << GLEnums::GetStringEnum(pname
)
3812 << ", " << value
<< ")");
3813 g_driver_gl
.debug_fn
.glProgramParameteriFn(program
, pname
, value
);
3816 static void GL_BINDING_CALL
3817 Debug_glPushGroupMarkerEXT(GLsizei length
, const char* marker
) {
3818 GL_SERVICE_LOG("glPushGroupMarkerEXT"
3819 << "(" << length
<< ", " << marker
<< ")");
3820 g_driver_gl
.debug_fn
.glPushGroupMarkerEXTFn(length
, marker
);
3823 static void GL_BINDING_CALL
Debug_glQueryCounter(GLuint id
, GLenum target
) {
3824 GL_SERVICE_LOG("glQueryCounter"
3825 << "(" << id
<< ", " << GLEnums::GetStringEnum(target
) << ")");
3826 g_driver_gl
.debug_fn
.glQueryCounterFn(id
, target
);
3829 static void GL_BINDING_CALL
Debug_glReadBuffer(GLenum src
) {
3830 GL_SERVICE_LOG("glReadBuffer"
3831 << "(" << GLEnums::GetStringEnum(src
) << ")");
3832 g_driver_gl
.debug_fn
.glReadBufferFn(src
);
3835 static void GL_BINDING_CALL
Debug_glReadPixels(GLint x
,
3842 GL_SERVICE_LOG("glReadPixels"
3843 << "(" << x
<< ", " << y
<< ", " << width
<< ", " << height
3844 << ", " << GLEnums::GetStringEnum(format
) << ", "
3845 << GLEnums::GetStringEnum(type
) << ", "
3846 << static_cast<const void*>(pixels
) << ")");
3847 g_driver_gl
.debug_fn
.glReadPixelsFn(x
, y
, width
, height
, format
, type
,
3851 static void GL_BINDING_CALL
Debug_glReleaseShaderCompiler(void) {
3852 GL_SERVICE_LOG("glReleaseShaderCompiler"
3855 g_driver_gl
.debug_fn
.glReleaseShaderCompilerFn();
3858 static void GL_BINDING_CALL
3859 Debug_glRenderbufferStorageEXT(GLenum target
,
3860 GLenum internalformat
,
3863 GL_SERVICE_LOG("glRenderbufferStorageEXT"
3864 << "(" << GLEnums::GetStringEnum(target
) << ", "
3865 << GLEnums::GetStringEnum(internalformat
) << ", " << width
3866 << ", " << height
<< ")");
3867 g_driver_gl
.debug_fn
.glRenderbufferStorageEXTFn(target
, internalformat
, width
,
3871 static void GL_BINDING_CALL
3872 Debug_glRenderbufferStorageMultisample(GLenum target
,
3874 GLenum internalformat
,
3877 GL_SERVICE_LOG("glRenderbufferStorageMultisample"
3878 << "(" << GLEnums::GetStringEnum(target
) << ", " << samples
3879 << ", " << GLEnums::GetStringEnum(internalformat
) << ", "
3880 << width
<< ", " << height
<< ")");
3881 g_driver_gl
.debug_fn
.glRenderbufferStorageMultisampleFn(
3882 target
, samples
, internalformat
, width
, height
);
3885 static void GL_BINDING_CALL
3886 Debug_glRenderbufferStorageMultisampleANGLE(GLenum target
,
3888 GLenum internalformat
,
3891 GL_SERVICE_LOG("glRenderbufferStorageMultisampleANGLE"
3892 << "(" << GLEnums::GetStringEnum(target
) << ", " << samples
3893 << ", " << GLEnums::GetStringEnum(internalformat
) << ", "
3894 << width
<< ", " << height
<< ")");
3895 g_driver_gl
.debug_fn
.glRenderbufferStorageMultisampleANGLEFn(
3896 target
, samples
, internalformat
, width
, height
);
3899 static void GL_BINDING_CALL
3900 Debug_glRenderbufferStorageMultisampleEXT(GLenum target
,
3902 GLenum internalformat
,
3905 GL_SERVICE_LOG("glRenderbufferStorageMultisampleEXT"
3906 << "(" << GLEnums::GetStringEnum(target
) << ", " << samples
3907 << ", " << GLEnums::GetStringEnum(internalformat
) << ", "
3908 << width
<< ", " << height
<< ")");
3909 g_driver_gl
.debug_fn
.glRenderbufferStorageMultisampleEXTFn(
3910 target
, samples
, internalformat
, width
, height
);
3913 static void GL_BINDING_CALL
3914 Debug_glRenderbufferStorageMultisampleIMG(GLenum target
,
3916 GLenum internalformat
,
3919 GL_SERVICE_LOG("glRenderbufferStorageMultisampleIMG"
3920 << "(" << GLEnums::GetStringEnum(target
) << ", " << samples
3921 << ", " << GLEnums::GetStringEnum(internalformat
) << ", "
3922 << width
<< ", " << height
<< ")");
3923 g_driver_gl
.debug_fn
.glRenderbufferStorageMultisampleIMGFn(
3924 target
, samples
, internalformat
, width
, height
);
3927 static void GL_BINDING_CALL
Debug_glResumeTransformFeedback(void) {
3928 GL_SERVICE_LOG("glResumeTransformFeedback"
3931 g_driver_gl
.debug_fn
.glResumeTransformFeedbackFn();
3934 static void GL_BINDING_CALL
3935 Debug_glSampleCoverage(GLclampf value
, GLboolean invert
) {
3936 GL_SERVICE_LOG("glSampleCoverage"
3937 << "(" << value
<< ", " << GLEnums::GetStringBool(invert
)
3939 g_driver_gl
.debug_fn
.glSampleCoverageFn(value
, invert
);
3942 static void GL_BINDING_CALL
3943 Debug_glSamplerParameterf(GLuint sampler
, GLenum pname
, GLfloat param
) {
3944 GL_SERVICE_LOG("glSamplerParameterf"
3945 << "(" << sampler
<< ", " << GLEnums::GetStringEnum(pname
)
3946 << ", " << param
<< ")");
3947 g_driver_gl
.debug_fn
.glSamplerParameterfFn(sampler
, pname
, param
);
3950 static void GL_BINDING_CALL
Debug_glSamplerParameterfv(GLuint sampler
,
3952 const GLfloat
* params
) {
3953 GL_SERVICE_LOG("glSamplerParameterfv"
3954 << "(" << sampler
<< ", " << GLEnums::GetStringEnum(pname
)
3955 << ", " << static_cast<const void*>(params
) << ")");
3956 g_driver_gl
.debug_fn
.glSamplerParameterfvFn(sampler
, pname
, params
);
3959 static void GL_BINDING_CALL
3960 Debug_glSamplerParameteri(GLuint sampler
, GLenum pname
, GLint param
) {
3961 GL_SERVICE_LOG("glSamplerParameteri"
3962 << "(" << sampler
<< ", " << GLEnums::GetStringEnum(pname
)
3963 << ", " << param
<< ")");
3964 g_driver_gl
.debug_fn
.glSamplerParameteriFn(sampler
, pname
, param
);
3967 static void GL_BINDING_CALL
3968 Debug_glSamplerParameteriv(GLuint sampler
, GLenum pname
, const GLint
* params
) {
3969 GL_SERVICE_LOG("glSamplerParameteriv"
3970 << "(" << sampler
<< ", " << GLEnums::GetStringEnum(pname
)
3971 << ", " << static_cast<const void*>(params
) << ")");
3972 g_driver_gl
.debug_fn
.glSamplerParameterivFn(sampler
, pname
, params
);
3975 static void GL_BINDING_CALL
3976 Debug_glScissor(GLint x
, GLint y
, GLsizei width
, GLsizei height
) {
3977 GL_SERVICE_LOG("glScissor"
3978 << "(" << x
<< ", " << y
<< ", " << width
<< ", " << height
3980 g_driver_gl
.debug_fn
.glScissorFn(x
, y
, width
, height
);
3983 static void GL_BINDING_CALL
Debug_glSetFenceAPPLE(GLuint fence
) {
3984 GL_SERVICE_LOG("glSetFenceAPPLE"
3985 << "(" << fence
<< ")");
3986 g_driver_gl
.debug_fn
.glSetFenceAPPLEFn(fence
);
3989 static void GL_BINDING_CALL
Debug_glSetFenceNV(GLuint fence
, GLenum condition
) {
3990 GL_SERVICE_LOG("glSetFenceNV"
3991 << "(" << fence
<< ", " << GLEnums::GetStringEnum(condition
)
3993 g_driver_gl
.debug_fn
.glSetFenceNVFn(fence
, condition
);
3996 static void GL_BINDING_CALL
Debug_glShaderBinary(GLsizei n
,
3997 const GLuint
* shaders
,
3998 GLenum binaryformat
,
4001 GL_SERVICE_LOG("glShaderBinary"
4002 << "(" << n
<< ", " << static_cast<const void*>(shaders
)
4003 << ", " << GLEnums::GetStringEnum(binaryformat
) << ", "
4004 << static_cast<const void*>(binary
) << ", " << length
<< ")");
4005 g_driver_gl
.debug_fn
.glShaderBinaryFn(n
, shaders
, binaryformat
, binary
,
4009 static void GL_BINDING_CALL
Debug_glShaderSource(GLuint shader
,
4011 const char* const* str
,
4012 const GLint
* length
) {
4013 GL_SERVICE_LOG("glShaderSource"
4014 << "(" << shader
<< ", " << count
<< ", "
4015 << static_cast<const void*>(str
) << ", "
4016 << static_cast<const void*>(length
) << ")");
4017 g_driver_gl
.debug_fn
.glShaderSourceFn(shader
, count
, str
, length
);
4019 GL_SERVICE_LOG_CODE_BLOCK({
4020 for (GLsizei ii
= 0; ii
< count
; ++ii
) {
4022 if (length
&& length
[ii
] >= 0) {
4023 std::string
source(str
[ii
], length
[ii
]);
4024 GL_SERVICE_LOG(" " << ii
<< ": ---\n" << source
<< "\n---");
4026 GL_SERVICE_LOG(" " << ii
<< ": ---\n" << str
[ii
] << "\n---");
4029 GL_SERVICE_LOG(" " << ii
<< ": NULL");
4035 static void GL_BINDING_CALL
4036 Debug_glStencilFunc(GLenum func
, GLint ref
, GLuint mask
) {
4037 GL_SERVICE_LOG("glStencilFunc"
4038 << "(" << GLEnums::GetStringEnum(func
) << ", " << ref
<< ", "
4040 g_driver_gl
.debug_fn
.glStencilFuncFn(func
, ref
, mask
);
4043 static void GL_BINDING_CALL
4044 Debug_glStencilFuncSeparate(GLenum face
, GLenum func
, GLint ref
, GLuint mask
) {
4045 GL_SERVICE_LOG("glStencilFuncSeparate"
4046 << "(" << GLEnums::GetStringEnum(face
) << ", "
4047 << GLEnums::GetStringEnum(func
) << ", " << ref
<< ", " << mask
4049 g_driver_gl
.debug_fn
.glStencilFuncSeparateFn(face
, func
, ref
, mask
);
4052 static void GL_BINDING_CALL
Debug_glStencilMask(GLuint mask
) {
4053 GL_SERVICE_LOG("glStencilMask"
4054 << "(" << mask
<< ")");
4055 g_driver_gl
.debug_fn
.glStencilMaskFn(mask
);
4058 static void GL_BINDING_CALL
4059 Debug_glStencilMaskSeparate(GLenum face
, GLuint mask
) {
4060 GL_SERVICE_LOG("glStencilMaskSeparate"
4061 << "(" << GLEnums::GetStringEnum(face
) << ", " << mask
<< ")");
4062 g_driver_gl
.debug_fn
.glStencilMaskSeparateFn(face
, mask
);
4065 static void GL_BINDING_CALL
4066 Debug_glStencilOp(GLenum fail
, GLenum zfail
, GLenum zpass
) {
4067 GL_SERVICE_LOG("glStencilOp"
4068 << "(" << GLEnums::GetStringEnum(fail
) << ", "
4069 << GLEnums::GetStringEnum(zfail
) << ", "
4070 << GLEnums::GetStringEnum(zpass
) << ")");
4071 g_driver_gl
.debug_fn
.glStencilOpFn(fail
, zfail
, zpass
);
4074 static void GL_BINDING_CALL
Debug_glStencilOpSeparate(GLenum face
,
4078 GL_SERVICE_LOG("glStencilOpSeparate"
4079 << "(" << GLEnums::GetStringEnum(face
) << ", "
4080 << GLEnums::GetStringEnum(fail
) << ", "
4081 << GLEnums::GetStringEnum(zfail
) << ", "
4082 << GLEnums::GetStringEnum(zpass
) << ")");
4083 g_driver_gl
.debug_fn
.glStencilOpSeparateFn(face
, fail
, zfail
, zpass
);
4086 static GLboolean GL_BINDING_CALL
Debug_glTestFenceAPPLE(GLuint fence
) {
4087 GL_SERVICE_LOG("glTestFenceAPPLE"
4088 << "(" << fence
<< ")");
4089 GLboolean result
= g_driver_gl
.debug_fn
.glTestFenceAPPLEFn(fence
);
4090 GL_SERVICE_LOG("GL_RESULT: " << result
);
4094 static GLboolean GL_BINDING_CALL
Debug_glTestFenceNV(GLuint fence
) {
4095 GL_SERVICE_LOG("glTestFenceNV"
4096 << "(" << fence
<< ")");
4097 GLboolean result
= g_driver_gl
.debug_fn
.glTestFenceNVFn(fence
);
4098 GL_SERVICE_LOG("GL_RESULT: " << result
);
4102 static void GL_BINDING_CALL
Debug_glTexImage2D(GLenum target
,
4104 GLint internalformat
,
4110 const void* pixels
) {
4111 GL_SERVICE_LOG("glTexImage2D"
4112 << "(" << GLEnums::GetStringEnum(target
) << ", " << level
4113 << ", " << internalformat
<< ", " << width
<< ", " << height
4114 << ", " << border
<< ", " << GLEnums::GetStringEnum(format
)
4115 << ", " << GLEnums::GetStringEnum(type
) << ", "
4116 << static_cast<const void*>(pixels
) << ")");
4117 g_driver_gl
.debug_fn
.glTexImage2DFn(target
, level
, internalformat
, width
,
4118 height
, border
, format
, type
, pixels
);
4121 static void GL_BINDING_CALL
Debug_glTexImage3D(GLenum target
,
4123 GLint internalformat
,
4130 const void* pixels
) {
4131 GL_SERVICE_LOG("glTexImage3D"
4132 << "(" << GLEnums::GetStringEnum(target
) << ", " << level
4133 << ", " << internalformat
<< ", " << width
<< ", " << height
4134 << ", " << depth
<< ", " << border
<< ", "
4135 << GLEnums::GetStringEnum(format
) << ", "
4136 << GLEnums::GetStringEnum(type
) << ", "
4137 << static_cast<const void*>(pixels
) << ")");
4138 g_driver_gl
.debug_fn
.glTexImage3DFn(target
, level
, internalformat
, width
,
4139 height
, depth
, border
, format
, type
,
4143 static void GL_BINDING_CALL
4144 Debug_glTexParameterf(GLenum target
, GLenum pname
, GLfloat param
) {
4145 GL_SERVICE_LOG("glTexParameterf"
4146 << "(" << GLEnums::GetStringEnum(target
) << ", "
4147 << GLEnums::GetStringEnum(pname
) << ", " << param
<< ")");
4148 g_driver_gl
.debug_fn
.glTexParameterfFn(target
, pname
, param
);
4151 static void GL_BINDING_CALL
4152 Debug_glTexParameterfv(GLenum target
, GLenum pname
, const GLfloat
* params
) {
4153 GL_SERVICE_LOG("glTexParameterfv"
4154 << "(" << GLEnums::GetStringEnum(target
) << ", "
4155 << GLEnums::GetStringEnum(pname
) << ", "
4156 << static_cast<const void*>(params
) << ")");
4157 g_driver_gl
.debug_fn
.glTexParameterfvFn(target
, pname
, params
);
4160 static void GL_BINDING_CALL
4161 Debug_glTexParameteri(GLenum target
, GLenum pname
, GLint param
) {
4162 GL_SERVICE_LOG("glTexParameteri"
4163 << "(" << GLEnums::GetStringEnum(target
) << ", "
4164 << GLEnums::GetStringEnum(pname
) << ", " << param
<< ")");
4165 g_driver_gl
.debug_fn
.glTexParameteriFn(target
, pname
, param
);
4168 static void GL_BINDING_CALL
4169 Debug_glTexParameteriv(GLenum target
, GLenum pname
, const GLint
* params
) {
4170 GL_SERVICE_LOG("glTexParameteriv"
4171 << "(" << GLEnums::GetStringEnum(target
) << ", "
4172 << GLEnums::GetStringEnum(pname
) << ", "
4173 << static_cast<const void*>(params
) << ")");
4174 g_driver_gl
.debug_fn
.glTexParameterivFn(target
, pname
, params
);
4177 static void GL_BINDING_CALL
Debug_glTexStorage2DEXT(GLenum target
,
4179 GLenum internalformat
,
4182 GL_SERVICE_LOG("glTexStorage2DEXT"
4183 << "(" << GLEnums::GetStringEnum(target
) << ", " << levels
4184 << ", " << GLEnums::GetStringEnum(internalformat
) << ", "
4185 << width
<< ", " << height
<< ")");
4186 g_driver_gl
.debug_fn
.glTexStorage2DEXTFn(target
, levels
, internalformat
,
4190 static void GL_BINDING_CALL
Debug_glTexStorage3D(GLenum target
,
4192 GLenum internalformat
,
4196 GL_SERVICE_LOG("glTexStorage3D"
4197 << "(" << GLEnums::GetStringEnum(target
) << ", " << levels
4198 << ", " << GLEnums::GetStringEnum(internalformat
) << ", "
4199 << width
<< ", " << height
<< ", " << depth
<< ")");
4200 g_driver_gl
.debug_fn
.glTexStorage3DFn(target
, levels
, internalformat
, width
,
4204 static void GL_BINDING_CALL
Debug_glTexSubImage2D(GLenum target
,
4212 const void* pixels
) {
4213 GL_SERVICE_LOG("glTexSubImage2D"
4214 << "(" << GLEnums::GetStringEnum(target
) << ", " << level
4215 << ", " << xoffset
<< ", " << yoffset
<< ", " << width
<< ", "
4216 << height
<< ", " << GLEnums::GetStringEnum(format
) << ", "
4217 << GLEnums::GetStringEnum(type
) << ", "
4218 << static_cast<const void*>(pixels
) << ")");
4219 g_driver_gl
.debug_fn
.glTexSubImage2DFn(target
, level
, xoffset
, yoffset
, width
,
4220 height
, format
, type
, pixels
);
4223 static void GL_BINDING_CALL
Debug_glTexSubImage3D(GLenum target
,
4233 const void* pixels
) {
4234 GL_SERVICE_LOG("glTexSubImage3D"
4235 << "(" << GLEnums::GetStringEnum(target
) << ", " << level
4236 << ", " << xoffset
<< ", " << yoffset
<< ", " << zoffset
4237 << ", " << width
<< ", " << height
<< ", " << depth
<< ", "
4238 << GLEnums::GetStringEnum(format
) << ", "
4239 << GLEnums::GetStringEnum(type
) << ", "
4240 << static_cast<const void*>(pixels
) << ")");
4241 g_driver_gl
.debug_fn
.glTexSubImage3DFn(target
, level
, xoffset
, yoffset
,
4242 zoffset
, width
, height
, depth
, format
,
4246 static void GL_BINDING_CALL
4247 Debug_glTransformFeedbackVaryings(GLuint program
,
4249 const char* const* varyings
,
4250 GLenum bufferMode
) {
4251 GL_SERVICE_LOG("glTransformFeedbackVaryings"
4252 << "(" << program
<< ", " << count
<< ", "
4253 << static_cast<const void*>(varyings
) << ", "
4254 << GLEnums::GetStringEnum(bufferMode
) << ")");
4255 g_driver_gl
.debug_fn
.glTransformFeedbackVaryingsFn(program
, count
, varyings
,
4259 static void GL_BINDING_CALL
Debug_glUniform1f(GLint location
, GLfloat x
) {
4260 GL_SERVICE_LOG("glUniform1f"
4261 << "(" << location
<< ", " << x
<< ")");
4262 g_driver_gl
.debug_fn
.glUniform1fFn(location
, x
);
4265 static void GL_BINDING_CALL
4266 Debug_glUniform1fv(GLint location
, GLsizei count
, const GLfloat
* v
) {
4267 GL_SERVICE_LOG("glUniform1fv"
4268 << "(" << location
<< ", " << count
<< ", "
4269 << static_cast<const void*>(v
) << ")");
4270 g_driver_gl
.debug_fn
.glUniform1fvFn(location
, count
, v
);
4273 static void GL_BINDING_CALL
Debug_glUniform1i(GLint location
, GLint x
) {
4274 GL_SERVICE_LOG("glUniform1i"
4275 << "(" << location
<< ", " << x
<< ")");
4276 g_driver_gl
.debug_fn
.glUniform1iFn(location
, x
);
4279 static void GL_BINDING_CALL
4280 Debug_glUniform1iv(GLint location
, GLsizei count
, const GLint
* v
) {
4281 GL_SERVICE_LOG("glUniform1iv"
4282 << "(" << location
<< ", " << count
<< ", "
4283 << static_cast<const void*>(v
) << ")");
4284 g_driver_gl
.debug_fn
.glUniform1ivFn(location
, count
, v
);
4287 static void GL_BINDING_CALL
Debug_glUniform1ui(GLint location
, GLuint v0
) {
4288 GL_SERVICE_LOG("glUniform1ui"
4289 << "(" << location
<< ", " << v0
<< ")");
4290 g_driver_gl
.debug_fn
.glUniform1uiFn(location
, v0
);
4293 static void GL_BINDING_CALL
4294 Debug_glUniform1uiv(GLint location
, GLsizei count
, const GLuint
* v
) {
4295 GL_SERVICE_LOG("glUniform1uiv"
4296 << "(" << location
<< ", " << count
<< ", "
4297 << static_cast<const void*>(v
) << ")");
4298 g_driver_gl
.debug_fn
.glUniform1uivFn(location
, count
, v
);
4301 static void GL_BINDING_CALL
4302 Debug_glUniform2f(GLint location
, GLfloat x
, GLfloat y
) {
4303 GL_SERVICE_LOG("glUniform2f"
4304 << "(" << location
<< ", " << x
<< ", " << y
<< ")");
4305 g_driver_gl
.debug_fn
.glUniform2fFn(location
, x
, y
);
4308 static void GL_BINDING_CALL
4309 Debug_glUniform2fv(GLint location
, GLsizei count
, const GLfloat
* v
) {
4310 GL_SERVICE_LOG("glUniform2fv"
4311 << "(" << location
<< ", " << count
<< ", "
4312 << static_cast<const void*>(v
) << ")");
4313 g_driver_gl
.debug_fn
.glUniform2fvFn(location
, count
, v
);
4316 static void GL_BINDING_CALL
4317 Debug_glUniform2i(GLint location
, GLint x
, GLint y
) {
4318 GL_SERVICE_LOG("glUniform2i"
4319 << "(" << location
<< ", " << x
<< ", " << y
<< ")");
4320 g_driver_gl
.debug_fn
.glUniform2iFn(location
, x
, y
);
4323 static void GL_BINDING_CALL
4324 Debug_glUniform2iv(GLint location
, GLsizei count
, const GLint
* v
) {
4325 GL_SERVICE_LOG("glUniform2iv"
4326 << "(" << location
<< ", " << count
<< ", "
4327 << static_cast<const void*>(v
) << ")");
4328 g_driver_gl
.debug_fn
.glUniform2ivFn(location
, count
, v
);
4331 static void GL_BINDING_CALL
4332 Debug_glUniform2ui(GLint location
, GLuint v0
, GLuint v1
) {
4333 GL_SERVICE_LOG("glUniform2ui"
4334 << "(" << location
<< ", " << v0
<< ", " << v1
<< ")");
4335 g_driver_gl
.debug_fn
.glUniform2uiFn(location
, v0
, v1
);
4338 static void GL_BINDING_CALL
4339 Debug_glUniform2uiv(GLint location
, GLsizei count
, const GLuint
* v
) {
4340 GL_SERVICE_LOG("glUniform2uiv"
4341 << "(" << location
<< ", " << count
<< ", "
4342 << static_cast<const void*>(v
) << ")");
4343 g_driver_gl
.debug_fn
.glUniform2uivFn(location
, count
, v
);
4346 static void GL_BINDING_CALL
4347 Debug_glUniform3f(GLint location
, GLfloat x
, GLfloat y
, GLfloat z
) {
4348 GL_SERVICE_LOG("glUniform3f"
4349 << "(" << location
<< ", " << x
<< ", " << y
<< ", " << z
4351 g_driver_gl
.debug_fn
.glUniform3fFn(location
, x
, y
, z
);
4354 static void GL_BINDING_CALL
4355 Debug_glUniform3fv(GLint location
, GLsizei count
, const GLfloat
* v
) {
4356 GL_SERVICE_LOG("glUniform3fv"
4357 << "(" << location
<< ", " << count
<< ", "
4358 << static_cast<const void*>(v
) << ")");
4359 g_driver_gl
.debug_fn
.glUniform3fvFn(location
, count
, v
);
4362 static void GL_BINDING_CALL
4363 Debug_glUniform3i(GLint location
, GLint x
, GLint y
, GLint z
) {
4364 GL_SERVICE_LOG("glUniform3i"
4365 << "(" << location
<< ", " << x
<< ", " << y
<< ", " << z
4367 g_driver_gl
.debug_fn
.glUniform3iFn(location
, x
, y
, z
);
4370 static void GL_BINDING_CALL
4371 Debug_glUniform3iv(GLint location
, GLsizei count
, const GLint
* v
) {
4372 GL_SERVICE_LOG("glUniform3iv"
4373 << "(" << location
<< ", " << count
<< ", "
4374 << static_cast<const void*>(v
) << ")");
4375 g_driver_gl
.debug_fn
.glUniform3ivFn(location
, count
, v
);
4378 static void GL_BINDING_CALL
4379 Debug_glUniform3ui(GLint location
, GLuint v0
, GLuint v1
, GLuint v2
) {
4380 GL_SERVICE_LOG("glUniform3ui"
4381 << "(" << location
<< ", " << v0
<< ", " << v1
<< ", " << v2
4383 g_driver_gl
.debug_fn
.glUniform3uiFn(location
, v0
, v1
, v2
);
4386 static void GL_BINDING_CALL
4387 Debug_glUniform3uiv(GLint location
, GLsizei count
, const GLuint
* v
) {
4388 GL_SERVICE_LOG("glUniform3uiv"
4389 << "(" << location
<< ", " << count
<< ", "
4390 << static_cast<const void*>(v
) << ")");
4391 g_driver_gl
.debug_fn
.glUniform3uivFn(location
, count
, v
);
4394 static void GL_BINDING_CALL
4395 Debug_glUniform4f(GLint location
, GLfloat x
, GLfloat y
, GLfloat z
, GLfloat w
) {
4396 GL_SERVICE_LOG("glUniform4f"
4397 << "(" << location
<< ", " << x
<< ", " << y
<< ", " << z
4398 << ", " << w
<< ")");
4399 g_driver_gl
.debug_fn
.glUniform4fFn(location
, x
, y
, z
, w
);
4402 static void GL_BINDING_CALL
4403 Debug_glUniform4fv(GLint location
, GLsizei count
, const GLfloat
* v
) {
4404 GL_SERVICE_LOG("glUniform4fv"
4405 << "(" << location
<< ", " << count
<< ", "
4406 << static_cast<const void*>(v
) << ")");
4407 g_driver_gl
.debug_fn
.glUniform4fvFn(location
, count
, v
);
4410 static void GL_BINDING_CALL
4411 Debug_glUniform4i(GLint location
, GLint x
, GLint y
, GLint z
, GLint w
) {
4412 GL_SERVICE_LOG("glUniform4i"
4413 << "(" << location
<< ", " << x
<< ", " << y
<< ", " << z
4414 << ", " << w
<< ")");
4415 g_driver_gl
.debug_fn
.glUniform4iFn(location
, x
, y
, z
, w
);
4418 static void GL_BINDING_CALL
4419 Debug_glUniform4iv(GLint location
, GLsizei count
, const GLint
* v
) {
4420 GL_SERVICE_LOG("glUniform4iv"
4421 << "(" << location
<< ", " << count
<< ", "
4422 << static_cast<const void*>(v
) << ")");
4423 g_driver_gl
.debug_fn
.glUniform4ivFn(location
, count
, v
);
4426 static void GL_BINDING_CALL
4427 Debug_glUniform4ui(GLint location
, GLuint v0
, GLuint v1
, GLuint v2
, GLuint v3
) {
4428 GL_SERVICE_LOG("glUniform4ui"
4429 << "(" << location
<< ", " << v0
<< ", " << v1
<< ", " << v2
4430 << ", " << v3
<< ")");
4431 g_driver_gl
.debug_fn
.glUniform4uiFn(location
, v0
, v1
, v2
, v3
);
4434 static void GL_BINDING_CALL
4435 Debug_glUniform4uiv(GLint location
, GLsizei count
, const GLuint
* v
) {
4436 GL_SERVICE_LOG("glUniform4uiv"
4437 << "(" << location
<< ", " << count
<< ", "
4438 << static_cast<const void*>(v
) << ")");
4439 g_driver_gl
.debug_fn
.glUniform4uivFn(location
, count
, v
);
4442 static void GL_BINDING_CALL
4443 Debug_glUniformBlockBinding(GLuint program
,
4444 GLuint uniformBlockIndex
,
4445 GLuint uniformBlockBinding
) {
4446 GL_SERVICE_LOG("glUniformBlockBinding"
4447 << "(" << program
<< ", " << uniformBlockIndex
<< ", "
4448 << uniformBlockBinding
<< ")");
4449 g_driver_gl
.debug_fn
.glUniformBlockBindingFn(program
, uniformBlockIndex
,
4450 uniformBlockBinding
);
4453 static void GL_BINDING_CALL
Debug_glUniformMatrix2fv(GLint location
,
4455 GLboolean transpose
,
4456 const GLfloat
* value
) {
4457 GL_SERVICE_LOG("glUniformMatrix2fv"
4458 << "(" << location
<< ", " << count
<< ", "
4459 << GLEnums::GetStringBool(transpose
) << ", "
4460 << static_cast<const void*>(value
) << ")");
4461 g_driver_gl
.debug_fn
.glUniformMatrix2fvFn(location
, count
, transpose
, value
);
4464 static void GL_BINDING_CALL
Debug_glUniformMatrix2x3fv(GLint location
,
4466 GLboolean transpose
,
4467 const GLfloat
* value
) {
4468 GL_SERVICE_LOG("glUniformMatrix2x3fv"
4469 << "(" << location
<< ", " << count
<< ", "
4470 << GLEnums::GetStringBool(transpose
) << ", "
4471 << static_cast<const void*>(value
) << ")");
4472 g_driver_gl
.debug_fn
.glUniformMatrix2x3fvFn(location
, count
, transpose
,
4476 static void GL_BINDING_CALL
Debug_glUniformMatrix2x4fv(GLint location
,
4478 GLboolean transpose
,
4479 const GLfloat
* value
) {
4480 GL_SERVICE_LOG("glUniformMatrix2x4fv"
4481 << "(" << location
<< ", " << count
<< ", "
4482 << GLEnums::GetStringBool(transpose
) << ", "
4483 << static_cast<const void*>(value
) << ")");
4484 g_driver_gl
.debug_fn
.glUniformMatrix2x4fvFn(location
, count
, transpose
,
4488 static void GL_BINDING_CALL
Debug_glUniformMatrix3fv(GLint location
,
4490 GLboolean transpose
,
4491 const GLfloat
* value
) {
4492 GL_SERVICE_LOG("glUniformMatrix3fv"
4493 << "(" << location
<< ", " << count
<< ", "
4494 << GLEnums::GetStringBool(transpose
) << ", "
4495 << static_cast<const void*>(value
) << ")");
4496 g_driver_gl
.debug_fn
.glUniformMatrix3fvFn(location
, count
, transpose
, value
);
4499 static void GL_BINDING_CALL
Debug_glUniformMatrix3x2fv(GLint location
,
4501 GLboolean transpose
,
4502 const GLfloat
* value
) {
4503 GL_SERVICE_LOG("glUniformMatrix3x2fv"
4504 << "(" << location
<< ", " << count
<< ", "
4505 << GLEnums::GetStringBool(transpose
) << ", "
4506 << static_cast<const void*>(value
) << ")");
4507 g_driver_gl
.debug_fn
.glUniformMatrix3x2fvFn(location
, count
, transpose
,
4511 static void GL_BINDING_CALL
Debug_glUniformMatrix3x4fv(GLint location
,
4513 GLboolean transpose
,
4514 const GLfloat
* value
) {
4515 GL_SERVICE_LOG("glUniformMatrix3x4fv"
4516 << "(" << location
<< ", " << count
<< ", "
4517 << GLEnums::GetStringBool(transpose
) << ", "
4518 << static_cast<const void*>(value
) << ")");
4519 g_driver_gl
.debug_fn
.glUniformMatrix3x4fvFn(location
, count
, transpose
,
4523 static void GL_BINDING_CALL
Debug_glUniformMatrix4fv(GLint location
,
4525 GLboolean transpose
,
4526 const GLfloat
* value
) {
4527 GL_SERVICE_LOG("glUniformMatrix4fv"
4528 << "(" << location
<< ", " << count
<< ", "
4529 << GLEnums::GetStringBool(transpose
) << ", "
4530 << static_cast<const void*>(value
) << ")");
4531 g_driver_gl
.debug_fn
.glUniformMatrix4fvFn(location
, count
, transpose
, value
);
4534 static void GL_BINDING_CALL
Debug_glUniformMatrix4x2fv(GLint location
,
4536 GLboolean transpose
,
4537 const GLfloat
* value
) {
4538 GL_SERVICE_LOG("glUniformMatrix4x2fv"
4539 << "(" << location
<< ", " << count
<< ", "
4540 << GLEnums::GetStringBool(transpose
) << ", "
4541 << static_cast<const void*>(value
) << ")");
4542 g_driver_gl
.debug_fn
.glUniformMatrix4x2fvFn(location
, count
, transpose
,
4546 static void GL_BINDING_CALL
Debug_glUniformMatrix4x3fv(GLint location
,
4548 GLboolean transpose
,
4549 const GLfloat
* value
) {
4550 GL_SERVICE_LOG("glUniformMatrix4x3fv"
4551 << "(" << location
<< ", " << count
<< ", "
4552 << GLEnums::GetStringBool(transpose
) << ", "
4553 << static_cast<const void*>(value
) << ")");
4554 g_driver_gl
.debug_fn
.glUniformMatrix4x3fvFn(location
, count
, transpose
,
4558 static GLboolean GL_BINDING_CALL
Debug_glUnmapBuffer(GLenum target
) {
4559 GL_SERVICE_LOG("glUnmapBuffer"
4560 << "(" << GLEnums::GetStringEnum(target
) << ")");
4561 GLboolean result
= g_driver_gl
.debug_fn
.glUnmapBufferFn(target
);
4562 GL_SERVICE_LOG("GL_RESULT: " << result
);
4566 static void GL_BINDING_CALL
Debug_glUseProgram(GLuint program
) {
4567 GL_SERVICE_LOG("glUseProgram"
4568 << "(" << program
<< ")");
4569 g_driver_gl
.debug_fn
.glUseProgramFn(program
);
4572 static void GL_BINDING_CALL
Debug_glValidateProgram(GLuint program
) {
4573 GL_SERVICE_LOG("glValidateProgram"
4574 << "(" << program
<< ")");
4575 g_driver_gl
.debug_fn
.glValidateProgramFn(program
);
4578 static void GL_BINDING_CALL
Debug_glVertexAttrib1f(GLuint indx
, GLfloat x
) {
4579 GL_SERVICE_LOG("glVertexAttrib1f"
4580 << "(" << indx
<< ", " << x
<< ")");
4581 g_driver_gl
.debug_fn
.glVertexAttrib1fFn(indx
, x
);
4584 static void GL_BINDING_CALL
4585 Debug_glVertexAttrib1fv(GLuint indx
, const GLfloat
* values
) {
4586 GL_SERVICE_LOG("glVertexAttrib1fv"
4587 << "(" << indx
<< ", " << static_cast<const void*>(values
)
4589 g_driver_gl
.debug_fn
.glVertexAttrib1fvFn(indx
, values
);
4592 static void GL_BINDING_CALL
4593 Debug_glVertexAttrib2f(GLuint indx
, GLfloat x
, GLfloat y
) {
4594 GL_SERVICE_LOG("glVertexAttrib2f"
4595 << "(" << indx
<< ", " << x
<< ", " << y
<< ")");
4596 g_driver_gl
.debug_fn
.glVertexAttrib2fFn(indx
, x
, y
);
4599 static void GL_BINDING_CALL
4600 Debug_glVertexAttrib2fv(GLuint indx
, const GLfloat
* values
) {
4601 GL_SERVICE_LOG("glVertexAttrib2fv"
4602 << "(" << indx
<< ", " << static_cast<const void*>(values
)
4604 g_driver_gl
.debug_fn
.glVertexAttrib2fvFn(indx
, values
);
4607 static void GL_BINDING_CALL
4608 Debug_glVertexAttrib3f(GLuint indx
, GLfloat x
, GLfloat y
, GLfloat z
) {
4609 GL_SERVICE_LOG("glVertexAttrib3f"
4610 << "(" << indx
<< ", " << x
<< ", " << y
<< ", " << z
<< ")");
4611 g_driver_gl
.debug_fn
.glVertexAttrib3fFn(indx
, x
, y
, z
);
4614 static void GL_BINDING_CALL
4615 Debug_glVertexAttrib3fv(GLuint indx
, const GLfloat
* values
) {
4616 GL_SERVICE_LOG("glVertexAttrib3fv"
4617 << "(" << indx
<< ", " << static_cast<const void*>(values
)
4619 g_driver_gl
.debug_fn
.glVertexAttrib3fvFn(indx
, values
);
4622 static void GL_BINDING_CALL
Debug_glVertexAttrib4f(GLuint indx
,
4627 GL_SERVICE_LOG("glVertexAttrib4f"
4628 << "(" << indx
<< ", " << x
<< ", " << y
<< ", " << z
<< ", "
4630 g_driver_gl
.debug_fn
.glVertexAttrib4fFn(indx
, x
, y
, z
, w
);
4633 static void GL_BINDING_CALL
4634 Debug_glVertexAttrib4fv(GLuint indx
, const GLfloat
* values
) {
4635 GL_SERVICE_LOG("glVertexAttrib4fv"
4636 << "(" << indx
<< ", " << static_cast<const void*>(values
)
4638 g_driver_gl
.debug_fn
.glVertexAttrib4fvFn(indx
, values
);
4641 static void GL_BINDING_CALL
4642 Debug_glVertexAttribDivisorANGLE(GLuint index
, GLuint divisor
) {
4643 GL_SERVICE_LOG("glVertexAttribDivisorANGLE"
4644 << "(" << index
<< ", " << divisor
<< ")");
4645 g_driver_gl
.debug_fn
.glVertexAttribDivisorANGLEFn(index
, divisor
);
4648 static void GL_BINDING_CALL
4649 Debug_glVertexAttribI4i(GLuint indx
, GLint x
, GLint y
, GLint z
, GLint w
) {
4650 GL_SERVICE_LOG("glVertexAttribI4i"
4651 << "(" << indx
<< ", " << x
<< ", " << y
<< ", " << z
<< ", "
4653 g_driver_gl
.debug_fn
.glVertexAttribI4iFn(indx
, x
, y
, z
, w
);
4656 static void GL_BINDING_CALL
4657 Debug_glVertexAttribI4iv(GLuint indx
, const GLint
* values
) {
4658 GL_SERVICE_LOG("glVertexAttribI4iv"
4659 << "(" << indx
<< ", " << static_cast<const void*>(values
)
4661 g_driver_gl
.debug_fn
.glVertexAttribI4ivFn(indx
, values
);
4664 static void GL_BINDING_CALL
4665 Debug_glVertexAttribI4ui(GLuint indx
, GLuint x
, GLuint y
, GLuint z
, GLuint w
) {
4666 GL_SERVICE_LOG("glVertexAttribI4ui"
4667 << "(" << indx
<< ", " << x
<< ", " << y
<< ", " << z
<< ", "
4669 g_driver_gl
.debug_fn
.glVertexAttribI4uiFn(indx
, x
, y
, z
, w
);
4672 static void GL_BINDING_CALL
4673 Debug_glVertexAttribI4uiv(GLuint indx
, const GLuint
* values
) {
4674 GL_SERVICE_LOG("glVertexAttribI4uiv"
4675 << "(" << indx
<< ", " << static_cast<const void*>(values
)
4677 g_driver_gl
.debug_fn
.glVertexAttribI4uivFn(indx
, values
);
4680 static void GL_BINDING_CALL
Debug_glVertexAttribIPointer(GLuint indx
,
4685 GL_SERVICE_LOG("glVertexAttribIPointer"
4686 << "(" << indx
<< ", " << size
<< ", "
4687 << GLEnums::GetStringEnum(type
) << ", " << stride
<< ", "
4688 << static_cast<const void*>(ptr
) << ")");
4689 g_driver_gl
.debug_fn
.glVertexAttribIPointerFn(indx
, size
, type
, stride
, ptr
);
4692 static void GL_BINDING_CALL
Debug_glVertexAttribPointer(GLuint indx
,
4695 GLboolean normalized
,
4698 GL_SERVICE_LOG("glVertexAttribPointer"
4699 << "(" << indx
<< ", " << size
<< ", "
4700 << GLEnums::GetStringEnum(type
) << ", "
4701 << GLEnums::GetStringBool(normalized
) << ", " << stride
<< ", "
4702 << static_cast<const void*>(ptr
) << ")");
4703 g_driver_gl
.debug_fn
.glVertexAttribPointerFn(indx
, size
, type
, normalized
,
4707 static void GL_BINDING_CALL
4708 Debug_glViewport(GLint x
, GLint y
, GLsizei width
, GLsizei height
) {
4709 GL_SERVICE_LOG("glViewport"
4710 << "(" << x
<< ", " << y
<< ", " << width
<< ", " << height
4712 g_driver_gl
.debug_fn
.glViewportFn(x
, y
, width
, height
);
4715 static GLenum GL_BINDING_CALL
4716 Debug_glWaitSync(GLsync sync
, GLbitfield flags
, GLuint64 timeout
) {
4717 GL_SERVICE_LOG("glWaitSync"
4718 << "(" << sync
<< ", " << flags
<< ", " << timeout
<< ")");
4719 GLenum result
= g_driver_gl
.debug_fn
.glWaitSyncFn(sync
, flags
, timeout
);
4720 GL_SERVICE_LOG("GL_RESULT: " << result
);
4725 void DriverGL::InitializeDebugBindings() {
4726 if (!debug_fn
.glActiveTextureFn
) {
4727 debug_fn
.glActiveTextureFn
= fn
.glActiveTextureFn
;
4728 fn
.glActiveTextureFn
= Debug_glActiveTexture
;
4730 if (!debug_fn
.glAttachShaderFn
) {
4731 debug_fn
.glAttachShaderFn
= fn
.glAttachShaderFn
;
4732 fn
.glAttachShaderFn
= Debug_glAttachShader
;
4734 if (!debug_fn
.glBeginQueryFn
) {
4735 debug_fn
.glBeginQueryFn
= fn
.glBeginQueryFn
;
4736 fn
.glBeginQueryFn
= Debug_glBeginQuery
;
4738 if (!debug_fn
.glBeginTransformFeedbackFn
) {
4739 debug_fn
.glBeginTransformFeedbackFn
= fn
.glBeginTransformFeedbackFn
;
4740 fn
.glBeginTransformFeedbackFn
= Debug_glBeginTransformFeedback
;
4742 if (!debug_fn
.glBindAttribLocationFn
) {
4743 debug_fn
.glBindAttribLocationFn
= fn
.glBindAttribLocationFn
;
4744 fn
.glBindAttribLocationFn
= Debug_glBindAttribLocation
;
4746 if (!debug_fn
.glBindBufferFn
) {
4747 debug_fn
.glBindBufferFn
= fn
.glBindBufferFn
;
4748 fn
.glBindBufferFn
= Debug_glBindBuffer
;
4750 if (!debug_fn
.glBindBufferBaseFn
) {
4751 debug_fn
.glBindBufferBaseFn
= fn
.glBindBufferBaseFn
;
4752 fn
.glBindBufferBaseFn
= Debug_glBindBufferBase
;
4754 if (!debug_fn
.glBindBufferRangeFn
) {
4755 debug_fn
.glBindBufferRangeFn
= fn
.glBindBufferRangeFn
;
4756 fn
.glBindBufferRangeFn
= Debug_glBindBufferRange
;
4758 if (!debug_fn
.glBindFragDataLocationFn
) {
4759 debug_fn
.glBindFragDataLocationFn
= fn
.glBindFragDataLocationFn
;
4760 fn
.glBindFragDataLocationFn
= Debug_glBindFragDataLocation
;
4762 if (!debug_fn
.glBindFragDataLocationIndexedFn
) {
4763 debug_fn
.glBindFragDataLocationIndexedFn
=
4764 fn
.glBindFragDataLocationIndexedFn
;
4765 fn
.glBindFragDataLocationIndexedFn
= Debug_glBindFragDataLocationIndexed
;
4767 if (!debug_fn
.glBindFramebufferEXTFn
) {
4768 debug_fn
.glBindFramebufferEXTFn
= fn
.glBindFramebufferEXTFn
;
4769 fn
.glBindFramebufferEXTFn
= Debug_glBindFramebufferEXT
;
4771 if (!debug_fn
.glBindRenderbufferEXTFn
) {
4772 debug_fn
.glBindRenderbufferEXTFn
= fn
.glBindRenderbufferEXTFn
;
4773 fn
.glBindRenderbufferEXTFn
= Debug_glBindRenderbufferEXT
;
4775 if (!debug_fn
.glBindSamplerFn
) {
4776 debug_fn
.glBindSamplerFn
= fn
.glBindSamplerFn
;
4777 fn
.glBindSamplerFn
= Debug_glBindSampler
;
4779 if (!debug_fn
.glBindTextureFn
) {
4780 debug_fn
.glBindTextureFn
= fn
.glBindTextureFn
;
4781 fn
.glBindTextureFn
= Debug_glBindTexture
;
4783 if (!debug_fn
.glBindTransformFeedbackFn
) {
4784 debug_fn
.glBindTransformFeedbackFn
= fn
.glBindTransformFeedbackFn
;
4785 fn
.glBindTransformFeedbackFn
= Debug_glBindTransformFeedback
;
4787 if (!debug_fn
.glBindVertexArrayOESFn
) {
4788 debug_fn
.glBindVertexArrayOESFn
= fn
.glBindVertexArrayOESFn
;
4789 fn
.glBindVertexArrayOESFn
= Debug_glBindVertexArrayOES
;
4791 if (!debug_fn
.glBlendBarrierKHRFn
) {
4792 debug_fn
.glBlendBarrierKHRFn
= fn
.glBlendBarrierKHRFn
;
4793 fn
.glBlendBarrierKHRFn
= Debug_glBlendBarrierKHR
;
4795 if (!debug_fn
.glBlendColorFn
) {
4796 debug_fn
.glBlendColorFn
= fn
.glBlendColorFn
;
4797 fn
.glBlendColorFn
= Debug_glBlendColor
;
4799 if (!debug_fn
.glBlendEquationFn
) {
4800 debug_fn
.glBlendEquationFn
= fn
.glBlendEquationFn
;
4801 fn
.glBlendEquationFn
= Debug_glBlendEquation
;
4803 if (!debug_fn
.glBlendEquationSeparateFn
) {
4804 debug_fn
.glBlendEquationSeparateFn
= fn
.glBlendEquationSeparateFn
;
4805 fn
.glBlendEquationSeparateFn
= Debug_glBlendEquationSeparate
;
4807 if (!debug_fn
.glBlendFuncFn
) {
4808 debug_fn
.glBlendFuncFn
= fn
.glBlendFuncFn
;
4809 fn
.glBlendFuncFn
= Debug_glBlendFunc
;
4811 if (!debug_fn
.glBlendFuncSeparateFn
) {
4812 debug_fn
.glBlendFuncSeparateFn
= fn
.glBlendFuncSeparateFn
;
4813 fn
.glBlendFuncSeparateFn
= Debug_glBlendFuncSeparate
;
4815 if (!debug_fn
.glBlitFramebufferFn
) {
4816 debug_fn
.glBlitFramebufferFn
= fn
.glBlitFramebufferFn
;
4817 fn
.glBlitFramebufferFn
= Debug_glBlitFramebuffer
;
4819 if (!debug_fn
.glBlitFramebufferANGLEFn
) {
4820 debug_fn
.glBlitFramebufferANGLEFn
= fn
.glBlitFramebufferANGLEFn
;
4821 fn
.glBlitFramebufferANGLEFn
= Debug_glBlitFramebufferANGLE
;
4823 if (!debug_fn
.glBlitFramebufferEXTFn
) {
4824 debug_fn
.glBlitFramebufferEXTFn
= fn
.glBlitFramebufferEXTFn
;
4825 fn
.glBlitFramebufferEXTFn
= Debug_glBlitFramebufferEXT
;
4827 if (!debug_fn
.glBufferDataFn
) {
4828 debug_fn
.glBufferDataFn
= fn
.glBufferDataFn
;
4829 fn
.glBufferDataFn
= Debug_glBufferData
;
4831 if (!debug_fn
.glBufferSubDataFn
) {
4832 debug_fn
.glBufferSubDataFn
= fn
.glBufferSubDataFn
;
4833 fn
.glBufferSubDataFn
= Debug_glBufferSubData
;
4835 if (!debug_fn
.glCheckFramebufferStatusEXTFn
) {
4836 debug_fn
.glCheckFramebufferStatusEXTFn
= fn
.glCheckFramebufferStatusEXTFn
;
4837 fn
.glCheckFramebufferStatusEXTFn
= Debug_glCheckFramebufferStatusEXT
;
4839 if (!debug_fn
.glClearFn
) {
4840 debug_fn
.glClearFn
= fn
.glClearFn
;
4841 fn
.glClearFn
= Debug_glClear
;
4843 if (!debug_fn
.glClearBufferfiFn
) {
4844 debug_fn
.glClearBufferfiFn
= fn
.glClearBufferfiFn
;
4845 fn
.glClearBufferfiFn
= Debug_glClearBufferfi
;
4847 if (!debug_fn
.glClearBufferfvFn
) {
4848 debug_fn
.glClearBufferfvFn
= fn
.glClearBufferfvFn
;
4849 fn
.glClearBufferfvFn
= Debug_glClearBufferfv
;
4851 if (!debug_fn
.glClearBufferivFn
) {
4852 debug_fn
.glClearBufferivFn
= fn
.glClearBufferivFn
;
4853 fn
.glClearBufferivFn
= Debug_glClearBufferiv
;
4855 if (!debug_fn
.glClearBufferuivFn
) {
4856 debug_fn
.glClearBufferuivFn
= fn
.glClearBufferuivFn
;
4857 fn
.glClearBufferuivFn
= Debug_glClearBufferuiv
;
4859 if (!debug_fn
.glClearColorFn
) {
4860 debug_fn
.glClearColorFn
= fn
.glClearColorFn
;
4861 fn
.glClearColorFn
= Debug_glClearColor
;
4863 if (!debug_fn
.glClearDepthFn
) {
4864 debug_fn
.glClearDepthFn
= fn
.glClearDepthFn
;
4865 fn
.glClearDepthFn
= Debug_glClearDepth
;
4867 if (!debug_fn
.glClearDepthfFn
) {
4868 debug_fn
.glClearDepthfFn
= fn
.glClearDepthfFn
;
4869 fn
.glClearDepthfFn
= Debug_glClearDepthf
;
4871 if (!debug_fn
.glClearStencilFn
) {
4872 debug_fn
.glClearStencilFn
= fn
.glClearStencilFn
;
4873 fn
.glClearStencilFn
= Debug_glClearStencil
;
4875 if (!debug_fn
.glClientWaitSyncFn
) {
4876 debug_fn
.glClientWaitSyncFn
= fn
.glClientWaitSyncFn
;
4877 fn
.glClientWaitSyncFn
= Debug_glClientWaitSync
;
4879 if (!debug_fn
.glColorMaskFn
) {
4880 debug_fn
.glColorMaskFn
= fn
.glColorMaskFn
;
4881 fn
.glColorMaskFn
= Debug_glColorMask
;
4883 if (!debug_fn
.glCompileShaderFn
) {
4884 debug_fn
.glCompileShaderFn
= fn
.glCompileShaderFn
;
4885 fn
.glCompileShaderFn
= Debug_glCompileShader
;
4887 if (!debug_fn
.glCompressedTexImage2DFn
) {
4888 debug_fn
.glCompressedTexImage2DFn
= fn
.glCompressedTexImage2DFn
;
4889 fn
.glCompressedTexImage2DFn
= Debug_glCompressedTexImage2D
;
4891 if (!debug_fn
.glCompressedTexImage3DFn
) {
4892 debug_fn
.glCompressedTexImage3DFn
= fn
.glCompressedTexImage3DFn
;
4893 fn
.glCompressedTexImage3DFn
= Debug_glCompressedTexImage3D
;
4895 if (!debug_fn
.glCompressedTexSubImage2DFn
) {
4896 debug_fn
.glCompressedTexSubImage2DFn
= fn
.glCompressedTexSubImage2DFn
;
4897 fn
.glCompressedTexSubImage2DFn
= Debug_glCompressedTexSubImage2D
;
4899 if (!debug_fn
.glCompressedTexSubImage3DFn
) {
4900 debug_fn
.glCompressedTexSubImage3DFn
= fn
.glCompressedTexSubImage3DFn
;
4901 fn
.glCompressedTexSubImage3DFn
= Debug_glCompressedTexSubImage3D
;
4903 if (!debug_fn
.glCopyBufferSubDataFn
) {
4904 debug_fn
.glCopyBufferSubDataFn
= fn
.glCopyBufferSubDataFn
;
4905 fn
.glCopyBufferSubDataFn
= Debug_glCopyBufferSubData
;
4907 if (!debug_fn
.glCopyTexImage2DFn
) {
4908 debug_fn
.glCopyTexImage2DFn
= fn
.glCopyTexImage2DFn
;
4909 fn
.glCopyTexImage2DFn
= Debug_glCopyTexImage2D
;
4911 if (!debug_fn
.glCopyTexSubImage2DFn
) {
4912 debug_fn
.glCopyTexSubImage2DFn
= fn
.glCopyTexSubImage2DFn
;
4913 fn
.glCopyTexSubImage2DFn
= Debug_glCopyTexSubImage2D
;
4915 if (!debug_fn
.glCopyTexSubImage3DFn
) {
4916 debug_fn
.glCopyTexSubImage3DFn
= fn
.glCopyTexSubImage3DFn
;
4917 fn
.glCopyTexSubImage3DFn
= Debug_glCopyTexSubImage3D
;
4919 if (!debug_fn
.glCreateProgramFn
) {
4920 debug_fn
.glCreateProgramFn
= fn
.glCreateProgramFn
;
4921 fn
.glCreateProgramFn
= Debug_glCreateProgram
;
4923 if (!debug_fn
.glCreateShaderFn
) {
4924 debug_fn
.glCreateShaderFn
= fn
.glCreateShaderFn
;
4925 fn
.glCreateShaderFn
= Debug_glCreateShader
;
4927 if (!debug_fn
.glCullFaceFn
) {
4928 debug_fn
.glCullFaceFn
= fn
.glCullFaceFn
;
4929 fn
.glCullFaceFn
= Debug_glCullFace
;
4931 if (!debug_fn
.glDeleteBuffersARBFn
) {
4932 debug_fn
.glDeleteBuffersARBFn
= fn
.glDeleteBuffersARBFn
;
4933 fn
.glDeleteBuffersARBFn
= Debug_glDeleteBuffersARB
;
4935 if (!debug_fn
.glDeleteFencesAPPLEFn
) {
4936 debug_fn
.glDeleteFencesAPPLEFn
= fn
.glDeleteFencesAPPLEFn
;
4937 fn
.glDeleteFencesAPPLEFn
= Debug_glDeleteFencesAPPLE
;
4939 if (!debug_fn
.glDeleteFencesNVFn
) {
4940 debug_fn
.glDeleteFencesNVFn
= fn
.glDeleteFencesNVFn
;
4941 fn
.glDeleteFencesNVFn
= Debug_glDeleteFencesNV
;
4943 if (!debug_fn
.glDeleteFramebuffersEXTFn
) {
4944 debug_fn
.glDeleteFramebuffersEXTFn
= fn
.glDeleteFramebuffersEXTFn
;
4945 fn
.glDeleteFramebuffersEXTFn
= Debug_glDeleteFramebuffersEXT
;
4947 if (!debug_fn
.glDeleteProgramFn
) {
4948 debug_fn
.glDeleteProgramFn
= fn
.glDeleteProgramFn
;
4949 fn
.glDeleteProgramFn
= Debug_glDeleteProgram
;
4951 if (!debug_fn
.glDeleteQueriesFn
) {
4952 debug_fn
.glDeleteQueriesFn
= fn
.glDeleteQueriesFn
;
4953 fn
.glDeleteQueriesFn
= Debug_glDeleteQueries
;
4955 if (!debug_fn
.glDeleteRenderbuffersEXTFn
) {
4956 debug_fn
.glDeleteRenderbuffersEXTFn
= fn
.glDeleteRenderbuffersEXTFn
;
4957 fn
.glDeleteRenderbuffersEXTFn
= Debug_glDeleteRenderbuffersEXT
;
4959 if (!debug_fn
.glDeleteSamplersFn
) {
4960 debug_fn
.glDeleteSamplersFn
= fn
.glDeleteSamplersFn
;
4961 fn
.glDeleteSamplersFn
= Debug_glDeleteSamplers
;
4963 if (!debug_fn
.glDeleteShaderFn
) {
4964 debug_fn
.glDeleteShaderFn
= fn
.glDeleteShaderFn
;
4965 fn
.glDeleteShaderFn
= Debug_glDeleteShader
;
4967 if (!debug_fn
.glDeleteSyncFn
) {
4968 debug_fn
.glDeleteSyncFn
= fn
.glDeleteSyncFn
;
4969 fn
.glDeleteSyncFn
= Debug_glDeleteSync
;
4971 if (!debug_fn
.glDeleteTexturesFn
) {
4972 debug_fn
.glDeleteTexturesFn
= fn
.glDeleteTexturesFn
;
4973 fn
.glDeleteTexturesFn
= Debug_glDeleteTextures
;
4975 if (!debug_fn
.glDeleteTransformFeedbacksFn
) {
4976 debug_fn
.glDeleteTransformFeedbacksFn
= fn
.glDeleteTransformFeedbacksFn
;
4977 fn
.glDeleteTransformFeedbacksFn
= Debug_glDeleteTransformFeedbacks
;
4979 if (!debug_fn
.glDeleteVertexArraysOESFn
) {
4980 debug_fn
.glDeleteVertexArraysOESFn
= fn
.glDeleteVertexArraysOESFn
;
4981 fn
.glDeleteVertexArraysOESFn
= Debug_glDeleteVertexArraysOES
;
4983 if (!debug_fn
.glDepthFuncFn
) {
4984 debug_fn
.glDepthFuncFn
= fn
.glDepthFuncFn
;
4985 fn
.glDepthFuncFn
= Debug_glDepthFunc
;
4987 if (!debug_fn
.glDepthMaskFn
) {
4988 debug_fn
.glDepthMaskFn
= fn
.glDepthMaskFn
;
4989 fn
.glDepthMaskFn
= Debug_glDepthMask
;
4991 if (!debug_fn
.glDepthRangeFn
) {
4992 debug_fn
.glDepthRangeFn
= fn
.glDepthRangeFn
;
4993 fn
.glDepthRangeFn
= Debug_glDepthRange
;
4995 if (!debug_fn
.glDepthRangefFn
) {
4996 debug_fn
.glDepthRangefFn
= fn
.glDepthRangefFn
;
4997 fn
.glDepthRangefFn
= Debug_glDepthRangef
;
4999 if (!debug_fn
.glDetachShaderFn
) {
5000 debug_fn
.glDetachShaderFn
= fn
.glDetachShaderFn
;
5001 fn
.glDetachShaderFn
= Debug_glDetachShader
;
5003 if (!debug_fn
.glDisableFn
) {
5004 debug_fn
.glDisableFn
= fn
.glDisableFn
;
5005 fn
.glDisableFn
= Debug_glDisable
;
5007 if (!debug_fn
.glDisableVertexAttribArrayFn
) {
5008 debug_fn
.glDisableVertexAttribArrayFn
= fn
.glDisableVertexAttribArrayFn
;
5009 fn
.glDisableVertexAttribArrayFn
= Debug_glDisableVertexAttribArray
;
5011 if (!debug_fn
.glDiscardFramebufferEXTFn
) {
5012 debug_fn
.glDiscardFramebufferEXTFn
= fn
.glDiscardFramebufferEXTFn
;
5013 fn
.glDiscardFramebufferEXTFn
= Debug_glDiscardFramebufferEXT
;
5015 if (!debug_fn
.glDrawArraysFn
) {
5016 debug_fn
.glDrawArraysFn
= fn
.glDrawArraysFn
;
5017 fn
.glDrawArraysFn
= Debug_glDrawArrays
;
5019 if (!debug_fn
.glDrawArraysInstancedANGLEFn
) {
5020 debug_fn
.glDrawArraysInstancedANGLEFn
= fn
.glDrawArraysInstancedANGLEFn
;
5021 fn
.glDrawArraysInstancedANGLEFn
= Debug_glDrawArraysInstancedANGLE
;
5023 if (!debug_fn
.glDrawBufferFn
) {
5024 debug_fn
.glDrawBufferFn
= fn
.glDrawBufferFn
;
5025 fn
.glDrawBufferFn
= Debug_glDrawBuffer
;
5027 if (!debug_fn
.glDrawBuffersARBFn
) {
5028 debug_fn
.glDrawBuffersARBFn
= fn
.glDrawBuffersARBFn
;
5029 fn
.glDrawBuffersARBFn
= Debug_glDrawBuffersARB
;
5031 if (!debug_fn
.glDrawElementsFn
) {
5032 debug_fn
.glDrawElementsFn
= fn
.glDrawElementsFn
;
5033 fn
.glDrawElementsFn
= Debug_glDrawElements
;
5035 if (!debug_fn
.glDrawElementsInstancedANGLEFn
) {
5036 debug_fn
.glDrawElementsInstancedANGLEFn
= fn
.glDrawElementsInstancedANGLEFn
;
5037 fn
.glDrawElementsInstancedANGLEFn
= Debug_glDrawElementsInstancedANGLE
;
5039 if (!debug_fn
.glDrawRangeElementsFn
) {
5040 debug_fn
.glDrawRangeElementsFn
= fn
.glDrawRangeElementsFn
;
5041 fn
.glDrawRangeElementsFn
= Debug_glDrawRangeElements
;
5043 if (!debug_fn
.glEGLImageTargetRenderbufferStorageOESFn
) {
5044 debug_fn
.glEGLImageTargetRenderbufferStorageOESFn
=
5045 fn
.glEGLImageTargetRenderbufferStorageOESFn
;
5046 fn
.glEGLImageTargetRenderbufferStorageOESFn
=
5047 Debug_glEGLImageTargetRenderbufferStorageOES
;
5049 if (!debug_fn
.glEGLImageTargetTexture2DOESFn
) {
5050 debug_fn
.glEGLImageTargetTexture2DOESFn
= fn
.glEGLImageTargetTexture2DOESFn
;
5051 fn
.glEGLImageTargetTexture2DOESFn
= Debug_glEGLImageTargetTexture2DOES
;
5053 if (!debug_fn
.glEnableFn
) {
5054 debug_fn
.glEnableFn
= fn
.glEnableFn
;
5055 fn
.glEnableFn
= Debug_glEnable
;
5057 if (!debug_fn
.glEnableVertexAttribArrayFn
) {
5058 debug_fn
.glEnableVertexAttribArrayFn
= fn
.glEnableVertexAttribArrayFn
;
5059 fn
.glEnableVertexAttribArrayFn
= Debug_glEnableVertexAttribArray
;
5061 if (!debug_fn
.glEndQueryFn
) {
5062 debug_fn
.glEndQueryFn
= fn
.glEndQueryFn
;
5063 fn
.glEndQueryFn
= Debug_glEndQuery
;
5065 if (!debug_fn
.glEndTransformFeedbackFn
) {
5066 debug_fn
.glEndTransformFeedbackFn
= fn
.glEndTransformFeedbackFn
;
5067 fn
.glEndTransformFeedbackFn
= Debug_glEndTransformFeedback
;
5069 if (!debug_fn
.glFenceSyncFn
) {
5070 debug_fn
.glFenceSyncFn
= fn
.glFenceSyncFn
;
5071 fn
.glFenceSyncFn
= Debug_glFenceSync
;
5073 if (!debug_fn
.glFinishFn
) {
5074 debug_fn
.glFinishFn
= fn
.glFinishFn
;
5075 fn
.glFinishFn
= Debug_glFinish
;
5077 if (!debug_fn
.glFinishFenceAPPLEFn
) {
5078 debug_fn
.glFinishFenceAPPLEFn
= fn
.glFinishFenceAPPLEFn
;
5079 fn
.glFinishFenceAPPLEFn
= Debug_glFinishFenceAPPLE
;
5081 if (!debug_fn
.glFinishFenceNVFn
) {
5082 debug_fn
.glFinishFenceNVFn
= fn
.glFinishFenceNVFn
;
5083 fn
.glFinishFenceNVFn
= Debug_glFinishFenceNV
;
5085 if (!debug_fn
.glFlushFn
) {
5086 debug_fn
.glFlushFn
= fn
.glFlushFn
;
5087 fn
.glFlushFn
= Debug_glFlush
;
5089 if (!debug_fn
.glFlushMappedBufferRangeFn
) {
5090 debug_fn
.glFlushMappedBufferRangeFn
= fn
.glFlushMappedBufferRangeFn
;
5091 fn
.glFlushMappedBufferRangeFn
= Debug_glFlushMappedBufferRange
;
5093 if (!debug_fn
.glFramebufferRenderbufferEXTFn
) {
5094 debug_fn
.glFramebufferRenderbufferEXTFn
= fn
.glFramebufferRenderbufferEXTFn
;
5095 fn
.glFramebufferRenderbufferEXTFn
= Debug_glFramebufferRenderbufferEXT
;
5097 if (!debug_fn
.glFramebufferTexture2DEXTFn
) {
5098 debug_fn
.glFramebufferTexture2DEXTFn
= fn
.glFramebufferTexture2DEXTFn
;
5099 fn
.glFramebufferTexture2DEXTFn
= Debug_glFramebufferTexture2DEXT
;
5101 if (!debug_fn
.glFramebufferTexture2DMultisampleEXTFn
) {
5102 debug_fn
.glFramebufferTexture2DMultisampleEXTFn
=
5103 fn
.glFramebufferTexture2DMultisampleEXTFn
;
5104 fn
.glFramebufferTexture2DMultisampleEXTFn
=
5105 Debug_glFramebufferTexture2DMultisampleEXT
;
5107 if (!debug_fn
.glFramebufferTexture2DMultisampleIMGFn
) {
5108 debug_fn
.glFramebufferTexture2DMultisampleIMGFn
=
5109 fn
.glFramebufferTexture2DMultisampleIMGFn
;
5110 fn
.glFramebufferTexture2DMultisampleIMGFn
=
5111 Debug_glFramebufferTexture2DMultisampleIMG
;
5113 if (!debug_fn
.glFramebufferTextureLayerFn
) {
5114 debug_fn
.glFramebufferTextureLayerFn
= fn
.glFramebufferTextureLayerFn
;
5115 fn
.glFramebufferTextureLayerFn
= Debug_glFramebufferTextureLayer
;
5117 if (!debug_fn
.glFrontFaceFn
) {
5118 debug_fn
.glFrontFaceFn
= fn
.glFrontFaceFn
;
5119 fn
.glFrontFaceFn
= Debug_glFrontFace
;
5121 if (!debug_fn
.glGenBuffersARBFn
) {
5122 debug_fn
.glGenBuffersARBFn
= fn
.glGenBuffersARBFn
;
5123 fn
.glGenBuffersARBFn
= Debug_glGenBuffersARB
;
5125 if (!debug_fn
.glGenerateMipmapEXTFn
) {
5126 debug_fn
.glGenerateMipmapEXTFn
= fn
.glGenerateMipmapEXTFn
;
5127 fn
.glGenerateMipmapEXTFn
= Debug_glGenerateMipmapEXT
;
5129 if (!debug_fn
.glGenFencesAPPLEFn
) {
5130 debug_fn
.glGenFencesAPPLEFn
= fn
.glGenFencesAPPLEFn
;
5131 fn
.glGenFencesAPPLEFn
= Debug_glGenFencesAPPLE
;
5133 if (!debug_fn
.glGenFencesNVFn
) {
5134 debug_fn
.glGenFencesNVFn
= fn
.glGenFencesNVFn
;
5135 fn
.glGenFencesNVFn
= Debug_glGenFencesNV
;
5137 if (!debug_fn
.glGenFramebuffersEXTFn
) {
5138 debug_fn
.glGenFramebuffersEXTFn
= fn
.glGenFramebuffersEXTFn
;
5139 fn
.glGenFramebuffersEXTFn
= Debug_glGenFramebuffersEXT
;
5141 if (!debug_fn
.glGenQueriesFn
) {
5142 debug_fn
.glGenQueriesFn
= fn
.glGenQueriesFn
;
5143 fn
.glGenQueriesFn
= Debug_glGenQueries
;
5145 if (!debug_fn
.glGenRenderbuffersEXTFn
) {
5146 debug_fn
.glGenRenderbuffersEXTFn
= fn
.glGenRenderbuffersEXTFn
;
5147 fn
.glGenRenderbuffersEXTFn
= Debug_glGenRenderbuffersEXT
;
5149 if (!debug_fn
.glGenSamplersFn
) {
5150 debug_fn
.glGenSamplersFn
= fn
.glGenSamplersFn
;
5151 fn
.glGenSamplersFn
= Debug_glGenSamplers
;
5153 if (!debug_fn
.glGenTexturesFn
) {
5154 debug_fn
.glGenTexturesFn
= fn
.glGenTexturesFn
;
5155 fn
.glGenTexturesFn
= Debug_glGenTextures
;
5157 if (!debug_fn
.glGenTransformFeedbacksFn
) {
5158 debug_fn
.glGenTransformFeedbacksFn
= fn
.glGenTransformFeedbacksFn
;
5159 fn
.glGenTransformFeedbacksFn
= Debug_glGenTransformFeedbacks
;
5161 if (!debug_fn
.glGenVertexArraysOESFn
) {
5162 debug_fn
.glGenVertexArraysOESFn
= fn
.glGenVertexArraysOESFn
;
5163 fn
.glGenVertexArraysOESFn
= Debug_glGenVertexArraysOES
;
5165 if (!debug_fn
.glGetActiveAttribFn
) {
5166 debug_fn
.glGetActiveAttribFn
= fn
.glGetActiveAttribFn
;
5167 fn
.glGetActiveAttribFn
= Debug_glGetActiveAttrib
;
5169 if (!debug_fn
.glGetActiveUniformFn
) {
5170 debug_fn
.glGetActiveUniformFn
= fn
.glGetActiveUniformFn
;
5171 fn
.glGetActiveUniformFn
= Debug_glGetActiveUniform
;
5173 if (!debug_fn
.glGetActiveUniformBlockivFn
) {
5174 debug_fn
.glGetActiveUniformBlockivFn
= fn
.glGetActiveUniformBlockivFn
;
5175 fn
.glGetActiveUniformBlockivFn
= Debug_glGetActiveUniformBlockiv
;
5177 if (!debug_fn
.glGetActiveUniformBlockNameFn
) {
5178 debug_fn
.glGetActiveUniformBlockNameFn
= fn
.glGetActiveUniformBlockNameFn
;
5179 fn
.glGetActiveUniformBlockNameFn
= Debug_glGetActiveUniformBlockName
;
5181 if (!debug_fn
.glGetActiveUniformsivFn
) {
5182 debug_fn
.glGetActiveUniformsivFn
= fn
.glGetActiveUniformsivFn
;
5183 fn
.glGetActiveUniformsivFn
= Debug_glGetActiveUniformsiv
;
5185 if (!debug_fn
.glGetAttachedShadersFn
) {
5186 debug_fn
.glGetAttachedShadersFn
= fn
.glGetAttachedShadersFn
;
5187 fn
.glGetAttachedShadersFn
= Debug_glGetAttachedShaders
;
5189 if (!debug_fn
.glGetAttribLocationFn
) {
5190 debug_fn
.glGetAttribLocationFn
= fn
.glGetAttribLocationFn
;
5191 fn
.glGetAttribLocationFn
= Debug_glGetAttribLocation
;
5193 if (!debug_fn
.glGetBooleanvFn
) {
5194 debug_fn
.glGetBooleanvFn
= fn
.glGetBooleanvFn
;
5195 fn
.glGetBooleanvFn
= Debug_glGetBooleanv
;
5197 if (!debug_fn
.glGetBufferParameterivFn
) {
5198 debug_fn
.glGetBufferParameterivFn
= fn
.glGetBufferParameterivFn
;
5199 fn
.glGetBufferParameterivFn
= Debug_glGetBufferParameteriv
;
5201 if (!debug_fn
.glGetErrorFn
) {
5202 debug_fn
.glGetErrorFn
= fn
.glGetErrorFn
;
5203 fn
.glGetErrorFn
= Debug_glGetError
;
5205 if (!debug_fn
.glGetFenceivNVFn
) {
5206 debug_fn
.glGetFenceivNVFn
= fn
.glGetFenceivNVFn
;
5207 fn
.glGetFenceivNVFn
= Debug_glGetFenceivNV
;
5209 if (!debug_fn
.glGetFloatvFn
) {
5210 debug_fn
.glGetFloatvFn
= fn
.glGetFloatvFn
;
5211 fn
.glGetFloatvFn
= Debug_glGetFloatv
;
5213 if (!debug_fn
.glGetFragDataLocationFn
) {
5214 debug_fn
.glGetFragDataLocationFn
= fn
.glGetFragDataLocationFn
;
5215 fn
.glGetFragDataLocationFn
= Debug_glGetFragDataLocation
;
5217 if (!debug_fn
.glGetFramebufferAttachmentParameterivEXTFn
) {
5218 debug_fn
.glGetFramebufferAttachmentParameterivEXTFn
=
5219 fn
.glGetFramebufferAttachmentParameterivEXTFn
;
5220 fn
.glGetFramebufferAttachmentParameterivEXTFn
=
5221 Debug_glGetFramebufferAttachmentParameterivEXT
;
5223 if (!debug_fn
.glGetGraphicsResetStatusARBFn
) {
5224 debug_fn
.glGetGraphicsResetStatusARBFn
= fn
.glGetGraphicsResetStatusARBFn
;
5225 fn
.glGetGraphicsResetStatusARBFn
= Debug_glGetGraphicsResetStatusARB
;
5227 if (!debug_fn
.glGetInteger64i_vFn
) {
5228 debug_fn
.glGetInteger64i_vFn
= fn
.glGetInteger64i_vFn
;
5229 fn
.glGetInteger64i_vFn
= Debug_glGetInteger64i_v
;
5231 if (!debug_fn
.glGetInteger64vFn
) {
5232 debug_fn
.glGetInteger64vFn
= fn
.glGetInteger64vFn
;
5233 fn
.glGetInteger64vFn
= Debug_glGetInteger64v
;
5235 if (!debug_fn
.glGetIntegeri_vFn
) {
5236 debug_fn
.glGetIntegeri_vFn
= fn
.glGetIntegeri_vFn
;
5237 fn
.glGetIntegeri_vFn
= Debug_glGetIntegeri_v
;
5239 if (!debug_fn
.glGetIntegervFn
) {
5240 debug_fn
.glGetIntegervFn
= fn
.glGetIntegervFn
;
5241 fn
.glGetIntegervFn
= Debug_glGetIntegerv
;
5243 if (!debug_fn
.glGetInternalformativFn
) {
5244 debug_fn
.glGetInternalformativFn
= fn
.glGetInternalformativFn
;
5245 fn
.glGetInternalformativFn
= Debug_glGetInternalformativ
;
5247 if (!debug_fn
.glGetProgramBinaryFn
) {
5248 debug_fn
.glGetProgramBinaryFn
= fn
.glGetProgramBinaryFn
;
5249 fn
.glGetProgramBinaryFn
= Debug_glGetProgramBinary
;
5251 if (!debug_fn
.glGetProgramInfoLogFn
) {
5252 debug_fn
.glGetProgramInfoLogFn
= fn
.glGetProgramInfoLogFn
;
5253 fn
.glGetProgramInfoLogFn
= Debug_glGetProgramInfoLog
;
5255 if (!debug_fn
.glGetProgramivFn
) {
5256 debug_fn
.glGetProgramivFn
= fn
.glGetProgramivFn
;
5257 fn
.glGetProgramivFn
= Debug_glGetProgramiv
;
5259 if (!debug_fn
.glGetProgramResourceLocationFn
) {
5260 debug_fn
.glGetProgramResourceLocationFn
= fn
.glGetProgramResourceLocationFn
;
5261 fn
.glGetProgramResourceLocationFn
= Debug_glGetProgramResourceLocation
;
5263 if (!debug_fn
.glGetQueryivFn
) {
5264 debug_fn
.glGetQueryivFn
= fn
.glGetQueryivFn
;
5265 fn
.glGetQueryivFn
= Debug_glGetQueryiv
;
5267 if (!debug_fn
.glGetQueryObjecti64vFn
) {
5268 debug_fn
.glGetQueryObjecti64vFn
= fn
.glGetQueryObjecti64vFn
;
5269 fn
.glGetQueryObjecti64vFn
= Debug_glGetQueryObjecti64v
;
5271 if (!debug_fn
.glGetQueryObjectivFn
) {
5272 debug_fn
.glGetQueryObjectivFn
= fn
.glGetQueryObjectivFn
;
5273 fn
.glGetQueryObjectivFn
= Debug_glGetQueryObjectiv
;
5275 if (!debug_fn
.glGetQueryObjectui64vFn
) {
5276 debug_fn
.glGetQueryObjectui64vFn
= fn
.glGetQueryObjectui64vFn
;
5277 fn
.glGetQueryObjectui64vFn
= Debug_glGetQueryObjectui64v
;
5279 if (!debug_fn
.glGetQueryObjectuivFn
) {
5280 debug_fn
.glGetQueryObjectuivFn
= fn
.glGetQueryObjectuivFn
;
5281 fn
.glGetQueryObjectuivFn
= Debug_glGetQueryObjectuiv
;
5283 if (!debug_fn
.glGetRenderbufferParameterivEXTFn
) {
5284 debug_fn
.glGetRenderbufferParameterivEXTFn
=
5285 fn
.glGetRenderbufferParameterivEXTFn
;
5286 fn
.glGetRenderbufferParameterivEXTFn
=
5287 Debug_glGetRenderbufferParameterivEXT
;
5289 if (!debug_fn
.glGetSamplerParameterfvFn
) {
5290 debug_fn
.glGetSamplerParameterfvFn
= fn
.glGetSamplerParameterfvFn
;
5291 fn
.glGetSamplerParameterfvFn
= Debug_glGetSamplerParameterfv
;
5293 if (!debug_fn
.glGetSamplerParameterivFn
) {
5294 debug_fn
.glGetSamplerParameterivFn
= fn
.glGetSamplerParameterivFn
;
5295 fn
.glGetSamplerParameterivFn
= Debug_glGetSamplerParameteriv
;
5297 if (!debug_fn
.glGetShaderInfoLogFn
) {
5298 debug_fn
.glGetShaderInfoLogFn
= fn
.glGetShaderInfoLogFn
;
5299 fn
.glGetShaderInfoLogFn
= Debug_glGetShaderInfoLog
;
5301 if (!debug_fn
.glGetShaderivFn
) {
5302 debug_fn
.glGetShaderivFn
= fn
.glGetShaderivFn
;
5303 fn
.glGetShaderivFn
= Debug_glGetShaderiv
;
5305 if (!debug_fn
.glGetShaderPrecisionFormatFn
) {
5306 debug_fn
.glGetShaderPrecisionFormatFn
= fn
.glGetShaderPrecisionFormatFn
;
5307 fn
.glGetShaderPrecisionFormatFn
= Debug_glGetShaderPrecisionFormat
;
5309 if (!debug_fn
.glGetShaderSourceFn
) {
5310 debug_fn
.glGetShaderSourceFn
= fn
.glGetShaderSourceFn
;
5311 fn
.glGetShaderSourceFn
= Debug_glGetShaderSource
;
5313 if (!debug_fn
.glGetStringFn
) {
5314 debug_fn
.glGetStringFn
= fn
.glGetStringFn
;
5315 fn
.glGetStringFn
= Debug_glGetString
;
5317 if (!debug_fn
.glGetStringiFn
) {
5318 debug_fn
.glGetStringiFn
= fn
.glGetStringiFn
;
5319 fn
.glGetStringiFn
= Debug_glGetStringi
;
5321 if (!debug_fn
.glGetSyncivFn
) {
5322 debug_fn
.glGetSyncivFn
= fn
.glGetSyncivFn
;
5323 fn
.glGetSyncivFn
= Debug_glGetSynciv
;
5325 if (!debug_fn
.glGetTexLevelParameterfvFn
) {
5326 debug_fn
.glGetTexLevelParameterfvFn
= fn
.glGetTexLevelParameterfvFn
;
5327 fn
.glGetTexLevelParameterfvFn
= Debug_glGetTexLevelParameterfv
;
5329 if (!debug_fn
.glGetTexLevelParameterivFn
) {
5330 debug_fn
.glGetTexLevelParameterivFn
= fn
.glGetTexLevelParameterivFn
;
5331 fn
.glGetTexLevelParameterivFn
= Debug_glGetTexLevelParameteriv
;
5333 if (!debug_fn
.glGetTexParameterfvFn
) {
5334 debug_fn
.glGetTexParameterfvFn
= fn
.glGetTexParameterfvFn
;
5335 fn
.glGetTexParameterfvFn
= Debug_glGetTexParameterfv
;
5337 if (!debug_fn
.glGetTexParameterivFn
) {
5338 debug_fn
.glGetTexParameterivFn
= fn
.glGetTexParameterivFn
;
5339 fn
.glGetTexParameterivFn
= Debug_glGetTexParameteriv
;
5341 if (!debug_fn
.glGetTransformFeedbackVaryingFn
) {
5342 debug_fn
.glGetTransformFeedbackVaryingFn
=
5343 fn
.glGetTransformFeedbackVaryingFn
;
5344 fn
.glGetTransformFeedbackVaryingFn
= Debug_glGetTransformFeedbackVarying
;
5346 if (!debug_fn
.glGetTranslatedShaderSourceANGLEFn
) {
5347 debug_fn
.glGetTranslatedShaderSourceANGLEFn
=
5348 fn
.glGetTranslatedShaderSourceANGLEFn
;
5349 fn
.glGetTranslatedShaderSourceANGLEFn
=
5350 Debug_glGetTranslatedShaderSourceANGLE
;
5352 if (!debug_fn
.glGetUniformBlockIndexFn
) {
5353 debug_fn
.glGetUniformBlockIndexFn
= fn
.glGetUniformBlockIndexFn
;
5354 fn
.glGetUniformBlockIndexFn
= Debug_glGetUniformBlockIndex
;
5356 if (!debug_fn
.glGetUniformfvFn
) {
5357 debug_fn
.glGetUniformfvFn
= fn
.glGetUniformfvFn
;
5358 fn
.glGetUniformfvFn
= Debug_glGetUniformfv
;
5360 if (!debug_fn
.glGetUniformIndicesFn
) {
5361 debug_fn
.glGetUniformIndicesFn
= fn
.glGetUniformIndicesFn
;
5362 fn
.glGetUniformIndicesFn
= Debug_glGetUniformIndices
;
5364 if (!debug_fn
.glGetUniformivFn
) {
5365 debug_fn
.glGetUniformivFn
= fn
.glGetUniformivFn
;
5366 fn
.glGetUniformivFn
= Debug_glGetUniformiv
;
5368 if (!debug_fn
.glGetUniformLocationFn
) {
5369 debug_fn
.glGetUniformLocationFn
= fn
.glGetUniformLocationFn
;
5370 fn
.glGetUniformLocationFn
= Debug_glGetUniformLocation
;
5372 if (!debug_fn
.glGetUniformuivFn
) {
5373 debug_fn
.glGetUniformuivFn
= fn
.glGetUniformuivFn
;
5374 fn
.glGetUniformuivFn
= Debug_glGetUniformuiv
;
5376 if (!debug_fn
.glGetVertexAttribfvFn
) {
5377 debug_fn
.glGetVertexAttribfvFn
= fn
.glGetVertexAttribfvFn
;
5378 fn
.glGetVertexAttribfvFn
= Debug_glGetVertexAttribfv
;
5380 if (!debug_fn
.glGetVertexAttribivFn
) {
5381 debug_fn
.glGetVertexAttribivFn
= fn
.glGetVertexAttribivFn
;
5382 fn
.glGetVertexAttribivFn
= Debug_glGetVertexAttribiv
;
5384 if (!debug_fn
.glGetVertexAttribPointervFn
) {
5385 debug_fn
.glGetVertexAttribPointervFn
= fn
.glGetVertexAttribPointervFn
;
5386 fn
.glGetVertexAttribPointervFn
= Debug_glGetVertexAttribPointerv
;
5388 if (!debug_fn
.glHintFn
) {
5389 debug_fn
.glHintFn
= fn
.glHintFn
;
5390 fn
.glHintFn
= Debug_glHint
;
5392 if (!debug_fn
.glInsertEventMarkerEXTFn
) {
5393 debug_fn
.glInsertEventMarkerEXTFn
= fn
.glInsertEventMarkerEXTFn
;
5394 fn
.glInsertEventMarkerEXTFn
= Debug_glInsertEventMarkerEXT
;
5396 if (!debug_fn
.glInvalidateFramebufferFn
) {
5397 debug_fn
.glInvalidateFramebufferFn
= fn
.glInvalidateFramebufferFn
;
5398 fn
.glInvalidateFramebufferFn
= Debug_glInvalidateFramebuffer
;
5400 if (!debug_fn
.glInvalidateSubFramebufferFn
) {
5401 debug_fn
.glInvalidateSubFramebufferFn
= fn
.glInvalidateSubFramebufferFn
;
5402 fn
.glInvalidateSubFramebufferFn
= Debug_glInvalidateSubFramebuffer
;
5404 if (!debug_fn
.glIsBufferFn
) {
5405 debug_fn
.glIsBufferFn
= fn
.glIsBufferFn
;
5406 fn
.glIsBufferFn
= Debug_glIsBuffer
;
5408 if (!debug_fn
.glIsEnabledFn
) {
5409 debug_fn
.glIsEnabledFn
= fn
.glIsEnabledFn
;
5410 fn
.glIsEnabledFn
= Debug_glIsEnabled
;
5412 if (!debug_fn
.glIsFenceAPPLEFn
) {
5413 debug_fn
.glIsFenceAPPLEFn
= fn
.glIsFenceAPPLEFn
;
5414 fn
.glIsFenceAPPLEFn
= Debug_glIsFenceAPPLE
;
5416 if (!debug_fn
.glIsFenceNVFn
) {
5417 debug_fn
.glIsFenceNVFn
= fn
.glIsFenceNVFn
;
5418 fn
.glIsFenceNVFn
= Debug_glIsFenceNV
;
5420 if (!debug_fn
.glIsFramebufferEXTFn
) {
5421 debug_fn
.glIsFramebufferEXTFn
= fn
.glIsFramebufferEXTFn
;
5422 fn
.glIsFramebufferEXTFn
= Debug_glIsFramebufferEXT
;
5424 if (!debug_fn
.glIsProgramFn
) {
5425 debug_fn
.glIsProgramFn
= fn
.glIsProgramFn
;
5426 fn
.glIsProgramFn
= Debug_glIsProgram
;
5428 if (!debug_fn
.glIsQueryFn
) {
5429 debug_fn
.glIsQueryFn
= fn
.glIsQueryFn
;
5430 fn
.glIsQueryFn
= Debug_glIsQuery
;
5432 if (!debug_fn
.glIsRenderbufferEXTFn
) {
5433 debug_fn
.glIsRenderbufferEXTFn
= fn
.glIsRenderbufferEXTFn
;
5434 fn
.glIsRenderbufferEXTFn
= Debug_glIsRenderbufferEXT
;
5436 if (!debug_fn
.glIsSamplerFn
) {
5437 debug_fn
.glIsSamplerFn
= fn
.glIsSamplerFn
;
5438 fn
.glIsSamplerFn
= Debug_glIsSampler
;
5440 if (!debug_fn
.glIsShaderFn
) {
5441 debug_fn
.glIsShaderFn
= fn
.glIsShaderFn
;
5442 fn
.glIsShaderFn
= Debug_glIsShader
;
5444 if (!debug_fn
.glIsSyncFn
) {
5445 debug_fn
.glIsSyncFn
= fn
.glIsSyncFn
;
5446 fn
.glIsSyncFn
= Debug_glIsSync
;
5448 if (!debug_fn
.glIsTextureFn
) {
5449 debug_fn
.glIsTextureFn
= fn
.glIsTextureFn
;
5450 fn
.glIsTextureFn
= Debug_glIsTexture
;
5452 if (!debug_fn
.glIsTransformFeedbackFn
) {
5453 debug_fn
.glIsTransformFeedbackFn
= fn
.glIsTransformFeedbackFn
;
5454 fn
.glIsTransformFeedbackFn
= Debug_glIsTransformFeedback
;
5456 if (!debug_fn
.glIsVertexArrayOESFn
) {
5457 debug_fn
.glIsVertexArrayOESFn
= fn
.glIsVertexArrayOESFn
;
5458 fn
.glIsVertexArrayOESFn
= Debug_glIsVertexArrayOES
;
5460 if (!debug_fn
.glLineWidthFn
) {
5461 debug_fn
.glLineWidthFn
= fn
.glLineWidthFn
;
5462 fn
.glLineWidthFn
= Debug_glLineWidth
;
5464 if (!debug_fn
.glLinkProgramFn
) {
5465 debug_fn
.glLinkProgramFn
= fn
.glLinkProgramFn
;
5466 fn
.glLinkProgramFn
= Debug_glLinkProgram
;
5468 if (!debug_fn
.glMapBufferFn
) {
5469 debug_fn
.glMapBufferFn
= fn
.glMapBufferFn
;
5470 fn
.glMapBufferFn
= Debug_glMapBuffer
;
5472 if (!debug_fn
.glMapBufferRangeFn
) {
5473 debug_fn
.glMapBufferRangeFn
= fn
.glMapBufferRangeFn
;
5474 fn
.glMapBufferRangeFn
= Debug_glMapBufferRange
;
5476 if (!debug_fn
.glMatrixLoadfEXTFn
) {
5477 debug_fn
.glMatrixLoadfEXTFn
= fn
.glMatrixLoadfEXTFn
;
5478 fn
.glMatrixLoadfEXTFn
= Debug_glMatrixLoadfEXT
;
5480 if (!debug_fn
.glMatrixLoadIdentityEXTFn
) {
5481 debug_fn
.glMatrixLoadIdentityEXTFn
= fn
.glMatrixLoadIdentityEXTFn
;
5482 fn
.glMatrixLoadIdentityEXTFn
= Debug_glMatrixLoadIdentityEXT
;
5484 if (!debug_fn
.glPauseTransformFeedbackFn
) {
5485 debug_fn
.glPauseTransformFeedbackFn
= fn
.glPauseTransformFeedbackFn
;
5486 fn
.glPauseTransformFeedbackFn
= Debug_glPauseTransformFeedback
;
5488 if (!debug_fn
.glPixelStoreiFn
) {
5489 debug_fn
.glPixelStoreiFn
= fn
.glPixelStoreiFn
;
5490 fn
.glPixelStoreiFn
= Debug_glPixelStorei
;
5492 if (!debug_fn
.glPointParameteriFn
) {
5493 debug_fn
.glPointParameteriFn
= fn
.glPointParameteriFn
;
5494 fn
.glPointParameteriFn
= Debug_glPointParameteri
;
5496 if (!debug_fn
.glPolygonOffsetFn
) {
5497 debug_fn
.glPolygonOffsetFn
= fn
.glPolygonOffsetFn
;
5498 fn
.glPolygonOffsetFn
= Debug_glPolygonOffset
;
5500 if (!debug_fn
.glPopGroupMarkerEXTFn
) {
5501 debug_fn
.glPopGroupMarkerEXTFn
= fn
.glPopGroupMarkerEXTFn
;
5502 fn
.glPopGroupMarkerEXTFn
= Debug_glPopGroupMarkerEXT
;
5504 if (!debug_fn
.glProgramBinaryFn
) {
5505 debug_fn
.glProgramBinaryFn
= fn
.glProgramBinaryFn
;
5506 fn
.glProgramBinaryFn
= Debug_glProgramBinary
;
5508 if (!debug_fn
.glProgramParameteriFn
) {
5509 debug_fn
.glProgramParameteriFn
= fn
.glProgramParameteriFn
;
5510 fn
.glProgramParameteriFn
= Debug_glProgramParameteri
;
5512 if (!debug_fn
.glPushGroupMarkerEXTFn
) {
5513 debug_fn
.glPushGroupMarkerEXTFn
= fn
.glPushGroupMarkerEXTFn
;
5514 fn
.glPushGroupMarkerEXTFn
= Debug_glPushGroupMarkerEXT
;
5516 if (!debug_fn
.glQueryCounterFn
) {
5517 debug_fn
.glQueryCounterFn
= fn
.glQueryCounterFn
;
5518 fn
.glQueryCounterFn
= Debug_glQueryCounter
;
5520 if (!debug_fn
.glReadBufferFn
) {
5521 debug_fn
.glReadBufferFn
= fn
.glReadBufferFn
;
5522 fn
.glReadBufferFn
= Debug_glReadBuffer
;
5524 if (!debug_fn
.glReadPixelsFn
) {
5525 debug_fn
.glReadPixelsFn
= fn
.glReadPixelsFn
;
5526 fn
.glReadPixelsFn
= Debug_glReadPixels
;
5528 if (!debug_fn
.glReleaseShaderCompilerFn
) {
5529 debug_fn
.glReleaseShaderCompilerFn
= fn
.glReleaseShaderCompilerFn
;
5530 fn
.glReleaseShaderCompilerFn
= Debug_glReleaseShaderCompiler
;
5532 if (!debug_fn
.glRenderbufferStorageEXTFn
) {
5533 debug_fn
.glRenderbufferStorageEXTFn
= fn
.glRenderbufferStorageEXTFn
;
5534 fn
.glRenderbufferStorageEXTFn
= Debug_glRenderbufferStorageEXT
;
5536 if (!debug_fn
.glRenderbufferStorageMultisampleFn
) {
5537 debug_fn
.glRenderbufferStorageMultisampleFn
=
5538 fn
.glRenderbufferStorageMultisampleFn
;
5539 fn
.glRenderbufferStorageMultisampleFn
=
5540 Debug_glRenderbufferStorageMultisample
;
5542 if (!debug_fn
.glRenderbufferStorageMultisampleANGLEFn
) {
5543 debug_fn
.glRenderbufferStorageMultisampleANGLEFn
=
5544 fn
.glRenderbufferStorageMultisampleANGLEFn
;
5545 fn
.glRenderbufferStorageMultisampleANGLEFn
=
5546 Debug_glRenderbufferStorageMultisampleANGLE
;
5548 if (!debug_fn
.glRenderbufferStorageMultisampleEXTFn
) {
5549 debug_fn
.glRenderbufferStorageMultisampleEXTFn
=
5550 fn
.glRenderbufferStorageMultisampleEXTFn
;
5551 fn
.glRenderbufferStorageMultisampleEXTFn
=
5552 Debug_glRenderbufferStorageMultisampleEXT
;
5554 if (!debug_fn
.glRenderbufferStorageMultisampleIMGFn
) {
5555 debug_fn
.glRenderbufferStorageMultisampleIMGFn
=
5556 fn
.glRenderbufferStorageMultisampleIMGFn
;
5557 fn
.glRenderbufferStorageMultisampleIMGFn
=
5558 Debug_glRenderbufferStorageMultisampleIMG
;
5560 if (!debug_fn
.glResumeTransformFeedbackFn
) {
5561 debug_fn
.glResumeTransformFeedbackFn
= fn
.glResumeTransformFeedbackFn
;
5562 fn
.glResumeTransformFeedbackFn
= Debug_glResumeTransformFeedback
;
5564 if (!debug_fn
.glSampleCoverageFn
) {
5565 debug_fn
.glSampleCoverageFn
= fn
.glSampleCoverageFn
;
5566 fn
.glSampleCoverageFn
= Debug_glSampleCoverage
;
5568 if (!debug_fn
.glSamplerParameterfFn
) {
5569 debug_fn
.glSamplerParameterfFn
= fn
.glSamplerParameterfFn
;
5570 fn
.glSamplerParameterfFn
= Debug_glSamplerParameterf
;
5572 if (!debug_fn
.glSamplerParameterfvFn
) {
5573 debug_fn
.glSamplerParameterfvFn
= fn
.glSamplerParameterfvFn
;
5574 fn
.glSamplerParameterfvFn
= Debug_glSamplerParameterfv
;
5576 if (!debug_fn
.glSamplerParameteriFn
) {
5577 debug_fn
.glSamplerParameteriFn
= fn
.glSamplerParameteriFn
;
5578 fn
.glSamplerParameteriFn
= Debug_glSamplerParameteri
;
5580 if (!debug_fn
.glSamplerParameterivFn
) {
5581 debug_fn
.glSamplerParameterivFn
= fn
.glSamplerParameterivFn
;
5582 fn
.glSamplerParameterivFn
= Debug_glSamplerParameteriv
;
5584 if (!debug_fn
.glScissorFn
) {
5585 debug_fn
.glScissorFn
= fn
.glScissorFn
;
5586 fn
.glScissorFn
= Debug_glScissor
;
5588 if (!debug_fn
.glSetFenceAPPLEFn
) {
5589 debug_fn
.glSetFenceAPPLEFn
= fn
.glSetFenceAPPLEFn
;
5590 fn
.glSetFenceAPPLEFn
= Debug_glSetFenceAPPLE
;
5592 if (!debug_fn
.glSetFenceNVFn
) {
5593 debug_fn
.glSetFenceNVFn
= fn
.glSetFenceNVFn
;
5594 fn
.glSetFenceNVFn
= Debug_glSetFenceNV
;
5596 if (!debug_fn
.glShaderBinaryFn
) {
5597 debug_fn
.glShaderBinaryFn
= fn
.glShaderBinaryFn
;
5598 fn
.glShaderBinaryFn
= Debug_glShaderBinary
;
5600 if (!debug_fn
.glShaderSourceFn
) {
5601 debug_fn
.glShaderSourceFn
= fn
.glShaderSourceFn
;
5602 fn
.glShaderSourceFn
= Debug_glShaderSource
;
5604 if (!debug_fn
.glStencilFuncFn
) {
5605 debug_fn
.glStencilFuncFn
= fn
.glStencilFuncFn
;
5606 fn
.glStencilFuncFn
= Debug_glStencilFunc
;
5608 if (!debug_fn
.glStencilFuncSeparateFn
) {
5609 debug_fn
.glStencilFuncSeparateFn
= fn
.glStencilFuncSeparateFn
;
5610 fn
.glStencilFuncSeparateFn
= Debug_glStencilFuncSeparate
;
5612 if (!debug_fn
.glStencilMaskFn
) {
5613 debug_fn
.glStencilMaskFn
= fn
.glStencilMaskFn
;
5614 fn
.glStencilMaskFn
= Debug_glStencilMask
;
5616 if (!debug_fn
.glStencilMaskSeparateFn
) {
5617 debug_fn
.glStencilMaskSeparateFn
= fn
.glStencilMaskSeparateFn
;
5618 fn
.glStencilMaskSeparateFn
= Debug_glStencilMaskSeparate
;
5620 if (!debug_fn
.glStencilOpFn
) {
5621 debug_fn
.glStencilOpFn
= fn
.glStencilOpFn
;
5622 fn
.glStencilOpFn
= Debug_glStencilOp
;
5624 if (!debug_fn
.glStencilOpSeparateFn
) {
5625 debug_fn
.glStencilOpSeparateFn
= fn
.glStencilOpSeparateFn
;
5626 fn
.glStencilOpSeparateFn
= Debug_glStencilOpSeparate
;
5628 if (!debug_fn
.glTestFenceAPPLEFn
) {
5629 debug_fn
.glTestFenceAPPLEFn
= fn
.glTestFenceAPPLEFn
;
5630 fn
.glTestFenceAPPLEFn
= Debug_glTestFenceAPPLE
;
5632 if (!debug_fn
.glTestFenceNVFn
) {
5633 debug_fn
.glTestFenceNVFn
= fn
.glTestFenceNVFn
;
5634 fn
.glTestFenceNVFn
= Debug_glTestFenceNV
;
5636 if (!debug_fn
.glTexImage2DFn
) {
5637 debug_fn
.glTexImage2DFn
= fn
.glTexImage2DFn
;
5638 fn
.glTexImage2DFn
= Debug_glTexImage2D
;
5640 if (!debug_fn
.glTexImage3DFn
) {
5641 debug_fn
.glTexImage3DFn
= fn
.glTexImage3DFn
;
5642 fn
.glTexImage3DFn
= Debug_glTexImage3D
;
5644 if (!debug_fn
.glTexParameterfFn
) {
5645 debug_fn
.glTexParameterfFn
= fn
.glTexParameterfFn
;
5646 fn
.glTexParameterfFn
= Debug_glTexParameterf
;
5648 if (!debug_fn
.glTexParameterfvFn
) {
5649 debug_fn
.glTexParameterfvFn
= fn
.glTexParameterfvFn
;
5650 fn
.glTexParameterfvFn
= Debug_glTexParameterfv
;
5652 if (!debug_fn
.glTexParameteriFn
) {
5653 debug_fn
.glTexParameteriFn
= fn
.glTexParameteriFn
;
5654 fn
.glTexParameteriFn
= Debug_glTexParameteri
;
5656 if (!debug_fn
.glTexParameterivFn
) {
5657 debug_fn
.glTexParameterivFn
= fn
.glTexParameterivFn
;
5658 fn
.glTexParameterivFn
= Debug_glTexParameteriv
;
5660 if (!debug_fn
.glTexStorage2DEXTFn
) {
5661 debug_fn
.glTexStorage2DEXTFn
= fn
.glTexStorage2DEXTFn
;
5662 fn
.glTexStorage2DEXTFn
= Debug_glTexStorage2DEXT
;
5664 if (!debug_fn
.glTexStorage3DFn
) {
5665 debug_fn
.glTexStorage3DFn
= fn
.glTexStorage3DFn
;
5666 fn
.glTexStorage3DFn
= Debug_glTexStorage3D
;
5668 if (!debug_fn
.glTexSubImage2DFn
) {
5669 debug_fn
.glTexSubImage2DFn
= fn
.glTexSubImage2DFn
;
5670 fn
.glTexSubImage2DFn
= Debug_glTexSubImage2D
;
5672 if (!debug_fn
.glTexSubImage3DFn
) {
5673 debug_fn
.glTexSubImage3DFn
= fn
.glTexSubImage3DFn
;
5674 fn
.glTexSubImage3DFn
= Debug_glTexSubImage3D
;
5676 if (!debug_fn
.glTransformFeedbackVaryingsFn
) {
5677 debug_fn
.glTransformFeedbackVaryingsFn
= fn
.glTransformFeedbackVaryingsFn
;
5678 fn
.glTransformFeedbackVaryingsFn
= Debug_glTransformFeedbackVaryings
;
5680 if (!debug_fn
.glUniform1fFn
) {
5681 debug_fn
.glUniform1fFn
= fn
.glUniform1fFn
;
5682 fn
.glUniform1fFn
= Debug_glUniform1f
;
5684 if (!debug_fn
.glUniform1fvFn
) {
5685 debug_fn
.glUniform1fvFn
= fn
.glUniform1fvFn
;
5686 fn
.glUniform1fvFn
= Debug_glUniform1fv
;
5688 if (!debug_fn
.glUniform1iFn
) {
5689 debug_fn
.glUniform1iFn
= fn
.glUniform1iFn
;
5690 fn
.glUniform1iFn
= Debug_glUniform1i
;
5692 if (!debug_fn
.glUniform1ivFn
) {
5693 debug_fn
.glUniform1ivFn
= fn
.glUniform1ivFn
;
5694 fn
.glUniform1ivFn
= Debug_glUniform1iv
;
5696 if (!debug_fn
.glUniform1uiFn
) {
5697 debug_fn
.glUniform1uiFn
= fn
.glUniform1uiFn
;
5698 fn
.glUniform1uiFn
= Debug_glUniform1ui
;
5700 if (!debug_fn
.glUniform1uivFn
) {
5701 debug_fn
.glUniform1uivFn
= fn
.glUniform1uivFn
;
5702 fn
.glUniform1uivFn
= Debug_glUniform1uiv
;
5704 if (!debug_fn
.glUniform2fFn
) {
5705 debug_fn
.glUniform2fFn
= fn
.glUniform2fFn
;
5706 fn
.glUniform2fFn
= Debug_glUniform2f
;
5708 if (!debug_fn
.glUniform2fvFn
) {
5709 debug_fn
.glUniform2fvFn
= fn
.glUniform2fvFn
;
5710 fn
.glUniform2fvFn
= Debug_glUniform2fv
;
5712 if (!debug_fn
.glUniform2iFn
) {
5713 debug_fn
.glUniform2iFn
= fn
.glUniform2iFn
;
5714 fn
.glUniform2iFn
= Debug_glUniform2i
;
5716 if (!debug_fn
.glUniform2ivFn
) {
5717 debug_fn
.glUniform2ivFn
= fn
.glUniform2ivFn
;
5718 fn
.glUniform2ivFn
= Debug_glUniform2iv
;
5720 if (!debug_fn
.glUniform2uiFn
) {
5721 debug_fn
.glUniform2uiFn
= fn
.glUniform2uiFn
;
5722 fn
.glUniform2uiFn
= Debug_glUniform2ui
;
5724 if (!debug_fn
.glUniform2uivFn
) {
5725 debug_fn
.glUniform2uivFn
= fn
.glUniform2uivFn
;
5726 fn
.glUniform2uivFn
= Debug_glUniform2uiv
;
5728 if (!debug_fn
.glUniform3fFn
) {
5729 debug_fn
.glUniform3fFn
= fn
.glUniform3fFn
;
5730 fn
.glUniform3fFn
= Debug_glUniform3f
;
5732 if (!debug_fn
.glUniform3fvFn
) {
5733 debug_fn
.glUniform3fvFn
= fn
.glUniform3fvFn
;
5734 fn
.glUniform3fvFn
= Debug_glUniform3fv
;
5736 if (!debug_fn
.glUniform3iFn
) {
5737 debug_fn
.glUniform3iFn
= fn
.glUniform3iFn
;
5738 fn
.glUniform3iFn
= Debug_glUniform3i
;
5740 if (!debug_fn
.glUniform3ivFn
) {
5741 debug_fn
.glUniform3ivFn
= fn
.glUniform3ivFn
;
5742 fn
.glUniform3ivFn
= Debug_glUniform3iv
;
5744 if (!debug_fn
.glUniform3uiFn
) {
5745 debug_fn
.glUniform3uiFn
= fn
.glUniform3uiFn
;
5746 fn
.glUniform3uiFn
= Debug_glUniform3ui
;
5748 if (!debug_fn
.glUniform3uivFn
) {
5749 debug_fn
.glUniform3uivFn
= fn
.glUniform3uivFn
;
5750 fn
.glUniform3uivFn
= Debug_glUniform3uiv
;
5752 if (!debug_fn
.glUniform4fFn
) {
5753 debug_fn
.glUniform4fFn
= fn
.glUniform4fFn
;
5754 fn
.glUniform4fFn
= Debug_glUniform4f
;
5756 if (!debug_fn
.glUniform4fvFn
) {
5757 debug_fn
.glUniform4fvFn
= fn
.glUniform4fvFn
;
5758 fn
.glUniform4fvFn
= Debug_glUniform4fv
;
5760 if (!debug_fn
.glUniform4iFn
) {
5761 debug_fn
.glUniform4iFn
= fn
.glUniform4iFn
;
5762 fn
.glUniform4iFn
= Debug_glUniform4i
;
5764 if (!debug_fn
.glUniform4ivFn
) {
5765 debug_fn
.glUniform4ivFn
= fn
.glUniform4ivFn
;
5766 fn
.glUniform4ivFn
= Debug_glUniform4iv
;
5768 if (!debug_fn
.glUniform4uiFn
) {
5769 debug_fn
.glUniform4uiFn
= fn
.glUniform4uiFn
;
5770 fn
.glUniform4uiFn
= Debug_glUniform4ui
;
5772 if (!debug_fn
.glUniform4uivFn
) {
5773 debug_fn
.glUniform4uivFn
= fn
.glUniform4uivFn
;
5774 fn
.glUniform4uivFn
= Debug_glUniform4uiv
;
5776 if (!debug_fn
.glUniformBlockBindingFn
) {
5777 debug_fn
.glUniformBlockBindingFn
= fn
.glUniformBlockBindingFn
;
5778 fn
.glUniformBlockBindingFn
= Debug_glUniformBlockBinding
;
5780 if (!debug_fn
.glUniformMatrix2fvFn
) {
5781 debug_fn
.glUniformMatrix2fvFn
= fn
.glUniformMatrix2fvFn
;
5782 fn
.glUniformMatrix2fvFn
= Debug_glUniformMatrix2fv
;
5784 if (!debug_fn
.glUniformMatrix2x3fvFn
) {
5785 debug_fn
.glUniformMatrix2x3fvFn
= fn
.glUniformMatrix2x3fvFn
;
5786 fn
.glUniformMatrix2x3fvFn
= Debug_glUniformMatrix2x3fv
;
5788 if (!debug_fn
.glUniformMatrix2x4fvFn
) {
5789 debug_fn
.glUniformMatrix2x4fvFn
= fn
.glUniformMatrix2x4fvFn
;
5790 fn
.glUniformMatrix2x4fvFn
= Debug_glUniformMatrix2x4fv
;
5792 if (!debug_fn
.glUniformMatrix3fvFn
) {
5793 debug_fn
.glUniformMatrix3fvFn
= fn
.glUniformMatrix3fvFn
;
5794 fn
.glUniformMatrix3fvFn
= Debug_glUniformMatrix3fv
;
5796 if (!debug_fn
.glUniformMatrix3x2fvFn
) {
5797 debug_fn
.glUniformMatrix3x2fvFn
= fn
.glUniformMatrix3x2fvFn
;
5798 fn
.glUniformMatrix3x2fvFn
= Debug_glUniformMatrix3x2fv
;
5800 if (!debug_fn
.glUniformMatrix3x4fvFn
) {
5801 debug_fn
.glUniformMatrix3x4fvFn
= fn
.glUniformMatrix3x4fvFn
;
5802 fn
.glUniformMatrix3x4fvFn
= Debug_glUniformMatrix3x4fv
;
5804 if (!debug_fn
.glUniformMatrix4fvFn
) {
5805 debug_fn
.glUniformMatrix4fvFn
= fn
.glUniformMatrix4fvFn
;
5806 fn
.glUniformMatrix4fvFn
= Debug_glUniformMatrix4fv
;
5808 if (!debug_fn
.glUniformMatrix4x2fvFn
) {
5809 debug_fn
.glUniformMatrix4x2fvFn
= fn
.glUniformMatrix4x2fvFn
;
5810 fn
.glUniformMatrix4x2fvFn
= Debug_glUniformMatrix4x2fv
;
5812 if (!debug_fn
.glUniformMatrix4x3fvFn
) {
5813 debug_fn
.glUniformMatrix4x3fvFn
= fn
.glUniformMatrix4x3fvFn
;
5814 fn
.glUniformMatrix4x3fvFn
= Debug_glUniformMatrix4x3fv
;
5816 if (!debug_fn
.glUnmapBufferFn
) {
5817 debug_fn
.glUnmapBufferFn
= fn
.glUnmapBufferFn
;
5818 fn
.glUnmapBufferFn
= Debug_glUnmapBuffer
;
5820 if (!debug_fn
.glUseProgramFn
) {
5821 debug_fn
.glUseProgramFn
= fn
.glUseProgramFn
;
5822 fn
.glUseProgramFn
= Debug_glUseProgram
;
5824 if (!debug_fn
.glValidateProgramFn
) {
5825 debug_fn
.glValidateProgramFn
= fn
.glValidateProgramFn
;
5826 fn
.glValidateProgramFn
= Debug_glValidateProgram
;
5828 if (!debug_fn
.glVertexAttrib1fFn
) {
5829 debug_fn
.glVertexAttrib1fFn
= fn
.glVertexAttrib1fFn
;
5830 fn
.glVertexAttrib1fFn
= Debug_glVertexAttrib1f
;
5832 if (!debug_fn
.glVertexAttrib1fvFn
) {
5833 debug_fn
.glVertexAttrib1fvFn
= fn
.glVertexAttrib1fvFn
;
5834 fn
.glVertexAttrib1fvFn
= Debug_glVertexAttrib1fv
;
5836 if (!debug_fn
.glVertexAttrib2fFn
) {
5837 debug_fn
.glVertexAttrib2fFn
= fn
.glVertexAttrib2fFn
;
5838 fn
.glVertexAttrib2fFn
= Debug_glVertexAttrib2f
;
5840 if (!debug_fn
.glVertexAttrib2fvFn
) {
5841 debug_fn
.glVertexAttrib2fvFn
= fn
.glVertexAttrib2fvFn
;
5842 fn
.glVertexAttrib2fvFn
= Debug_glVertexAttrib2fv
;
5844 if (!debug_fn
.glVertexAttrib3fFn
) {
5845 debug_fn
.glVertexAttrib3fFn
= fn
.glVertexAttrib3fFn
;
5846 fn
.glVertexAttrib3fFn
= Debug_glVertexAttrib3f
;
5848 if (!debug_fn
.glVertexAttrib3fvFn
) {
5849 debug_fn
.glVertexAttrib3fvFn
= fn
.glVertexAttrib3fvFn
;
5850 fn
.glVertexAttrib3fvFn
= Debug_glVertexAttrib3fv
;
5852 if (!debug_fn
.glVertexAttrib4fFn
) {
5853 debug_fn
.glVertexAttrib4fFn
= fn
.glVertexAttrib4fFn
;
5854 fn
.glVertexAttrib4fFn
= Debug_glVertexAttrib4f
;
5856 if (!debug_fn
.glVertexAttrib4fvFn
) {
5857 debug_fn
.glVertexAttrib4fvFn
= fn
.glVertexAttrib4fvFn
;
5858 fn
.glVertexAttrib4fvFn
= Debug_glVertexAttrib4fv
;
5860 if (!debug_fn
.glVertexAttribDivisorANGLEFn
) {
5861 debug_fn
.glVertexAttribDivisorANGLEFn
= fn
.glVertexAttribDivisorANGLEFn
;
5862 fn
.glVertexAttribDivisorANGLEFn
= Debug_glVertexAttribDivisorANGLE
;
5864 if (!debug_fn
.glVertexAttribI4iFn
) {
5865 debug_fn
.glVertexAttribI4iFn
= fn
.glVertexAttribI4iFn
;
5866 fn
.glVertexAttribI4iFn
= Debug_glVertexAttribI4i
;
5868 if (!debug_fn
.glVertexAttribI4ivFn
) {
5869 debug_fn
.glVertexAttribI4ivFn
= fn
.glVertexAttribI4ivFn
;
5870 fn
.glVertexAttribI4ivFn
= Debug_glVertexAttribI4iv
;
5872 if (!debug_fn
.glVertexAttribI4uiFn
) {
5873 debug_fn
.glVertexAttribI4uiFn
= fn
.glVertexAttribI4uiFn
;
5874 fn
.glVertexAttribI4uiFn
= Debug_glVertexAttribI4ui
;
5876 if (!debug_fn
.glVertexAttribI4uivFn
) {
5877 debug_fn
.glVertexAttribI4uivFn
= fn
.glVertexAttribI4uivFn
;
5878 fn
.glVertexAttribI4uivFn
= Debug_glVertexAttribI4uiv
;
5880 if (!debug_fn
.glVertexAttribIPointerFn
) {
5881 debug_fn
.glVertexAttribIPointerFn
= fn
.glVertexAttribIPointerFn
;
5882 fn
.glVertexAttribIPointerFn
= Debug_glVertexAttribIPointer
;
5884 if (!debug_fn
.glVertexAttribPointerFn
) {
5885 debug_fn
.glVertexAttribPointerFn
= fn
.glVertexAttribPointerFn
;
5886 fn
.glVertexAttribPointerFn
= Debug_glVertexAttribPointer
;
5888 if (!debug_fn
.glViewportFn
) {
5889 debug_fn
.glViewportFn
= fn
.glViewportFn
;
5890 fn
.glViewportFn
= Debug_glViewport
;
5892 if (!debug_fn
.glWaitSyncFn
) {
5893 debug_fn
.glWaitSyncFn
= fn
.glWaitSyncFn
;
5894 fn
.glWaitSyncFn
= Debug_glWaitSync
;
5896 g_debugBindingsInitialized
= true;
5899 void DriverGL::ClearBindings() {
5900 memset(this, 0, sizeof(*this));
5903 void GLApiBase::glActiveTextureFn(GLenum texture
) {
5904 driver_
->fn
.glActiveTextureFn(texture
);
5907 void GLApiBase::glAttachShaderFn(GLuint program
, GLuint shader
) {
5908 driver_
->fn
.glAttachShaderFn(program
, shader
);
5911 void GLApiBase::glBeginQueryFn(GLenum target
, GLuint id
) {
5912 driver_
->fn
.glBeginQueryFn(target
, id
);
5915 void GLApiBase::glBeginTransformFeedbackFn(GLenum primitiveMode
) {
5916 driver_
->fn
.glBeginTransformFeedbackFn(primitiveMode
);
5919 void GLApiBase::glBindAttribLocationFn(GLuint program
,
5922 driver_
->fn
.glBindAttribLocationFn(program
, index
, name
);
5925 void GLApiBase::glBindBufferFn(GLenum target
, GLuint buffer
) {
5926 driver_
->fn
.glBindBufferFn(target
, buffer
);
5929 void GLApiBase::glBindBufferBaseFn(GLenum target
, GLuint index
, GLuint buffer
) {
5930 driver_
->fn
.glBindBufferBaseFn(target
, index
, buffer
);
5933 void GLApiBase::glBindBufferRangeFn(GLenum target
,
5938 driver_
->fn
.glBindBufferRangeFn(target
, index
, buffer
, offset
, size
);
5941 void GLApiBase::glBindFragDataLocationFn(GLuint program
,
5944 driver_
->fn
.glBindFragDataLocationFn(program
, colorNumber
, name
);
5947 void GLApiBase::glBindFragDataLocationIndexedFn(GLuint program
,
5951 driver_
->fn
.glBindFragDataLocationIndexedFn(program
, colorNumber
, index
,
5955 void GLApiBase::glBindFramebufferEXTFn(GLenum target
, GLuint framebuffer
) {
5956 driver_
->fn
.glBindFramebufferEXTFn(target
, framebuffer
);
5959 void GLApiBase::glBindRenderbufferEXTFn(GLenum target
, GLuint renderbuffer
) {
5960 driver_
->fn
.glBindRenderbufferEXTFn(target
, renderbuffer
);
5963 void GLApiBase::glBindSamplerFn(GLuint unit
, GLuint sampler
) {
5964 driver_
->fn
.glBindSamplerFn(unit
, sampler
);
5967 void GLApiBase::glBindTextureFn(GLenum target
, GLuint texture
) {
5968 driver_
->fn
.glBindTextureFn(target
, texture
);
5971 void GLApiBase::glBindTransformFeedbackFn(GLenum target
, GLuint id
) {
5972 driver_
->fn
.glBindTransformFeedbackFn(target
, id
);
5975 void GLApiBase::glBindVertexArrayOESFn(GLuint array
) {
5976 driver_
->fn
.glBindVertexArrayOESFn(array
);
5979 void GLApiBase::glBlendBarrierKHRFn(void) {
5980 driver_
->fn
.glBlendBarrierKHRFn();
5983 void GLApiBase::glBlendColorFn(GLclampf red
,
5987 driver_
->fn
.glBlendColorFn(red
, green
, blue
, alpha
);
5990 void GLApiBase::glBlendEquationFn(GLenum mode
) {
5991 driver_
->fn
.glBlendEquationFn(mode
);
5994 void GLApiBase::glBlendEquationSeparateFn(GLenum modeRGB
, GLenum modeAlpha
) {
5995 driver_
->fn
.glBlendEquationSeparateFn(modeRGB
, modeAlpha
);
5998 void GLApiBase::glBlendFuncFn(GLenum sfactor
, GLenum dfactor
) {
5999 driver_
->fn
.glBlendFuncFn(sfactor
, dfactor
);
6002 void GLApiBase::glBlendFuncSeparateFn(GLenum srcRGB
,
6006 driver_
->fn
.glBlendFuncSeparateFn(srcRGB
, dstRGB
, srcAlpha
, dstAlpha
);
6009 void GLApiBase::glBlitFramebufferFn(GLint srcX0
,
6019 driver_
->fn
.glBlitFramebufferFn(srcX0
, srcY0
, srcX1
, srcY1
, dstX0
, dstY0
,
6020 dstX1
, dstY1
, mask
, filter
);
6023 void GLApiBase::glBlitFramebufferANGLEFn(GLint srcX0
,
6033 driver_
->fn
.glBlitFramebufferANGLEFn(srcX0
, srcY0
, srcX1
, srcY1
, dstX0
, dstY0
,
6034 dstX1
, dstY1
, mask
, filter
);
6037 void GLApiBase::glBlitFramebufferEXTFn(GLint srcX0
,
6047 driver_
->fn
.glBlitFramebufferEXTFn(srcX0
, srcY0
, srcX1
, srcY1
, dstX0
, dstY0
,
6048 dstX1
, dstY1
, mask
, filter
);
6051 void GLApiBase::glBufferDataFn(GLenum target
,
6055 driver_
->fn
.glBufferDataFn(target
, size
, data
, usage
);
6058 void GLApiBase::glBufferSubDataFn(GLenum target
,
6062 driver_
->fn
.glBufferSubDataFn(target
, offset
, size
, data
);
6065 GLenum
GLApiBase::glCheckFramebufferStatusEXTFn(GLenum target
) {
6066 return driver_
->fn
.glCheckFramebufferStatusEXTFn(target
);
6069 void GLApiBase::glClearFn(GLbitfield mask
) {
6070 driver_
->fn
.glClearFn(mask
);
6073 void GLApiBase::glClearBufferfiFn(GLenum buffer
,
6075 const GLfloat depth
,
6077 driver_
->fn
.glClearBufferfiFn(buffer
, drawbuffer
, depth
, stencil
);
6080 void GLApiBase::glClearBufferfvFn(GLenum buffer
,
6082 const GLfloat
* value
) {
6083 driver_
->fn
.glClearBufferfvFn(buffer
, drawbuffer
, value
);
6086 void GLApiBase::glClearBufferivFn(GLenum buffer
,
6088 const GLint
* value
) {
6089 driver_
->fn
.glClearBufferivFn(buffer
, drawbuffer
, value
);
6092 void GLApiBase::glClearBufferuivFn(GLenum buffer
,
6094 const GLuint
* value
) {
6095 driver_
->fn
.glClearBufferuivFn(buffer
, drawbuffer
, value
);
6098 void GLApiBase::glClearColorFn(GLclampf red
,
6102 driver_
->fn
.glClearColorFn(red
, green
, blue
, alpha
);
6105 void GLApiBase::glClearDepthFn(GLclampd depth
) {
6106 driver_
->fn
.glClearDepthFn(depth
);
6109 void GLApiBase::glClearDepthfFn(GLclampf depth
) {
6110 driver_
->fn
.glClearDepthfFn(depth
);
6113 void GLApiBase::glClearStencilFn(GLint s
) {
6114 driver_
->fn
.glClearStencilFn(s
);
6117 GLenum
GLApiBase::glClientWaitSyncFn(GLsync sync
,
6120 return driver_
->fn
.glClientWaitSyncFn(sync
, flags
, timeout
);
6123 void GLApiBase::glColorMaskFn(GLboolean red
,
6127 driver_
->fn
.glColorMaskFn(red
, green
, blue
, alpha
);
6130 void GLApiBase::glCompileShaderFn(GLuint shader
) {
6131 driver_
->fn
.glCompileShaderFn(shader
);
6134 void GLApiBase::glCompressedTexImage2DFn(GLenum target
,
6136 GLenum internalformat
,
6142 driver_
->fn
.glCompressedTexImage2DFn(target
, level
, internalformat
, width
,
6143 height
, border
, imageSize
, data
);
6146 void GLApiBase::glCompressedTexImage3DFn(GLenum target
,
6148 GLenum internalformat
,
6155 driver_
->fn
.glCompressedTexImage3DFn(target
, level
, internalformat
, width
,
6156 height
, depth
, border
, imageSize
, data
);
6159 void GLApiBase::glCompressedTexSubImage2DFn(GLenum target
,
6168 driver_
->fn
.glCompressedTexSubImage2DFn(
6169 target
, level
, xoffset
, yoffset
, width
, height
, format
, imageSize
, data
);
6172 void GLApiBase::glCompressedTexSubImage3DFn(GLenum target
,
6183 driver_
->fn
.glCompressedTexSubImage3DFn(target
, level
, xoffset
, yoffset
,
6184 zoffset
, width
, height
, depth
, format
,
6188 void GLApiBase::glCopyBufferSubDataFn(GLenum readTarget
,
6190 GLintptr readOffset
,
6191 GLintptr writeOffset
,
6193 driver_
->fn
.glCopyBufferSubDataFn(readTarget
, writeTarget
, readOffset
,
6197 void GLApiBase::glCopyTexImage2DFn(GLenum target
,
6199 GLenum internalformat
,
6205 driver_
->fn
.glCopyTexImage2DFn(target
, level
, internalformat
, x
, y
, width
,
6209 void GLApiBase::glCopyTexSubImage2DFn(GLenum target
,
6217 driver_
->fn
.glCopyTexSubImage2DFn(target
, level
, xoffset
, yoffset
, x
, y
,
6221 void GLApiBase::glCopyTexSubImage3DFn(GLenum target
,
6230 driver_
->fn
.glCopyTexSubImage3DFn(target
, level
, xoffset
, yoffset
, zoffset
, x
,
6234 GLuint
GLApiBase::glCreateProgramFn(void) {
6235 return driver_
->fn
.glCreateProgramFn();
6238 GLuint
GLApiBase::glCreateShaderFn(GLenum type
) {
6239 return driver_
->fn
.glCreateShaderFn(type
);
6242 void GLApiBase::glCullFaceFn(GLenum mode
) {
6243 driver_
->fn
.glCullFaceFn(mode
);
6246 void GLApiBase::glDeleteBuffersARBFn(GLsizei n
, const GLuint
* buffers
) {
6247 driver_
->fn
.glDeleteBuffersARBFn(n
, buffers
);
6250 void GLApiBase::glDeleteFencesAPPLEFn(GLsizei n
, const GLuint
* fences
) {
6251 driver_
->fn
.glDeleteFencesAPPLEFn(n
, fences
);
6254 void GLApiBase::glDeleteFencesNVFn(GLsizei n
, const GLuint
* fences
) {
6255 driver_
->fn
.glDeleteFencesNVFn(n
, fences
);
6258 void GLApiBase::glDeleteFramebuffersEXTFn(GLsizei n
,
6259 const GLuint
* framebuffers
) {
6260 driver_
->fn
.glDeleteFramebuffersEXTFn(n
, framebuffers
);
6263 void GLApiBase::glDeleteProgramFn(GLuint program
) {
6264 driver_
->fn
.glDeleteProgramFn(program
);
6267 void GLApiBase::glDeleteQueriesFn(GLsizei n
, const GLuint
* ids
) {
6268 driver_
->fn
.glDeleteQueriesFn(n
, ids
);
6271 void GLApiBase::glDeleteRenderbuffersEXTFn(GLsizei n
,
6272 const GLuint
* renderbuffers
) {
6273 driver_
->fn
.glDeleteRenderbuffersEXTFn(n
, renderbuffers
);
6276 void GLApiBase::glDeleteSamplersFn(GLsizei n
, const GLuint
* samplers
) {
6277 driver_
->fn
.glDeleteSamplersFn(n
, samplers
);
6280 void GLApiBase::glDeleteShaderFn(GLuint shader
) {
6281 driver_
->fn
.glDeleteShaderFn(shader
);
6284 void GLApiBase::glDeleteSyncFn(GLsync sync
) {
6285 driver_
->fn
.glDeleteSyncFn(sync
);
6288 void GLApiBase::glDeleteTexturesFn(GLsizei n
, const GLuint
* textures
) {
6289 driver_
->fn
.glDeleteTexturesFn(n
, textures
);
6292 void GLApiBase::glDeleteTransformFeedbacksFn(GLsizei n
, const GLuint
* ids
) {
6293 driver_
->fn
.glDeleteTransformFeedbacksFn(n
, ids
);
6296 void GLApiBase::glDeleteVertexArraysOESFn(GLsizei n
, const GLuint
* arrays
) {
6297 driver_
->fn
.glDeleteVertexArraysOESFn(n
, arrays
);
6300 void GLApiBase::glDepthFuncFn(GLenum func
) {
6301 driver_
->fn
.glDepthFuncFn(func
);
6304 void GLApiBase::glDepthMaskFn(GLboolean flag
) {
6305 driver_
->fn
.glDepthMaskFn(flag
);
6308 void GLApiBase::glDepthRangeFn(GLclampd zNear
, GLclampd zFar
) {
6309 driver_
->fn
.glDepthRangeFn(zNear
, zFar
);
6312 void GLApiBase::glDepthRangefFn(GLclampf zNear
, GLclampf zFar
) {
6313 driver_
->fn
.glDepthRangefFn(zNear
, zFar
);
6316 void GLApiBase::glDetachShaderFn(GLuint program
, GLuint shader
) {
6317 driver_
->fn
.glDetachShaderFn(program
, shader
);
6320 void GLApiBase::glDisableFn(GLenum cap
) {
6321 driver_
->fn
.glDisableFn(cap
);
6324 void GLApiBase::glDisableVertexAttribArrayFn(GLuint index
) {
6325 driver_
->fn
.glDisableVertexAttribArrayFn(index
);
6328 void GLApiBase::glDiscardFramebufferEXTFn(GLenum target
,
6329 GLsizei numAttachments
,
6330 const GLenum
* attachments
) {
6331 driver_
->fn
.glDiscardFramebufferEXTFn(target
, numAttachments
, attachments
);
6334 void GLApiBase::glDrawArraysFn(GLenum mode
, GLint first
, GLsizei count
) {
6335 driver_
->fn
.glDrawArraysFn(mode
, first
, count
);
6338 void GLApiBase::glDrawArraysInstancedANGLEFn(GLenum mode
,
6341 GLsizei primcount
) {
6342 driver_
->fn
.glDrawArraysInstancedANGLEFn(mode
, first
, count
, primcount
);
6345 void GLApiBase::glDrawBufferFn(GLenum mode
) {
6346 driver_
->fn
.glDrawBufferFn(mode
);
6349 void GLApiBase::glDrawBuffersARBFn(GLsizei n
, const GLenum
* bufs
) {
6350 driver_
->fn
.glDrawBuffersARBFn(n
, bufs
);
6353 void GLApiBase::glDrawElementsFn(GLenum mode
,
6356 const void* indices
) {
6357 driver_
->fn
.glDrawElementsFn(mode
, count
, type
, indices
);
6360 void GLApiBase::glDrawElementsInstancedANGLEFn(GLenum mode
,
6363 const void* indices
,
6364 GLsizei primcount
) {
6365 driver_
->fn
.glDrawElementsInstancedANGLEFn(mode
, count
, type
, indices
,
6369 void GLApiBase::glDrawRangeElementsFn(GLenum mode
,
6374 const void* indices
) {
6375 driver_
->fn
.glDrawRangeElementsFn(mode
, start
, end
, count
, type
, indices
);
6378 void GLApiBase::glEGLImageTargetRenderbufferStorageOESFn(GLenum target
,
6379 GLeglImageOES image
) {
6380 driver_
->fn
.glEGLImageTargetRenderbufferStorageOESFn(target
, image
);
6383 void GLApiBase::glEGLImageTargetTexture2DOESFn(GLenum target
,
6384 GLeglImageOES image
) {
6385 driver_
->fn
.glEGLImageTargetTexture2DOESFn(target
, image
);
6388 void GLApiBase::glEnableFn(GLenum cap
) {
6389 driver_
->fn
.glEnableFn(cap
);
6392 void GLApiBase::glEnableVertexAttribArrayFn(GLuint index
) {
6393 driver_
->fn
.glEnableVertexAttribArrayFn(index
);
6396 void GLApiBase::glEndQueryFn(GLenum target
) {
6397 driver_
->fn
.glEndQueryFn(target
);
6400 void GLApiBase::glEndTransformFeedbackFn(void) {
6401 driver_
->fn
.glEndTransformFeedbackFn();
6404 GLsync
GLApiBase::glFenceSyncFn(GLenum condition
, GLbitfield flags
) {
6405 return driver_
->fn
.glFenceSyncFn(condition
, flags
);
6408 void GLApiBase::glFinishFn(void) {
6409 driver_
->fn
.glFinishFn();
6412 void GLApiBase::glFinishFenceAPPLEFn(GLuint fence
) {
6413 driver_
->fn
.glFinishFenceAPPLEFn(fence
);
6416 void GLApiBase::glFinishFenceNVFn(GLuint fence
) {
6417 driver_
->fn
.glFinishFenceNVFn(fence
);
6420 void GLApiBase::glFlushFn(void) {
6421 driver_
->fn
.glFlushFn();
6424 void GLApiBase::glFlushMappedBufferRangeFn(GLenum target
,
6426 GLsizeiptr length
) {
6427 driver_
->fn
.glFlushMappedBufferRangeFn(target
, offset
, length
);
6430 void GLApiBase::glFramebufferRenderbufferEXTFn(GLenum target
,
6432 GLenum renderbuffertarget
,
6433 GLuint renderbuffer
) {
6434 driver_
->fn
.glFramebufferRenderbufferEXTFn(target
, attachment
,
6435 renderbuffertarget
, renderbuffer
);
6438 void GLApiBase::glFramebufferTexture2DEXTFn(GLenum target
,
6443 driver_
->fn
.glFramebufferTexture2DEXTFn(target
, attachment
, textarget
,
6447 void GLApiBase::glFramebufferTexture2DMultisampleEXTFn(GLenum target
,
6453 driver_
->fn
.glFramebufferTexture2DMultisampleEXTFn(
6454 target
, attachment
, textarget
, texture
, level
, samples
);
6457 void GLApiBase::glFramebufferTexture2DMultisampleIMGFn(GLenum target
,
6463 driver_
->fn
.glFramebufferTexture2DMultisampleIMGFn(
6464 target
, attachment
, textarget
, texture
, level
, samples
);
6467 void GLApiBase::glFramebufferTextureLayerFn(GLenum target
,
6472 driver_
->fn
.glFramebufferTextureLayerFn(target
, attachment
, texture
, level
,
6476 void GLApiBase::glFrontFaceFn(GLenum mode
) {
6477 driver_
->fn
.glFrontFaceFn(mode
);
6480 void GLApiBase::glGenBuffersARBFn(GLsizei n
, GLuint
* buffers
) {
6481 driver_
->fn
.glGenBuffersARBFn(n
, buffers
);
6484 void GLApiBase::glGenerateMipmapEXTFn(GLenum target
) {
6485 driver_
->fn
.glGenerateMipmapEXTFn(target
);
6488 void GLApiBase::glGenFencesAPPLEFn(GLsizei n
, GLuint
* fences
) {
6489 driver_
->fn
.glGenFencesAPPLEFn(n
, fences
);
6492 void GLApiBase::glGenFencesNVFn(GLsizei n
, GLuint
* fences
) {
6493 driver_
->fn
.glGenFencesNVFn(n
, fences
);
6496 void GLApiBase::glGenFramebuffersEXTFn(GLsizei n
, GLuint
* framebuffers
) {
6497 driver_
->fn
.glGenFramebuffersEXTFn(n
, framebuffers
);
6500 void GLApiBase::glGenQueriesFn(GLsizei n
, GLuint
* ids
) {
6501 driver_
->fn
.glGenQueriesFn(n
, ids
);
6504 void GLApiBase::glGenRenderbuffersEXTFn(GLsizei n
, GLuint
* renderbuffers
) {
6505 driver_
->fn
.glGenRenderbuffersEXTFn(n
, renderbuffers
);
6508 void GLApiBase::glGenSamplersFn(GLsizei n
, GLuint
* samplers
) {
6509 driver_
->fn
.glGenSamplersFn(n
, samplers
);
6512 void GLApiBase::glGenTexturesFn(GLsizei n
, GLuint
* textures
) {
6513 driver_
->fn
.glGenTexturesFn(n
, textures
);
6516 void GLApiBase::glGenTransformFeedbacksFn(GLsizei n
, GLuint
* ids
) {
6517 driver_
->fn
.glGenTransformFeedbacksFn(n
, ids
);
6520 void GLApiBase::glGenVertexArraysOESFn(GLsizei n
, GLuint
* arrays
) {
6521 driver_
->fn
.glGenVertexArraysOESFn(n
, arrays
);
6524 void GLApiBase::glGetActiveAttribFn(GLuint program
,
6531 driver_
->fn
.glGetActiveAttribFn(program
, index
, bufsize
, length
, size
, type
,
6535 void GLApiBase::glGetActiveUniformFn(GLuint program
,
6542 driver_
->fn
.glGetActiveUniformFn(program
, index
, bufsize
, length
, size
, type
,
6546 void GLApiBase::glGetActiveUniformBlockivFn(GLuint program
,
6547 GLuint uniformBlockIndex
,
6550 driver_
->fn
.glGetActiveUniformBlockivFn(program
, uniformBlockIndex
, pname
,
6554 void GLApiBase::glGetActiveUniformBlockNameFn(GLuint program
,
6555 GLuint uniformBlockIndex
,
6558 char* uniformBlockName
) {
6559 driver_
->fn
.glGetActiveUniformBlockNameFn(program
, uniformBlockIndex
, bufSize
,
6560 length
, uniformBlockName
);
6563 void GLApiBase::glGetActiveUniformsivFn(GLuint program
,
6564 GLsizei uniformCount
,
6565 const GLuint
* uniformIndices
,
6568 driver_
->fn
.glGetActiveUniformsivFn(program
, uniformCount
, uniformIndices
,
6572 void GLApiBase::glGetAttachedShadersFn(GLuint program
,
6576 driver_
->fn
.glGetAttachedShadersFn(program
, maxcount
, count
, shaders
);
6579 GLint
GLApiBase::glGetAttribLocationFn(GLuint program
, const char* name
) {
6580 return driver_
->fn
.glGetAttribLocationFn(program
, name
);
6583 void GLApiBase::glGetBooleanvFn(GLenum pname
, GLboolean
* params
) {
6584 driver_
->fn
.glGetBooleanvFn(pname
, params
);
6587 void GLApiBase::glGetBufferParameterivFn(GLenum target
,
6590 driver_
->fn
.glGetBufferParameterivFn(target
, pname
, params
);
6593 GLenum
GLApiBase::glGetErrorFn(void) {
6594 return driver_
->fn
.glGetErrorFn();
6597 void GLApiBase::glGetFenceivNVFn(GLuint fence
, GLenum pname
, GLint
* params
) {
6598 driver_
->fn
.glGetFenceivNVFn(fence
, pname
, params
);
6601 void GLApiBase::glGetFloatvFn(GLenum pname
, GLfloat
* params
) {
6602 driver_
->fn
.glGetFloatvFn(pname
, params
);
6605 GLint
GLApiBase::glGetFragDataLocationFn(GLuint program
, const char* name
) {
6606 return driver_
->fn
.glGetFragDataLocationFn(program
, name
);
6609 void GLApiBase::glGetFramebufferAttachmentParameterivEXTFn(GLenum target
,
6613 driver_
->fn
.glGetFramebufferAttachmentParameterivEXTFn(target
, attachment
,
6617 GLenum
GLApiBase::glGetGraphicsResetStatusARBFn(void) {
6618 return driver_
->fn
.glGetGraphicsResetStatusARBFn();
6621 void GLApiBase::glGetInteger64i_vFn(GLenum target
,
6624 driver_
->fn
.glGetInteger64i_vFn(target
, index
, data
);
6627 void GLApiBase::glGetInteger64vFn(GLenum pname
, GLint64
* params
) {
6628 driver_
->fn
.glGetInteger64vFn(pname
, params
);
6631 void GLApiBase::glGetIntegeri_vFn(GLenum target
, GLuint index
, GLint
* data
) {
6632 driver_
->fn
.glGetIntegeri_vFn(target
, index
, data
);
6635 void GLApiBase::glGetIntegervFn(GLenum pname
, GLint
* params
) {
6636 driver_
->fn
.glGetIntegervFn(pname
, params
);
6639 void GLApiBase::glGetInternalformativFn(GLenum target
,
6640 GLenum internalformat
,
6644 driver_
->fn
.glGetInternalformativFn(target
, internalformat
, pname
, bufSize
,
6648 void GLApiBase::glGetProgramBinaryFn(GLuint program
,
6651 GLenum
* binaryFormat
,
6653 driver_
->fn
.glGetProgramBinaryFn(program
, bufSize
, length
, binaryFormat
,
6657 void GLApiBase::glGetProgramInfoLogFn(GLuint program
,
6661 driver_
->fn
.glGetProgramInfoLogFn(program
, bufsize
, length
, infolog
);
6664 void GLApiBase::glGetProgramivFn(GLuint program
, GLenum pname
, GLint
* params
) {
6665 driver_
->fn
.glGetProgramivFn(program
, pname
, params
);
6668 GLint
GLApiBase::glGetProgramResourceLocationFn(GLuint program
,
6669 GLenum programInterface
,
6671 return driver_
->fn
.glGetProgramResourceLocationFn(program
, programInterface
,
6675 void GLApiBase::glGetQueryivFn(GLenum target
, GLenum pname
, GLint
* params
) {
6676 driver_
->fn
.glGetQueryivFn(target
, pname
, params
);
6679 void GLApiBase::glGetQueryObjecti64vFn(GLuint id
,
6682 driver_
->fn
.glGetQueryObjecti64vFn(id
, pname
, params
);
6685 void GLApiBase::glGetQueryObjectivFn(GLuint id
, GLenum pname
, GLint
* params
) {
6686 driver_
->fn
.glGetQueryObjectivFn(id
, pname
, params
);
6689 void GLApiBase::glGetQueryObjectui64vFn(GLuint id
,
6692 driver_
->fn
.glGetQueryObjectui64vFn(id
, pname
, params
);
6695 void GLApiBase::glGetQueryObjectuivFn(GLuint id
, GLenum pname
, GLuint
* params
) {
6696 driver_
->fn
.glGetQueryObjectuivFn(id
, pname
, params
);
6699 void GLApiBase::glGetRenderbufferParameterivEXTFn(GLenum target
,
6702 driver_
->fn
.glGetRenderbufferParameterivEXTFn(target
, pname
, params
);
6705 void GLApiBase::glGetSamplerParameterfvFn(GLuint sampler
,
6708 driver_
->fn
.glGetSamplerParameterfvFn(sampler
, pname
, params
);
6711 void GLApiBase::glGetSamplerParameterivFn(GLuint sampler
,
6714 driver_
->fn
.glGetSamplerParameterivFn(sampler
, pname
, params
);
6717 void GLApiBase::glGetShaderInfoLogFn(GLuint shader
,
6721 driver_
->fn
.glGetShaderInfoLogFn(shader
, bufsize
, length
, infolog
);
6724 void GLApiBase::glGetShaderivFn(GLuint shader
, GLenum pname
, GLint
* params
) {
6725 driver_
->fn
.glGetShaderivFn(shader
, pname
, params
);
6728 void GLApiBase::glGetShaderPrecisionFormatFn(GLenum shadertype
,
6729 GLenum precisiontype
,
6732 driver_
->fn
.glGetShaderPrecisionFormatFn(shadertype
, precisiontype
, range
,
6736 void GLApiBase::glGetShaderSourceFn(GLuint shader
,
6740 driver_
->fn
.glGetShaderSourceFn(shader
, bufsize
, length
, source
);
6743 const GLubyte
* GLApiBase::glGetStringFn(GLenum name
) {
6744 return driver_
->fn
.glGetStringFn(name
);
6747 const GLubyte
* GLApiBase::glGetStringiFn(GLenum name
, GLuint index
) {
6748 return driver_
->fn
.glGetStringiFn(name
, index
);
6751 void GLApiBase::glGetSyncivFn(GLsync sync
,
6756 driver_
->fn
.glGetSyncivFn(sync
, pname
, bufSize
, length
, values
);
6759 void GLApiBase::glGetTexLevelParameterfvFn(GLenum target
,
6763 driver_
->fn
.glGetTexLevelParameterfvFn(target
, level
, pname
, params
);
6766 void GLApiBase::glGetTexLevelParameterivFn(GLenum target
,
6770 driver_
->fn
.glGetTexLevelParameterivFn(target
, level
, pname
, params
);
6773 void GLApiBase::glGetTexParameterfvFn(GLenum target
,
6776 driver_
->fn
.glGetTexParameterfvFn(target
, pname
, params
);
6779 void GLApiBase::glGetTexParameterivFn(GLenum target
,
6782 driver_
->fn
.glGetTexParameterivFn(target
, pname
, params
);
6785 void GLApiBase::glGetTransformFeedbackVaryingFn(GLuint program
,
6792 driver_
->fn
.glGetTransformFeedbackVaryingFn(program
, index
, bufSize
, length
,
6796 void GLApiBase::glGetTranslatedShaderSourceANGLEFn(GLuint shader
,
6800 driver_
->fn
.glGetTranslatedShaderSourceANGLEFn(shader
, bufsize
, length
,
6804 GLuint
GLApiBase::glGetUniformBlockIndexFn(GLuint program
,
6805 const char* uniformBlockName
) {
6806 return driver_
->fn
.glGetUniformBlockIndexFn(program
, uniformBlockName
);
6809 void GLApiBase::glGetUniformfvFn(GLuint program
,
6812 driver_
->fn
.glGetUniformfvFn(program
, location
, params
);
6815 void GLApiBase::glGetUniformIndicesFn(GLuint program
,
6816 GLsizei uniformCount
,
6817 const char* const* uniformNames
,
6818 GLuint
* uniformIndices
) {
6819 driver_
->fn
.glGetUniformIndicesFn(program
, uniformCount
, uniformNames
,
6823 void GLApiBase::glGetUniformivFn(GLuint program
,
6826 driver_
->fn
.glGetUniformivFn(program
, location
, params
);
6829 GLint
GLApiBase::glGetUniformLocationFn(GLuint program
, const char* name
) {
6830 return driver_
->fn
.glGetUniformLocationFn(program
, name
);
6833 void GLApiBase::glGetUniformuivFn(GLuint program
,
6836 driver_
->fn
.glGetUniformuivFn(program
, location
, params
);
6839 void GLApiBase::glGetVertexAttribfvFn(GLuint index
,
6842 driver_
->fn
.glGetVertexAttribfvFn(index
, pname
, params
);
6845 void GLApiBase::glGetVertexAttribivFn(GLuint index
,
6848 driver_
->fn
.glGetVertexAttribivFn(index
, pname
, params
);
6851 void GLApiBase::glGetVertexAttribPointervFn(GLuint index
,
6854 driver_
->fn
.glGetVertexAttribPointervFn(index
, pname
, pointer
);
6857 void GLApiBase::glHintFn(GLenum target
, GLenum mode
) {
6858 driver_
->fn
.glHintFn(target
, mode
);
6861 void GLApiBase::glInsertEventMarkerEXTFn(GLsizei length
, const char* marker
) {
6862 driver_
->fn
.glInsertEventMarkerEXTFn(length
, marker
);
6865 void GLApiBase::glInvalidateFramebufferFn(GLenum target
,
6866 GLsizei numAttachments
,
6867 const GLenum
* attachments
) {
6868 driver_
->fn
.glInvalidateFramebufferFn(target
, numAttachments
, attachments
);
6871 void GLApiBase::glInvalidateSubFramebufferFn(GLenum target
,
6872 GLsizei numAttachments
,
6873 const GLenum
* attachments
,
6878 driver_
->fn
.glInvalidateSubFramebufferFn(target
, numAttachments
, attachments
,
6879 x
, y
, width
, height
);
6882 GLboolean
GLApiBase::glIsBufferFn(GLuint buffer
) {
6883 return driver_
->fn
.glIsBufferFn(buffer
);
6886 GLboolean
GLApiBase::glIsEnabledFn(GLenum cap
) {
6887 return driver_
->fn
.glIsEnabledFn(cap
);
6890 GLboolean
GLApiBase::glIsFenceAPPLEFn(GLuint fence
) {
6891 return driver_
->fn
.glIsFenceAPPLEFn(fence
);
6894 GLboolean
GLApiBase::glIsFenceNVFn(GLuint fence
) {
6895 return driver_
->fn
.glIsFenceNVFn(fence
);
6898 GLboolean
GLApiBase::glIsFramebufferEXTFn(GLuint framebuffer
) {
6899 return driver_
->fn
.glIsFramebufferEXTFn(framebuffer
);
6902 GLboolean
GLApiBase::glIsProgramFn(GLuint program
) {
6903 return driver_
->fn
.glIsProgramFn(program
);
6906 GLboolean
GLApiBase::glIsQueryFn(GLuint query
) {
6907 return driver_
->fn
.glIsQueryFn(query
);
6910 GLboolean
GLApiBase::glIsRenderbufferEXTFn(GLuint renderbuffer
) {
6911 return driver_
->fn
.glIsRenderbufferEXTFn(renderbuffer
);
6914 GLboolean
GLApiBase::glIsSamplerFn(GLuint sampler
) {
6915 return driver_
->fn
.glIsSamplerFn(sampler
);
6918 GLboolean
GLApiBase::glIsShaderFn(GLuint shader
) {
6919 return driver_
->fn
.glIsShaderFn(shader
);
6922 GLboolean
GLApiBase::glIsSyncFn(GLsync sync
) {
6923 return driver_
->fn
.glIsSyncFn(sync
);
6926 GLboolean
GLApiBase::glIsTextureFn(GLuint texture
) {
6927 return driver_
->fn
.glIsTextureFn(texture
);
6930 GLboolean
GLApiBase::glIsTransformFeedbackFn(GLuint id
) {
6931 return driver_
->fn
.glIsTransformFeedbackFn(id
);
6934 GLboolean
GLApiBase::glIsVertexArrayOESFn(GLuint array
) {
6935 return driver_
->fn
.glIsVertexArrayOESFn(array
);
6938 void GLApiBase::glLineWidthFn(GLfloat width
) {
6939 driver_
->fn
.glLineWidthFn(width
);
6942 void GLApiBase::glLinkProgramFn(GLuint program
) {
6943 driver_
->fn
.glLinkProgramFn(program
);
6946 void* GLApiBase::glMapBufferFn(GLenum target
, GLenum access
) {
6947 return driver_
->fn
.glMapBufferFn(target
, access
);
6950 void* GLApiBase::glMapBufferRangeFn(GLenum target
,
6953 GLbitfield access
) {
6954 return driver_
->fn
.glMapBufferRangeFn(target
, offset
, length
, access
);
6957 void GLApiBase::glMatrixLoadfEXTFn(GLenum matrixMode
, const GLfloat
* m
) {
6958 driver_
->fn
.glMatrixLoadfEXTFn(matrixMode
, m
);
6961 void GLApiBase::glMatrixLoadIdentityEXTFn(GLenum matrixMode
) {
6962 driver_
->fn
.glMatrixLoadIdentityEXTFn(matrixMode
);
6965 void GLApiBase::glPauseTransformFeedbackFn(void) {
6966 driver_
->fn
.glPauseTransformFeedbackFn();
6969 void GLApiBase::glPixelStoreiFn(GLenum pname
, GLint param
) {
6970 driver_
->fn
.glPixelStoreiFn(pname
, param
);
6973 void GLApiBase::glPointParameteriFn(GLenum pname
, GLint param
) {
6974 driver_
->fn
.glPointParameteriFn(pname
, param
);
6977 void GLApiBase::glPolygonOffsetFn(GLfloat factor
, GLfloat units
) {
6978 driver_
->fn
.glPolygonOffsetFn(factor
, units
);
6981 void GLApiBase::glPopGroupMarkerEXTFn(void) {
6982 driver_
->fn
.glPopGroupMarkerEXTFn();
6985 void GLApiBase::glProgramBinaryFn(GLuint program
,
6986 GLenum binaryFormat
,
6987 const GLvoid
* binary
,
6989 driver_
->fn
.glProgramBinaryFn(program
, binaryFormat
, binary
, length
);
6992 void GLApiBase::glProgramParameteriFn(GLuint program
,
6995 driver_
->fn
.glProgramParameteriFn(program
, pname
, value
);
6998 void GLApiBase::glPushGroupMarkerEXTFn(GLsizei length
, const char* marker
) {
6999 driver_
->fn
.glPushGroupMarkerEXTFn(length
, marker
);
7002 void GLApiBase::glQueryCounterFn(GLuint id
, GLenum target
) {
7003 driver_
->fn
.glQueryCounterFn(id
, target
);
7006 void GLApiBase::glReadBufferFn(GLenum src
) {
7007 driver_
->fn
.glReadBufferFn(src
);
7010 void GLApiBase::glReadPixelsFn(GLint x
,
7017 driver_
->fn
.glReadPixelsFn(x
, y
, width
, height
, format
, type
, pixels
);
7020 void GLApiBase::glReleaseShaderCompilerFn(void) {
7021 driver_
->fn
.glReleaseShaderCompilerFn();
7024 void GLApiBase::glRenderbufferStorageEXTFn(GLenum target
,
7025 GLenum internalformat
,
7028 driver_
->fn
.glRenderbufferStorageEXTFn(target
, internalformat
, width
, height
);
7031 void GLApiBase::glRenderbufferStorageMultisampleFn(GLenum target
,
7033 GLenum internalformat
,
7036 driver_
->fn
.glRenderbufferStorageMultisampleFn(target
, samples
,
7037 internalformat
, width
, height
);
7040 void GLApiBase::glRenderbufferStorageMultisampleANGLEFn(GLenum target
,
7042 GLenum internalformat
,
7045 driver_
->fn
.glRenderbufferStorageMultisampleANGLEFn(
7046 target
, samples
, internalformat
, width
, height
);
7049 void GLApiBase::glRenderbufferStorageMultisampleEXTFn(GLenum target
,
7051 GLenum internalformat
,
7054 driver_
->fn
.glRenderbufferStorageMultisampleEXTFn(
7055 target
, samples
, internalformat
, width
, height
);
7058 void GLApiBase::glRenderbufferStorageMultisampleIMGFn(GLenum target
,
7060 GLenum internalformat
,
7063 driver_
->fn
.glRenderbufferStorageMultisampleIMGFn(
7064 target
, samples
, internalformat
, width
, height
);
7067 void GLApiBase::glResumeTransformFeedbackFn(void) {
7068 driver_
->fn
.glResumeTransformFeedbackFn();
7071 void GLApiBase::glSampleCoverageFn(GLclampf value
, GLboolean invert
) {
7072 driver_
->fn
.glSampleCoverageFn(value
, invert
);
7075 void GLApiBase::glSamplerParameterfFn(GLuint sampler
,
7078 driver_
->fn
.glSamplerParameterfFn(sampler
, pname
, param
);
7081 void GLApiBase::glSamplerParameterfvFn(GLuint sampler
,
7083 const GLfloat
* params
) {
7084 driver_
->fn
.glSamplerParameterfvFn(sampler
, pname
, params
);
7087 void GLApiBase::glSamplerParameteriFn(GLuint sampler
,
7090 driver_
->fn
.glSamplerParameteriFn(sampler
, pname
, param
);
7093 void GLApiBase::glSamplerParameterivFn(GLuint sampler
,
7095 const GLint
* params
) {
7096 driver_
->fn
.glSamplerParameterivFn(sampler
, pname
, params
);
7099 void GLApiBase::glScissorFn(GLint x
, GLint y
, GLsizei width
, GLsizei height
) {
7100 driver_
->fn
.glScissorFn(x
, y
, width
, height
);
7103 void GLApiBase::glSetFenceAPPLEFn(GLuint fence
) {
7104 driver_
->fn
.glSetFenceAPPLEFn(fence
);
7107 void GLApiBase::glSetFenceNVFn(GLuint fence
, GLenum condition
) {
7108 driver_
->fn
.glSetFenceNVFn(fence
, condition
);
7111 void GLApiBase::glShaderBinaryFn(GLsizei n
,
7112 const GLuint
* shaders
,
7113 GLenum binaryformat
,
7116 driver_
->fn
.glShaderBinaryFn(n
, shaders
, binaryformat
, binary
, length
);
7119 void GLApiBase::glShaderSourceFn(GLuint shader
,
7121 const char* const* str
,
7122 const GLint
* length
) {
7123 driver_
->fn
.glShaderSourceFn(shader
, count
, str
, length
);
7126 void GLApiBase::glStencilFuncFn(GLenum func
, GLint ref
, GLuint mask
) {
7127 driver_
->fn
.glStencilFuncFn(func
, ref
, mask
);
7130 void GLApiBase::glStencilFuncSeparateFn(GLenum face
,
7134 driver_
->fn
.glStencilFuncSeparateFn(face
, func
, ref
, mask
);
7137 void GLApiBase::glStencilMaskFn(GLuint mask
) {
7138 driver_
->fn
.glStencilMaskFn(mask
);
7141 void GLApiBase::glStencilMaskSeparateFn(GLenum face
, GLuint mask
) {
7142 driver_
->fn
.glStencilMaskSeparateFn(face
, mask
);
7145 void GLApiBase::glStencilOpFn(GLenum fail
, GLenum zfail
, GLenum zpass
) {
7146 driver_
->fn
.glStencilOpFn(fail
, zfail
, zpass
);
7149 void GLApiBase::glStencilOpSeparateFn(GLenum face
,
7153 driver_
->fn
.glStencilOpSeparateFn(face
, fail
, zfail
, zpass
);
7156 GLboolean
GLApiBase::glTestFenceAPPLEFn(GLuint fence
) {
7157 return driver_
->fn
.glTestFenceAPPLEFn(fence
);
7160 GLboolean
GLApiBase::glTestFenceNVFn(GLuint fence
) {
7161 return driver_
->fn
.glTestFenceNVFn(fence
);
7164 void GLApiBase::glTexImage2DFn(GLenum target
,
7166 GLint internalformat
,
7172 const void* pixels
) {
7173 driver_
->fn
.glTexImage2DFn(target
, level
, internalformat
, width
, height
,
7174 border
, format
, type
, pixels
);
7177 void GLApiBase::glTexImage3DFn(GLenum target
,
7179 GLint internalformat
,
7186 const void* pixels
) {
7187 driver_
->fn
.glTexImage3DFn(target
, level
, internalformat
, width
, height
,
7188 depth
, border
, format
, type
, pixels
);
7191 void GLApiBase::glTexParameterfFn(GLenum target
, GLenum pname
, GLfloat param
) {
7192 driver_
->fn
.glTexParameterfFn(target
, pname
, param
);
7195 void GLApiBase::glTexParameterfvFn(GLenum target
,
7197 const GLfloat
* params
) {
7198 driver_
->fn
.glTexParameterfvFn(target
, pname
, params
);
7201 void GLApiBase::glTexParameteriFn(GLenum target
, GLenum pname
, GLint param
) {
7202 driver_
->fn
.glTexParameteriFn(target
, pname
, param
);
7205 void GLApiBase::glTexParameterivFn(GLenum target
,
7207 const GLint
* params
) {
7208 driver_
->fn
.glTexParameterivFn(target
, pname
, params
);
7211 void GLApiBase::glTexStorage2DEXTFn(GLenum target
,
7213 GLenum internalformat
,
7216 driver_
->fn
.glTexStorage2DEXTFn(target
, levels
, internalformat
, width
,
7220 void GLApiBase::glTexStorage3DFn(GLenum target
,
7222 GLenum internalformat
,
7226 driver_
->fn
.glTexStorage3DFn(target
, levels
, internalformat
, width
, height
,
7230 void GLApiBase::glTexSubImage2DFn(GLenum target
,
7238 const void* pixels
) {
7239 driver_
->fn
.glTexSubImage2DFn(target
, level
, xoffset
, yoffset
, width
, height
,
7240 format
, type
, pixels
);
7243 void GLApiBase::glTexSubImage3DFn(GLenum target
,
7253 const void* pixels
) {
7254 driver_
->fn
.glTexSubImage3DFn(target
, level
, xoffset
, yoffset
, zoffset
, width
,
7255 height
, depth
, format
, type
, pixels
);
7258 void GLApiBase::glTransformFeedbackVaryingsFn(GLuint program
,
7260 const char* const* varyings
,
7261 GLenum bufferMode
) {
7262 driver_
->fn
.glTransformFeedbackVaryingsFn(program
, count
, varyings
,
7266 void GLApiBase::glUniform1fFn(GLint location
, GLfloat x
) {
7267 driver_
->fn
.glUniform1fFn(location
, x
);
7270 void GLApiBase::glUniform1fvFn(GLint location
,
7273 driver_
->fn
.glUniform1fvFn(location
, count
, v
);
7276 void GLApiBase::glUniform1iFn(GLint location
, GLint x
) {
7277 driver_
->fn
.glUniform1iFn(location
, x
);
7280 void GLApiBase::glUniform1ivFn(GLint location
, GLsizei count
, const GLint
* v
) {
7281 driver_
->fn
.glUniform1ivFn(location
, count
, v
);
7284 void GLApiBase::glUniform1uiFn(GLint location
, GLuint v0
) {
7285 driver_
->fn
.glUniform1uiFn(location
, v0
);
7288 void GLApiBase::glUniform1uivFn(GLint location
,
7291 driver_
->fn
.glUniform1uivFn(location
, count
, v
);
7294 void GLApiBase::glUniform2fFn(GLint location
, GLfloat x
, GLfloat y
) {
7295 driver_
->fn
.glUniform2fFn(location
, x
, y
);
7298 void GLApiBase::glUniform2fvFn(GLint location
,
7301 driver_
->fn
.glUniform2fvFn(location
, count
, v
);
7304 void GLApiBase::glUniform2iFn(GLint location
, GLint x
, GLint y
) {
7305 driver_
->fn
.glUniform2iFn(location
, x
, y
);
7308 void GLApiBase::glUniform2ivFn(GLint location
, GLsizei count
, const GLint
* v
) {
7309 driver_
->fn
.glUniform2ivFn(location
, count
, v
);
7312 void GLApiBase::glUniform2uiFn(GLint location
, GLuint v0
, GLuint v1
) {
7313 driver_
->fn
.glUniform2uiFn(location
, v0
, v1
);
7316 void GLApiBase::glUniform2uivFn(GLint location
,
7319 driver_
->fn
.glUniform2uivFn(location
, count
, v
);
7322 void GLApiBase::glUniform3fFn(GLint location
, GLfloat x
, GLfloat y
, GLfloat z
) {
7323 driver_
->fn
.glUniform3fFn(location
, x
, y
, z
);
7326 void GLApiBase::glUniform3fvFn(GLint location
,
7329 driver_
->fn
.glUniform3fvFn(location
, count
, v
);
7332 void GLApiBase::glUniform3iFn(GLint location
, GLint x
, GLint y
, GLint z
) {
7333 driver_
->fn
.glUniform3iFn(location
, x
, y
, z
);
7336 void GLApiBase::glUniform3ivFn(GLint location
, GLsizei count
, const GLint
* v
) {
7337 driver_
->fn
.glUniform3ivFn(location
, count
, v
);
7340 void GLApiBase::glUniform3uiFn(GLint location
,
7344 driver_
->fn
.glUniform3uiFn(location
, v0
, v1
, v2
);
7347 void GLApiBase::glUniform3uivFn(GLint location
,
7350 driver_
->fn
.glUniform3uivFn(location
, count
, v
);
7353 void GLApiBase::glUniform4fFn(GLint location
,
7358 driver_
->fn
.glUniform4fFn(location
, x
, y
, z
, w
);
7361 void GLApiBase::glUniform4fvFn(GLint location
,
7364 driver_
->fn
.glUniform4fvFn(location
, count
, v
);
7367 void GLApiBase::glUniform4iFn(GLint location
,
7372 driver_
->fn
.glUniform4iFn(location
, x
, y
, z
, w
);
7375 void GLApiBase::glUniform4ivFn(GLint location
, GLsizei count
, const GLint
* v
) {
7376 driver_
->fn
.glUniform4ivFn(location
, count
, v
);
7379 void GLApiBase::glUniform4uiFn(GLint location
,
7384 driver_
->fn
.glUniform4uiFn(location
, v0
, v1
, v2
, v3
);
7387 void GLApiBase::glUniform4uivFn(GLint location
,
7390 driver_
->fn
.glUniform4uivFn(location
, count
, v
);
7393 void GLApiBase::glUniformBlockBindingFn(GLuint program
,
7394 GLuint uniformBlockIndex
,
7395 GLuint uniformBlockBinding
) {
7396 driver_
->fn
.glUniformBlockBindingFn(program
, uniformBlockIndex
,
7397 uniformBlockBinding
);
7400 void GLApiBase::glUniformMatrix2fvFn(GLint location
,
7402 GLboolean transpose
,
7403 const GLfloat
* value
) {
7404 driver_
->fn
.glUniformMatrix2fvFn(location
, count
, transpose
, value
);
7407 void GLApiBase::glUniformMatrix2x3fvFn(GLint location
,
7409 GLboolean transpose
,
7410 const GLfloat
* value
) {
7411 driver_
->fn
.glUniformMatrix2x3fvFn(location
, count
, transpose
, value
);
7414 void GLApiBase::glUniformMatrix2x4fvFn(GLint location
,
7416 GLboolean transpose
,
7417 const GLfloat
* value
) {
7418 driver_
->fn
.glUniformMatrix2x4fvFn(location
, count
, transpose
, value
);
7421 void GLApiBase::glUniformMatrix3fvFn(GLint location
,
7423 GLboolean transpose
,
7424 const GLfloat
* value
) {
7425 driver_
->fn
.glUniformMatrix3fvFn(location
, count
, transpose
, value
);
7428 void GLApiBase::glUniformMatrix3x2fvFn(GLint location
,
7430 GLboolean transpose
,
7431 const GLfloat
* value
) {
7432 driver_
->fn
.glUniformMatrix3x2fvFn(location
, count
, transpose
, value
);
7435 void GLApiBase::glUniformMatrix3x4fvFn(GLint location
,
7437 GLboolean transpose
,
7438 const GLfloat
* value
) {
7439 driver_
->fn
.glUniformMatrix3x4fvFn(location
, count
, transpose
, value
);
7442 void GLApiBase::glUniformMatrix4fvFn(GLint location
,
7444 GLboolean transpose
,
7445 const GLfloat
* value
) {
7446 driver_
->fn
.glUniformMatrix4fvFn(location
, count
, transpose
, value
);
7449 void GLApiBase::glUniformMatrix4x2fvFn(GLint location
,
7451 GLboolean transpose
,
7452 const GLfloat
* value
) {
7453 driver_
->fn
.glUniformMatrix4x2fvFn(location
, count
, transpose
, value
);
7456 void GLApiBase::glUniformMatrix4x3fvFn(GLint location
,
7458 GLboolean transpose
,
7459 const GLfloat
* value
) {
7460 driver_
->fn
.glUniformMatrix4x3fvFn(location
, count
, transpose
, value
);
7463 GLboolean
GLApiBase::glUnmapBufferFn(GLenum target
) {
7464 return driver_
->fn
.glUnmapBufferFn(target
);
7467 void GLApiBase::glUseProgramFn(GLuint program
) {
7468 driver_
->fn
.glUseProgramFn(program
);
7471 void GLApiBase::glValidateProgramFn(GLuint program
) {
7472 driver_
->fn
.glValidateProgramFn(program
);
7475 void GLApiBase::glVertexAttrib1fFn(GLuint indx
, GLfloat x
) {
7476 driver_
->fn
.glVertexAttrib1fFn(indx
, x
);
7479 void GLApiBase::glVertexAttrib1fvFn(GLuint indx
, const GLfloat
* values
) {
7480 driver_
->fn
.glVertexAttrib1fvFn(indx
, values
);
7483 void GLApiBase::glVertexAttrib2fFn(GLuint indx
, GLfloat x
, GLfloat y
) {
7484 driver_
->fn
.glVertexAttrib2fFn(indx
, x
, y
);
7487 void GLApiBase::glVertexAttrib2fvFn(GLuint indx
, const GLfloat
* values
) {
7488 driver_
->fn
.glVertexAttrib2fvFn(indx
, values
);
7491 void GLApiBase::glVertexAttrib3fFn(GLuint indx
,
7495 driver_
->fn
.glVertexAttrib3fFn(indx
, x
, y
, z
);
7498 void GLApiBase::glVertexAttrib3fvFn(GLuint indx
, const GLfloat
* values
) {
7499 driver_
->fn
.glVertexAttrib3fvFn(indx
, values
);
7502 void GLApiBase::glVertexAttrib4fFn(GLuint indx
,
7507 driver_
->fn
.glVertexAttrib4fFn(indx
, x
, y
, z
, w
);
7510 void GLApiBase::glVertexAttrib4fvFn(GLuint indx
, const GLfloat
* values
) {
7511 driver_
->fn
.glVertexAttrib4fvFn(indx
, values
);
7514 void GLApiBase::glVertexAttribDivisorANGLEFn(GLuint index
, GLuint divisor
) {
7515 driver_
->fn
.glVertexAttribDivisorANGLEFn(index
, divisor
);
7518 void GLApiBase::glVertexAttribI4iFn(GLuint indx
,
7523 driver_
->fn
.glVertexAttribI4iFn(indx
, x
, y
, z
, w
);
7526 void GLApiBase::glVertexAttribI4ivFn(GLuint indx
, const GLint
* values
) {
7527 driver_
->fn
.glVertexAttribI4ivFn(indx
, values
);
7530 void GLApiBase::glVertexAttribI4uiFn(GLuint indx
,
7535 driver_
->fn
.glVertexAttribI4uiFn(indx
, x
, y
, z
, w
);
7538 void GLApiBase::glVertexAttribI4uivFn(GLuint indx
, const GLuint
* values
) {
7539 driver_
->fn
.glVertexAttribI4uivFn(indx
, values
);
7542 void GLApiBase::glVertexAttribIPointerFn(GLuint indx
,
7547 driver_
->fn
.glVertexAttribIPointerFn(indx
, size
, type
, stride
, ptr
);
7550 void GLApiBase::glVertexAttribPointerFn(GLuint indx
,
7553 GLboolean normalized
,
7556 driver_
->fn
.glVertexAttribPointerFn(indx
, size
, type
, normalized
, stride
,
7560 void GLApiBase::glViewportFn(GLint x
, GLint y
, GLsizei width
, GLsizei height
) {
7561 driver_
->fn
.glViewportFn(x
, y
, width
, height
);
7564 GLenum
GLApiBase::glWaitSyncFn(GLsync sync
,
7567 return driver_
->fn
.glWaitSyncFn(sync
, flags
, timeout
);
7570 void TraceGLApi::glActiveTextureFn(GLenum texture
) {
7571 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glActiveTexture")
7572 gl_api_
->glActiveTextureFn(texture
);
7575 void TraceGLApi::glAttachShaderFn(GLuint program
, GLuint shader
) {
7576 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glAttachShader")
7577 gl_api_
->glAttachShaderFn(program
, shader
);
7580 void TraceGLApi::glBeginQueryFn(GLenum target
, GLuint id
) {
7581 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBeginQuery")
7582 gl_api_
->glBeginQueryFn(target
, id
);
7585 void TraceGLApi::glBeginTransformFeedbackFn(GLenum primitiveMode
) {
7586 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBeginTransformFeedback")
7587 gl_api_
->glBeginTransformFeedbackFn(primitiveMode
);
7590 void TraceGLApi::glBindAttribLocationFn(GLuint program
,
7593 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBindAttribLocation")
7594 gl_api_
->glBindAttribLocationFn(program
, index
, name
);
7597 void TraceGLApi::glBindBufferFn(GLenum target
, GLuint buffer
) {
7598 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBindBuffer")
7599 gl_api_
->glBindBufferFn(target
, buffer
);
7602 void TraceGLApi::glBindBufferBaseFn(GLenum target
,
7605 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBindBufferBase")
7606 gl_api_
->glBindBufferBaseFn(target
, index
, buffer
);
7609 void TraceGLApi::glBindBufferRangeFn(GLenum target
,
7614 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBindBufferRange")
7615 gl_api_
->glBindBufferRangeFn(target
, index
, buffer
, offset
, size
);
7618 void TraceGLApi::glBindFragDataLocationFn(GLuint program
,
7621 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBindFragDataLocation")
7622 gl_api_
->glBindFragDataLocationFn(program
, colorNumber
, name
);
7625 void TraceGLApi::glBindFragDataLocationIndexedFn(GLuint program
,
7629 TRACE_EVENT_BINARY_EFFICIENT0("gpu",
7630 "TraceGLAPI::glBindFragDataLocationIndexed")
7631 gl_api_
->glBindFragDataLocationIndexedFn(program
, colorNumber
, index
, name
);
7634 void TraceGLApi::glBindFramebufferEXTFn(GLenum target
, GLuint framebuffer
) {
7635 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBindFramebufferEXT")
7636 gl_api_
->glBindFramebufferEXTFn(target
, framebuffer
);
7639 void TraceGLApi::glBindRenderbufferEXTFn(GLenum target
, GLuint renderbuffer
) {
7640 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBindRenderbufferEXT")
7641 gl_api_
->glBindRenderbufferEXTFn(target
, renderbuffer
);
7644 void TraceGLApi::glBindSamplerFn(GLuint unit
, GLuint sampler
) {
7645 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBindSampler")
7646 gl_api_
->glBindSamplerFn(unit
, sampler
);
7649 void TraceGLApi::glBindTextureFn(GLenum target
, GLuint texture
) {
7650 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBindTexture")
7651 gl_api_
->glBindTextureFn(target
, texture
);
7654 void TraceGLApi::glBindTransformFeedbackFn(GLenum target
, GLuint id
) {
7655 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBindTransformFeedback")
7656 gl_api_
->glBindTransformFeedbackFn(target
, id
);
7659 void TraceGLApi::glBindVertexArrayOESFn(GLuint array
) {
7660 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBindVertexArrayOES")
7661 gl_api_
->glBindVertexArrayOESFn(array
);
7664 void TraceGLApi::glBlendBarrierKHRFn(void) {
7665 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBlendBarrierKHR")
7666 gl_api_
->glBlendBarrierKHRFn();
7669 void TraceGLApi::glBlendColorFn(GLclampf red
,
7673 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBlendColor")
7674 gl_api_
->glBlendColorFn(red
, green
, blue
, alpha
);
7677 void TraceGLApi::glBlendEquationFn(GLenum mode
) {
7678 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBlendEquation")
7679 gl_api_
->glBlendEquationFn(mode
);
7682 void TraceGLApi::glBlendEquationSeparateFn(GLenum modeRGB
, GLenum modeAlpha
) {
7683 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBlendEquationSeparate")
7684 gl_api_
->glBlendEquationSeparateFn(modeRGB
, modeAlpha
);
7687 void TraceGLApi::glBlendFuncFn(GLenum sfactor
, GLenum dfactor
) {
7688 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBlendFunc")
7689 gl_api_
->glBlendFuncFn(sfactor
, dfactor
);
7692 void TraceGLApi::glBlendFuncSeparateFn(GLenum srcRGB
,
7696 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBlendFuncSeparate")
7697 gl_api_
->glBlendFuncSeparateFn(srcRGB
, dstRGB
, srcAlpha
, dstAlpha
);
7700 void TraceGLApi::glBlitFramebufferFn(GLint srcX0
,
7710 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBlitFramebuffer")
7711 gl_api_
->glBlitFramebufferFn(srcX0
, srcY0
, srcX1
, srcY1
, dstX0
, dstY0
, dstX1
,
7712 dstY1
, mask
, filter
);
7715 void TraceGLApi::glBlitFramebufferANGLEFn(GLint srcX0
,
7725 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBlitFramebufferANGLE")
7726 gl_api_
->glBlitFramebufferANGLEFn(srcX0
, srcY0
, srcX1
, srcY1
, dstX0
, dstY0
,
7727 dstX1
, dstY1
, mask
, filter
);
7730 void TraceGLApi::glBlitFramebufferEXTFn(GLint srcX0
,
7740 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBlitFramebufferEXT")
7741 gl_api_
->glBlitFramebufferEXTFn(srcX0
, srcY0
, srcX1
, srcY1
, dstX0
, dstY0
,
7742 dstX1
, dstY1
, mask
, filter
);
7745 void TraceGLApi::glBufferDataFn(GLenum target
,
7749 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBufferData")
7750 gl_api_
->glBufferDataFn(target
, size
, data
, usage
);
7753 void TraceGLApi::glBufferSubDataFn(GLenum target
,
7757 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBufferSubData")
7758 gl_api_
->glBufferSubDataFn(target
, offset
, size
, data
);
7761 GLenum
TraceGLApi::glCheckFramebufferStatusEXTFn(GLenum target
) {
7762 TRACE_EVENT_BINARY_EFFICIENT0("gpu",
7763 "TraceGLAPI::glCheckFramebufferStatusEXT")
7764 return gl_api_
->glCheckFramebufferStatusEXTFn(target
);
7767 void TraceGLApi::glClearFn(GLbitfield mask
) {
7768 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glClear")
7769 gl_api_
->glClearFn(mask
);
7772 void TraceGLApi::glClearBufferfiFn(GLenum buffer
,
7774 const GLfloat depth
,
7776 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glClearBufferfi")
7777 gl_api_
->glClearBufferfiFn(buffer
, drawbuffer
, depth
, stencil
);
7780 void TraceGLApi::glClearBufferfvFn(GLenum buffer
,
7782 const GLfloat
* value
) {
7783 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glClearBufferfv")
7784 gl_api_
->glClearBufferfvFn(buffer
, drawbuffer
, value
);
7787 void TraceGLApi::glClearBufferivFn(GLenum buffer
,
7789 const GLint
* value
) {
7790 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glClearBufferiv")
7791 gl_api_
->glClearBufferivFn(buffer
, drawbuffer
, value
);
7794 void TraceGLApi::glClearBufferuivFn(GLenum buffer
,
7796 const GLuint
* value
) {
7797 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glClearBufferuiv")
7798 gl_api_
->glClearBufferuivFn(buffer
, drawbuffer
, value
);
7801 void TraceGLApi::glClearColorFn(GLclampf red
,
7805 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glClearColor")
7806 gl_api_
->glClearColorFn(red
, green
, blue
, alpha
);
7809 void TraceGLApi::glClearDepthFn(GLclampd depth
) {
7810 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glClearDepth")
7811 gl_api_
->glClearDepthFn(depth
);
7814 void TraceGLApi::glClearDepthfFn(GLclampf depth
) {
7815 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glClearDepthf")
7816 gl_api_
->glClearDepthfFn(depth
);
7819 void TraceGLApi::glClearStencilFn(GLint s
) {
7820 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glClearStencil")
7821 gl_api_
->glClearStencilFn(s
);
7824 GLenum
TraceGLApi::glClientWaitSyncFn(GLsync sync
,
7827 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glClientWaitSync")
7828 return gl_api_
->glClientWaitSyncFn(sync
, flags
, timeout
);
7831 void TraceGLApi::glColorMaskFn(GLboolean red
,
7835 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glColorMask")
7836 gl_api_
->glColorMaskFn(red
, green
, blue
, alpha
);
7839 void TraceGLApi::glCompileShaderFn(GLuint shader
) {
7840 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glCompileShader")
7841 gl_api_
->glCompileShaderFn(shader
);
7844 void TraceGLApi::glCompressedTexImage2DFn(GLenum target
,
7846 GLenum internalformat
,
7852 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glCompressedTexImage2D")
7853 gl_api_
->glCompressedTexImage2DFn(target
, level
, internalformat
, width
,
7854 height
, border
, imageSize
, data
);
7857 void TraceGLApi::glCompressedTexImage3DFn(GLenum target
,
7859 GLenum internalformat
,
7866 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glCompressedTexImage3D")
7867 gl_api_
->glCompressedTexImage3DFn(target
, level
, internalformat
, width
,
7868 height
, depth
, border
, imageSize
, data
);
7871 void TraceGLApi::glCompressedTexSubImage2DFn(GLenum target
,
7880 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glCompressedTexSubImage2D")
7881 gl_api_
->glCompressedTexSubImage2DFn(target
, level
, xoffset
, yoffset
, width
,
7882 height
, format
, imageSize
, data
);
7885 void TraceGLApi::glCompressedTexSubImage3DFn(GLenum target
,
7896 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glCompressedTexSubImage3D")
7897 gl_api_
->glCompressedTexSubImage3DFn(target
, level
, xoffset
, yoffset
, zoffset
,
7898 width
, height
, depth
, format
, imageSize
,
7902 void TraceGLApi::glCopyBufferSubDataFn(GLenum readTarget
,
7904 GLintptr readOffset
,
7905 GLintptr writeOffset
,
7907 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glCopyBufferSubData")
7908 gl_api_
->glCopyBufferSubDataFn(readTarget
, writeTarget
, readOffset
,
7912 void TraceGLApi::glCopyTexImage2DFn(GLenum target
,
7914 GLenum internalformat
,
7920 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glCopyTexImage2D")
7921 gl_api_
->glCopyTexImage2DFn(target
, level
, internalformat
, x
, y
, width
,
7925 void TraceGLApi::glCopyTexSubImage2DFn(GLenum target
,
7933 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glCopyTexSubImage2D")
7934 gl_api_
->glCopyTexSubImage2DFn(target
, level
, xoffset
, yoffset
, x
, y
, width
,
7938 void TraceGLApi::glCopyTexSubImage3DFn(GLenum target
,
7947 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glCopyTexSubImage3D")
7948 gl_api_
->glCopyTexSubImage3DFn(target
, level
, xoffset
, yoffset
, zoffset
, x
, y
,
7952 GLuint
TraceGLApi::glCreateProgramFn(void) {
7953 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glCreateProgram")
7954 return gl_api_
->glCreateProgramFn();
7957 GLuint
TraceGLApi::glCreateShaderFn(GLenum type
) {
7958 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glCreateShader")
7959 return gl_api_
->glCreateShaderFn(type
);
7962 void TraceGLApi::glCullFaceFn(GLenum mode
) {
7963 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glCullFace")
7964 gl_api_
->glCullFaceFn(mode
);
7967 void TraceGLApi::glDeleteBuffersARBFn(GLsizei n
, const GLuint
* buffers
) {
7968 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDeleteBuffersARB")
7969 gl_api_
->glDeleteBuffersARBFn(n
, buffers
);
7972 void TraceGLApi::glDeleteFencesAPPLEFn(GLsizei n
, const GLuint
* fences
) {
7973 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDeleteFencesAPPLE")
7974 gl_api_
->glDeleteFencesAPPLEFn(n
, fences
);
7977 void TraceGLApi::glDeleteFencesNVFn(GLsizei n
, const GLuint
* fences
) {
7978 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDeleteFencesNV")
7979 gl_api_
->glDeleteFencesNVFn(n
, fences
);
7982 void TraceGLApi::glDeleteFramebuffersEXTFn(GLsizei n
,
7983 const GLuint
* framebuffers
) {
7984 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDeleteFramebuffersEXT")
7985 gl_api_
->glDeleteFramebuffersEXTFn(n
, framebuffers
);
7988 void TraceGLApi::glDeleteProgramFn(GLuint program
) {
7989 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDeleteProgram")
7990 gl_api_
->glDeleteProgramFn(program
);
7993 void TraceGLApi::glDeleteQueriesFn(GLsizei n
, const GLuint
* ids
) {
7994 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDeleteQueries")
7995 gl_api_
->glDeleteQueriesFn(n
, ids
);
7998 void TraceGLApi::glDeleteRenderbuffersEXTFn(GLsizei n
,
7999 const GLuint
* renderbuffers
) {
8000 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDeleteRenderbuffersEXT")
8001 gl_api_
->glDeleteRenderbuffersEXTFn(n
, renderbuffers
);
8004 void TraceGLApi::glDeleteSamplersFn(GLsizei n
, const GLuint
* samplers
) {
8005 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDeleteSamplers")
8006 gl_api_
->glDeleteSamplersFn(n
, samplers
);
8009 void TraceGLApi::glDeleteShaderFn(GLuint shader
) {
8010 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDeleteShader")
8011 gl_api_
->glDeleteShaderFn(shader
);
8014 void TraceGLApi::glDeleteSyncFn(GLsync sync
) {
8015 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDeleteSync")
8016 gl_api_
->glDeleteSyncFn(sync
);
8019 void TraceGLApi::glDeleteTexturesFn(GLsizei n
, const GLuint
* textures
) {
8020 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDeleteTextures")
8021 gl_api_
->glDeleteTexturesFn(n
, textures
);
8024 void TraceGLApi::glDeleteTransformFeedbacksFn(GLsizei n
, const GLuint
* ids
) {
8025 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDeleteTransformFeedbacks")
8026 gl_api_
->glDeleteTransformFeedbacksFn(n
, ids
);
8029 void TraceGLApi::glDeleteVertexArraysOESFn(GLsizei n
, const GLuint
* arrays
) {
8030 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDeleteVertexArraysOES")
8031 gl_api_
->glDeleteVertexArraysOESFn(n
, arrays
);
8034 void TraceGLApi::glDepthFuncFn(GLenum func
) {
8035 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDepthFunc")
8036 gl_api_
->glDepthFuncFn(func
);
8039 void TraceGLApi::glDepthMaskFn(GLboolean flag
) {
8040 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDepthMask")
8041 gl_api_
->glDepthMaskFn(flag
);
8044 void TraceGLApi::glDepthRangeFn(GLclampd zNear
, GLclampd zFar
) {
8045 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDepthRange")
8046 gl_api_
->glDepthRangeFn(zNear
, zFar
);
8049 void TraceGLApi::glDepthRangefFn(GLclampf zNear
, GLclampf zFar
) {
8050 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDepthRangef")
8051 gl_api_
->glDepthRangefFn(zNear
, zFar
);
8054 void TraceGLApi::glDetachShaderFn(GLuint program
, GLuint shader
) {
8055 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDetachShader")
8056 gl_api_
->glDetachShaderFn(program
, shader
);
8059 void TraceGLApi::glDisableFn(GLenum cap
) {
8060 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDisable")
8061 gl_api_
->glDisableFn(cap
);
8064 void TraceGLApi::glDisableVertexAttribArrayFn(GLuint index
) {
8065 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDisableVertexAttribArray")
8066 gl_api_
->glDisableVertexAttribArrayFn(index
);
8069 void TraceGLApi::glDiscardFramebufferEXTFn(GLenum target
,
8070 GLsizei numAttachments
,
8071 const GLenum
* attachments
) {
8072 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDiscardFramebufferEXT")
8073 gl_api_
->glDiscardFramebufferEXTFn(target
, numAttachments
, attachments
);
8076 void TraceGLApi::glDrawArraysFn(GLenum mode
, GLint first
, GLsizei count
) {
8077 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDrawArrays")
8078 gl_api_
->glDrawArraysFn(mode
, first
, count
);
8081 void TraceGLApi::glDrawArraysInstancedANGLEFn(GLenum mode
,
8084 GLsizei primcount
) {
8085 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDrawArraysInstancedANGLE")
8086 gl_api_
->glDrawArraysInstancedANGLEFn(mode
, first
, count
, primcount
);
8089 void TraceGLApi::glDrawBufferFn(GLenum mode
) {
8090 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDrawBuffer")
8091 gl_api_
->glDrawBufferFn(mode
);
8094 void TraceGLApi::glDrawBuffersARBFn(GLsizei n
, const GLenum
* bufs
) {
8095 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDrawBuffersARB")
8096 gl_api_
->glDrawBuffersARBFn(n
, bufs
);
8099 void TraceGLApi::glDrawElementsFn(GLenum mode
,
8102 const void* indices
) {
8103 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDrawElements")
8104 gl_api_
->glDrawElementsFn(mode
, count
, type
, indices
);
8107 void TraceGLApi::glDrawElementsInstancedANGLEFn(GLenum mode
,
8110 const void* indices
,
8111 GLsizei primcount
) {
8112 TRACE_EVENT_BINARY_EFFICIENT0("gpu",
8113 "TraceGLAPI::glDrawElementsInstancedANGLE")
8114 gl_api_
->glDrawElementsInstancedANGLEFn(mode
, count
, type
, indices
,
8118 void TraceGLApi::glDrawRangeElementsFn(GLenum mode
,
8123 const void* indices
) {
8124 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDrawRangeElements")
8125 gl_api_
->glDrawRangeElementsFn(mode
, start
, end
, count
, type
, indices
);
8128 void TraceGLApi::glEGLImageTargetRenderbufferStorageOESFn(GLenum target
,
8129 GLeglImageOES image
) {
8130 TRACE_EVENT_BINARY_EFFICIENT0(
8131 "gpu", "TraceGLAPI::glEGLImageTargetRenderbufferStorageOES")
8132 gl_api_
->glEGLImageTargetRenderbufferStorageOESFn(target
, image
);
8135 void TraceGLApi::glEGLImageTargetTexture2DOESFn(GLenum target
,
8136 GLeglImageOES image
) {
8137 TRACE_EVENT_BINARY_EFFICIENT0("gpu",
8138 "TraceGLAPI::glEGLImageTargetTexture2DOES")
8139 gl_api_
->glEGLImageTargetTexture2DOESFn(target
, image
);
8142 void TraceGLApi::glEnableFn(GLenum cap
) {
8143 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glEnable")
8144 gl_api_
->glEnableFn(cap
);
8147 void TraceGLApi::glEnableVertexAttribArrayFn(GLuint index
) {
8148 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glEnableVertexAttribArray")
8149 gl_api_
->glEnableVertexAttribArrayFn(index
);
8152 void TraceGLApi::glEndQueryFn(GLenum target
) {
8153 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glEndQuery")
8154 gl_api_
->glEndQueryFn(target
);
8157 void TraceGLApi::glEndTransformFeedbackFn(void) {
8158 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glEndTransformFeedback")
8159 gl_api_
->glEndTransformFeedbackFn();
8162 GLsync
TraceGLApi::glFenceSyncFn(GLenum condition
, GLbitfield flags
) {
8163 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glFenceSync")
8164 return gl_api_
->glFenceSyncFn(condition
, flags
);
8167 void TraceGLApi::glFinishFn(void) {
8168 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glFinish")
8169 gl_api_
->glFinishFn();
8172 void TraceGLApi::glFinishFenceAPPLEFn(GLuint fence
) {
8173 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glFinishFenceAPPLE")
8174 gl_api_
->glFinishFenceAPPLEFn(fence
);
8177 void TraceGLApi::glFinishFenceNVFn(GLuint fence
) {
8178 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glFinishFenceNV")
8179 gl_api_
->glFinishFenceNVFn(fence
);
8182 void TraceGLApi::glFlushFn(void) {
8183 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glFlush")
8184 gl_api_
->glFlushFn();
8187 void TraceGLApi::glFlushMappedBufferRangeFn(GLenum target
,
8189 GLsizeiptr length
) {
8190 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glFlushMappedBufferRange")
8191 gl_api_
->glFlushMappedBufferRangeFn(target
, offset
, length
);
8194 void TraceGLApi::glFramebufferRenderbufferEXTFn(GLenum target
,
8196 GLenum renderbuffertarget
,
8197 GLuint renderbuffer
) {
8198 TRACE_EVENT_BINARY_EFFICIENT0("gpu",
8199 "TraceGLAPI::glFramebufferRenderbufferEXT")
8200 gl_api_
->glFramebufferRenderbufferEXTFn(target
, attachment
,
8201 renderbuffertarget
, renderbuffer
);
8204 void TraceGLApi::glFramebufferTexture2DEXTFn(GLenum target
,
8209 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glFramebufferTexture2DEXT")
8210 gl_api_
->glFramebufferTexture2DEXTFn(target
, attachment
, textarget
, texture
,
8214 void TraceGLApi::glFramebufferTexture2DMultisampleEXTFn(GLenum target
,
8220 TRACE_EVENT_BINARY_EFFICIENT0(
8221 "gpu", "TraceGLAPI::glFramebufferTexture2DMultisampleEXT")
8222 gl_api_
->glFramebufferTexture2DMultisampleEXTFn(target
, attachment
, textarget
,
8223 texture
, level
, samples
);
8226 void TraceGLApi::glFramebufferTexture2DMultisampleIMGFn(GLenum target
,
8232 TRACE_EVENT_BINARY_EFFICIENT0(
8233 "gpu", "TraceGLAPI::glFramebufferTexture2DMultisampleIMG")
8234 gl_api_
->glFramebufferTexture2DMultisampleIMGFn(target
, attachment
, textarget
,
8235 texture
, level
, samples
);
8238 void TraceGLApi::glFramebufferTextureLayerFn(GLenum target
,
8243 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glFramebufferTextureLayer")
8244 gl_api_
->glFramebufferTextureLayerFn(target
, attachment
, texture
, level
,
8248 void TraceGLApi::glFrontFaceFn(GLenum mode
) {
8249 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glFrontFace")
8250 gl_api_
->glFrontFaceFn(mode
);
8253 void TraceGLApi::glGenBuffersARBFn(GLsizei n
, GLuint
* buffers
) {
8254 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGenBuffersARB")
8255 gl_api_
->glGenBuffersARBFn(n
, buffers
);
8258 void TraceGLApi::glGenerateMipmapEXTFn(GLenum target
) {
8259 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGenerateMipmapEXT")
8260 gl_api_
->glGenerateMipmapEXTFn(target
);
8263 void TraceGLApi::glGenFencesAPPLEFn(GLsizei n
, GLuint
* fences
) {
8264 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGenFencesAPPLE")
8265 gl_api_
->glGenFencesAPPLEFn(n
, fences
);
8268 void TraceGLApi::glGenFencesNVFn(GLsizei n
, GLuint
* fences
) {
8269 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGenFencesNV")
8270 gl_api_
->glGenFencesNVFn(n
, fences
);
8273 void TraceGLApi::glGenFramebuffersEXTFn(GLsizei n
, GLuint
* framebuffers
) {
8274 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGenFramebuffersEXT")
8275 gl_api_
->glGenFramebuffersEXTFn(n
, framebuffers
);
8278 void TraceGLApi::glGenQueriesFn(GLsizei n
, GLuint
* ids
) {
8279 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGenQueries")
8280 gl_api_
->glGenQueriesFn(n
, ids
);
8283 void TraceGLApi::glGenRenderbuffersEXTFn(GLsizei n
, GLuint
* renderbuffers
) {
8284 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGenRenderbuffersEXT")
8285 gl_api_
->glGenRenderbuffersEXTFn(n
, renderbuffers
);
8288 void TraceGLApi::glGenSamplersFn(GLsizei n
, GLuint
* samplers
) {
8289 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGenSamplers")
8290 gl_api_
->glGenSamplersFn(n
, samplers
);
8293 void TraceGLApi::glGenTexturesFn(GLsizei n
, GLuint
* textures
) {
8294 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGenTextures")
8295 gl_api_
->glGenTexturesFn(n
, textures
);
8298 void TraceGLApi::glGenTransformFeedbacksFn(GLsizei n
, GLuint
* ids
) {
8299 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGenTransformFeedbacks")
8300 gl_api_
->glGenTransformFeedbacksFn(n
, ids
);
8303 void TraceGLApi::glGenVertexArraysOESFn(GLsizei n
, GLuint
* arrays
) {
8304 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGenVertexArraysOES")
8305 gl_api_
->glGenVertexArraysOESFn(n
, arrays
);
8308 void TraceGLApi::glGetActiveAttribFn(GLuint program
,
8315 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetActiveAttrib")
8316 gl_api_
->glGetActiveAttribFn(program
, index
, bufsize
, length
, size
, type
,
8320 void TraceGLApi::glGetActiveUniformFn(GLuint program
,
8327 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetActiveUniform")
8328 gl_api_
->glGetActiveUniformFn(program
, index
, bufsize
, length
, size
, type
,
8332 void TraceGLApi::glGetActiveUniformBlockivFn(GLuint program
,
8333 GLuint uniformBlockIndex
,
8336 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetActiveUniformBlockiv")
8337 gl_api_
->glGetActiveUniformBlockivFn(program
, uniformBlockIndex
, pname
,
8341 void TraceGLApi::glGetActiveUniformBlockNameFn(GLuint program
,
8342 GLuint uniformBlockIndex
,
8345 char* uniformBlockName
) {
8346 TRACE_EVENT_BINARY_EFFICIENT0("gpu",
8347 "TraceGLAPI::glGetActiveUniformBlockName")
8348 gl_api_
->glGetActiveUniformBlockNameFn(program
, uniformBlockIndex
, bufSize
,
8349 length
, uniformBlockName
);
8352 void TraceGLApi::glGetActiveUniformsivFn(GLuint program
,
8353 GLsizei uniformCount
,
8354 const GLuint
* uniformIndices
,
8357 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetActiveUniformsiv")
8358 gl_api_
->glGetActiveUniformsivFn(program
, uniformCount
, uniformIndices
, pname
,
8362 void TraceGLApi::glGetAttachedShadersFn(GLuint program
,
8366 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetAttachedShaders")
8367 gl_api_
->glGetAttachedShadersFn(program
, maxcount
, count
, shaders
);
8370 GLint
TraceGLApi::glGetAttribLocationFn(GLuint program
, const char* name
) {
8371 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetAttribLocation")
8372 return gl_api_
->glGetAttribLocationFn(program
, name
);
8375 void TraceGLApi::glGetBooleanvFn(GLenum pname
, GLboolean
* params
) {
8376 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetBooleanv")
8377 gl_api_
->glGetBooleanvFn(pname
, params
);
8380 void TraceGLApi::glGetBufferParameterivFn(GLenum target
,
8383 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetBufferParameteriv")
8384 gl_api_
->glGetBufferParameterivFn(target
, pname
, params
);
8387 GLenum
TraceGLApi::glGetErrorFn(void) {
8388 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetError")
8389 return gl_api_
->glGetErrorFn();
8392 void TraceGLApi::glGetFenceivNVFn(GLuint fence
, GLenum pname
, GLint
* params
) {
8393 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetFenceivNV")
8394 gl_api_
->glGetFenceivNVFn(fence
, pname
, params
);
8397 void TraceGLApi::glGetFloatvFn(GLenum pname
, GLfloat
* params
) {
8398 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetFloatv")
8399 gl_api_
->glGetFloatvFn(pname
, params
);
8402 GLint
TraceGLApi::glGetFragDataLocationFn(GLuint program
, const char* name
) {
8403 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetFragDataLocation")
8404 return gl_api_
->glGetFragDataLocationFn(program
, name
);
8407 void TraceGLApi::glGetFramebufferAttachmentParameterivEXTFn(GLenum target
,
8411 TRACE_EVENT_BINARY_EFFICIENT0(
8412 "gpu", "TraceGLAPI::glGetFramebufferAttachmentParameterivEXT")
8413 gl_api_
->glGetFramebufferAttachmentParameterivEXTFn(target
, attachment
, pname
,
8417 GLenum
TraceGLApi::glGetGraphicsResetStatusARBFn(void) {
8418 TRACE_EVENT_BINARY_EFFICIENT0("gpu",
8419 "TraceGLAPI::glGetGraphicsResetStatusARB")
8420 return gl_api_
->glGetGraphicsResetStatusARBFn();
8423 void TraceGLApi::glGetInteger64i_vFn(GLenum target
,
8426 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetInteger64i_v")
8427 gl_api_
->glGetInteger64i_vFn(target
, index
, data
);
8430 void TraceGLApi::glGetInteger64vFn(GLenum pname
, GLint64
* params
) {
8431 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetInteger64v")
8432 gl_api_
->glGetInteger64vFn(pname
, params
);
8435 void TraceGLApi::glGetIntegeri_vFn(GLenum target
, GLuint index
, GLint
* data
) {
8436 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetIntegeri_v")
8437 gl_api_
->glGetIntegeri_vFn(target
, index
, data
);
8440 void TraceGLApi::glGetIntegervFn(GLenum pname
, GLint
* params
) {
8441 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetIntegerv")
8442 gl_api_
->glGetIntegervFn(pname
, params
);
8445 void TraceGLApi::glGetInternalformativFn(GLenum target
,
8446 GLenum internalformat
,
8450 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetInternalformativ")
8451 gl_api_
->glGetInternalformativFn(target
, internalformat
, pname
, bufSize
,
8455 void TraceGLApi::glGetProgramBinaryFn(GLuint program
,
8458 GLenum
* binaryFormat
,
8460 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetProgramBinary")
8461 gl_api_
->glGetProgramBinaryFn(program
, bufSize
, length
, binaryFormat
, binary
);
8464 void TraceGLApi::glGetProgramInfoLogFn(GLuint program
,
8468 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetProgramInfoLog")
8469 gl_api_
->glGetProgramInfoLogFn(program
, bufsize
, length
, infolog
);
8472 void TraceGLApi::glGetProgramivFn(GLuint program
, GLenum pname
, GLint
* params
) {
8473 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetProgramiv")
8474 gl_api_
->glGetProgramivFn(program
, pname
, params
);
8477 GLint
TraceGLApi::glGetProgramResourceLocationFn(GLuint program
,
8478 GLenum programInterface
,
8480 TRACE_EVENT_BINARY_EFFICIENT0("gpu",
8481 "TraceGLAPI::glGetProgramResourceLocation")
8482 return gl_api_
->glGetProgramResourceLocationFn(program
, programInterface
,
8486 void TraceGLApi::glGetQueryivFn(GLenum target
, GLenum pname
, GLint
* params
) {
8487 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetQueryiv")
8488 gl_api_
->glGetQueryivFn(target
, pname
, params
);
8491 void TraceGLApi::glGetQueryObjecti64vFn(GLuint id
,
8494 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetQueryObjecti64v")
8495 gl_api_
->glGetQueryObjecti64vFn(id
, pname
, params
);
8498 void TraceGLApi::glGetQueryObjectivFn(GLuint id
, GLenum pname
, GLint
* params
) {
8499 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetQueryObjectiv")
8500 gl_api_
->glGetQueryObjectivFn(id
, pname
, params
);
8503 void TraceGLApi::glGetQueryObjectui64vFn(GLuint id
,
8506 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetQueryObjectui64v")
8507 gl_api_
->glGetQueryObjectui64vFn(id
, pname
, params
);
8510 void TraceGLApi::glGetQueryObjectuivFn(GLuint id
,
8513 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetQueryObjectuiv")
8514 gl_api_
->glGetQueryObjectuivFn(id
, pname
, params
);
8517 void TraceGLApi::glGetRenderbufferParameterivEXTFn(GLenum target
,
8520 TRACE_EVENT_BINARY_EFFICIENT0("gpu",
8521 "TraceGLAPI::glGetRenderbufferParameterivEXT")
8522 gl_api_
->glGetRenderbufferParameterivEXTFn(target
, pname
, params
);
8525 void TraceGLApi::glGetSamplerParameterfvFn(GLuint sampler
,
8528 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetSamplerParameterfv")
8529 gl_api_
->glGetSamplerParameterfvFn(sampler
, pname
, params
);
8532 void TraceGLApi::glGetSamplerParameterivFn(GLuint sampler
,
8535 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetSamplerParameteriv")
8536 gl_api_
->glGetSamplerParameterivFn(sampler
, pname
, params
);
8539 void TraceGLApi::glGetShaderInfoLogFn(GLuint shader
,
8543 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetShaderInfoLog")
8544 gl_api_
->glGetShaderInfoLogFn(shader
, bufsize
, length
, infolog
);
8547 void TraceGLApi::glGetShaderivFn(GLuint shader
, GLenum pname
, GLint
* params
) {
8548 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetShaderiv")
8549 gl_api_
->glGetShaderivFn(shader
, pname
, params
);
8552 void TraceGLApi::glGetShaderPrecisionFormatFn(GLenum shadertype
,
8553 GLenum precisiontype
,
8556 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetShaderPrecisionFormat")
8557 gl_api_
->glGetShaderPrecisionFormatFn(shadertype
, precisiontype
, range
,
8561 void TraceGLApi::glGetShaderSourceFn(GLuint shader
,
8565 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetShaderSource")
8566 gl_api_
->glGetShaderSourceFn(shader
, bufsize
, length
, source
);
8569 const GLubyte
* TraceGLApi::glGetStringFn(GLenum name
) {
8570 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetString")
8571 return gl_api_
->glGetStringFn(name
);
8574 const GLubyte
* TraceGLApi::glGetStringiFn(GLenum name
, GLuint index
) {
8575 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetStringi")
8576 return gl_api_
->glGetStringiFn(name
, index
);
8579 void TraceGLApi::glGetSyncivFn(GLsync sync
,
8584 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetSynciv")
8585 gl_api_
->glGetSyncivFn(sync
, pname
, bufSize
, length
, values
);
8588 void TraceGLApi::glGetTexLevelParameterfvFn(GLenum target
,
8592 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetTexLevelParameterfv")
8593 gl_api_
->glGetTexLevelParameterfvFn(target
, level
, pname
, params
);
8596 void TraceGLApi::glGetTexLevelParameterivFn(GLenum target
,
8600 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetTexLevelParameteriv")
8601 gl_api_
->glGetTexLevelParameterivFn(target
, level
, pname
, params
);
8604 void TraceGLApi::glGetTexParameterfvFn(GLenum target
,
8607 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetTexParameterfv")
8608 gl_api_
->glGetTexParameterfvFn(target
, pname
, params
);
8611 void TraceGLApi::glGetTexParameterivFn(GLenum target
,
8614 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetTexParameteriv")
8615 gl_api_
->glGetTexParameterivFn(target
, pname
, params
);
8618 void TraceGLApi::glGetTransformFeedbackVaryingFn(GLuint program
,
8625 TRACE_EVENT_BINARY_EFFICIENT0("gpu",
8626 "TraceGLAPI::glGetTransformFeedbackVarying")
8627 gl_api_
->glGetTransformFeedbackVaryingFn(program
, index
, bufSize
, length
,
8631 void TraceGLApi::glGetTranslatedShaderSourceANGLEFn(GLuint shader
,
8635 TRACE_EVENT_BINARY_EFFICIENT0("gpu",
8636 "TraceGLAPI::glGetTranslatedShaderSourceANGLE")
8637 gl_api_
->glGetTranslatedShaderSourceANGLEFn(shader
, bufsize
, length
, source
);
8640 GLuint
TraceGLApi::glGetUniformBlockIndexFn(GLuint program
,
8641 const char* uniformBlockName
) {
8642 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetUniformBlockIndex")
8643 return gl_api_
->glGetUniformBlockIndexFn(program
, uniformBlockName
);
8646 void TraceGLApi::glGetUniformfvFn(GLuint program
,
8649 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetUniformfv")
8650 gl_api_
->glGetUniformfvFn(program
, location
, params
);
8653 void TraceGLApi::glGetUniformIndicesFn(GLuint program
,
8654 GLsizei uniformCount
,
8655 const char* const* uniformNames
,
8656 GLuint
* uniformIndices
) {
8657 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetUniformIndices")
8658 gl_api_
->glGetUniformIndicesFn(program
, uniformCount
, uniformNames
,
8662 void TraceGLApi::glGetUniformivFn(GLuint program
,
8665 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetUniformiv")
8666 gl_api_
->glGetUniformivFn(program
, location
, params
);
8669 GLint
TraceGLApi::glGetUniformLocationFn(GLuint program
, const char* name
) {
8670 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetUniformLocation")
8671 return gl_api_
->glGetUniformLocationFn(program
, name
);
8674 void TraceGLApi::glGetUniformuivFn(GLuint program
,
8677 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetUniformuiv")
8678 gl_api_
->glGetUniformuivFn(program
, location
, params
);
8681 void TraceGLApi::glGetVertexAttribfvFn(GLuint index
,
8684 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetVertexAttribfv")
8685 gl_api_
->glGetVertexAttribfvFn(index
, pname
, params
);
8688 void TraceGLApi::glGetVertexAttribivFn(GLuint index
,
8691 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetVertexAttribiv")
8692 gl_api_
->glGetVertexAttribivFn(index
, pname
, params
);
8695 void TraceGLApi::glGetVertexAttribPointervFn(GLuint index
,
8698 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetVertexAttribPointerv")
8699 gl_api_
->glGetVertexAttribPointervFn(index
, pname
, pointer
);
8702 void TraceGLApi::glHintFn(GLenum target
, GLenum mode
) {
8703 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glHint")
8704 gl_api_
->glHintFn(target
, mode
);
8707 void TraceGLApi::glInsertEventMarkerEXTFn(GLsizei length
, const char* marker
) {
8708 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glInsertEventMarkerEXT")
8709 gl_api_
->glInsertEventMarkerEXTFn(length
, marker
);
8712 void TraceGLApi::glInvalidateFramebufferFn(GLenum target
,
8713 GLsizei numAttachments
,
8714 const GLenum
* attachments
) {
8715 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glInvalidateFramebuffer")
8716 gl_api_
->glInvalidateFramebufferFn(target
, numAttachments
, attachments
);
8719 void TraceGLApi::glInvalidateSubFramebufferFn(GLenum target
,
8720 GLsizei numAttachments
,
8721 const GLenum
* attachments
,
8726 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glInvalidateSubFramebuffer")
8727 gl_api_
->glInvalidateSubFramebufferFn(target
, numAttachments
, attachments
, x
,
8731 GLboolean
TraceGLApi::glIsBufferFn(GLuint buffer
) {
8732 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glIsBuffer")
8733 return gl_api_
->glIsBufferFn(buffer
);
8736 GLboolean
TraceGLApi::glIsEnabledFn(GLenum cap
) {
8737 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glIsEnabled")
8738 return gl_api_
->glIsEnabledFn(cap
);
8741 GLboolean
TraceGLApi::glIsFenceAPPLEFn(GLuint fence
) {
8742 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glIsFenceAPPLE")
8743 return gl_api_
->glIsFenceAPPLEFn(fence
);
8746 GLboolean
TraceGLApi::glIsFenceNVFn(GLuint fence
) {
8747 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glIsFenceNV")
8748 return gl_api_
->glIsFenceNVFn(fence
);
8751 GLboolean
TraceGLApi::glIsFramebufferEXTFn(GLuint framebuffer
) {
8752 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glIsFramebufferEXT")
8753 return gl_api_
->glIsFramebufferEXTFn(framebuffer
);
8756 GLboolean
TraceGLApi::glIsProgramFn(GLuint program
) {
8757 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glIsProgram")
8758 return gl_api_
->glIsProgramFn(program
);
8761 GLboolean
TraceGLApi::glIsQueryFn(GLuint query
) {
8762 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glIsQuery")
8763 return gl_api_
->glIsQueryFn(query
);
8766 GLboolean
TraceGLApi::glIsRenderbufferEXTFn(GLuint renderbuffer
) {
8767 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glIsRenderbufferEXT")
8768 return gl_api_
->glIsRenderbufferEXTFn(renderbuffer
);
8771 GLboolean
TraceGLApi::glIsSamplerFn(GLuint sampler
) {
8772 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glIsSampler")
8773 return gl_api_
->glIsSamplerFn(sampler
);
8776 GLboolean
TraceGLApi::glIsShaderFn(GLuint shader
) {
8777 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glIsShader")
8778 return gl_api_
->glIsShaderFn(shader
);
8781 GLboolean
TraceGLApi::glIsSyncFn(GLsync sync
) {
8782 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glIsSync")
8783 return gl_api_
->glIsSyncFn(sync
);
8786 GLboolean
TraceGLApi::glIsTextureFn(GLuint texture
) {
8787 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glIsTexture")
8788 return gl_api_
->glIsTextureFn(texture
);
8791 GLboolean
TraceGLApi::glIsTransformFeedbackFn(GLuint id
) {
8792 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glIsTransformFeedback")
8793 return gl_api_
->glIsTransformFeedbackFn(id
);
8796 GLboolean
TraceGLApi::glIsVertexArrayOESFn(GLuint array
) {
8797 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glIsVertexArrayOES")
8798 return gl_api_
->glIsVertexArrayOESFn(array
);
8801 void TraceGLApi::glLineWidthFn(GLfloat width
) {
8802 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glLineWidth")
8803 gl_api_
->glLineWidthFn(width
);
8806 void TraceGLApi::glLinkProgramFn(GLuint program
) {
8807 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glLinkProgram")
8808 gl_api_
->glLinkProgramFn(program
);
8811 void* TraceGLApi::glMapBufferFn(GLenum target
, GLenum access
) {
8812 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glMapBuffer")
8813 return gl_api_
->glMapBufferFn(target
, access
);
8816 void* TraceGLApi::glMapBufferRangeFn(GLenum target
,
8819 GLbitfield access
) {
8820 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glMapBufferRange")
8821 return gl_api_
->glMapBufferRangeFn(target
, offset
, length
, access
);
8824 void TraceGLApi::glMatrixLoadfEXTFn(GLenum matrixMode
, const GLfloat
* m
) {
8825 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glMatrixLoadfEXT")
8826 gl_api_
->glMatrixLoadfEXTFn(matrixMode
, m
);
8829 void TraceGLApi::glMatrixLoadIdentityEXTFn(GLenum matrixMode
) {
8830 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glMatrixLoadIdentityEXT")
8831 gl_api_
->glMatrixLoadIdentityEXTFn(matrixMode
);
8834 void TraceGLApi::glPauseTransformFeedbackFn(void) {
8835 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glPauseTransformFeedback")
8836 gl_api_
->glPauseTransformFeedbackFn();
8839 void TraceGLApi::glPixelStoreiFn(GLenum pname
, GLint param
) {
8840 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glPixelStorei")
8841 gl_api_
->glPixelStoreiFn(pname
, param
);
8844 void TraceGLApi::glPointParameteriFn(GLenum pname
, GLint param
) {
8845 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glPointParameteri")
8846 gl_api_
->glPointParameteriFn(pname
, param
);
8849 void TraceGLApi::glPolygonOffsetFn(GLfloat factor
, GLfloat units
) {
8850 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glPolygonOffset")
8851 gl_api_
->glPolygonOffsetFn(factor
, units
);
8854 void TraceGLApi::glPopGroupMarkerEXTFn(void) {
8855 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glPopGroupMarkerEXT")
8856 gl_api_
->glPopGroupMarkerEXTFn();
8859 void TraceGLApi::glProgramBinaryFn(GLuint program
,
8860 GLenum binaryFormat
,
8861 const GLvoid
* binary
,
8863 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glProgramBinary")
8864 gl_api_
->glProgramBinaryFn(program
, binaryFormat
, binary
, length
);
8867 void TraceGLApi::glProgramParameteriFn(GLuint program
,
8870 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glProgramParameteri")
8871 gl_api_
->glProgramParameteriFn(program
, pname
, value
);
8874 void TraceGLApi::glPushGroupMarkerEXTFn(GLsizei length
, const char* marker
) {
8875 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glPushGroupMarkerEXT")
8876 gl_api_
->glPushGroupMarkerEXTFn(length
, marker
);
8879 void TraceGLApi::glQueryCounterFn(GLuint id
, GLenum target
) {
8880 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glQueryCounter")
8881 gl_api_
->glQueryCounterFn(id
, target
);
8884 void TraceGLApi::glReadBufferFn(GLenum src
) {
8885 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glReadBuffer")
8886 gl_api_
->glReadBufferFn(src
);
8889 void TraceGLApi::glReadPixelsFn(GLint x
,
8896 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glReadPixels")
8897 gl_api_
->glReadPixelsFn(x
, y
, width
, height
, format
, type
, pixels
);
8900 void TraceGLApi::glReleaseShaderCompilerFn(void) {
8901 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glReleaseShaderCompiler")
8902 gl_api_
->glReleaseShaderCompilerFn();
8905 void TraceGLApi::glRenderbufferStorageEXTFn(GLenum target
,
8906 GLenum internalformat
,
8909 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glRenderbufferStorageEXT")
8910 gl_api_
->glRenderbufferStorageEXTFn(target
, internalformat
, width
, height
);
8913 void TraceGLApi::glRenderbufferStorageMultisampleFn(GLenum target
,
8915 GLenum internalformat
,
8918 TRACE_EVENT_BINARY_EFFICIENT0("gpu",
8919 "TraceGLAPI::glRenderbufferStorageMultisample")
8920 gl_api_
->glRenderbufferStorageMultisampleFn(target
, samples
, internalformat
,
8924 void TraceGLApi::glRenderbufferStorageMultisampleANGLEFn(GLenum target
,
8926 GLenum internalformat
,
8929 TRACE_EVENT_BINARY_EFFICIENT0(
8930 "gpu", "TraceGLAPI::glRenderbufferStorageMultisampleANGLE")
8931 gl_api_
->glRenderbufferStorageMultisampleANGLEFn(
8932 target
, samples
, internalformat
, width
, height
);
8935 void TraceGLApi::glRenderbufferStorageMultisampleEXTFn(GLenum target
,
8937 GLenum internalformat
,
8940 TRACE_EVENT_BINARY_EFFICIENT0(
8941 "gpu", "TraceGLAPI::glRenderbufferStorageMultisampleEXT")
8942 gl_api_
->glRenderbufferStorageMultisampleEXTFn(target
, samples
,
8943 internalformat
, width
, height
);
8946 void TraceGLApi::glRenderbufferStorageMultisampleIMGFn(GLenum target
,
8948 GLenum internalformat
,
8951 TRACE_EVENT_BINARY_EFFICIENT0(
8952 "gpu", "TraceGLAPI::glRenderbufferStorageMultisampleIMG")
8953 gl_api_
->glRenderbufferStorageMultisampleIMGFn(target
, samples
,
8954 internalformat
, width
, height
);
8957 void TraceGLApi::glResumeTransformFeedbackFn(void) {
8958 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glResumeTransformFeedback")
8959 gl_api_
->glResumeTransformFeedbackFn();
8962 void TraceGLApi::glSampleCoverageFn(GLclampf value
, GLboolean invert
) {
8963 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glSampleCoverage")
8964 gl_api_
->glSampleCoverageFn(value
, invert
);
8967 void TraceGLApi::glSamplerParameterfFn(GLuint sampler
,
8970 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glSamplerParameterf")
8971 gl_api_
->glSamplerParameterfFn(sampler
, pname
, param
);
8974 void TraceGLApi::glSamplerParameterfvFn(GLuint sampler
,
8976 const GLfloat
* params
) {
8977 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glSamplerParameterfv")
8978 gl_api_
->glSamplerParameterfvFn(sampler
, pname
, params
);
8981 void TraceGLApi::glSamplerParameteriFn(GLuint sampler
,
8984 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glSamplerParameteri")
8985 gl_api_
->glSamplerParameteriFn(sampler
, pname
, param
);
8988 void TraceGLApi::glSamplerParameterivFn(GLuint sampler
,
8990 const GLint
* params
) {
8991 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glSamplerParameteriv")
8992 gl_api_
->glSamplerParameterivFn(sampler
, pname
, params
);
8995 void TraceGLApi::glScissorFn(GLint x
, GLint y
, GLsizei width
, GLsizei height
) {
8996 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glScissor")
8997 gl_api_
->glScissorFn(x
, y
, width
, height
);
9000 void TraceGLApi::glSetFenceAPPLEFn(GLuint fence
) {
9001 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glSetFenceAPPLE")
9002 gl_api_
->glSetFenceAPPLEFn(fence
);
9005 void TraceGLApi::glSetFenceNVFn(GLuint fence
, GLenum condition
) {
9006 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glSetFenceNV")
9007 gl_api_
->glSetFenceNVFn(fence
, condition
);
9010 void TraceGLApi::glShaderBinaryFn(GLsizei n
,
9011 const GLuint
* shaders
,
9012 GLenum binaryformat
,
9015 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glShaderBinary")
9016 gl_api_
->glShaderBinaryFn(n
, shaders
, binaryformat
, binary
, length
);
9019 void TraceGLApi::glShaderSourceFn(GLuint shader
,
9021 const char* const* str
,
9022 const GLint
* length
) {
9023 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glShaderSource")
9024 gl_api_
->glShaderSourceFn(shader
, count
, str
, length
);
9027 void TraceGLApi::glStencilFuncFn(GLenum func
, GLint ref
, GLuint mask
) {
9028 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glStencilFunc")
9029 gl_api_
->glStencilFuncFn(func
, ref
, mask
);
9032 void TraceGLApi::glStencilFuncSeparateFn(GLenum face
,
9036 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glStencilFuncSeparate")
9037 gl_api_
->glStencilFuncSeparateFn(face
, func
, ref
, mask
);
9040 void TraceGLApi::glStencilMaskFn(GLuint mask
) {
9041 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glStencilMask")
9042 gl_api_
->glStencilMaskFn(mask
);
9045 void TraceGLApi::glStencilMaskSeparateFn(GLenum face
, GLuint mask
) {
9046 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glStencilMaskSeparate")
9047 gl_api_
->glStencilMaskSeparateFn(face
, mask
);
9050 void TraceGLApi::glStencilOpFn(GLenum fail
, GLenum zfail
, GLenum zpass
) {
9051 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glStencilOp")
9052 gl_api_
->glStencilOpFn(fail
, zfail
, zpass
);
9055 void TraceGLApi::glStencilOpSeparateFn(GLenum face
,
9059 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glStencilOpSeparate")
9060 gl_api_
->glStencilOpSeparateFn(face
, fail
, zfail
, zpass
);
9063 GLboolean
TraceGLApi::glTestFenceAPPLEFn(GLuint fence
) {
9064 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glTestFenceAPPLE")
9065 return gl_api_
->glTestFenceAPPLEFn(fence
);
9068 GLboolean
TraceGLApi::glTestFenceNVFn(GLuint fence
) {
9069 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glTestFenceNV")
9070 return gl_api_
->glTestFenceNVFn(fence
);
9073 void TraceGLApi::glTexImage2DFn(GLenum target
,
9075 GLint internalformat
,
9081 const void* pixels
) {
9082 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glTexImage2D")
9083 gl_api_
->glTexImage2DFn(target
, level
, internalformat
, width
, height
, border
,
9084 format
, type
, pixels
);
9087 void TraceGLApi::glTexImage3DFn(GLenum target
,
9089 GLint internalformat
,
9096 const void* pixels
) {
9097 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glTexImage3D")
9098 gl_api_
->glTexImage3DFn(target
, level
, internalformat
, width
, height
, depth
,
9099 border
, format
, type
, pixels
);
9102 void TraceGLApi::glTexParameterfFn(GLenum target
, GLenum pname
, GLfloat param
) {
9103 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glTexParameterf")
9104 gl_api_
->glTexParameterfFn(target
, pname
, param
);
9107 void TraceGLApi::glTexParameterfvFn(GLenum target
,
9109 const GLfloat
* params
) {
9110 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glTexParameterfv")
9111 gl_api_
->glTexParameterfvFn(target
, pname
, params
);
9114 void TraceGLApi::glTexParameteriFn(GLenum target
, GLenum pname
, GLint param
) {
9115 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glTexParameteri")
9116 gl_api_
->glTexParameteriFn(target
, pname
, param
);
9119 void TraceGLApi::glTexParameterivFn(GLenum target
,
9121 const GLint
* params
) {
9122 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glTexParameteriv")
9123 gl_api_
->glTexParameterivFn(target
, pname
, params
);
9126 void TraceGLApi::glTexStorage2DEXTFn(GLenum target
,
9128 GLenum internalformat
,
9131 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glTexStorage2DEXT")
9132 gl_api_
->glTexStorage2DEXTFn(target
, levels
, internalformat
, width
, height
);
9135 void TraceGLApi::glTexStorage3DFn(GLenum target
,
9137 GLenum internalformat
,
9141 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glTexStorage3D")
9142 gl_api_
->glTexStorage3DFn(target
, levels
, internalformat
, width
, height
,
9146 void TraceGLApi::glTexSubImage2DFn(GLenum target
,
9154 const void* pixels
) {
9155 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glTexSubImage2D")
9156 gl_api_
->glTexSubImage2DFn(target
, level
, xoffset
, yoffset
, width
, height
,
9157 format
, type
, pixels
);
9160 void TraceGLApi::glTexSubImage3DFn(GLenum target
,
9170 const void* pixels
) {
9171 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glTexSubImage3D")
9172 gl_api_
->glTexSubImage3DFn(target
, level
, xoffset
, yoffset
, zoffset
, width
,
9173 height
, depth
, format
, type
, pixels
);
9176 void TraceGLApi::glTransformFeedbackVaryingsFn(GLuint program
,
9178 const char* const* varyings
,
9179 GLenum bufferMode
) {
9180 TRACE_EVENT_BINARY_EFFICIENT0("gpu",
9181 "TraceGLAPI::glTransformFeedbackVaryings")
9182 gl_api_
->glTransformFeedbackVaryingsFn(program
, count
, varyings
, bufferMode
);
9185 void TraceGLApi::glUniform1fFn(GLint location
, GLfloat x
) {
9186 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform1f")
9187 gl_api_
->glUniform1fFn(location
, x
);
9190 void TraceGLApi::glUniform1fvFn(GLint location
,
9193 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform1fv")
9194 gl_api_
->glUniform1fvFn(location
, count
, v
);
9197 void TraceGLApi::glUniform1iFn(GLint location
, GLint x
) {
9198 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform1i")
9199 gl_api_
->glUniform1iFn(location
, x
);
9202 void TraceGLApi::glUniform1ivFn(GLint location
, GLsizei count
, const GLint
* v
) {
9203 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform1iv")
9204 gl_api_
->glUniform1ivFn(location
, count
, v
);
9207 void TraceGLApi::glUniform1uiFn(GLint location
, GLuint v0
) {
9208 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform1ui")
9209 gl_api_
->glUniform1uiFn(location
, v0
);
9212 void TraceGLApi::glUniform1uivFn(GLint location
,
9215 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform1uiv")
9216 gl_api_
->glUniform1uivFn(location
, count
, v
);
9219 void TraceGLApi::glUniform2fFn(GLint location
, GLfloat x
, GLfloat y
) {
9220 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform2f")
9221 gl_api_
->glUniform2fFn(location
, x
, y
);
9224 void TraceGLApi::glUniform2fvFn(GLint location
,
9227 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform2fv")
9228 gl_api_
->glUniform2fvFn(location
, count
, v
);
9231 void TraceGLApi::glUniform2iFn(GLint location
, GLint x
, GLint y
) {
9232 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform2i")
9233 gl_api_
->glUniform2iFn(location
, x
, y
);
9236 void TraceGLApi::glUniform2ivFn(GLint location
, GLsizei count
, const GLint
* v
) {
9237 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform2iv")
9238 gl_api_
->glUniform2ivFn(location
, count
, v
);
9241 void TraceGLApi::glUniform2uiFn(GLint location
, GLuint v0
, GLuint v1
) {
9242 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform2ui")
9243 gl_api_
->glUniform2uiFn(location
, v0
, v1
);
9246 void TraceGLApi::glUniform2uivFn(GLint location
,
9249 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform2uiv")
9250 gl_api_
->glUniform2uivFn(location
, count
, v
);
9253 void TraceGLApi::glUniform3fFn(GLint location
,
9257 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform3f")
9258 gl_api_
->glUniform3fFn(location
, x
, y
, z
);
9261 void TraceGLApi::glUniform3fvFn(GLint location
,
9264 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform3fv")
9265 gl_api_
->glUniform3fvFn(location
, count
, v
);
9268 void TraceGLApi::glUniform3iFn(GLint location
, GLint x
, GLint y
, GLint z
) {
9269 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform3i")
9270 gl_api_
->glUniform3iFn(location
, x
, y
, z
);
9273 void TraceGLApi::glUniform3ivFn(GLint location
, GLsizei count
, const GLint
* v
) {
9274 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform3iv")
9275 gl_api_
->glUniform3ivFn(location
, count
, v
);
9278 void TraceGLApi::glUniform3uiFn(GLint location
,
9282 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform3ui")
9283 gl_api_
->glUniform3uiFn(location
, v0
, v1
, v2
);
9286 void TraceGLApi::glUniform3uivFn(GLint location
,
9289 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform3uiv")
9290 gl_api_
->glUniform3uivFn(location
, count
, v
);
9293 void TraceGLApi::glUniform4fFn(GLint location
,
9298 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform4f")
9299 gl_api_
->glUniform4fFn(location
, x
, y
, z
, w
);
9302 void TraceGLApi::glUniform4fvFn(GLint location
,
9305 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform4fv")
9306 gl_api_
->glUniform4fvFn(location
, count
, v
);
9309 void TraceGLApi::glUniform4iFn(GLint location
,
9314 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform4i")
9315 gl_api_
->glUniform4iFn(location
, x
, y
, z
, w
);
9318 void TraceGLApi::glUniform4ivFn(GLint location
, GLsizei count
, const GLint
* v
) {
9319 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform4iv")
9320 gl_api_
->glUniform4ivFn(location
, count
, v
);
9323 void TraceGLApi::glUniform4uiFn(GLint location
,
9328 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform4ui")
9329 gl_api_
->glUniform4uiFn(location
, v0
, v1
, v2
, v3
);
9332 void TraceGLApi::glUniform4uivFn(GLint location
,
9335 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform4uiv")
9336 gl_api_
->glUniform4uivFn(location
, count
, v
);
9339 void TraceGLApi::glUniformBlockBindingFn(GLuint program
,
9340 GLuint uniformBlockIndex
,
9341 GLuint uniformBlockBinding
) {
9342 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniformBlockBinding")
9343 gl_api_
->glUniformBlockBindingFn(program
, uniformBlockIndex
,
9344 uniformBlockBinding
);
9347 void TraceGLApi::glUniformMatrix2fvFn(GLint location
,
9349 GLboolean transpose
,
9350 const GLfloat
* value
) {
9351 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniformMatrix2fv")
9352 gl_api_
->glUniformMatrix2fvFn(location
, count
, transpose
, value
);
9355 void TraceGLApi::glUniformMatrix2x3fvFn(GLint location
,
9357 GLboolean transpose
,
9358 const GLfloat
* value
) {
9359 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniformMatrix2x3fv")
9360 gl_api_
->glUniformMatrix2x3fvFn(location
, count
, transpose
, value
);
9363 void TraceGLApi::glUniformMatrix2x4fvFn(GLint location
,
9365 GLboolean transpose
,
9366 const GLfloat
* value
) {
9367 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniformMatrix2x4fv")
9368 gl_api_
->glUniformMatrix2x4fvFn(location
, count
, transpose
, value
);
9371 void TraceGLApi::glUniformMatrix3fvFn(GLint location
,
9373 GLboolean transpose
,
9374 const GLfloat
* value
) {
9375 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniformMatrix3fv")
9376 gl_api_
->glUniformMatrix3fvFn(location
, count
, transpose
, value
);
9379 void TraceGLApi::glUniformMatrix3x2fvFn(GLint location
,
9381 GLboolean transpose
,
9382 const GLfloat
* value
) {
9383 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniformMatrix3x2fv")
9384 gl_api_
->glUniformMatrix3x2fvFn(location
, count
, transpose
, value
);
9387 void TraceGLApi::glUniformMatrix3x4fvFn(GLint location
,
9389 GLboolean transpose
,
9390 const GLfloat
* value
) {
9391 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniformMatrix3x4fv")
9392 gl_api_
->glUniformMatrix3x4fvFn(location
, count
, transpose
, value
);
9395 void TraceGLApi::glUniformMatrix4fvFn(GLint location
,
9397 GLboolean transpose
,
9398 const GLfloat
* value
) {
9399 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniformMatrix4fv")
9400 gl_api_
->glUniformMatrix4fvFn(location
, count
, transpose
, value
);
9403 void TraceGLApi::glUniformMatrix4x2fvFn(GLint location
,
9405 GLboolean transpose
,
9406 const GLfloat
* value
) {
9407 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniformMatrix4x2fv")
9408 gl_api_
->glUniformMatrix4x2fvFn(location
, count
, transpose
, value
);
9411 void TraceGLApi::glUniformMatrix4x3fvFn(GLint location
,
9413 GLboolean transpose
,
9414 const GLfloat
* value
) {
9415 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniformMatrix4x3fv")
9416 gl_api_
->glUniformMatrix4x3fvFn(location
, count
, transpose
, value
);
9419 GLboolean
TraceGLApi::glUnmapBufferFn(GLenum target
) {
9420 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUnmapBuffer")
9421 return gl_api_
->glUnmapBufferFn(target
);
9424 void TraceGLApi::glUseProgramFn(GLuint program
) {
9425 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUseProgram")
9426 gl_api_
->glUseProgramFn(program
);
9429 void TraceGLApi::glValidateProgramFn(GLuint program
) {
9430 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glValidateProgram")
9431 gl_api_
->glValidateProgramFn(program
);
9434 void TraceGLApi::glVertexAttrib1fFn(GLuint indx
, GLfloat x
) {
9435 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glVertexAttrib1f")
9436 gl_api_
->glVertexAttrib1fFn(indx
, x
);
9439 void TraceGLApi::glVertexAttrib1fvFn(GLuint indx
, const GLfloat
* values
) {
9440 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glVertexAttrib1fv")
9441 gl_api_
->glVertexAttrib1fvFn(indx
, values
);
9444 void TraceGLApi::glVertexAttrib2fFn(GLuint indx
, GLfloat x
, GLfloat y
) {
9445 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glVertexAttrib2f")
9446 gl_api_
->glVertexAttrib2fFn(indx
, x
, y
);
9449 void TraceGLApi::glVertexAttrib2fvFn(GLuint indx
, const GLfloat
* values
) {
9450 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glVertexAttrib2fv")
9451 gl_api_
->glVertexAttrib2fvFn(indx
, values
);
9454 void TraceGLApi::glVertexAttrib3fFn(GLuint indx
,
9458 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glVertexAttrib3f")
9459 gl_api_
->glVertexAttrib3fFn(indx
, x
, y
, z
);
9462 void TraceGLApi::glVertexAttrib3fvFn(GLuint indx
, const GLfloat
* values
) {
9463 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glVertexAttrib3fv")
9464 gl_api_
->glVertexAttrib3fvFn(indx
, values
);
9467 void TraceGLApi::glVertexAttrib4fFn(GLuint indx
,
9472 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glVertexAttrib4f")
9473 gl_api_
->glVertexAttrib4fFn(indx
, x
, y
, z
, w
);
9476 void TraceGLApi::glVertexAttrib4fvFn(GLuint indx
, const GLfloat
* values
) {
9477 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glVertexAttrib4fv")
9478 gl_api_
->glVertexAttrib4fvFn(indx
, values
);
9481 void TraceGLApi::glVertexAttribDivisorANGLEFn(GLuint index
, GLuint divisor
) {
9482 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glVertexAttribDivisorANGLE")
9483 gl_api_
->glVertexAttribDivisorANGLEFn(index
, divisor
);
9486 void TraceGLApi::glVertexAttribI4iFn(GLuint indx
,
9491 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glVertexAttribI4i")
9492 gl_api_
->glVertexAttribI4iFn(indx
, x
, y
, z
, w
);
9495 void TraceGLApi::glVertexAttribI4ivFn(GLuint indx
, const GLint
* values
) {
9496 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glVertexAttribI4iv")
9497 gl_api_
->glVertexAttribI4ivFn(indx
, values
);
9500 void TraceGLApi::glVertexAttribI4uiFn(GLuint indx
,
9505 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glVertexAttribI4ui")
9506 gl_api_
->glVertexAttribI4uiFn(indx
, x
, y
, z
, w
);
9509 void TraceGLApi::glVertexAttribI4uivFn(GLuint indx
, const GLuint
* values
) {
9510 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glVertexAttribI4uiv")
9511 gl_api_
->glVertexAttribI4uivFn(indx
, values
);
9514 void TraceGLApi::glVertexAttribIPointerFn(GLuint indx
,
9519 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glVertexAttribIPointer")
9520 gl_api_
->glVertexAttribIPointerFn(indx
, size
, type
, stride
, ptr
);
9523 void TraceGLApi::glVertexAttribPointerFn(GLuint indx
,
9526 GLboolean normalized
,
9529 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glVertexAttribPointer")
9530 gl_api_
->glVertexAttribPointerFn(indx
, size
, type
, normalized
, stride
, ptr
);
9533 void TraceGLApi::glViewportFn(GLint x
, GLint y
, GLsizei width
, GLsizei height
) {
9534 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glViewport")
9535 gl_api_
->glViewportFn(x
, y
, width
, height
);
9538 GLenum
TraceGLApi::glWaitSyncFn(GLsync sync
,
9541 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glWaitSync")
9542 return gl_api_
->glWaitSyncFn(sync
, flags
, timeout
);
9545 void NoContextGLApi::glActiveTextureFn(GLenum texture
) {
9546 NOTREACHED() << "Trying to call glActiveTexture() without current GL context";
9547 LOG(ERROR
) << "Trying to call glActiveTexture() without current GL context";
9550 void NoContextGLApi::glAttachShaderFn(GLuint program
, GLuint shader
) {
9551 NOTREACHED() << "Trying to call glAttachShader() without current GL context";
9552 LOG(ERROR
) << "Trying to call glAttachShader() without current GL context";
9555 void NoContextGLApi::glBeginQueryFn(GLenum target
, GLuint id
) {
9556 NOTREACHED() << "Trying to call glBeginQuery() without current GL context";
9557 LOG(ERROR
) << "Trying to call glBeginQuery() without current GL context";
9560 void NoContextGLApi::glBeginTransformFeedbackFn(GLenum primitiveMode
) {
9562 << "Trying to call glBeginTransformFeedback() without current GL context";
9564 << "Trying to call glBeginTransformFeedback() without current GL context";
9567 void NoContextGLApi::glBindAttribLocationFn(GLuint program
,
9571 << "Trying to call glBindAttribLocation() without current GL context";
9573 << "Trying to call glBindAttribLocation() without current GL context";
9576 void NoContextGLApi::glBindBufferFn(GLenum target
, GLuint buffer
) {
9577 NOTREACHED() << "Trying to call glBindBuffer() without current GL context";
9578 LOG(ERROR
) << "Trying to call glBindBuffer() without current GL context";
9581 void NoContextGLApi::glBindBufferBaseFn(GLenum target
,
9585 << "Trying to call glBindBufferBase() without current GL context";
9586 LOG(ERROR
) << "Trying to call glBindBufferBase() without current GL context";
9589 void NoContextGLApi::glBindBufferRangeFn(GLenum target
,
9595 << "Trying to call glBindBufferRange() without current GL context";
9596 LOG(ERROR
) << "Trying to call glBindBufferRange() without current GL context";
9599 void NoContextGLApi::glBindFragDataLocationFn(GLuint program
,
9603 << "Trying to call glBindFragDataLocation() without current GL context";
9605 << "Trying to call glBindFragDataLocation() without current GL context";
9608 void NoContextGLApi::glBindFragDataLocationIndexedFn(GLuint program
,
9612 NOTREACHED() << "Trying to call glBindFragDataLocationIndexed() without "
9613 "current GL context";
9614 LOG(ERROR
) << "Trying to call glBindFragDataLocationIndexed() without "
9615 "current GL context";
9618 void NoContextGLApi::glBindFramebufferEXTFn(GLenum target
, GLuint framebuffer
) {
9620 << "Trying to call glBindFramebufferEXT() without current GL context";
9622 << "Trying to call glBindFramebufferEXT() without current GL context";
9625 void NoContextGLApi::glBindRenderbufferEXTFn(GLenum target
,
9626 GLuint renderbuffer
) {
9628 << "Trying to call glBindRenderbufferEXT() without current GL context";
9630 << "Trying to call glBindRenderbufferEXT() without current GL context";
9633 void NoContextGLApi::glBindSamplerFn(GLuint unit
, GLuint sampler
) {
9634 NOTREACHED() << "Trying to call glBindSampler() without current GL context";
9635 LOG(ERROR
) << "Trying to call glBindSampler() without current GL context";
9638 void NoContextGLApi::glBindTextureFn(GLenum target
, GLuint texture
) {
9639 NOTREACHED() << "Trying to call glBindTexture() without current GL context";
9640 LOG(ERROR
) << "Trying to call glBindTexture() without current GL context";
9643 void NoContextGLApi::glBindTransformFeedbackFn(GLenum target
, GLuint id
) {
9645 << "Trying to call glBindTransformFeedback() without current GL context";
9647 << "Trying to call glBindTransformFeedback() without current GL context";
9650 void NoContextGLApi::glBindVertexArrayOESFn(GLuint array
) {
9652 << "Trying to call glBindVertexArrayOES() without current GL context";
9654 << "Trying to call glBindVertexArrayOES() without current GL context";
9657 void NoContextGLApi::glBlendBarrierKHRFn(void) {
9659 << "Trying to call glBlendBarrierKHR() without current GL context";
9660 LOG(ERROR
) << "Trying to call glBlendBarrierKHR() without current GL context";
9663 void NoContextGLApi::glBlendColorFn(GLclampf red
,
9667 NOTREACHED() << "Trying to call glBlendColor() without current GL context";
9668 LOG(ERROR
) << "Trying to call glBlendColor() without current GL context";
9671 void NoContextGLApi::glBlendEquationFn(GLenum mode
) {
9672 NOTREACHED() << "Trying to call glBlendEquation() without current GL context";
9673 LOG(ERROR
) << "Trying to call glBlendEquation() without current GL context";
9676 void NoContextGLApi::glBlendEquationSeparateFn(GLenum modeRGB
,
9679 << "Trying to call glBlendEquationSeparate() without current GL context";
9681 << "Trying to call glBlendEquationSeparate() without current GL context";
9684 void NoContextGLApi::glBlendFuncFn(GLenum sfactor
, GLenum dfactor
) {
9685 NOTREACHED() << "Trying to call glBlendFunc() without current GL context";
9686 LOG(ERROR
) << "Trying to call glBlendFunc() without current GL context";
9689 void NoContextGLApi::glBlendFuncSeparateFn(GLenum srcRGB
,
9694 << "Trying to call glBlendFuncSeparate() without current GL context";
9696 << "Trying to call glBlendFuncSeparate() without current GL context";
9699 void NoContextGLApi::glBlitFramebufferFn(GLint srcX0
,
9710 << "Trying to call glBlitFramebuffer() without current GL context";
9711 LOG(ERROR
) << "Trying to call glBlitFramebuffer() without current GL context";
9714 void NoContextGLApi::glBlitFramebufferANGLEFn(GLint srcX0
,
9725 << "Trying to call glBlitFramebufferANGLE() without current GL context";
9727 << "Trying to call glBlitFramebufferANGLE() without current GL context";
9730 void NoContextGLApi::glBlitFramebufferEXTFn(GLint srcX0
,
9741 << "Trying to call glBlitFramebufferEXT() without current GL context";
9743 << "Trying to call glBlitFramebufferEXT() without current GL context";
9746 void NoContextGLApi::glBufferDataFn(GLenum target
,
9750 NOTREACHED() << "Trying to call glBufferData() without current GL context";
9751 LOG(ERROR
) << "Trying to call glBufferData() without current GL context";
9754 void NoContextGLApi::glBufferSubDataFn(GLenum target
,
9758 NOTREACHED() << "Trying to call glBufferSubData() without current GL context";
9759 LOG(ERROR
) << "Trying to call glBufferSubData() without current GL context";
9762 GLenum
NoContextGLApi::glCheckFramebufferStatusEXTFn(GLenum target
) {
9763 NOTREACHED() << "Trying to call glCheckFramebufferStatusEXT() without "
9764 "current GL context";
9765 LOG(ERROR
) << "Trying to call glCheckFramebufferStatusEXT() without current "
9767 return static_cast<GLenum
>(0);
9770 void NoContextGLApi::glClearFn(GLbitfield mask
) {
9771 NOTREACHED() << "Trying to call glClear() without current GL context";
9772 LOG(ERROR
) << "Trying to call glClear() without current GL context";
9775 void NoContextGLApi::glClearBufferfiFn(GLenum buffer
,
9777 const GLfloat depth
,
9779 NOTREACHED() << "Trying to call glClearBufferfi() without current GL context";
9780 LOG(ERROR
) << "Trying to call glClearBufferfi() without current GL context";
9783 void NoContextGLApi::glClearBufferfvFn(GLenum buffer
,
9785 const GLfloat
* value
) {
9786 NOTREACHED() << "Trying to call glClearBufferfv() without current GL context";
9787 LOG(ERROR
) << "Trying to call glClearBufferfv() without current GL context";
9790 void NoContextGLApi::glClearBufferivFn(GLenum buffer
,
9792 const GLint
* value
) {
9793 NOTREACHED() << "Trying to call glClearBufferiv() without current GL context";
9794 LOG(ERROR
) << "Trying to call glClearBufferiv() without current GL context";
9797 void NoContextGLApi::glClearBufferuivFn(GLenum buffer
,
9799 const GLuint
* value
) {
9801 << "Trying to call glClearBufferuiv() without current GL context";
9802 LOG(ERROR
) << "Trying to call glClearBufferuiv() without current GL context";
9805 void NoContextGLApi::glClearColorFn(GLclampf red
,
9809 NOTREACHED() << "Trying to call glClearColor() without current GL context";
9810 LOG(ERROR
) << "Trying to call glClearColor() without current GL context";
9813 void NoContextGLApi::glClearDepthFn(GLclampd depth
) {
9814 NOTREACHED() << "Trying to call glClearDepth() without current GL context";
9815 LOG(ERROR
) << "Trying to call glClearDepth() without current GL context";
9818 void NoContextGLApi::glClearDepthfFn(GLclampf depth
) {
9819 NOTREACHED() << "Trying to call glClearDepthf() without current GL context";
9820 LOG(ERROR
) << "Trying to call glClearDepthf() without current GL context";
9823 void NoContextGLApi::glClearStencilFn(GLint s
) {
9824 NOTREACHED() << "Trying to call glClearStencil() without current GL context";
9825 LOG(ERROR
) << "Trying to call glClearStencil() without current GL context";
9828 GLenum
NoContextGLApi::glClientWaitSyncFn(GLsync sync
,
9832 << "Trying to call glClientWaitSync() without current GL context";
9833 LOG(ERROR
) << "Trying to call glClientWaitSync() without current GL context";
9834 return static_cast<GLenum
>(0);
9837 void NoContextGLApi::glColorMaskFn(GLboolean red
,
9841 NOTREACHED() << "Trying to call glColorMask() without current GL context";
9842 LOG(ERROR
) << "Trying to call glColorMask() without current GL context";
9845 void NoContextGLApi::glCompileShaderFn(GLuint shader
) {
9846 NOTREACHED() << "Trying to call glCompileShader() without current GL context";
9847 LOG(ERROR
) << "Trying to call glCompileShader() without current GL context";
9850 void NoContextGLApi::glCompressedTexImage2DFn(GLenum target
,
9852 GLenum internalformat
,
9859 << "Trying to call glCompressedTexImage2D() without current GL context";
9861 << "Trying to call glCompressedTexImage2D() without current GL context";
9864 void NoContextGLApi::glCompressedTexImage3DFn(GLenum target
,
9866 GLenum internalformat
,
9874 << "Trying to call glCompressedTexImage3D() without current GL context";
9876 << "Trying to call glCompressedTexImage3D() without current GL context";
9879 void NoContextGLApi::glCompressedTexSubImage2DFn(GLenum target
,
9888 NOTREACHED() << "Trying to call glCompressedTexSubImage2D() without current "
9890 LOG(ERROR
) << "Trying to call glCompressedTexSubImage2D() without current GL "
9894 void NoContextGLApi::glCompressedTexSubImage3DFn(GLenum target
,
9905 NOTREACHED() << "Trying to call glCompressedTexSubImage3D() without current "
9907 LOG(ERROR
) << "Trying to call glCompressedTexSubImage3D() without current GL "
9911 void NoContextGLApi::glCopyBufferSubDataFn(GLenum readTarget
,
9913 GLintptr readOffset
,
9914 GLintptr writeOffset
,
9917 << "Trying to call glCopyBufferSubData() without current GL context";
9919 << "Trying to call glCopyBufferSubData() without current GL context";
9922 void NoContextGLApi::glCopyTexImage2DFn(GLenum target
,
9924 GLenum internalformat
,
9931 << "Trying to call glCopyTexImage2D() without current GL context";
9932 LOG(ERROR
) << "Trying to call glCopyTexImage2D() without current GL context";
9935 void NoContextGLApi::glCopyTexSubImage2DFn(GLenum target
,
9944 << "Trying to call glCopyTexSubImage2D() without current GL context";
9946 << "Trying to call glCopyTexSubImage2D() without current GL context";
9949 void NoContextGLApi::glCopyTexSubImage3DFn(GLenum target
,
9959 << "Trying to call glCopyTexSubImage3D() without current GL context";
9961 << "Trying to call glCopyTexSubImage3D() without current GL context";
9964 GLuint
NoContextGLApi::glCreateProgramFn(void) {
9965 NOTREACHED() << "Trying to call glCreateProgram() without current GL context";
9966 LOG(ERROR
) << "Trying to call glCreateProgram() without current GL context";
9970 GLuint
NoContextGLApi::glCreateShaderFn(GLenum type
) {
9971 NOTREACHED() << "Trying to call glCreateShader() without current GL context";
9972 LOG(ERROR
) << "Trying to call glCreateShader() without current GL context";
9976 void NoContextGLApi::glCullFaceFn(GLenum mode
) {
9977 NOTREACHED() << "Trying to call glCullFace() without current GL context";
9978 LOG(ERROR
) << "Trying to call glCullFace() without current GL context";
9981 void NoContextGLApi::glDeleteBuffersARBFn(GLsizei n
, const GLuint
* buffers
) {
9983 << "Trying to call glDeleteBuffersARB() without current GL context";
9985 << "Trying to call glDeleteBuffersARB() without current GL context";
9988 void NoContextGLApi::glDeleteFencesAPPLEFn(GLsizei n
, const GLuint
* fences
) {
9990 << "Trying to call glDeleteFencesAPPLE() without current GL context";
9992 << "Trying to call glDeleteFencesAPPLE() without current GL context";
9995 void NoContextGLApi::glDeleteFencesNVFn(GLsizei n
, const GLuint
* fences
) {
9997 << "Trying to call glDeleteFencesNV() without current GL context";
9998 LOG(ERROR
) << "Trying to call glDeleteFencesNV() without current GL context";
10001 void NoContextGLApi::glDeleteFramebuffersEXTFn(GLsizei n
,
10002 const GLuint
* framebuffers
) {
10004 << "Trying to call glDeleteFramebuffersEXT() without current GL context";
10006 << "Trying to call glDeleteFramebuffersEXT() without current GL context";
10009 void NoContextGLApi::glDeleteProgramFn(GLuint program
) {
10010 NOTREACHED() << "Trying to call glDeleteProgram() without current GL context";
10011 LOG(ERROR
) << "Trying to call glDeleteProgram() without current GL context";
10014 void NoContextGLApi::glDeleteQueriesFn(GLsizei n
, const GLuint
* ids
) {
10015 NOTREACHED() << "Trying to call glDeleteQueries() without current GL context";
10016 LOG(ERROR
) << "Trying to call glDeleteQueries() without current GL context";
10019 void NoContextGLApi::glDeleteRenderbuffersEXTFn(GLsizei n
,
10020 const GLuint
* renderbuffers
) {
10022 << "Trying to call glDeleteRenderbuffersEXT() without current GL context";
10024 << "Trying to call glDeleteRenderbuffersEXT() without current GL context";
10027 void NoContextGLApi::glDeleteSamplersFn(GLsizei n
, const GLuint
* samplers
) {
10029 << "Trying to call glDeleteSamplers() without current GL context";
10030 LOG(ERROR
) << "Trying to call glDeleteSamplers() without current GL context";
10033 void NoContextGLApi::glDeleteShaderFn(GLuint shader
) {
10034 NOTREACHED() << "Trying to call glDeleteShader() without current GL context";
10035 LOG(ERROR
) << "Trying to call glDeleteShader() without current GL context";
10038 void NoContextGLApi::glDeleteSyncFn(GLsync sync
) {
10039 NOTREACHED() << "Trying to call glDeleteSync() without current GL context";
10040 LOG(ERROR
) << "Trying to call glDeleteSync() without current GL context";
10043 void NoContextGLApi::glDeleteTexturesFn(GLsizei n
, const GLuint
* textures
) {
10045 << "Trying to call glDeleteTextures() without current GL context";
10046 LOG(ERROR
) << "Trying to call glDeleteTextures() without current GL context";
10049 void NoContextGLApi::glDeleteTransformFeedbacksFn(GLsizei n
,
10050 const GLuint
* ids
) {
10051 NOTREACHED() << "Trying to call glDeleteTransformFeedbacks() without current "
10053 LOG(ERROR
) << "Trying to call glDeleteTransformFeedbacks() without current "
10057 void NoContextGLApi::glDeleteVertexArraysOESFn(GLsizei n
,
10058 const GLuint
* arrays
) {
10060 << "Trying to call glDeleteVertexArraysOES() without current GL context";
10062 << "Trying to call glDeleteVertexArraysOES() without current GL context";
10065 void NoContextGLApi::glDepthFuncFn(GLenum func
) {
10066 NOTREACHED() << "Trying to call glDepthFunc() without current GL context";
10067 LOG(ERROR
) << "Trying to call glDepthFunc() without current GL context";
10070 void NoContextGLApi::glDepthMaskFn(GLboolean flag
) {
10071 NOTREACHED() << "Trying to call glDepthMask() without current GL context";
10072 LOG(ERROR
) << "Trying to call glDepthMask() without current GL context";
10075 void NoContextGLApi::glDepthRangeFn(GLclampd zNear
, GLclampd zFar
) {
10076 NOTREACHED() << "Trying to call glDepthRange() without current GL context";
10077 LOG(ERROR
) << "Trying to call glDepthRange() without current GL context";
10080 void NoContextGLApi::glDepthRangefFn(GLclampf zNear
, GLclampf zFar
) {
10081 NOTREACHED() << "Trying to call glDepthRangef() without current GL context";
10082 LOG(ERROR
) << "Trying to call glDepthRangef() without current GL context";
10085 void NoContextGLApi::glDetachShaderFn(GLuint program
, GLuint shader
) {
10086 NOTREACHED() << "Trying to call glDetachShader() without current GL context";
10087 LOG(ERROR
) << "Trying to call glDetachShader() without current GL context";
10090 void NoContextGLApi::glDisableFn(GLenum cap
) {
10091 NOTREACHED() << "Trying to call glDisable() without current GL context";
10092 LOG(ERROR
) << "Trying to call glDisable() without current GL context";
10095 void NoContextGLApi::glDisableVertexAttribArrayFn(GLuint index
) {
10096 NOTREACHED() << "Trying to call glDisableVertexAttribArray() without current "
10098 LOG(ERROR
) << "Trying to call glDisableVertexAttribArray() without current "
10102 void NoContextGLApi::glDiscardFramebufferEXTFn(GLenum target
,
10103 GLsizei numAttachments
,
10104 const GLenum
* attachments
) {
10106 << "Trying to call glDiscardFramebufferEXT() without current GL context";
10108 << "Trying to call glDiscardFramebufferEXT() without current GL context";
10111 void NoContextGLApi::glDrawArraysFn(GLenum mode
, GLint first
, GLsizei count
) {
10112 NOTREACHED() << "Trying to call glDrawArrays() without current GL context";
10113 LOG(ERROR
) << "Trying to call glDrawArrays() without current GL context";
10116 void NoContextGLApi::glDrawArraysInstancedANGLEFn(GLenum mode
,
10119 GLsizei primcount
) {
10120 NOTREACHED() << "Trying to call glDrawArraysInstancedANGLE() without current "
10122 LOG(ERROR
) << "Trying to call glDrawArraysInstancedANGLE() without current "
10126 void NoContextGLApi::glDrawBufferFn(GLenum mode
) {
10127 NOTREACHED() << "Trying to call glDrawBuffer() without current GL context";
10128 LOG(ERROR
) << "Trying to call glDrawBuffer() without current GL context";
10131 void NoContextGLApi::glDrawBuffersARBFn(GLsizei n
, const GLenum
* bufs
) {
10133 << "Trying to call glDrawBuffersARB() without current GL context";
10134 LOG(ERROR
) << "Trying to call glDrawBuffersARB() without current GL context";
10137 void NoContextGLApi::glDrawElementsFn(GLenum mode
,
10140 const void* indices
) {
10141 NOTREACHED() << "Trying to call glDrawElements() without current GL context";
10142 LOG(ERROR
) << "Trying to call glDrawElements() without current GL context";
10145 void NoContextGLApi::glDrawElementsInstancedANGLEFn(GLenum mode
,
10148 const void* indices
,
10149 GLsizei primcount
) {
10150 NOTREACHED() << "Trying to call glDrawElementsInstancedANGLE() without "
10151 "current GL context";
10152 LOG(ERROR
) << "Trying to call glDrawElementsInstancedANGLE() without current "
10156 void NoContextGLApi::glDrawRangeElementsFn(GLenum mode
,
10161 const void* indices
) {
10163 << "Trying to call glDrawRangeElements() without current GL context";
10165 << "Trying to call glDrawRangeElements() without current GL context";
10168 void NoContextGLApi::glEGLImageTargetRenderbufferStorageOESFn(
10170 GLeglImageOES image
) {
10171 NOTREACHED() << "Trying to call glEGLImageTargetRenderbufferStorageOES() "
10172 "without current GL context";
10173 LOG(ERROR
) << "Trying to call glEGLImageTargetRenderbufferStorageOES() "
10174 "without current GL context";
10177 void NoContextGLApi::glEGLImageTargetTexture2DOESFn(GLenum target
,
10178 GLeglImageOES image
) {
10179 NOTREACHED() << "Trying to call glEGLImageTargetTexture2DOES() without "
10180 "current GL context";
10181 LOG(ERROR
) << "Trying to call glEGLImageTargetTexture2DOES() without current "
10185 void NoContextGLApi::glEnableFn(GLenum cap
) {
10186 NOTREACHED() << "Trying to call glEnable() without current GL context";
10187 LOG(ERROR
) << "Trying to call glEnable() without current GL context";
10190 void NoContextGLApi::glEnableVertexAttribArrayFn(GLuint index
) {
10191 NOTREACHED() << "Trying to call glEnableVertexAttribArray() without current "
10193 LOG(ERROR
) << "Trying to call glEnableVertexAttribArray() without current GL "
10197 void NoContextGLApi::glEndQueryFn(GLenum target
) {
10198 NOTREACHED() << "Trying to call glEndQuery() without current GL context";
10199 LOG(ERROR
) << "Trying to call glEndQuery() without current GL context";
10202 void NoContextGLApi::glEndTransformFeedbackFn(void) {
10204 << "Trying to call glEndTransformFeedback() without current GL context";
10206 << "Trying to call glEndTransformFeedback() without current GL context";
10209 GLsync
NoContextGLApi::glFenceSyncFn(GLenum condition
, GLbitfield flags
) {
10210 NOTREACHED() << "Trying to call glFenceSync() without current GL context";
10211 LOG(ERROR
) << "Trying to call glFenceSync() without current GL context";
10215 void NoContextGLApi::glFinishFn(void) {
10216 NOTREACHED() << "Trying to call glFinish() without current GL context";
10217 LOG(ERROR
) << "Trying to call glFinish() without current GL context";
10220 void NoContextGLApi::glFinishFenceAPPLEFn(GLuint fence
) {
10222 << "Trying to call glFinishFenceAPPLE() without current GL context";
10224 << "Trying to call glFinishFenceAPPLE() without current GL context";
10227 void NoContextGLApi::glFinishFenceNVFn(GLuint fence
) {
10228 NOTREACHED() << "Trying to call glFinishFenceNV() without current GL context";
10229 LOG(ERROR
) << "Trying to call glFinishFenceNV() without current GL context";
10232 void NoContextGLApi::glFlushFn(void) {
10233 NOTREACHED() << "Trying to call glFlush() without current GL context";
10234 LOG(ERROR
) << "Trying to call glFlush() without current GL context";
10237 void NoContextGLApi::glFlushMappedBufferRangeFn(GLenum target
,
10239 GLsizeiptr length
) {
10241 << "Trying to call glFlushMappedBufferRange() without current GL context";
10243 << "Trying to call glFlushMappedBufferRange() without current GL context";
10246 void NoContextGLApi::glFramebufferRenderbufferEXTFn(GLenum target
,
10248 GLenum renderbuffertarget
,
10249 GLuint renderbuffer
) {
10250 NOTREACHED() << "Trying to call glFramebufferRenderbufferEXT() without "
10251 "current GL context";
10252 LOG(ERROR
) << "Trying to call glFramebufferRenderbufferEXT() without current "
10256 void NoContextGLApi::glFramebufferTexture2DEXTFn(GLenum target
,
10261 NOTREACHED() << "Trying to call glFramebufferTexture2DEXT() without current "
10263 LOG(ERROR
) << "Trying to call glFramebufferTexture2DEXT() without current GL "
10267 void NoContextGLApi::glFramebufferTexture2DMultisampleEXTFn(GLenum target
,
10273 NOTREACHED() << "Trying to call glFramebufferTexture2DMultisampleEXT() "
10274 "without current GL context";
10275 LOG(ERROR
) << "Trying to call glFramebufferTexture2DMultisampleEXT() without "
10276 "current GL context";
10279 void NoContextGLApi::glFramebufferTexture2DMultisampleIMGFn(GLenum target
,
10285 NOTREACHED() << "Trying to call glFramebufferTexture2DMultisampleIMG() "
10286 "without current GL context";
10287 LOG(ERROR
) << "Trying to call glFramebufferTexture2DMultisampleIMG() without "
10288 "current GL context";
10291 void NoContextGLApi::glFramebufferTextureLayerFn(GLenum target
,
10296 NOTREACHED() << "Trying to call glFramebufferTextureLayer() without current "
10298 LOG(ERROR
) << "Trying to call glFramebufferTextureLayer() without current GL "
10302 void NoContextGLApi::glFrontFaceFn(GLenum mode
) {
10303 NOTREACHED() << "Trying to call glFrontFace() without current GL context";
10304 LOG(ERROR
) << "Trying to call glFrontFace() without current GL context";
10307 void NoContextGLApi::glGenBuffersARBFn(GLsizei n
, GLuint
* buffers
) {
10308 NOTREACHED() << "Trying to call glGenBuffersARB() without current GL context";
10309 LOG(ERROR
) << "Trying to call glGenBuffersARB() without current GL context";
10312 void NoContextGLApi::glGenerateMipmapEXTFn(GLenum target
) {
10314 << "Trying to call glGenerateMipmapEXT() without current GL context";
10316 << "Trying to call glGenerateMipmapEXT() without current GL context";
10319 void NoContextGLApi::glGenFencesAPPLEFn(GLsizei n
, GLuint
* fences
) {
10321 << "Trying to call glGenFencesAPPLE() without current GL context";
10322 LOG(ERROR
) << "Trying to call glGenFencesAPPLE() without current GL context";
10325 void NoContextGLApi::glGenFencesNVFn(GLsizei n
, GLuint
* fences
) {
10326 NOTREACHED() << "Trying to call glGenFencesNV() without current GL context";
10327 LOG(ERROR
) << "Trying to call glGenFencesNV() without current GL context";
10330 void NoContextGLApi::glGenFramebuffersEXTFn(GLsizei n
, GLuint
* framebuffers
) {
10332 << "Trying to call glGenFramebuffersEXT() without current GL context";
10334 << "Trying to call glGenFramebuffersEXT() without current GL context";
10337 void NoContextGLApi::glGenQueriesFn(GLsizei n
, GLuint
* ids
) {
10338 NOTREACHED() << "Trying to call glGenQueries() without current GL context";
10339 LOG(ERROR
) << "Trying to call glGenQueries() without current GL context";
10342 void NoContextGLApi::glGenRenderbuffersEXTFn(GLsizei n
, GLuint
* renderbuffers
) {
10344 << "Trying to call glGenRenderbuffersEXT() without current GL context";
10346 << "Trying to call glGenRenderbuffersEXT() without current GL context";
10349 void NoContextGLApi::glGenSamplersFn(GLsizei n
, GLuint
* samplers
) {
10350 NOTREACHED() << "Trying to call glGenSamplers() without current GL context";
10351 LOG(ERROR
) << "Trying to call glGenSamplers() without current GL context";
10354 void NoContextGLApi::glGenTexturesFn(GLsizei n
, GLuint
* textures
) {
10355 NOTREACHED() << "Trying to call glGenTextures() without current GL context";
10356 LOG(ERROR
) << "Trying to call glGenTextures() without current GL context";
10359 void NoContextGLApi::glGenTransformFeedbacksFn(GLsizei n
, GLuint
* ids
) {
10361 << "Trying to call glGenTransformFeedbacks() without current GL context";
10363 << "Trying to call glGenTransformFeedbacks() without current GL context";
10366 void NoContextGLApi::glGenVertexArraysOESFn(GLsizei n
, GLuint
* arrays
) {
10368 << "Trying to call glGenVertexArraysOES() without current GL context";
10370 << "Trying to call glGenVertexArraysOES() without current GL context";
10373 void NoContextGLApi::glGetActiveAttribFn(GLuint program
,
10381 << "Trying to call glGetActiveAttrib() without current GL context";
10382 LOG(ERROR
) << "Trying to call glGetActiveAttrib() without current GL context";
10385 void NoContextGLApi::glGetActiveUniformFn(GLuint program
,
10393 << "Trying to call glGetActiveUniform() without current GL context";
10395 << "Trying to call glGetActiveUniform() without current GL context";
10398 void NoContextGLApi::glGetActiveUniformBlockivFn(GLuint program
,
10399 GLuint uniformBlockIndex
,
10402 NOTREACHED() << "Trying to call glGetActiveUniformBlockiv() without current "
10404 LOG(ERROR
) << "Trying to call glGetActiveUniformBlockiv() without current GL "
10408 void NoContextGLApi::glGetActiveUniformBlockNameFn(GLuint program
,
10409 GLuint uniformBlockIndex
,
10412 char* uniformBlockName
) {
10413 NOTREACHED() << "Trying to call glGetActiveUniformBlockName() without "
10414 "current GL context";
10415 LOG(ERROR
) << "Trying to call glGetActiveUniformBlockName() without current "
10419 void NoContextGLApi::glGetActiveUniformsivFn(GLuint program
,
10420 GLsizei uniformCount
,
10421 const GLuint
* uniformIndices
,
10425 << "Trying to call glGetActiveUniformsiv() without current GL context";
10427 << "Trying to call glGetActiveUniformsiv() without current GL context";
10430 void NoContextGLApi::glGetAttachedShadersFn(GLuint program
,
10435 << "Trying to call glGetAttachedShaders() without current GL context";
10437 << "Trying to call glGetAttachedShaders() without current GL context";
10440 GLint
NoContextGLApi::glGetAttribLocationFn(GLuint program
, const char* name
) {
10442 << "Trying to call glGetAttribLocation() without current GL context";
10444 << "Trying to call glGetAttribLocation() without current GL context";
10448 void NoContextGLApi::glGetBooleanvFn(GLenum pname
, GLboolean
* params
) {
10449 NOTREACHED() << "Trying to call glGetBooleanv() without current GL context";
10450 LOG(ERROR
) << "Trying to call glGetBooleanv() without current GL context";
10453 void NoContextGLApi::glGetBufferParameterivFn(GLenum target
,
10457 << "Trying to call glGetBufferParameteriv() without current GL context";
10459 << "Trying to call glGetBufferParameteriv() without current GL context";
10462 GLenum
NoContextGLApi::glGetErrorFn(void) {
10463 NOTREACHED() << "Trying to call glGetError() without current GL context";
10464 LOG(ERROR
) << "Trying to call glGetError() without current GL context";
10465 return static_cast<GLenum
>(0);
10468 void NoContextGLApi::glGetFenceivNVFn(GLuint fence
,
10471 NOTREACHED() << "Trying to call glGetFenceivNV() without current GL context";
10472 LOG(ERROR
) << "Trying to call glGetFenceivNV() without current GL context";
10475 void NoContextGLApi::glGetFloatvFn(GLenum pname
, GLfloat
* params
) {
10476 NOTREACHED() << "Trying to call glGetFloatv() without current GL context";
10477 LOG(ERROR
) << "Trying to call glGetFloatv() without current GL context";
10480 GLint
NoContextGLApi::glGetFragDataLocationFn(GLuint program
,
10481 const char* name
) {
10483 << "Trying to call glGetFragDataLocation() without current GL context";
10485 << "Trying to call glGetFragDataLocation() without current GL context";
10489 void NoContextGLApi::glGetFramebufferAttachmentParameterivEXTFn(
10494 NOTREACHED() << "Trying to call glGetFramebufferAttachmentParameterivEXT() "
10495 "without current GL context";
10496 LOG(ERROR
) << "Trying to call glGetFramebufferAttachmentParameterivEXT() "
10497 "without current GL context";
10500 GLenum
NoContextGLApi::glGetGraphicsResetStatusARBFn(void) {
10501 NOTREACHED() << "Trying to call glGetGraphicsResetStatusARB() without "
10502 "current GL context";
10503 LOG(ERROR
) << "Trying to call glGetGraphicsResetStatusARB() without current "
10505 return static_cast<GLenum
>(0);
10508 void NoContextGLApi::glGetInteger64i_vFn(GLenum target
,
10512 << "Trying to call glGetInteger64i_v() without current GL context";
10513 LOG(ERROR
) << "Trying to call glGetInteger64i_v() without current GL context";
10516 void NoContextGLApi::glGetInteger64vFn(GLenum pname
, GLint64
* params
) {
10517 NOTREACHED() << "Trying to call glGetInteger64v() without current GL context";
10518 LOG(ERROR
) << "Trying to call glGetInteger64v() without current GL context";
10521 void NoContextGLApi::glGetIntegeri_vFn(GLenum target
,
10524 NOTREACHED() << "Trying to call glGetIntegeri_v() without current GL context";
10525 LOG(ERROR
) << "Trying to call glGetIntegeri_v() without current GL context";
10528 void NoContextGLApi::glGetIntegervFn(GLenum pname
, GLint
* params
) {
10529 NOTREACHED() << "Trying to call glGetIntegerv() without current GL context";
10530 LOG(ERROR
) << "Trying to call glGetIntegerv() without current GL context";
10533 void NoContextGLApi::glGetInternalformativFn(GLenum target
,
10534 GLenum internalformat
,
10539 << "Trying to call glGetInternalformativ() without current GL context";
10541 << "Trying to call glGetInternalformativ() without current GL context";
10544 void NoContextGLApi::glGetProgramBinaryFn(GLuint program
,
10547 GLenum
* binaryFormat
,
10550 << "Trying to call glGetProgramBinary() without current GL context";
10552 << "Trying to call glGetProgramBinary() without current GL context";
10555 void NoContextGLApi::glGetProgramInfoLogFn(GLuint program
,
10560 << "Trying to call glGetProgramInfoLog() without current GL context";
10562 << "Trying to call glGetProgramInfoLog() without current GL context";
10565 void NoContextGLApi::glGetProgramivFn(GLuint program
,
10568 NOTREACHED() << "Trying to call glGetProgramiv() without current GL context";
10569 LOG(ERROR
) << "Trying to call glGetProgramiv() without current GL context";
10572 GLint
NoContextGLApi::glGetProgramResourceLocationFn(GLuint program
,
10573 GLenum programInterface
,
10574 const char* name
) {
10575 NOTREACHED() << "Trying to call glGetProgramResourceLocation() without "
10576 "current GL context";
10577 LOG(ERROR
) << "Trying to call glGetProgramResourceLocation() without current "
10582 void NoContextGLApi::glGetQueryivFn(GLenum target
,
10585 NOTREACHED() << "Trying to call glGetQueryiv() without current GL context";
10586 LOG(ERROR
) << "Trying to call glGetQueryiv() without current GL context";
10589 void NoContextGLApi::glGetQueryObjecti64vFn(GLuint id
,
10593 << "Trying to call glGetQueryObjecti64v() without current GL context";
10595 << "Trying to call glGetQueryObjecti64v() without current GL context";
10598 void NoContextGLApi::glGetQueryObjectivFn(GLuint id
,
10602 << "Trying to call glGetQueryObjectiv() without current GL context";
10604 << "Trying to call glGetQueryObjectiv() without current GL context";
10607 void NoContextGLApi::glGetQueryObjectui64vFn(GLuint id
,
10609 GLuint64
* params
) {
10611 << "Trying to call glGetQueryObjectui64v() without current GL context";
10613 << "Trying to call glGetQueryObjectui64v() without current GL context";
10616 void NoContextGLApi::glGetQueryObjectuivFn(GLuint id
,
10620 << "Trying to call glGetQueryObjectuiv() without current GL context";
10622 << "Trying to call glGetQueryObjectuiv() without current GL context";
10625 void NoContextGLApi::glGetRenderbufferParameterivEXTFn(GLenum target
,
10628 NOTREACHED() << "Trying to call glGetRenderbufferParameterivEXT() without "
10629 "current GL context";
10630 LOG(ERROR
) << "Trying to call glGetRenderbufferParameterivEXT() without "
10631 "current GL context";
10634 void NoContextGLApi::glGetSamplerParameterfvFn(GLuint sampler
,
10638 << "Trying to call glGetSamplerParameterfv() without current GL context";
10640 << "Trying to call glGetSamplerParameterfv() without current GL context";
10643 void NoContextGLApi::glGetSamplerParameterivFn(GLuint sampler
,
10647 << "Trying to call glGetSamplerParameteriv() without current GL context";
10649 << "Trying to call glGetSamplerParameteriv() without current GL context";
10652 void NoContextGLApi::glGetShaderInfoLogFn(GLuint shader
,
10657 << "Trying to call glGetShaderInfoLog() without current GL context";
10659 << "Trying to call glGetShaderInfoLog() without current GL context";
10662 void NoContextGLApi::glGetShaderivFn(GLuint shader
,
10665 NOTREACHED() << "Trying to call glGetShaderiv() without current GL context";
10666 LOG(ERROR
) << "Trying to call glGetShaderiv() without current GL context";
10669 void NoContextGLApi::glGetShaderPrecisionFormatFn(GLenum shadertype
,
10670 GLenum precisiontype
,
10672 GLint
* precision
) {
10673 NOTREACHED() << "Trying to call glGetShaderPrecisionFormat() without current "
10675 LOG(ERROR
) << "Trying to call glGetShaderPrecisionFormat() without current "
10679 void NoContextGLApi::glGetShaderSourceFn(GLuint shader
,
10684 << "Trying to call glGetShaderSource() without current GL context";
10685 LOG(ERROR
) << "Trying to call glGetShaderSource() without current GL context";
10688 const GLubyte
* NoContextGLApi::glGetStringFn(GLenum name
) {
10689 NOTREACHED() << "Trying to call glGetString() without current GL context";
10690 LOG(ERROR
) << "Trying to call glGetString() without current GL context";
10694 const GLubyte
* NoContextGLApi::glGetStringiFn(GLenum name
, GLuint index
) {
10695 NOTREACHED() << "Trying to call glGetStringi() without current GL context";
10696 LOG(ERROR
) << "Trying to call glGetStringi() without current GL context";
10700 void NoContextGLApi::glGetSyncivFn(GLsync sync
,
10705 NOTREACHED() << "Trying to call glGetSynciv() without current GL context";
10706 LOG(ERROR
) << "Trying to call glGetSynciv() without current GL context";
10709 void NoContextGLApi::glGetTexLevelParameterfvFn(GLenum target
,
10714 << "Trying to call glGetTexLevelParameterfv() without current GL context";
10716 << "Trying to call glGetTexLevelParameterfv() without current GL context";
10719 void NoContextGLApi::glGetTexLevelParameterivFn(GLenum target
,
10724 << "Trying to call glGetTexLevelParameteriv() without current GL context";
10726 << "Trying to call glGetTexLevelParameteriv() without current GL context";
10729 void NoContextGLApi::glGetTexParameterfvFn(GLenum target
,
10733 << "Trying to call glGetTexParameterfv() without current GL context";
10735 << "Trying to call glGetTexParameterfv() without current GL context";
10738 void NoContextGLApi::glGetTexParameterivFn(GLenum target
,
10742 << "Trying to call glGetTexParameteriv() without current GL context";
10744 << "Trying to call glGetTexParameteriv() without current GL context";
10747 void NoContextGLApi::glGetTransformFeedbackVaryingFn(GLuint program
,
10754 NOTREACHED() << "Trying to call glGetTransformFeedbackVarying() without "
10755 "current GL context";
10756 LOG(ERROR
) << "Trying to call glGetTransformFeedbackVarying() without "
10757 "current GL context";
10760 void NoContextGLApi::glGetTranslatedShaderSourceANGLEFn(GLuint shader
,
10764 NOTREACHED() << "Trying to call glGetTranslatedShaderSourceANGLE() without "
10765 "current GL context";
10766 LOG(ERROR
) << "Trying to call glGetTranslatedShaderSourceANGLE() without "
10767 "current GL context";
10770 GLuint
NoContextGLApi::glGetUniformBlockIndexFn(GLuint program
,
10771 const char* uniformBlockName
) {
10773 << "Trying to call glGetUniformBlockIndex() without current GL context";
10775 << "Trying to call glGetUniformBlockIndex() without current GL context";
10779 void NoContextGLApi::glGetUniformfvFn(GLuint program
,
10782 NOTREACHED() << "Trying to call glGetUniformfv() without current GL context";
10783 LOG(ERROR
) << "Trying to call glGetUniformfv() without current GL context";
10786 void NoContextGLApi::glGetUniformIndicesFn(GLuint program
,
10787 GLsizei uniformCount
,
10788 const char* const* uniformNames
,
10789 GLuint
* uniformIndices
) {
10791 << "Trying to call glGetUniformIndices() without current GL context";
10793 << "Trying to call glGetUniformIndices() without current GL context";
10796 void NoContextGLApi::glGetUniformivFn(GLuint program
,
10799 NOTREACHED() << "Trying to call glGetUniformiv() without current GL context";
10800 LOG(ERROR
) << "Trying to call glGetUniformiv() without current GL context";
10803 GLint
NoContextGLApi::glGetUniformLocationFn(GLuint program
, const char* name
) {
10805 << "Trying to call glGetUniformLocation() without current GL context";
10807 << "Trying to call glGetUniformLocation() without current GL context";
10811 void NoContextGLApi::glGetUniformuivFn(GLuint program
,
10814 NOTREACHED() << "Trying to call glGetUniformuiv() without current GL context";
10815 LOG(ERROR
) << "Trying to call glGetUniformuiv() without current GL context";
10818 void NoContextGLApi::glGetVertexAttribfvFn(GLuint index
,
10822 << "Trying to call glGetVertexAttribfv() without current GL context";
10824 << "Trying to call glGetVertexAttribfv() without current GL context";
10827 void NoContextGLApi::glGetVertexAttribivFn(GLuint index
,
10831 << "Trying to call glGetVertexAttribiv() without current GL context";
10833 << "Trying to call glGetVertexAttribiv() without current GL context";
10836 void NoContextGLApi::glGetVertexAttribPointervFn(GLuint index
,
10839 NOTREACHED() << "Trying to call glGetVertexAttribPointerv() without current "
10841 LOG(ERROR
) << "Trying to call glGetVertexAttribPointerv() without current GL "
10845 void NoContextGLApi::glHintFn(GLenum target
, GLenum mode
) {
10846 NOTREACHED() << "Trying to call glHint() without current GL context";
10847 LOG(ERROR
) << "Trying to call glHint() without current GL context";
10850 void NoContextGLApi::glInsertEventMarkerEXTFn(GLsizei length
,
10851 const char* marker
) {
10853 << "Trying to call glInsertEventMarkerEXT() without current GL context";
10855 << "Trying to call glInsertEventMarkerEXT() without current GL context";
10858 void NoContextGLApi::glInvalidateFramebufferFn(GLenum target
,
10859 GLsizei numAttachments
,
10860 const GLenum
* attachments
) {
10862 << "Trying to call glInvalidateFramebuffer() without current GL context";
10864 << "Trying to call glInvalidateFramebuffer() without current GL context";
10867 void NoContextGLApi::glInvalidateSubFramebufferFn(GLenum target
,
10868 GLsizei numAttachments
,
10869 const GLenum
* attachments
,
10874 NOTREACHED() << "Trying to call glInvalidateSubFramebuffer() without current "
10876 LOG(ERROR
) << "Trying to call glInvalidateSubFramebuffer() without current "
10880 GLboolean
NoContextGLApi::glIsBufferFn(GLuint buffer
) {
10881 NOTREACHED() << "Trying to call glIsBuffer() without current GL context";
10882 LOG(ERROR
) << "Trying to call glIsBuffer() without current GL context";
10886 GLboolean
NoContextGLApi::glIsEnabledFn(GLenum cap
) {
10887 NOTREACHED() << "Trying to call glIsEnabled() without current GL context";
10888 LOG(ERROR
) << "Trying to call glIsEnabled() without current GL context";
10892 GLboolean
NoContextGLApi::glIsFenceAPPLEFn(GLuint fence
) {
10893 NOTREACHED() << "Trying to call glIsFenceAPPLE() without current GL context";
10894 LOG(ERROR
) << "Trying to call glIsFenceAPPLE() without current GL context";
10898 GLboolean
NoContextGLApi::glIsFenceNVFn(GLuint fence
) {
10899 NOTREACHED() << "Trying to call glIsFenceNV() without current GL context";
10900 LOG(ERROR
) << "Trying to call glIsFenceNV() without current GL context";
10904 GLboolean
NoContextGLApi::glIsFramebufferEXTFn(GLuint framebuffer
) {
10906 << "Trying to call glIsFramebufferEXT() without current GL context";
10908 << "Trying to call glIsFramebufferEXT() without current GL context";
10912 GLboolean
NoContextGLApi::glIsProgramFn(GLuint program
) {
10913 NOTREACHED() << "Trying to call glIsProgram() without current GL context";
10914 LOG(ERROR
) << "Trying to call glIsProgram() without current GL context";
10918 GLboolean
NoContextGLApi::glIsQueryFn(GLuint query
) {
10919 NOTREACHED() << "Trying to call glIsQuery() without current GL context";
10920 LOG(ERROR
) << "Trying to call glIsQuery() without current GL context";
10924 GLboolean
NoContextGLApi::glIsRenderbufferEXTFn(GLuint renderbuffer
) {
10926 << "Trying to call glIsRenderbufferEXT() without current GL context";
10928 << "Trying to call glIsRenderbufferEXT() without current GL context";
10932 GLboolean
NoContextGLApi::glIsSamplerFn(GLuint sampler
) {
10933 NOTREACHED() << "Trying to call glIsSampler() without current GL context";
10934 LOG(ERROR
) << "Trying to call glIsSampler() without current GL context";
10938 GLboolean
NoContextGLApi::glIsShaderFn(GLuint shader
) {
10939 NOTREACHED() << "Trying to call glIsShader() without current GL context";
10940 LOG(ERROR
) << "Trying to call glIsShader() without current GL context";
10944 GLboolean
NoContextGLApi::glIsSyncFn(GLsync sync
) {
10945 NOTREACHED() << "Trying to call glIsSync() without current GL context";
10946 LOG(ERROR
) << "Trying to call glIsSync() without current GL context";
10950 GLboolean
NoContextGLApi::glIsTextureFn(GLuint texture
) {
10951 NOTREACHED() << "Trying to call glIsTexture() without current GL context";
10952 LOG(ERROR
) << "Trying to call glIsTexture() without current GL context";
10956 GLboolean
NoContextGLApi::glIsTransformFeedbackFn(GLuint id
) {
10958 << "Trying to call glIsTransformFeedback() without current GL context";
10960 << "Trying to call glIsTransformFeedback() without current GL context";
10964 GLboolean
NoContextGLApi::glIsVertexArrayOESFn(GLuint array
) {
10966 << "Trying to call glIsVertexArrayOES() without current GL context";
10968 << "Trying to call glIsVertexArrayOES() without current GL context";
10972 void NoContextGLApi::glLineWidthFn(GLfloat width
) {
10973 NOTREACHED() << "Trying to call glLineWidth() without current GL context";
10974 LOG(ERROR
) << "Trying to call glLineWidth() without current GL context";
10977 void NoContextGLApi::glLinkProgramFn(GLuint program
) {
10978 NOTREACHED() << "Trying to call glLinkProgram() without current GL context";
10979 LOG(ERROR
) << "Trying to call glLinkProgram() without current GL context";
10982 void* NoContextGLApi::glMapBufferFn(GLenum target
, GLenum access
) {
10983 NOTREACHED() << "Trying to call glMapBuffer() without current GL context";
10984 LOG(ERROR
) << "Trying to call glMapBuffer() without current GL context";
10988 void* NoContextGLApi::glMapBufferRangeFn(GLenum target
,
10991 GLbitfield access
) {
10993 << "Trying to call glMapBufferRange() without current GL context";
10994 LOG(ERROR
) << "Trying to call glMapBufferRange() without current GL context";
10998 void NoContextGLApi::glMatrixLoadfEXTFn(GLenum matrixMode
, const GLfloat
* m
) {
11000 << "Trying to call glMatrixLoadfEXT() without current GL context";
11001 LOG(ERROR
) << "Trying to call glMatrixLoadfEXT() without current GL context";
11004 void NoContextGLApi::glMatrixLoadIdentityEXTFn(GLenum matrixMode
) {
11006 << "Trying to call glMatrixLoadIdentityEXT() without current GL context";
11008 << "Trying to call glMatrixLoadIdentityEXT() without current GL context";
11011 void NoContextGLApi::glPauseTransformFeedbackFn(void) {
11013 << "Trying to call glPauseTransformFeedback() without current GL context";
11015 << "Trying to call glPauseTransformFeedback() without current GL context";
11018 void NoContextGLApi::glPixelStoreiFn(GLenum pname
, GLint param
) {
11019 NOTREACHED() << "Trying to call glPixelStorei() without current GL context";
11020 LOG(ERROR
) << "Trying to call glPixelStorei() without current GL context";
11023 void NoContextGLApi::glPointParameteriFn(GLenum pname
, GLint param
) {
11025 << "Trying to call glPointParameteri() without current GL context";
11026 LOG(ERROR
) << "Trying to call glPointParameteri() without current GL context";
11029 void NoContextGLApi::glPolygonOffsetFn(GLfloat factor
, GLfloat units
) {
11030 NOTREACHED() << "Trying to call glPolygonOffset() without current GL context";
11031 LOG(ERROR
) << "Trying to call glPolygonOffset() without current GL context";
11034 void NoContextGLApi::glPopGroupMarkerEXTFn(void) {
11036 << "Trying to call glPopGroupMarkerEXT() without current GL context";
11038 << "Trying to call glPopGroupMarkerEXT() without current GL context";
11041 void NoContextGLApi::glProgramBinaryFn(GLuint program
,
11042 GLenum binaryFormat
,
11043 const GLvoid
* binary
,
11045 NOTREACHED() << "Trying to call glProgramBinary() without current GL context";
11046 LOG(ERROR
) << "Trying to call glProgramBinary() without current GL context";
11049 void NoContextGLApi::glProgramParameteriFn(GLuint program
,
11053 << "Trying to call glProgramParameteri() without current GL context";
11055 << "Trying to call glProgramParameteri() without current GL context";
11058 void NoContextGLApi::glPushGroupMarkerEXTFn(GLsizei length
,
11059 const char* marker
) {
11061 << "Trying to call glPushGroupMarkerEXT() without current GL context";
11063 << "Trying to call glPushGroupMarkerEXT() without current GL context";
11066 void NoContextGLApi::glQueryCounterFn(GLuint id
, GLenum target
) {
11067 NOTREACHED() << "Trying to call glQueryCounter() without current GL context";
11068 LOG(ERROR
) << "Trying to call glQueryCounter() without current GL context";
11071 void NoContextGLApi::glReadBufferFn(GLenum src
) {
11072 NOTREACHED() << "Trying to call glReadBuffer() without current GL context";
11073 LOG(ERROR
) << "Trying to call glReadBuffer() without current GL context";
11076 void NoContextGLApi::glReadPixelsFn(GLint x
,
11083 NOTREACHED() << "Trying to call glReadPixels() without current GL context";
11084 LOG(ERROR
) << "Trying to call glReadPixels() without current GL context";
11087 void NoContextGLApi::glReleaseShaderCompilerFn(void) {
11089 << "Trying to call glReleaseShaderCompiler() without current GL context";
11091 << "Trying to call glReleaseShaderCompiler() without current GL context";
11094 void NoContextGLApi::glRenderbufferStorageEXTFn(GLenum target
,
11095 GLenum internalformat
,
11099 << "Trying to call glRenderbufferStorageEXT() without current GL context";
11101 << "Trying to call glRenderbufferStorageEXT() without current GL context";
11104 void NoContextGLApi::glRenderbufferStorageMultisampleFn(GLenum target
,
11106 GLenum internalformat
,
11109 NOTREACHED() << "Trying to call glRenderbufferStorageMultisample() without "
11110 "current GL context";
11111 LOG(ERROR
) << "Trying to call glRenderbufferStorageMultisample() without "
11112 "current GL context";
11115 void NoContextGLApi::glRenderbufferStorageMultisampleANGLEFn(
11118 GLenum internalformat
,
11121 NOTREACHED() << "Trying to call glRenderbufferStorageMultisampleANGLE() "
11122 "without current GL context";
11123 LOG(ERROR
) << "Trying to call glRenderbufferStorageMultisampleANGLE() "
11124 "without current GL context";
11127 void NoContextGLApi::glRenderbufferStorageMultisampleEXTFn(
11130 GLenum internalformat
,
11133 NOTREACHED() << "Trying to call glRenderbufferStorageMultisampleEXT() "
11134 "without current GL context";
11135 LOG(ERROR
) << "Trying to call glRenderbufferStorageMultisampleEXT() without "
11136 "current GL context";
11139 void NoContextGLApi::glRenderbufferStorageMultisampleIMGFn(
11142 GLenum internalformat
,
11145 NOTREACHED() << "Trying to call glRenderbufferStorageMultisampleIMG() "
11146 "without current GL context";
11147 LOG(ERROR
) << "Trying to call glRenderbufferStorageMultisampleIMG() without "
11148 "current GL context";
11151 void NoContextGLApi::glResumeTransformFeedbackFn(void) {
11152 NOTREACHED() << "Trying to call glResumeTransformFeedback() without current "
11154 LOG(ERROR
) << "Trying to call glResumeTransformFeedback() without current GL "
11158 void NoContextGLApi::glSampleCoverageFn(GLclampf value
, GLboolean invert
) {
11160 << "Trying to call glSampleCoverage() without current GL context";
11161 LOG(ERROR
) << "Trying to call glSampleCoverage() without current GL context";
11164 void NoContextGLApi::glSamplerParameterfFn(GLuint sampler
,
11168 << "Trying to call glSamplerParameterf() without current GL context";
11170 << "Trying to call glSamplerParameterf() without current GL context";
11173 void NoContextGLApi::glSamplerParameterfvFn(GLuint sampler
,
11175 const GLfloat
* params
) {
11177 << "Trying to call glSamplerParameterfv() without current GL context";
11179 << "Trying to call glSamplerParameterfv() without current GL context";
11182 void NoContextGLApi::glSamplerParameteriFn(GLuint sampler
,
11186 << "Trying to call glSamplerParameteri() without current GL context";
11188 << "Trying to call glSamplerParameteri() without current GL context";
11191 void NoContextGLApi::glSamplerParameterivFn(GLuint sampler
,
11193 const GLint
* params
) {
11195 << "Trying to call glSamplerParameteriv() without current GL context";
11197 << "Trying to call glSamplerParameteriv() without current GL context";
11200 void NoContextGLApi::glScissorFn(GLint x
,
11204 NOTREACHED() << "Trying to call glScissor() without current GL context";
11205 LOG(ERROR
) << "Trying to call glScissor() without current GL context";
11208 void NoContextGLApi::glSetFenceAPPLEFn(GLuint fence
) {
11209 NOTREACHED() << "Trying to call glSetFenceAPPLE() without current GL context";
11210 LOG(ERROR
) << "Trying to call glSetFenceAPPLE() without current GL context";
11213 void NoContextGLApi::glSetFenceNVFn(GLuint fence
, GLenum condition
) {
11214 NOTREACHED() << "Trying to call glSetFenceNV() without current GL context";
11215 LOG(ERROR
) << "Trying to call glSetFenceNV() without current GL context";
11218 void NoContextGLApi::glShaderBinaryFn(GLsizei n
,
11219 const GLuint
* shaders
,
11220 GLenum binaryformat
,
11221 const void* binary
,
11223 NOTREACHED() << "Trying to call glShaderBinary() without current GL context";
11224 LOG(ERROR
) << "Trying to call glShaderBinary() without current GL context";
11227 void NoContextGLApi::glShaderSourceFn(GLuint shader
,
11229 const char* const* str
,
11230 const GLint
* length
) {
11231 NOTREACHED() << "Trying to call glShaderSource() without current GL context";
11232 LOG(ERROR
) << "Trying to call glShaderSource() without current GL context";
11235 void NoContextGLApi::glStencilFuncFn(GLenum func
, GLint ref
, GLuint mask
) {
11236 NOTREACHED() << "Trying to call glStencilFunc() without current GL context";
11237 LOG(ERROR
) << "Trying to call glStencilFunc() without current GL context";
11240 void NoContextGLApi::glStencilFuncSeparateFn(GLenum face
,
11245 << "Trying to call glStencilFuncSeparate() without current GL context";
11247 << "Trying to call glStencilFuncSeparate() without current GL context";
11250 void NoContextGLApi::glStencilMaskFn(GLuint mask
) {
11251 NOTREACHED() << "Trying to call glStencilMask() without current GL context";
11252 LOG(ERROR
) << "Trying to call glStencilMask() without current GL context";
11255 void NoContextGLApi::glStencilMaskSeparateFn(GLenum face
, GLuint mask
) {
11257 << "Trying to call glStencilMaskSeparate() without current GL context";
11259 << "Trying to call glStencilMaskSeparate() without current GL context";
11262 void NoContextGLApi::glStencilOpFn(GLenum fail
, GLenum zfail
, GLenum zpass
) {
11263 NOTREACHED() << "Trying to call glStencilOp() without current GL context";
11264 LOG(ERROR
) << "Trying to call glStencilOp() without current GL context";
11267 void NoContextGLApi::glStencilOpSeparateFn(GLenum face
,
11272 << "Trying to call glStencilOpSeparate() without current GL context";
11274 << "Trying to call glStencilOpSeparate() without current GL context";
11277 GLboolean
NoContextGLApi::glTestFenceAPPLEFn(GLuint fence
) {
11279 << "Trying to call glTestFenceAPPLE() without current GL context";
11280 LOG(ERROR
) << "Trying to call glTestFenceAPPLE() without current GL context";
11284 GLboolean
NoContextGLApi::glTestFenceNVFn(GLuint fence
) {
11285 NOTREACHED() << "Trying to call glTestFenceNV() without current GL context";
11286 LOG(ERROR
) << "Trying to call glTestFenceNV() without current GL context";
11290 void NoContextGLApi::glTexImage2DFn(GLenum target
,
11292 GLint internalformat
,
11298 const void* pixels
) {
11299 NOTREACHED() << "Trying to call glTexImage2D() without current GL context";
11300 LOG(ERROR
) << "Trying to call glTexImage2D() without current GL context";
11303 void NoContextGLApi::glTexImage3DFn(GLenum target
,
11305 GLint internalformat
,
11312 const void* pixels
) {
11313 NOTREACHED() << "Trying to call glTexImage3D() without current GL context";
11314 LOG(ERROR
) << "Trying to call glTexImage3D() without current GL context";
11317 void NoContextGLApi::glTexParameterfFn(GLenum target
,
11320 NOTREACHED() << "Trying to call glTexParameterf() without current GL context";
11321 LOG(ERROR
) << "Trying to call glTexParameterf() without current GL context";
11324 void NoContextGLApi::glTexParameterfvFn(GLenum target
,
11326 const GLfloat
* params
) {
11328 << "Trying to call glTexParameterfv() without current GL context";
11329 LOG(ERROR
) << "Trying to call glTexParameterfv() without current GL context";
11332 void NoContextGLApi::glTexParameteriFn(GLenum target
,
11335 NOTREACHED() << "Trying to call glTexParameteri() without current GL context";
11336 LOG(ERROR
) << "Trying to call glTexParameteri() without current GL context";
11339 void NoContextGLApi::glTexParameterivFn(GLenum target
,
11341 const GLint
* params
) {
11343 << "Trying to call glTexParameteriv() without current GL context";
11344 LOG(ERROR
) << "Trying to call glTexParameteriv() without current GL context";
11347 void NoContextGLApi::glTexStorage2DEXTFn(GLenum target
,
11349 GLenum internalformat
,
11353 << "Trying to call glTexStorage2DEXT() without current GL context";
11354 LOG(ERROR
) << "Trying to call glTexStorage2DEXT() without current GL context";
11357 void NoContextGLApi::glTexStorage3DFn(GLenum target
,
11359 GLenum internalformat
,
11363 NOTREACHED() << "Trying to call glTexStorage3D() without current GL context";
11364 LOG(ERROR
) << "Trying to call glTexStorage3D() without current GL context";
11367 void NoContextGLApi::glTexSubImage2DFn(GLenum target
,
11375 const void* pixels
) {
11376 NOTREACHED() << "Trying to call glTexSubImage2D() without current GL context";
11377 LOG(ERROR
) << "Trying to call glTexSubImage2D() without current GL context";
11380 void NoContextGLApi::glTexSubImage3DFn(GLenum target
,
11390 const void* pixels
) {
11391 NOTREACHED() << "Trying to call glTexSubImage3D() without current GL context";
11392 LOG(ERROR
) << "Trying to call glTexSubImage3D() without current GL context";
11395 void NoContextGLApi::glTransformFeedbackVaryingsFn(GLuint program
,
11397 const char* const* varyings
,
11398 GLenum bufferMode
) {
11399 NOTREACHED() << "Trying to call glTransformFeedbackVaryings() without "
11400 "current GL context";
11401 LOG(ERROR
) << "Trying to call glTransformFeedbackVaryings() without current "
11405 void NoContextGLApi::glUniform1fFn(GLint location
, GLfloat x
) {
11406 NOTREACHED() << "Trying to call glUniform1f() without current GL context";
11407 LOG(ERROR
) << "Trying to call glUniform1f() without current GL context";
11410 void NoContextGLApi::glUniform1fvFn(GLint location
,
11412 const GLfloat
* v
) {
11413 NOTREACHED() << "Trying to call glUniform1fv() without current GL context";
11414 LOG(ERROR
) << "Trying to call glUniform1fv() without current GL context";
11417 void NoContextGLApi::glUniform1iFn(GLint location
, GLint x
) {
11418 NOTREACHED() << "Trying to call glUniform1i() without current GL context";
11419 LOG(ERROR
) << "Trying to call glUniform1i() without current GL context";
11422 void NoContextGLApi::glUniform1ivFn(GLint location
,
11425 NOTREACHED() << "Trying to call glUniform1iv() without current GL context";
11426 LOG(ERROR
) << "Trying to call glUniform1iv() without current GL context";
11429 void NoContextGLApi::glUniform1uiFn(GLint location
, GLuint v0
) {
11430 NOTREACHED() << "Trying to call glUniform1ui() without current GL context";
11431 LOG(ERROR
) << "Trying to call glUniform1ui() without current GL context";
11434 void NoContextGLApi::glUniform1uivFn(GLint location
,
11437 NOTREACHED() << "Trying to call glUniform1uiv() without current GL context";
11438 LOG(ERROR
) << "Trying to call glUniform1uiv() without current GL context";
11441 void NoContextGLApi::glUniform2fFn(GLint location
, GLfloat x
, GLfloat y
) {
11442 NOTREACHED() << "Trying to call glUniform2f() without current GL context";
11443 LOG(ERROR
) << "Trying to call glUniform2f() without current GL context";
11446 void NoContextGLApi::glUniform2fvFn(GLint location
,
11448 const GLfloat
* v
) {
11449 NOTREACHED() << "Trying to call glUniform2fv() without current GL context";
11450 LOG(ERROR
) << "Trying to call glUniform2fv() without current GL context";
11453 void NoContextGLApi::glUniform2iFn(GLint location
, GLint x
, GLint y
) {
11454 NOTREACHED() << "Trying to call glUniform2i() without current GL context";
11455 LOG(ERROR
) << "Trying to call glUniform2i() without current GL context";
11458 void NoContextGLApi::glUniform2ivFn(GLint location
,
11461 NOTREACHED() << "Trying to call glUniform2iv() without current GL context";
11462 LOG(ERROR
) << "Trying to call glUniform2iv() without current GL context";
11465 void NoContextGLApi::glUniform2uiFn(GLint location
, GLuint v0
, GLuint v1
) {
11466 NOTREACHED() << "Trying to call glUniform2ui() without current GL context";
11467 LOG(ERROR
) << "Trying to call glUniform2ui() without current GL context";
11470 void NoContextGLApi::glUniform2uivFn(GLint location
,
11473 NOTREACHED() << "Trying to call glUniform2uiv() without current GL context";
11474 LOG(ERROR
) << "Trying to call glUniform2uiv() without current GL context";
11477 void NoContextGLApi::glUniform3fFn(GLint location
,
11481 NOTREACHED() << "Trying to call glUniform3f() without current GL context";
11482 LOG(ERROR
) << "Trying to call glUniform3f() without current GL context";
11485 void NoContextGLApi::glUniform3fvFn(GLint location
,
11487 const GLfloat
* v
) {
11488 NOTREACHED() << "Trying to call glUniform3fv() without current GL context";
11489 LOG(ERROR
) << "Trying to call glUniform3fv() without current GL context";
11492 void NoContextGLApi::glUniform3iFn(GLint location
, GLint x
, GLint y
, GLint z
) {
11493 NOTREACHED() << "Trying to call glUniform3i() without current GL context";
11494 LOG(ERROR
) << "Trying to call glUniform3i() without current GL context";
11497 void NoContextGLApi::glUniform3ivFn(GLint location
,
11500 NOTREACHED() << "Trying to call glUniform3iv() without current GL context";
11501 LOG(ERROR
) << "Trying to call glUniform3iv() without current GL context";
11504 void NoContextGLApi::glUniform3uiFn(GLint location
,
11508 NOTREACHED() << "Trying to call glUniform3ui() without current GL context";
11509 LOG(ERROR
) << "Trying to call glUniform3ui() without current GL context";
11512 void NoContextGLApi::glUniform3uivFn(GLint location
,
11515 NOTREACHED() << "Trying to call glUniform3uiv() without current GL context";
11516 LOG(ERROR
) << "Trying to call glUniform3uiv() without current GL context";
11519 void NoContextGLApi::glUniform4fFn(GLint location
,
11524 NOTREACHED() << "Trying to call glUniform4f() without current GL context";
11525 LOG(ERROR
) << "Trying to call glUniform4f() without current GL context";
11528 void NoContextGLApi::glUniform4fvFn(GLint location
,
11530 const GLfloat
* v
) {
11531 NOTREACHED() << "Trying to call glUniform4fv() without current GL context";
11532 LOG(ERROR
) << "Trying to call glUniform4fv() without current GL context";
11535 void NoContextGLApi::glUniform4iFn(GLint location
,
11540 NOTREACHED() << "Trying to call glUniform4i() without current GL context";
11541 LOG(ERROR
) << "Trying to call glUniform4i() without current GL context";
11544 void NoContextGLApi::glUniform4ivFn(GLint location
,
11547 NOTREACHED() << "Trying to call glUniform4iv() without current GL context";
11548 LOG(ERROR
) << "Trying to call glUniform4iv() without current GL context";
11551 void NoContextGLApi::glUniform4uiFn(GLint location
,
11556 NOTREACHED() << "Trying to call glUniform4ui() without current GL context";
11557 LOG(ERROR
) << "Trying to call glUniform4ui() without current GL context";
11560 void NoContextGLApi::glUniform4uivFn(GLint location
,
11563 NOTREACHED() << "Trying to call glUniform4uiv() without current GL context";
11564 LOG(ERROR
) << "Trying to call glUniform4uiv() without current GL context";
11567 void NoContextGLApi::glUniformBlockBindingFn(GLuint program
,
11568 GLuint uniformBlockIndex
,
11569 GLuint uniformBlockBinding
) {
11571 << "Trying to call glUniformBlockBinding() without current GL context";
11573 << "Trying to call glUniformBlockBinding() without current GL context";
11576 void NoContextGLApi::glUniformMatrix2fvFn(GLint location
,
11578 GLboolean transpose
,
11579 const GLfloat
* value
) {
11581 << "Trying to call glUniformMatrix2fv() without current GL context";
11583 << "Trying to call glUniformMatrix2fv() without current GL context";
11586 void NoContextGLApi::glUniformMatrix2x3fvFn(GLint location
,
11588 GLboolean transpose
,
11589 const GLfloat
* value
) {
11591 << "Trying to call glUniformMatrix2x3fv() without current GL context";
11593 << "Trying to call glUniformMatrix2x3fv() without current GL context";
11596 void NoContextGLApi::glUniformMatrix2x4fvFn(GLint location
,
11598 GLboolean transpose
,
11599 const GLfloat
* value
) {
11601 << "Trying to call glUniformMatrix2x4fv() without current GL context";
11603 << "Trying to call glUniformMatrix2x4fv() without current GL context";
11606 void NoContextGLApi::glUniformMatrix3fvFn(GLint location
,
11608 GLboolean transpose
,
11609 const GLfloat
* value
) {
11611 << "Trying to call glUniformMatrix3fv() without current GL context";
11613 << "Trying to call glUniformMatrix3fv() without current GL context";
11616 void NoContextGLApi::glUniformMatrix3x2fvFn(GLint location
,
11618 GLboolean transpose
,
11619 const GLfloat
* value
) {
11621 << "Trying to call glUniformMatrix3x2fv() without current GL context";
11623 << "Trying to call glUniformMatrix3x2fv() without current GL context";
11626 void NoContextGLApi::glUniformMatrix3x4fvFn(GLint location
,
11628 GLboolean transpose
,
11629 const GLfloat
* value
) {
11631 << "Trying to call glUniformMatrix3x4fv() without current GL context";
11633 << "Trying to call glUniformMatrix3x4fv() without current GL context";
11636 void NoContextGLApi::glUniformMatrix4fvFn(GLint location
,
11638 GLboolean transpose
,
11639 const GLfloat
* value
) {
11641 << "Trying to call glUniformMatrix4fv() without current GL context";
11643 << "Trying to call glUniformMatrix4fv() without current GL context";
11646 void NoContextGLApi::glUniformMatrix4x2fvFn(GLint location
,
11648 GLboolean transpose
,
11649 const GLfloat
* value
) {
11651 << "Trying to call glUniformMatrix4x2fv() without current GL context";
11653 << "Trying to call glUniformMatrix4x2fv() without current GL context";
11656 void NoContextGLApi::glUniformMatrix4x3fvFn(GLint location
,
11658 GLboolean transpose
,
11659 const GLfloat
* value
) {
11661 << "Trying to call glUniformMatrix4x3fv() without current GL context";
11663 << "Trying to call glUniformMatrix4x3fv() without current GL context";
11666 GLboolean
NoContextGLApi::glUnmapBufferFn(GLenum target
) {
11667 NOTREACHED() << "Trying to call glUnmapBuffer() without current GL context";
11668 LOG(ERROR
) << "Trying to call glUnmapBuffer() without current GL context";
11672 void NoContextGLApi::glUseProgramFn(GLuint program
) {
11673 NOTREACHED() << "Trying to call glUseProgram() without current GL context";
11674 LOG(ERROR
) << "Trying to call glUseProgram() without current GL context";
11677 void NoContextGLApi::glValidateProgramFn(GLuint program
) {
11679 << "Trying to call glValidateProgram() without current GL context";
11680 LOG(ERROR
) << "Trying to call glValidateProgram() without current GL context";
11683 void NoContextGLApi::glVertexAttrib1fFn(GLuint indx
, GLfloat x
) {
11685 << "Trying to call glVertexAttrib1f() without current GL context";
11686 LOG(ERROR
) << "Trying to call glVertexAttrib1f() without current GL context";
11689 void NoContextGLApi::glVertexAttrib1fvFn(GLuint indx
, const GLfloat
* values
) {
11691 << "Trying to call glVertexAttrib1fv() without current GL context";
11692 LOG(ERROR
) << "Trying to call glVertexAttrib1fv() without current GL context";
11695 void NoContextGLApi::glVertexAttrib2fFn(GLuint indx
, GLfloat x
, GLfloat y
) {
11697 << "Trying to call glVertexAttrib2f() without current GL context";
11698 LOG(ERROR
) << "Trying to call glVertexAttrib2f() without current GL context";
11701 void NoContextGLApi::glVertexAttrib2fvFn(GLuint indx
, const GLfloat
* values
) {
11703 << "Trying to call glVertexAttrib2fv() without current GL context";
11704 LOG(ERROR
) << "Trying to call glVertexAttrib2fv() without current GL context";
11707 void NoContextGLApi::glVertexAttrib3fFn(GLuint indx
,
11712 << "Trying to call glVertexAttrib3f() without current GL context";
11713 LOG(ERROR
) << "Trying to call glVertexAttrib3f() without current GL context";
11716 void NoContextGLApi::glVertexAttrib3fvFn(GLuint indx
, const GLfloat
* values
) {
11718 << "Trying to call glVertexAttrib3fv() without current GL context";
11719 LOG(ERROR
) << "Trying to call glVertexAttrib3fv() without current GL context";
11722 void NoContextGLApi::glVertexAttrib4fFn(GLuint indx
,
11728 << "Trying to call glVertexAttrib4f() without current GL context";
11729 LOG(ERROR
) << "Trying to call glVertexAttrib4f() without current GL context";
11732 void NoContextGLApi::glVertexAttrib4fvFn(GLuint indx
, const GLfloat
* values
) {
11734 << "Trying to call glVertexAttrib4fv() without current GL context";
11735 LOG(ERROR
) << "Trying to call glVertexAttrib4fv() without current GL context";
11738 void NoContextGLApi::glVertexAttribDivisorANGLEFn(GLuint index
,
11740 NOTREACHED() << "Trying to call glVertexAttribDivisorANGLE() without current "
11742 LOG(ERROR
) << "Trying to call glVertexAttribDivisorANGLE() without current "
11746 void NoContextGLApi::glVertexAttribI4iFn(GLuint indx
,
11752 << "Trying to call glVertexAttribI4i() without current GL context";
11753 LOG(ERROR
) << "Trying to call glVertexAttribI4i() without current GL context";
11756 void NoContextGLApi::glVertexAttribI4ivFn(GLuint indx
, const GLint
* values
) {
11758 << "Trying to call glVertexAttribI4iv() without current GL context";
11760 << "Trying to call glVertexAttribI4iv() without current GL context";
11763 void NoContextGLApi::glVertexAttribI4uiFn(GLuint indx
,
11769 << "Trying to call glVertexAttribI4ui() without current GL context";
11771 << "Trying to call glVertexAttribI4ui() without current GL context";
11774 void NoContextGLApi::glVertexAttribI4uivFn(GLuint indx
, const GLuint
* values
) {
11776 << "Trying to call glVertexAttribI4uiv() without current GL context";
11778 << "Trying to call glVertexAttribI4uiv() without current GL context";
11781 void NoContextGLApi::glVertexAttribIPointerFn(GLuint indx
,
11787 << "Trying to call glVertexAttribIPointer() without current GL context";
11789 << "Trying to call glVertexAttribIPointer() without current GL context";
11792 void NoContextGLApi::glVertexAttribPointerFn(GLuint indx
,
11795 GLboolean normalized
,
11799 << "Trying to call glVertexAttribPointer() without current GL context";
11801 << "Trying to call glVertexAttribPointer() without current GL context";
11804 void NoContextGLApi::glViewportFn(GLint x
,
11808 NOTREACHED() << "Trying to call glViewport() without current GL context";
11809 LOG(ERROR
) << "Trying to call glViewport() without current GL context";
11812 GLenum
NoContextGLApi::glWaitSyncFn(GLsync sync
,
11814 GLuint64 timeout
) {
11815 NOTREACHED() << "Trying to call glWaitSync() without current GL context";
11816 LOG(ERROR
) << "Trying to call glWaitSync() without current GL context";
11817 return static_cast<GLenum
>(0);