Add a stub __cxa_demangle to disable LLVM's demangler.
[chromium-blink-merge.git] / ui / gl / gl_bindings_autogen_gl.cc
blob391fe6f8929acf8d800e88ccf07131c1286d904f
1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 //
5 // This file is auto-generated from
6 // ui/gl/generate_bindings.py
7 // It's formatted by clang-format using chromium coding style:
8 // clang-format -i -style=chromium filename
9 // DO NOT EDIT!
11 #include <string>
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"
21 namespace gfx {
23 static bool g_debugBindingsInitialized;
24 DriverGL g_driver_gl;
26 void DriverGL::InitializeStaticBindings() {
27 fn.glActiveTextureFn = reinterpret_cast<glActiveTextureProc>(
28 GetGLProcAddress("glActiveTexture"));
29 fn.glAttachShaderFn =
30 reinterpret_cast<glAttachShaderProc>(GetGLProcAddress("glAttachShader"));
31 fn.glBeginQueryFn = 0;
32 fn.glBeginTransformFeedbackFn = 0;
33 fn.glBindAttribLocationFn = reinterpret_cast<glBindAttribLocationProc>(
34 GetGLProcAddress("glBindAttribLocation"));
35 fn.glBindBufferFn =
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;
44 fn.glBindTextureFn =
45 reinterpret_cast<glBindTextureProc>(GetGLProcAddress("glBindTexture"));
46 fn.glBindTransformFeedbackFn = 0;
47 fn.glBindVertexArrayOESFn = 0;
48 fn.glBlendBarrierKHRFn = 0;
49 fn.glBlendColorFn =
50 reinterpret_cast<glBlendColorProc>(GetGLProcAddress("glBlendColor"));
51 fn.glBlendEquationFn = reinterpret_cast<glBlendEquationProc>(
52 GetGLProcAddress("glBlendEquation"));
53 fn.glBlendEquationSeparateFn = reinterpret_cast<glBlendEquationSeparateProc>(
54 GetGLProcAddress("glBlendEquationSeparate"));
55 fn.glBlendFuncFn =
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;
62 fn.glBufferDataFn =
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;
72 fn.glClearColorFn =
73 reinterpret_cast<glClearColorProc>(GetGLProcAddress("glClearColor"));
74 fn.glClearDepthFn =
75 reinterpret_cast<glClearDepthProc>(GetGLProcAddress("glClearDepth"));
76 fn.glClearDepthfFn = 0;
77 fn.glClearStencilFn =
78 reinterpret_cast<glClearStencilProc>(GetGLProcAddress("glClearStencil"));
79 fn.glClientWaitSyncFn = 0;
80 fn.glColorMaskFn =
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"));
99 fn.glCreateShaderFn =
100 reinterpret_cast<glCreateShaderProc>(GetGLProcAddress("glCreateShader"));
101 fn.glCullFaceFn =
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;
120 fn.glDepthFuncFn =
121 reinterpret_cast<glDepthFuncProc>(GetGLProcAddress("glDepthFunc"));
122 fn.glDepthMaskFn =
123 reinterpret_cast<glDepthMaskProc>(GetGLProcAddress("glDepthMask"));
124 fn.glDepthRangeFn =
125 reinterpret_cast<glDepthRangeProc>(GetGLProcAddress("glDepthRange"));
126 fn.glDepthRangefFn = 0;
127 fn.glDetachShaderFn =
128 reinterpret_cast<glDetachShaderProc>(GetGLProcAddress("glDetachShader"));
129 fn.glDisableFn =
130 reinterpret_cast<glDisableProc>(GetGLProcAddress("glDisable"));
131 fn.glDisableVertexAttribArrayFn =
132 reinterpret_cast<glDisableVertexAttribArrayProc>(
133 GetGLProcAddress("glDisableVertexAttribArray"));
134 fn.glDiscardFramebufferEXTFn = 0;
135 fn.glDrawArraysFn =
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"));
150 fn.glEndQueryFn = 0;
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;
163 fn.glFrontFaceFn =
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;
174 fn.glGenTexturesFn =
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"));
189 fn.glGetBooleanvFn =
190 reinterpret_cast<glGetBooleanvProc>(GetGLProcAddress("glGetBooleanv"));
191 fn.glGetBufferParameterivFn = reinterpret_cast<glGetBufferParameterivProc>(
192 GetGLProcAddress("glGetBufferParameteriv"));
193 fn.glGetErrorFn =
194 reinterpret_cast<glGetErrorProc>(GetGLProcAddress("glGetError"));
195 fn.glGetFenceivNVFn = 0;
196 fn.glGetFloatvFn =
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;
204 fn.glGetIntegervFn =
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"));
223 fn.glGetShaderivFn =
224 reinterpret_cast<glGetShaderivProc>(GetGLProcAddress("glGetShaderiv"));
225 fn.glGetShaderPrecisionFormatFn = 0;
226 fn.glGetShaderSourceFn = reinterpret_cast<glGetShaderSourceProc>(
227 GetGLProcAddress("glGetShaderSource"));
228 fn.glGetStringFn =
229 reinterpret_cast<glGetStringProc>(GetGLProcAddress("glGetString"));
230 fn.glGetStringiFn =
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;
261 fn.glIsBufferFn =
262 reinterpret_cast<glIsBufferProc>(GetGLProcAddress("glIsBuffer"));
263 fn.glIsEnabledFn =
264 reinterpret_cast<glIsEnabledProc>(GetGLProcAddress("glIsEnabled"));
265 fn.glIsFenceAPPLEFn = 0;
266 fn.glIsFenceNVFn = 0;
267 fn.glIsFramebufferEXTFn = 0;
268 fn.glIsProgramFn =
269 reinterpret_cast<glIsProgramProc>(GetGLProcAddress("glIsProgram"));
270 fn.glIsQueryFn = 0;
271 fn.glIsRenderbufferEXTFn = 0;
272 fn.glIsSamplerFn = 0;
273 fn.glIsShaderFn =
274 reinterpret_cast<glIsShaderProc>(GetGLProcAddress("glIsShader"));
275 fn.glIsSyncFn = 0;
276 fn.glIsTextureFn =
277 reinterpret_cast<glIsTextureProc>(GetGLProcAddress("glIsTexture"));
278 fn.glIsTransformFeedbackFn = 0;
279 fn.glIsVertexArrayOESFn = 0;
280 fn.glLineWidthFn =
281 reinterpret_cast<glLineWidthProc>(GetGLProcAddress("glLineWidth"));
282 fn.glLinkProgramFn =
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;
289 fn.glPixelStoreiFn =
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;
300 fn.glReadPixelsFn =
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;
315 fn.glScissorFn =
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"));
322 fn.glStencilFuncFn =
323 reinterpret_cast<glStencilFuncProc>(GetGLProcAddress("glStencilFunc"));
324 fn.glStencilFuncSeparateFn = reinterpret_cast<glStencilFuncSeparateProc>(
325 GetGLProcAddress("glStencilFuncSeparate"));
326 fn.glStencilMaskFn =
327 reinterpret_cast<glStencilMaskProc>(GetGLProcAddress("glStencilMask"));
328 fn.glStencilMaskSeparateFn = reinterpret_cast<glStencilMaskSeparateProc>(
329 GetGLProcAddress("glStencilMaskSeparate"));
330 fn.glStencilOpFn =
331 reinterpret_cast<glStencilOpProc>(GetGLProcAddress("glStencilOp"));
332 fn.glStencilOpSeparateFn = reinterpret_cast<glStencilOpSeparateProc>(
333 GetGLProcAddress("glStencilOpSeparate"));
334 fn.glTestFenceAPPLEFn = 0;
335 fn.glTestFenceNVFn = 0;
336 fn.glTexImage2DFn =
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;
353 fn.glUniform1fFn =
354 reinterpret_cast<glUniform1fProc>(GetGLProcAddress("glUniform1f"));
355 fn.glUniform1fvFn =
356 reinterpret_cast<glUniform1fvProc>(GetGLProcAddress("glUniform1fv"));
357 fn.glUniform1iFn =
358 reinterpret_cast<glUniform1iProc>(GetGLProcAddress("glUniform1i"));
359 fn.glUniform1ivFn =
360 reinterpret_cast<glUniform1ivProc>(GetGLProcAddress("glUniform1iv"));
361 fn.glUniform1uiFn = 0;
362 fn.glUniform1uivFn = 0;
363 fn.glUniform2fFn =
364 reinterpret_cast<glUniform2fProc>(GetGLProcAddress("glUniform2f"));
365 fn.glUniform2fvFn =
366 reinterpret_cast<glUniform2fvProc>(GetGLProcAddress("glUniform2fv"));
367 fn.glUniform2iFn =
368 reinterpret_cast<glUniform2iProc>(GetGLProcAddress("glUniform2i"));
369 fn.glUniform2ivFn =
370 reinterpret_cast<glUniform2ivProc>(GetGLProcAddress("glUniform2iv"));
371 fn.glUniform2uiFn = 0;
372 fn.glUniform2uivFn = 0;
373 fn.glUniform3fFn =
374 reinterpret_cast<glUniform3fProc>(GetGLProcAddress("glUniform3f"));
375 fn.glUniform3fvFn =
376 reinterpret_cast<glUniform3fvProc>(GetGLProcAddress("glUniform3fv"));
377 fn.glUniform3iFn =
378 reinterpret_cast<glUniform3iProc>(GetGLProcAddress("glUniform3i"));
379 fn.glUniform3ivFn =
380 reinterpret_cast<glUniform3ivProc>(GetGLProcAddress("glUniform3iv"));
381 fn.glUniform3uiFn = 0;
382 fn.glUniform3uivFn = 0;
383 fn.glUniform4fFn =
384 reinterpret_cast<glUniform4fProc>(GetGLProcAddress("glUniform4f"));
385 fn.glUniform4fvFn =
386 reinterpret_cast<glUniform4fvProc>(GetGLProcAddress("glUniform4fv"));
387 fn.glUniform4iFn =
388 reinterpret_cast<glUniform4iProc>(GetGLProcAddress("glUniform4i"));
389 fn.glUniform4ivFn =
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;
407 fn.glUseProgramFn =
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"));
435 fn.glViewportFn =
436 reinterpret_cast<glViewportProc>(GetGLProcAddress("glViewport"));
437 fn.glWaitSyncFn = 0;
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 ") !=
455 std::string::npos;
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 ") !=
483 std::string::npos;
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 ") !=
506 std::string::npos;
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 ") !=
517 std::string::npos;
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)) {
538 fn.glBeginQueryFn =
539 reinterpret_cast<glBeginQueryProc>(GetGLProcAddress("glBeginQuery"));
540 DCHECK(fn.glBeginQueryFn);
541 } else if (ext.b_GL_ARB_occlusion_query) {
542 fn.glBeginQueryFn =
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) {
547 fn.glBeginQueryFn =
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)) {
613 fn.glBindSamplerFn =
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) {
725 fn.glClearDepthfFn =
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) ||
732 ext.b_GL_ARB_sync) {
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) ||
832 ext.b_GL_ARB_sync) {
833 fn.glDeleteSyncFn =
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) {
867 fn.glDepthRangefFn =
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;
899 if (!ver->is_es) {
900 fn.glDrawBufferFn =
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)) {
963 fn.glEndQueryFn =
964 reinterpret_cast<glEndQueryProc>(GetGLProcAddress("glEndQuery"));
965 DCHECK(fn.glEndQueryFn);
966 } else if (ext.b_GL_ARB_occlusion_query) {
967 fn.glEndQueryFn =
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) {
972 fn.glEndQueryFn =
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) ||
986 ext.b_GL_ARB_sync) {
987 fn.glFenceSyncFn =
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)) {
1102 fn.glGenQueriesFn =
1103 reinterpret_cast<glGenQueriesProc>(GetGLProcAddress("glGenQueries"));
1104 DCHECK(fn.glGenQueriesFn);
1105 } else if (ext.b_GL_ARB_occlusion_query) {
1106 fn.glGenQueriesFn =
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) {
1111 fn.glGenQueriesFn =
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)) {
1281 fn.glGetQueryivFn =
1282 reinterpret_cast<glGetQueryivProc>(GetGLProcAddress("glGetQueryiv"));
1283 DCHECK(fn.glGetQueryivFn);
1284 } else if (ext.b_GL_ARB_occlusion_query) {
1285 fn.glGetQueryivFn =
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) {
1290 fn.glGetQueryivFn =
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;
1307 if (!ver->is_es) {
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) {
1388 fn.glGetSyncivFn =
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) {
1478 fn.glIsFenceNVFn =
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)) {
1496 fn.glIsQueryFn =
1497 reinterpret_cast<glIsQueryProc>(GetGLProcAddress("glIsQuery"));
1498 DCHECK(fn.glIsQueryFn);
1499 } else if (ext.b_GL_ARB_occlusion_query) {
1500 fn.glIsQueryFn =
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) {
1505 fn.glIsQueryFn =
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)) {
1523 fn.glIsSamplerFn =
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) {
1531 fn.glIsSyncFn =
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;
1560 if (!ver->is_es) {
1561 fn.glMapBufferFn =
1562 reinterpret_cast<glMapBufferProc>(GetGLProcAddress("glMapBuffer"));
1563 DCHECK(fn.glMapBufferFn);
1564 } else if (ext.b_GL_OES_mapbuffer) {
1565 fn.glMapBufferFn =
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;
1606 if (!ver->is_es) {
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)) {
1659 fn.glReadBufferFn =
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) {
1763 fn.glSetFenceNVFn =
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)) {
1791 fn.glTexImage3DFn =
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)) {
1832 fn.glUniform1uiFn =
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)) {
1846 fn.glUniform2uiFn =
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)) {
1860 fn.glUniform3uiFn =
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)) {
1874 fn.glUniform4uiFn =
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) {
2002 fn.glWaitSyncFn =
2003 reinterpret_cast<glWaitSyncProc>(GetGLProcAddress("glWaitSync"));
2004 DCHECK(fn.glWaitSyncFn);
2007 if (g_debugBindingsInitialized)
2008 InitializeDebugBindings();
2011 extern "C" {
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
2049 << ")");
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,
2062 GLuint index,
2063 GLuint buffer,
2064 GLintptr offset,
2065 GLsizeiptr size) {
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,
2073 GLuint colorNumber,
2074 const char* name) {
2075 GL_SERVICE_LOG("glBindFragDataLocation"
2076 << "(" << program << ", " << colorNumber << ", " << name
2077 << ")");
2078 g_driver_gl.debug_fn.glBindFragDataLocationFn(program, colorNumber, name);
2081 static void GL_BINDING_CALL
2082 Debug_glBindFragDataLocationIndexed(GLuint program,
2083 GLuint colorNumber,
2084 GLuint index,
2085 const char* name) {
2086 GL_SERVICE_LOG("glBindFragDataLocationIndexed"
2087 << "(" << program << ", " << colorNumber << ", " << index
2088 << ", " << name << ")");
2089 g_driver_gl.debug_fn.glBindFragDataLocationIndexedFn(program, colorNumber,
2090 index, name);
2093 static void GL_BINDING_CALL
2094 Debug_glBindFramebufferEXT(GLenum target, GLuint framebuffer) {
2095 GL_SERVICE_LOG("glBindFramebufferEXT"
2096 << "(" << GLEnums::GetStringEnum(target) << ", " << framebuffer
2097 << ")");
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
2118 << ")");
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"
2137 << "("
2138 << ")");
2139 g_driver_gl.debug_fn.glBlendBarrierKHRFn();
2142 static void GL_BINDING_CALL Debug_glBlendColor(GLclampf red,
2143 GLclampf green,
2144 GLclampf blue,
2145 GLclampf alpha) {
2146 GL_SERVICE_LOG("glBlendColor"
2147 << "(" << red << ", " << green << ", " << blue << ", " << alpha
2148 << ")");
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,
2174 GLenum dstRGB,
2175 GLenum srcAlpha,
2176 GLenum dstAlpha) {
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,
2183 dstAlpha);
2186 static void GL_BINDING_CALL Debug_glBlitFramebuffer(GLint srcX0,
2187 GLint srcY0,
2188 GLint srcX1,
2189 GLint srcY1,
2190 GLint dstX0,
2191 GLint dstY0,
2192 GLint dstX1,
2193 GLint dstY1,
2194 GLbitfield mask,
2195 GLenum filter) {
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,
2206 GLint srcY0,
2207 GLint srcX1,
2208 GLint srcY1,
2209 GLint dstX0,
2210 GLint dstY0,
2211 GLint dstX1,
2212 GLint dstY1,
2213 GLbitfield mask,
2214 GLenum filter) {
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,
2225 GLint srcY0,
2226 GLint srcX1,
2227 GLint srcY1,
2228 GLint dstX0,
2229 GLint dstY0,
2230 GLint dstX1,
2231 GLint dstY1,
2232 GLbitfield mask,
2233 GLenum filter) {
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,
2244 GLsizeiptr size,
2245 const void* data,
2246 GLenum usage) {
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,
2255 GLintptr offset,
2256 GLsizeiptr size,
2257 const void* data) {
2258 GL_SERVICE_LOG("glBufferSubData"
2259 << "(" << GLEnums::GetStringEnum(target) << ", " << offset
2260 << ", " << size << ", " << static_cast<const void*>(data)
2261 << ")");
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));
2272 return 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,
2282 GLint drawbuffer,
2283 const GLfloat depth,
2284 GLint stencil) {
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,
2316 GLclampf green,
2317 GLclampf blue,
2318 GLclampf alpha) {
2319 GL_SERVICE_LOG("glClearColor"
2320 << "(" << red << ", " << green << ", " << blue << ", " << alpha
2321 << ")");
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);
2349 return result;
2352 static void GL_BINDING_CALL Debug_glColorMask(GLboolean red,
2353 GLboolean green,
2354 GLboolean blue,
2355 GLboolean alpha) {
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,
2371 GLint level,
2372 GLenum internalformat,
2373 GLsizei width,
2374 GLsizei height,
2375 GLint border,
2376 GLsizei imageSize,
2377 const void* data) {
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,
2388 GLint level,
2389 GLenum internalformat,
2390 GLsizei width,
2391 GLsizei height,
2392 GLsizei depth,
2393 GLint border,
2394 GLsizei imageSize,
2395 const void* data) {
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)
2401 << ")");
2402 g_driver_gl.debug_fn.glCompressedTexImage3DFn(target, level, internalformat,
2403 width, height, depth, border,
2404 imageSize, data);
2407 static void GL_BINDING_CALL Debug_glCompressedTexSubImage2D(GLenum target,
2408 GLint level,
2409 GLint xoffset,
2410 GLint yoffset,
2411 GLsizei width,
2412 GLsizei height,
2413 GLenum format,
2414 GLsizei imageSize,
2415 const void* data) {
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,
2426 GLint level,
2427 GLint xoffset,
2428 GLint yoffset,
2429 GLint zoffset,
2430 GLsizei width,
2431 GLsizei height,
2432 GLsizei depth,
2433 GLenum format,
2434 GLsizei imageSize,
2435 const void* data) {
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,
2444 imageSize, data);
2447 static void GL_BINDING_CALL Debug_glCopyBufferSubData(GLenum readTarget,
2448 GLenum writeTarget,
2449 GLintptr readOffset,
2450 GLintptr writeOffset,
2451 GLsizeiptr size) {
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,
2461 GLint level,
2462 GLenum internalformat,
2463 GLint x,
2464 GLint y,
2465 GLsizei width,
2466 GLsizei height,
2467 GLint border) {
2468 GL_SERVICE_LOG("glCopyTexImage2D"
2469 << "(" << GLEnums::GetStringEnum(target) << ", " << level
2470 << ", " << GLEnums::GetStringEnum(internalformat) << ", " << x
2471 << ", " << y << ", " << width << ", " << height << ", "
2472 << border << ")");
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,
2478 GLint level,
2479 GLint xoffset,
2480 GLint yoffset,
2481 GLint x,
2482 GLint y,
2483 GLsizei width,
2484 GLsizei height) {
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,
2490 y, width, height);
2493 static void GL_BINDING_CALL Debug_glCopyTexSubImage3D(GLenum target,
2494 GLint level,
2495 GLint xoffset,
2496 GLint yoffset,
2497 GLint zoffset,
2498 GLint x,
2499 GLint y,
2500 GLsizei width,
2501 GLsizei height) {
2502 GL_SERVICE_LOG("glCopyTexSubImage3D"
2503 << "(" << GLEnums::GetStringEnum(target) << ", " << level
2504 << ", " << xoffset << ", " << yoffset << ", " << zoffset
2505 << ", " << x << ", " << y << ", " << width << ", " << height
2506 << ")");
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"
2513 << "("
2514 << ")");
2515 GLuint result = g_driver_gl.debug_fn.glCreateProgramFn();
2516 GL_SERVICE_LOG("GL_RESULT: " << result);
2517 return 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);
2525 return 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)
2538 << ")");
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)
2546 << ")");
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)
2554 << ")");
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)
2562 << ")");
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)
2583 << ")");
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)
2591 << ")");
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)
2611 << ")");
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)
2626 << ")");
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,
2682 attachments);
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 << ", "
2689 << count << ")");
2690 g_driver_gl.debug_fn.glDrawArraysFn(mode, first, count);
2693 static void GL_BINDING_CALL
2694 Debug_glDrawArraysInstancedANGLE(GLenum mode,
2695 GLint first,
2696 GLsizei count,
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,
2702 primcount);
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,
2719 GLsizei count,
2720 GLenum type,
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,
2731 GLsizei count,
2732 GLenum type,
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
2739 << ")");
2740 g_driver_gl.debug_fn.glDrawElementsInstancedANGLEFn(mode, count, type,
2741 indices, primcount);
2744 static void GL_BINDING_CALL Debug_glDrawRangeElements(GLenum mode,
2745 GLuint start,
2746 GLuint end,
2747 GLsizei count,
2748 GLenum type,
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,
2755 indices);
2758 static void GL_BINDING_CALL
2759 Debug_glEGLImageTargetRenderbufferStorageOES(GLenum target,
2760 GLeglImageOES image) {
2761 GL_SERVICE_LOG("glEGLImageTargetRenderbufferStorageOES"
2762 << "(" << GLEnums::GetStringEnum(target) << ", " << image
2763 << ")");
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
2771 << ")");
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"
2795 << "("
2796 << ")");
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
2804 << ")");
2805 GLsync result = g_driver_gl.debug_fn.glFenceSyncFn(condition, flags);
2806 GL_SERVICE_LOG("GL_RESULT: " << result);
2807 return result;
2810 static void GL_BINDING_CALL Debug_glFinish(void) {
2811 GL_SERVICE_LOG("glFinish"
2812 << "("
2813 << ")");
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"
2831 << "("
2832 << ")");
2833 g_driver_gl.debug_fn.glFlushFn();
2836 static void GL_BINDING_CALL Debug_glFlushMappedBufferRange(GLenum target,
2837 GLintptr offset,
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,
2847 GLenum attachment,
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,
2860 GLenum attachment,
2861 GLenum textarget,
2862 GLuint texture,
2863 GLint level) {
2864 GL_SERVICE_LOG("glFramebufferTexture2DEXT"
2865 << "(" << GLEnums::GetStringEnum(target) << ", "
2866 << GLEnums::GetStringEnum(attachment) << ", "
2867 << GLEnums::GetStringEnum(textarget) << ", " << texture << ", "
2868 << level << ")");
2869 g_driver_gl.debug_fn.glFramebufferTexture2DEXTFn(target, attachment,
2870 textarget, texture, level);
2873 static void GL_BINDING_CALL
2874 Debug_glFramebufferTexture2DMultisampleEXT(GLenum target,
2875 GLenum attachment,
2876 GLenum textarget,
2877 GLuint texture,
2878 GLint level,
2879 GLsizei samples) {
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,
2891 GLenum attachment,
2892 GLenum textarget,
2893 GLuint texture,
2894 GLint level,
2895 GLsizei samples) {
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,
2906 GLenum attachment,
2907 GLuint texture,
2908 GLint level,
2909 GLint layer) {
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,
2915 level, layer);
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)
2927 << ")");
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)
2940 << ")");
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)
2947 << ")");
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)
2955 << ")");
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)
2969 << ")");
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)
2976 << ")");
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)
2983 << ")");
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)
2998 << ")");
2999 g_driver_gl.debug_fn.glGenVertexArraysOESFn(n, arrays);
3002 static void GL_BINDING_CALL Debug_glGetActiveAttrib(GLuint program,
3003 GLuint index,
3004 GLsizei bufsize,
3005 GLsizei* length,
3006 GLint* size,
3007 GLenum* type,
3008 char* name) {
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,
3016 size, type, name);
3019 static void GL_BINDING_CALL Debug_glGetActiveUniform(GLuint program,
3020 GLuint index,
3021 GLsizei bufsize,
3022 GLsizei* length,
3023 GLint* size,
3024 GLenum* type,
3025 char* name) {
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,
3033 size, type, name);
3036 static void GL_BINDING_CALL
3037 Debug_glGetActiveUniformBlockiv(GLuint program,
3038 GLuint uniformBlockIndex,
3039 GLenum pname,
3040 GLint* params) {
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,
3046 pname, params);
3049 static void GL_BINDING_CALL
3050 Debug_glGetActiveUniformBlockName(GLuint program,
3051 GLuint uniformBlockIndex,
3052 GLsizei bufSize,
3053 GLsizei* length,
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,
3067 GLenum pname,
3068 GLint* params) {
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,
3079 GLsizei maxcount,
3080 GLsizei* count,
3081 GLuint* shaders) {
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,
3087 shaders);
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);
3096 return 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"
3118 << "("
3119 << ")");
3120 GLenum result = g_driver_gl.debug_fn.glGetErrorFn();
3122 GL_SERVICE_LOG("GL_RESULT: " << GLEnums::GetStringError(result));
3124 return 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);
3148 return result;
3151 static void GL_BINDING_CALL
3152 Debug_glGetFramebufferAttachmentParameterivEXT(GLenum target,
3153 GLenum attachment,
3154 GLenum pname,
3155 GLint* params) {
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"
3167 << "("
3168 << ")");
3169 GLenum result = g_driver_gl.debug_fn.glGetGraphicsResetStatusARBFn();
3170 GL_SERVICE_LOG("GL_RESULT: " << result);
3171 return 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,
3207 GLenum pname,
3208 GLsizei bufSize,
3209 GLint* params) {
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,
3216 bufSize, params);
3219 static void GL_BINDING_CALL Debug_glGetProgramBinary(GLuint program,
3220 GLsizei bufSize,
3221 GLsizei* length,
3222 GLenum* binaryFormat,
3223 GLvoid* binary) {
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,
3234 GLsizei bufsize,
3235 GLsizei* length,
3236 char* infolog) {
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,
3255 const char* name) {
3256 GL_SERVICE_LOG("glGetProgramResourceLocation"
3257 << "(" << program << ", "
3258 << GLEnums::GetStringEnum(programInterface) << ", " << name
3259 << ")");
3260 GLint result = g_driver_gl.debug_fn.glGetProgramResourceLocationFn(
3261 program, programInterface, name);
3262 GL_SERVICE_LOG("GL_RESULT: " << result);
3263 return 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,
3309 GLenum pname,
3310 GLint* params) {
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,
3335 GLsizei bufsize,
3336 GLsizei* length,
3337 char* infolog) {
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,
3356 GLint* range,
3357 GLint* precision) {
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,
3364 range, precision);
3367 static void GL_BINDING_CALL Debug_glGetShaderSource(GLuint shader,
3368 GLsizei bufsize,
3369 GLsizei* length,
3370 char* source) {
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);
3383 return 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
3390 << ")");
3391 const GLubyte* result = g_driver_gl.debug_fn.glGetStringiFn(name, index);
3392 GL_SERVICE_LOG("GL_RESULT: " << result);
3393 return result;
3396 static void GL_BINDING_CALL Debug_glGetSynciv(GLsync sync,
3397 GLenum pname,
3398 GLsizei bufSize,
3399 GLsizei* length,
3400 GLint* values) {
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,
3409 GLint level,
3410 GLenum pname,
3411 GLfloat* params) {
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,
3420 GLint level,
3421 GLenum pname,
3422 GLint* params) {
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,
3449 GLuint index,
3450 GLsizei bufSize,
3451 GLsizei* length,
3452 GLsizei* size,
3453 GLenum* type,
3454 char* name) {
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,
3467 GLsizei bufsize,
3468 GLsizei* length,
3469 char* source) {
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,
3475 length, source);
3478 static GLuint GL_BINDING_CALL
3479 Debug_glGetUniformBlockIndex(GLuint program, const char* uniformBlockName) {
3480 GL_SERVICE_LOG("glGetUniformBlockIndex"
3481 << "(" << program << ", " << uniformBlockName << ")");
3482 GLuint result =
3483 g_driver_gl.debug_fn.glGetUniformBlockIndexFn(program, uniformBlockName);
3484 GL_SERVICE_LOG("GL_RESULT: " << result);
3485 return 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);
3523 return 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,
3581 attachments);
3584 static void GL_BINDING_CALL
3585 Debug_glInvalidateSubFramebuffer(GLenum target,
3586 GLsizei numAttachments,
3587 const GLenum* attachments,
3588 GLint x,
3589 GLint y,
3590 GLint width,
3591 GLint height) {
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);
3606 return 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);
3614 return 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);
3622 return 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);
3630 return 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);
3638 return 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);
3646 return 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);
3654 return 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);
3663 return 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);
3671 return 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);
3679 return 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);
3687 return 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);
3695 return 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);
3703 return 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);
3711 return 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);
3732 return result;
3735 static void* GL_BINDING_CALL Debug_glMapBufferRange(GLenum target,
3736 GLintptr offset,
3737 GLsizeiptr length,
3738 GLbitfield access) {
3739 GL_SERVICE_LOG("glMapBufferRange"
3740 << "(" << GLEnums::GetStringEnum(target) << ", " << offset
3741 << ", " << length << ", " << access << ")");
3742 void* result =
3743 g_driver_gl.debug_fn.glMapBufferRangeFn(target, offset, length, access);
3744 GL_SERVICE_LOG("GL_RESULT: " << result);
3745 return 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"
3764 << "("
3765 << ")");
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
3772 << ")");
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
3779 << ")");
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"
3792 << "("
3793 << ")");
3794 g_driver_gl.debug_fn.glPopGroupMarkerEXTFn();
3797 static void GL_BINDING_CALL Debug_glProgramBinary(GLuint program,
3798 GLenum binaryFormat,
3799 const GLvoid* binary,
3800 GLsizei length) {
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,
3836 GLint y,
3837 GLsizei width,
3838 GLsizei height,
3839 GLenum format,
3840 GLenum type,
3841 void* pixels) {
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,
3848 pixels);
3851 static void GL_BINDING_CALL Debug_glReleaseShaderCompiler(void) {
3852 GL_SERVICE_LOG("glReleaseShaderCompiler"
3853 << "("
3854 << ")");
3855 g_driver_gl.debug_fn.glReleaseShaderCompilerFn();
3858 static void GL_BINDING_CALL
3859 Debug_glRenderbufferStorageEXT(GLenum target,
3860 GLenum internalformat,
3861 GLsizei width,
3862 GLsizei height) {
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,
3868 height);
3871 static void GL_BINDING_CALL
3872 Debug_glRenderbufferStorageMultisample(GLenum target,
3873 GLsizei samples,
3874 GLenum internalformat,
3875 GLsizei width,
3876 GLsizei height) {
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,
3887 GLsizei samples,
3888 GLenum internalformat,
3889 GLsizei width,
3890 GLsizei height) {
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,
3901 GLsizei samples,
3902 GLenum internalformat,
3903 GLsizei width,
3904 GLsizei height) {
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,
3915 GLsizei samples,
3916 GLenum internalformat,
3917 GLsizei width,
3918 GLsizei height) {
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"
3929 << "("
3930 << ")");
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)
3938 << ")");
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,
3951 GLenum pname,
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
3979 << ")");
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)
3992 << ")");
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,
3999 const void* binary,
4000 GLsizei length) {
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,
4006 length);
4009 static void GL_BINDING_CALL Debug_glShaderSource(GLuint shader,
4010 GLsizei count,
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) {
4021 if (str[ii]) {
4022 if (length && length[ii] >= 0) {
4023 std::string source(str[ii], length[ii]);
4024 GL_SERVICE_LOG(" " << ii << ": ---\n" << source << "\n---");
4025 } else {
4026 GL_SERVICE_LOG(" " << ii << ": ---\n" << str[ii] << "\n---");
4028 } else {
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 << ", "
4039 << mask << ")");
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
4048 << ")");
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,
4075 GLenum fail,
4076 GLenum zfail,
4077 GLenum zpass) {
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);
4091 return 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);
4099 return result;
4102 static void GL_BINDING_CALL Debug_glTexImage2D(GLenum target,
4103 GLint level,
4104 GLint internalformat,
4105 GLsizei width,
4106 GLsizei height,
4107 GLint border,
4108 GLenum format,
4109 GLenum type,
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,
4122 GLint level,
4123 GLint internalformat,
4124 GLsizei width,
4125 GLsizei height,
4126 GLsizei depth,
4127 GLint border,
4128 GLenum format,
4129 GLenum type,
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,
4140 pixels);
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,
4178 GLsizei levels,
4179 GLenum internalformat,
4180 GLsizei width,
4181 GLsizei height) {
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,
4187 width, height);
4190 static void GL_BINDING_CALL Debug_glTexStorage3D(GLenum target,
4191 GLsizei levels,
4192 GLenum internalformat,
4193 GLsizei width,
4194 GLsizei height,
4195 GLsizei depth) {
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,
4201 height, depth);
4204 static void GL_BINDING_CALL Debug_glTexSubImage2D(GLenum target,
4205 GLint level,
4206 GLint xoffset,
4207 GLint yoffset,
4208 GLsizei width,
4209 GLsizei height,
4210 GLenum format,
4211 GLenum type,
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,
4224 GLint level,
4225 GLint xoffset,
4226 GLint yoffset,
4227 GLint zoffset,
4228 GLsizei width,
4229 GLsizei height,
4230 GLsizei depth,
4231 GLenum format,
4232 GLenum type,
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,
4243 type, pixels);
4246 static void GL_BINDING_CALL
4247 Debug_glTransformFeedbackVaryings(GLuint program,
4248 GLsizei count,
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,
4256 bufferMode);
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
4350 << ")");
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
4366 << ")");
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
4382 << ")");
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,
4454 GLsizei count,
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,
4465 GLsizei count,
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,
4473 value);
4476 static void GL_BINDING_CALL Debug_glUniformMatrix2x4fv(GLint location,
4477 GLsizei count,
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,
4485 value);
4488 static void GL_BINDING_CALL Debug_glUniformMatrix3fv(GLint location,
4489 GLsizei count,
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,
4500 GLsizei count,
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,
4508 value);
4511 static void GL_BINDING_CALL Debug_glUniformMatrix3x4fv(GLint location,
4512 GLsizei count,
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,
4520 value);
4523 static void GL_BINDING_CALL Debug_glUniformMatrix4fv(GLint location,
4524 GLsizei count,
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,
4535 GLsizei count,
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,
4543 value);
4546 static void GL_BINDING_CALL Debug_glUniformMatrix4x3fv(GLint location,
4547 GLsizei count,
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,
4555 value);
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);
4563 return 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)
4588 << ")");
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)
4603 << ")");
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)
4618 << ")");
4619 g_driver_gl.debug_fn.glVertexAttrib3fvFn(indx, values);
4622 static void GL_BINDING_CALL Debug_glVertexAttrib4f(GLuint indx,
4623 GLfloat x,
4624 GLfloat y,
4625 GLfloat z,
4626 GLfloat w) {
4627 GL_SERVICE_LOG("glVertexAttrib4f"
4628 << "(" << indx << ", " << x << ", " << y << ", " << z << ", "
4629 << w << ")");
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)
4637 << ")");
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 << ", "
4652 << w << ")");
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)
4660 << ")");
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 << ", "
4668 << w << ")");
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)
4676 << ")");
4677 g_driver_gl.debug_fn.glVertexAttribI4uivFn(indx, values);
4680 static void GL_BINDING_CALL Debug_glVertexAttribIPointer(GLuint indx,
4681 GLint size,
4682 GLenum type,
4683 GLsizei stride,
4684 const void* ptr) {
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,
4693 GLint size,
4694 GLenum type,
4695 GLboolean normalized,
4696 GLsizei stride,
4697 const void* ptr) {
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,
4704 stride, ptr);
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
4711 << ")");
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);
4721 return result;
4723 } // extern "C"
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,
5920 GLuint index,
5921 const char* name) {
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,
5934 GLuint index,
5935 GLuint buffer,
5936 GLintptr offset,
5937 GLsizeiptr size) {
5938 driver_->fn.glBindBufferRangeFn(target, index, buffer, offset, size);
5941 void GLApiBase::glBindFragDataLocationFn(GLuint program,
5942 GLuint colorNumber,
5943 const char* name) {
5944 driver_->fn.glBindFragDataLocationFn(program, colorNumber, name);
5947 void GLApiBase::glBindFragDataLocationIndexedFn(GLuint program,
5948 GLuint colorNumber,
5949 GLuint index,
5950 const char* name) {
5951 driver_->fn.glBindFragDataLocationIndexedFn(program, colorNumber, index,
5952 name);
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,
5984 GLclampf green,
5985 GLclampf blue,
5986 GLclampf alpha) {
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,
6003 GLenum dstRGB,
6004 GLenum srcAlpha,
6005 GLenum dstAlpha) {
6006 driver_->fn.glBlendFuncSeparateFn(srcRGB, dstRGB, srcAlpha, dstAlpha);
6009 void GLApiBase::glBlitFramebufferFn(GLint srcX0,
6010 GLint srcY0,
6011 GLint srcX1,
6012 GLint srcY1,
6013 GLint dstX0,
6014 GLint dstY0,
6015 GLint dstX1,
6016 GLint dstY1,
6017 GLbitfield mask,
6018 GLenum filter) {
6019 driver_->fn.glBlitFramebufferFn(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0,
6020 dstX1, dstY1, mask, filter);
6023 void GLApiBase::glBlitFramebufferANGLEFn(GLint srcX0,
6024 GLint srcY0,
6025 GLint srcX1,
6026 GLint srcY1,
6027 GLint dstX0,
6028 GLint dstY0,
6029 GLint dstX1,
6030 GLint dstY1,
6031 GLbitfield mask,
6032 GLenum filter) {
6033 driver_->fn.glBlitFramebufferANGLEFn(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0,
6034 dstX1, dstY1, mask, filter);
6037 void GLApiBase::glBlitFramebufferEXTFn(GLint srcX0,
6038 GLint srcY0,
6039 GLint srcX1,
6040 GLint srcY1,
6041 GLint dstX0,
6042 GLint dstY0,
6043 GLint dstX1,
6044 GLint dstY1,
6045 GLbitfield mask,
6046 GLenum filter) {
6047 driver_->fn.glBlitFramebufferEXTFn(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0,
6048 dstX1, dstY1, mask, filter);
6051 void GLApiBase::glBufferDataFn(GLenum target,
6052 GLsizeiptr size,
6053 const void* data,
6054 GLenum usage) {
6055 driver_->fn.glBufferDataFn(target, size, data, usage);
6058 void GLApiBase::glBufferSubDataFn(GLenum target,
6059 GLintptr offset,
6060 GLsizeiptr size,
6061 const void* data) {
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,
6074 GLint drawbuffer,
6075 const GLfloat depth,
6076 GLint stencil) {
6077 driver_->fn.glClearBufferfiFn(buffer, drawbuffer, depth, stencil);
6080 void GLApiBase::glClearBufferfvFn(GLenum buffer,
6081 GLint drawbuffer,
6082 const GLfloat* value) {
6083 driver_->fn.glClearBufferfvFn(buffer, drawbuffer, value);
6086 void GLApiBase::glClearBufferivFn(GLenum buffer,
6087 GLint drawbuffer,
6088 const GLint* value) {
6089 driver_->fn.glClearBufferivFn(buffer, drawbuffer, value);
6092 void GLApiBase::glClearBufferuivFn(GLenum buffer,
6093 GLint drawbuffer,
6094 const GLuint* value) {
6095 driver_->fn.glClearBufferuivFn(buffer, drawbuffer, value);
6098 void GLApiBase::glClearColorFn(GLclampf red,
6099 GLclampf green,
6100 GLclampf blue,
6101 GLclampf alpha) {
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,
6118 GLbitfield flags,
6119 GLuint64 timeout) {
6120 return driver_->fn.glClientWaitSyncFn(sync, flags, timeout);
6123 void GLApiBase::glColorMaskFn(GLboolean red,
6124 GLboolean green,
6125 GLboolean blue,
6126 GLboolean alpha) {
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,
6135 GLint level,
6136 GLenum internalformat,
6137 GLsizei width,
6138 GLsizei height,
6139 GLint border,
6140 GLsizei imageSize,
6141 const void* data) {
6142 driver_->fn.glCompressedTexImage2DFn(target, level, internalformat, width,
6143 height, border, imageSize, data);
6146 void GLApiBase::glCompressedTexImage3DFn(GLenum target,
6147 GLint level,
6148 GLenum internalformat,
6149 GLsizei width,
6150 GLsizei height,
6151 GLsizei depth,
6152 GLint border,
6153 GLsizei imageSize,
6154 const void* data) {
6155 driver_->fn.glCompressedTexImage3DFn(target, level, internalformat, width,
6156 height, depth, border, imageSize, data);
6159 void GLApiBase::glCompressedTexSubImage2DFn(GLenum target,
6160 GLint level,
6161 GLint xoffset,
6162 GLint yoffset,
6163 GLsizei width,
6164 GLsizei height,
6165 GLenum format,
6166 GLsizei imageSize,
6167 const void* data) {
6168 driver_->fn.glCompressedTexSubImage2DFn(
6169 target, level, xoffset, yoffset, width, height, format, imageSize, data);
6172 void GLApiBase::glCompressedTexSubImage3DFn(GLenum target,
6173 GLint level,
6174 GLint xoffset,
6175 GLint yoffset,
6176 GLint zoffset,
6177 GLsizei width,
6178 GLsizei height,
6179 GLsizei depth,
6180 GLenum format,
6181 GLsizei imageSize,
6182 const void* data) {
6183 driver_->fn.glCompressedTexSubImage3DFn(target, level, xoffset, yoffset,
6184 zoffset, width, height, depth, format,
6185 imageSize, data);
6188 void GLApiBase::glCopyBufferSubDataFn(GLenum readTarget,
6189 GLenum writeTarget,
6190 GLintptr readOffset,
6191 GLintptr writeOffset,
6192 GLsizeiptr size) {
6193 driver_->fn.glCopyBufferSubDataFn(readTarget, writeTarget, readOffset,
6194 writeOffset, size);
6197 void GLApiBase::glCopyTexImage2DFn(GLenum target,
6198 GLint level,
6199 GLenum internalformat,
6200 GLint x,
6201 GLint y,
6202 GLsizei width,
6203 GLsizei height,
6204 GLint border) {
6205 driver_->fn.glCopyTexImage2DFn(target, level, internalformat, x, y, width,
6206 height, border);
6209 void GLApiBase::glCopyTexSubImage2DFn(GLenum target,
6210 GLint level,
6211 GLint xoffset,
6212 GLint yoffset,
6213 GLint x,
6214 GLint y,
6215 GLsizei width,
6216 GLsizei height) {
6217 driver_->fn.glCopyTexSubImage2DFn(target, level, xoffset, yoffset, x, y,
6218 width, height);
6221 void GLApiBase::glCopyTexSubImage3DFn(GLenum target,
6222 GLint level,
6223 GLint xoffset,
6224 GLint yoffset,
6225 GLint zoffset,
6226 GLint x,
6227 GLint y,
6228 GLsizei width,
6229 GLsizei height) {
6230 driver_->fn.glCopyTexSubImage3DFn(target, level, xoffset, yoffset, zoffset, x,
6231 y, width, height);
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,
6339 GLint first,
6340 GLsizei count,
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,
6354 GLsizei count,
6355 GLenum type,
6356 const void* indices) {
6357 driver_->fn.glDrawElementsFn(mode, count, type, indices);
6360 void GLApiBase::glDrawElementsInstancedANGLEFn(GLenum mode,
6361 GLsizei count,
6362 GLenum type,
6363 const void* indices,
6364 GLsizei primcount) {
6365 driver_->fn.glDrawElementsInstancedANGLEFn(mode, count, type, indices,
6366 primcount);
6369 void GLApiBase::glDrawRangeElementsFn(GLenum mode,
6370 GLuint start,
6371 GLuint end,
6372 GLsizei count,
6373 GLenum type,
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,
6425 GLintptr offset,
6426 GLsizeiptr length) {
6427 driver_->fn.glFlushMappedBufferRangeFn(target, offset, length);
6430 void GLApiBase::glFramebufferRenderbufferEXTFn(GLenum target,
6431 GLenum attachment,
6432 GLenum renderbuffertarget,
6433 GLuint renderbuffer) {
6434 driver_->fn.glFramebufferRenderbufferEXTFn(target, attachment,
6435 renderbuffertarget, renderbuffer);
6438 void GLApiBase::glFramebufferTexture2DEXTFn(GLenum target,
6439 GLenum attachment,
6440 GLenum textarget,
6441 GLuint texture,
6442 GLint level) {
6443 driver_->fn.glFramebufferTexture2DEXTFn(target, attachment, textarget,
6444 texture, level);
6447 void GLApiBase::glFramebufferTexture2DMultisampleEXTFn(GLenum target,
6448 GLenum attachment,
6449 GLenum textarget,
6450 GLuint texture,
6451 GLint level,
6452 GLsizei samples) {
6453 driver_->fn.glFramebufferTexture2DMultisampleEXTFn(
6454 target, attachment, textarget, texture, level, samples);
6457 void GLApiBase::glFramebufferTexture2DMultisampleIMGFn(GLenum target,
6458 GLenum attachment,
6459 GLenum textarget,
6460 GLuint texture,
6461 GLint level,
6462 GLsizei samples) {
6463 driver_->fn.glFramebufferTexture2DMultisampleIMGFn(
6464 target, attachment, textarget, texture, level, samples);
6467 void GLApiBase::glFramebufferTextureLayerFn(GLenum target,
6468 GLenum attachment,
6469 GLuint texture,
6470 GLint level,
6471 GLint layer) {
6472 driver_->fn.glFramebufferTextureLayerFn(target, attachment, texture, level,
6473 layer);
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,
6525 GLuint index,
6526 GLsizei bufsize,
6527 GLsizei* length,
6528 GLint* size,
6529 GLenum* type,
6530 char* name) {
6531 driver_->fn.glGetActiveAttribFn(program, index, bufsize, length, size, type,
6532 name);
6535 void GLApiBase::glGetActiveUniformFn(GLuint program,
6536 GLuint index,
6537 GLsizei bufsize,
6538 GLsizei* length,
6539 GLint* size,
6540 GLenum* type,
6541 char* name) {
6542 driver_->fn.glGetActiveUniformFn(program, index, bufsize, length, size, type,
6543 name);
6546 void GLApiBase::glGetActiveUniformBlockivFn(GLuint program,
6547 GLuint uniformBlockIndex,
6548 GLenum pname,
6549 GLint* params) {
6550 driver_->fn.glGetActiveUniformBlockivFn(program, uniformBlockIndex, pname,
6551 params);
6554 void GLApiBase::glGetActiveUniformBlockNameFn(GLuint program,
6555 GLuint uniformBlockIndex,
6556 GLsizei bufSize,
6557 GLsizei* length,
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,
6566 GLenum pname,
6567 GLint* params) {
6568 driver_->fn.glGetActiveUniformsivFn(program, uniformCount, uniformIndices,
6569 pname, params);
6572 void GLApiBase::glGetAttachedShadersFn(GLuint program,
6573 GLsizei maxcount,
6574 GLsizei* count,
6575 GLuint* shaders) {
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,
6588 GLenum pname,
6589 GLint* params) {
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,
6610 GLenum attachment,
6611 GLenum pname,
6612 GLint* params) {
6613 driver_->fn.glGetFramebufferAttachmentParameterivEXTFn(target, attachment,
6614 pname, params);
6617 GLenum GLApiBase::glGetGraphicsResetStatusARBFn(void) {
6618 return driver_->fn.glGetGraphicsResetStatusARBFn();
6621 void GLApiBase::glGetInteger64i_vFn(GLenum target,
6622 GLuint index,
6623 GLint64* data) {
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,
6641 GLenum pname,
6642 GLsizei bufSize,
6643 GLint* params) {
6644 driver_->fn.glGetInternalformativFn(target, internalformat, pname, bufSize,
6645 params);
6648 void GLApiBase::glGetProgramBinaryFn(GLuint program,
6649 GLsizei bufSize,
6650 GLsizei* length,
6651 GLenum* binaryFormat,
6652 GLvoid* binary) {
6653 driver_->fn.glGetProgramBinaryFn(program, bufSize, length, binaryFormat,
6654 binary);
6657 void GLApiBase::glGetProgramInfoLogFn(GLuint program,
6658 GLsizei bufsize,
6659 GLsizei* length,
6660 char* infolog) {
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,
6670 const char* name) {
6671 return driver_->fn.glGetProgramResourceLocationFn(program, programInterface,
6672 name);
6675 void GLApiBase::glGetQueryivFn(GLenum target, GLenum pname, GLint* params) {
6676 driver_->fn.glGetQueryivFn(target, pname, params);
6679 void GLApiBase::glGetQueryObjecti64vFn(GLuint id,
6680 GLenum pname,
6681 GLint64* params) {
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,
6690 GLenum pname,
6691 GLuint64* params) {
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,
6700 GLenum pname,
6701 GLint* params) {
6702 driver_->fn.glGetRenderbufferParameterivEXTFn(target, pname, params);
6705 void GLApiBase::glGetSamplerParameterfvFn(GLuint sampler,
6706 GLenum pname,
6707 GLfloat* params) {
6708 driver_->fn.glGetSamplerParameterfvFn(sampler, pname, params);
6711 void GLApiBase::glGetSamplerParameterivFn(GLuint sampler,
6712 GLenum pname,
6713 GLint* params) {
6714 driver_->fn.glGetSamplerParameterivFn(sampler, pname, params);
6717 void GLApiBase::glGetShaderInfoLogFn(GLuint shader,
6718 GLsizei bufsize,
6719 GLsizei* length,
6720 char* infolog) {
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,
6730 GLint* range,
6731 GLint* precision) {
6732 driver_->fn.glGetShaderPrecisionFormatFn(shadertype, precisiontype, range,
6733 precision);
6736 void GLApiBase::glGetShaderSourceFn(GLuint shader,
6737 GLsizei bufsize,
6738 GLsizei* length,
6739 char* source) {
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,
6752 GLenum pname,
6753 GLsizei bufSize,
6754 GLsizei* length,
6755 GLint* values) {
6756 driver_->fn.glGetSyncivFn(sync, pname, bufSize, length, values);
6759 void GLApiBase::glGetTexLevelParameterfvFn(GLenum target,
6760 GLint level,
6761 GLenum pname,
6762 GLfloat* params) {
6763 driver_->fn.glGetTexLevelParameterfvFn(target, level, pname, params);
6766 void GLApiBase::glGetTexLevelParameterivFn(GLenum target,
6767 GLint level,
6768 GLenum pname,
6769 GLint* params) {
6770 driver_->fn.glGetTexLevelParameterivFn(target, level, pname, params);
6773 void GLApiBase::glGetTexParameterfvFn(GLenum target,
6774 GLenum pname,
6775 GLfloat* params) {
6776 driver_->fn.glGetTexParameterfvFn(target, pname, params);
6779 void GLApiBase::glGetTexParameterivFn(GLenum target,
6780 GLenum pname,
6781 GLint* params) {
6782 driver_->fn.glGetTexParameterivFn(target, pname, params);
6785 void GLApiBase::glGetTransformFeedbackVaryingFn(GLuint program,
6786 GLuint index,
6787 GLsizei bufSize,
6788 GLsizei* length,
6789 GLsizei* size,
6790 GLenum* type,
6791 char* name) {
6792 driver_->fn.glGetTransformFeedbackVaryingFn(program, index, bufSize, length,
6793 size, type, name);
6796 void GLApiBase::glGetTranslatedShaderSourceANGLEFn(GLuint shader,
6797 GLsizei bufsize,
6798 GLsizei* length,
6799 char* source) {
6800 driver_->fn.glGetTranslatedShaderSourceANGLEFn(shader, bufsize, length,
6801 source);
6804 GLuint GLApiBase::glGetUniformBlockIndexFn(GLuint program,
6805 const char* uniformBlockName) {
6806 return driver_->fn.glGetUniformBlockIndexFn(program, uniformBlockName);
6809 void GLApiBase::glGetUniformfvFn(GLuint program,
6810 GLint location,
6811 GLfloat* params) {
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,
6820 uniformIndices);
6823 void GLApiBase::glGetUniformivFn(GLuint program,
6824 GLint location,
6825 GLint* params) {
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,
6834 GLint location,
6835 GLuint* params) {
6836 driver_->fn.glGetUniformuivFn(program, location, params);
6839 void GLApiBase::glGetVertexAttribfvFn(GLuint index,
6840 GLenum pname,
6841 GLfloat* params) {
6842 driver_->fn.glGetVertexAttribfvFn(index, pname, params);
6845 void GLApiBase::glGetVertexAttribivFn(GLuint index,
6846 GLenum pname,
6847 GLint* params) {
6848 driver_->fn.glGetVertexAttribivFn(index, pname, params);
6851 void GLApiBase::glGetVertexAttribPointervFn(GLuint index,
6852 GLenum pname,
6853 void** pointer) {
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,
6874 GLint x,
6875 GLint y,
6876 GLint width,
6877 GLint height) {
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,
6951 GLintptr offset,
6952 GLsizeiptr length,
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,
6988 GLsizei length) {
6989 driver_->fn.glProgramBinaryFn(program, binaryFormat, binary, length);
6992 void GLApiBase::glProgramParameteriFn(GLuint program,
6993 GLenum pname,
6994 GLint value) {
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,
7011 GLint y,
7012 GLsizei width,
7013 GLsizei height,
7014 GLenum format,
7015 GLenum type,
7016 void* pixels) {
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,
7026 GLsizei width,
7027 GLsizei height) {
7028 driver_->fn.glRenderbufferStorageEXTFn(target, internalformat, width, height);
7031 void GLApiBase::glRenderbufferStorageMultisampleFn(GLenum target,
7032 GLsizei samples,
7033 GLenum internalformat,
7034 GLsizei width,
7035 GLsizei height) {
7036 driver_->fn.glRenderbufferStorageMultisampleFn(target, samples,
7037 internalformat, width, height);
7040 void GLApiBase::glRenderbufferStorageMultisampleANGLEFn(GLenum target,
7041 GLsizei samples,
7042 GLenum internalformat,
7043 GLsizei width,
7044 GLsizei height) {
7045 driver_->fn.glRenderbufferStorageMultisampleANGLEFn(
7046 target, samples, internalformat, width, height);
7049 void GLApiBase::glRenderbufferStorageMultisampleEXTFn(GLenum target,
7050 GLsizei samples,
7051 GLenum internalformat,
7052 GLsizei width,
7053 GLsizei height) {
7054 driver_->fn.glRenderbufferStorageMultisampleEXTFn(
7055 target, samples, internalformat, width, height);
7058 void GLApiBase::glRenderbufferStorageMultisampleIMGFn(GLenum target,
7059 GLsizei samples,
7060 GLenum internalformat,
7061 GLsizei width,
7062 GLsizei height) {
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,
7076 GLenum pname,
7077 GLfloat param) {
7078 driver_->fn.glSamplerParameterfFn(sampler, pname, param);
7081 void GLApiBase::glSamplerParameterfvFn(GLuint sampler,
7082 GLenum pname,
7083 const GLfloat* params) {
7084 driver_->fn.glSamplerParameterfvFn(sampler, pname, params);
7087 void GLApiBase::glSamplerParameteriFn(GLuint sampler,
7088 GLenum pname,
7089 GLint param) {
7090 driver_->fn.glSamplerParameteriFn(sampler, pname, param);
7093 void GLApiBase::glSamplerParameterivFn(GLuint sampler,
7094 GLenum pname,
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,
7114 const void* binary,
7115 GLsizei length) {
7116 driver_->fn.glShaderBinaryFn(n, shaders, binaryformat, binary, length);
7119 void GLApiBase::glShaderSourceFn(GLuint shader,
7120 GLsizei count,
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,
7131 GLenum func,
7132 GLint ref,
7133 GLuint mask) {
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,
7150 GLenum fail,
7151 GLenum zfail,
7152 GLenum zpass) {
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,
7165 GLint level,
7166 GLint internalformat,
7167 GLsizei width,
7168 GLsizei height,
7169 GLint border,
7170 GLenum format,
7171 GLenum type,
7172 const void* pixels) {
7173 driver_->fn.glTexImage2DFn(target, level, internalformat, width, height,
7174 border, format, type, pixels);
7177 void GLApiBase::glTexImage3DFn(GLenum target,
7178 GLint level,
7179 GLint internalformat,
7180 GLsizei width,
7181 GLsizei height,
7182 GLsizei depth,
7183 GLint border,
7184 GLenum format,
7185 GLenum type,
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,
7196 GLenum pname,
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,
7206 GLenum pname,
7207 const GLint* params) {
7208 driver_->fn.glTexParameterivFn(target, pname, params);
7211 void GLApiBase::glTexStorage2DEXTFn(GLenum target,
7212 GLsizei levels,
7213 GLenum internalformat,
7214 GLsizei width,
7215 GLsizei height) {
7216 driver_->fn.glTexStorage2DEXTFn(target, levels, internalformat, width,
7217 height);
7220 void GLApiBase::glTexStorage3DFn(GLenum target,
7221 GLsizei levels,
7222 GLenum internalformat,
7223 GLsizei width,
7224 GLsizei height,
7225 GLsizei depth) {
7226 driver_->fn.glTexStorage3DFn(target, levels, internalformat, width, height,
7227 depth);
7230 void GLApiBase::glTexSubImage2DFn(GLenum target,
7231 GLint level,
7232 GLint xoffset,
7233 GLint yoffset,
7234 GLsizei width,
7235 GLsizei height,
7236 GLenum format,
7237 GLenum type,
7238 const void* pixels) {
7239 driver_->fn.glTexSubImage2DFn(target, level, xoffset, yoffset, width, height,
7240 format, type, pixels);
7243 void GLApiBase::glTexSubImage3DFn(GLenum target,
7244 GLint level,
7245 GLint xoffset,
7246 GLint yoffset,
7247 GLint zoffset,
7248 GLsizei width,
7249 GLsizei height,
7250 GLsizei depth,
7251 GLenum format,
7252 GLenum type,
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,
7259 GLsizei count,
7260 const char* const* varyings,
7261 GLenum bufferMode) {
7262 driver_->fn.glTransformFeedbackVaryingsFn(program, count, varyings,
7263 bufferMode);
7266 void GLApiBase::glUniform1fFn(GLint location, GLfloat x) {
7267 driver_->fn.glUniform1fFn(location, x);
7270 void GLApiBase::glUniform1fvFn(GLint location,
7271 GLsizei count,
7272 const GLfloat* v) {
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,
7289 GLsizei count,
7290 const GLuint* v) {
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,
7299 GLsizei count,
7300 const GLfloat* v) {
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,
7317 GLsizei count,
7318 const GLuint* v) {
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,
7327 GLsizei count,
7328 const GLfloat* v) {
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,
7341 GLuint v0,
7342 GLuint v1,
7343 GLuint v2) {
7344 driver_->fn.glUniform3uiFn(location, v0, v1, v2);
7347 void GLApiBase::glUniform3uivFn(GLint location,
7348 GLsizei count,
7349 const GLuint* v) {
7350 driver_->fn.glUniform3uivFn(location, count, v);
7353 void GLApiBase::glUniform4fFn(GLint location,
7354 GLfloat x,
7355 GLfloat y,
7356 GLfloat z,
7357 GLfloat w) {
7358 driver_->fn.glUniform4fFn(location, x, y, z, w);
7361 void GLApiBase::glUniform4fvFn(GLint location,
7362 GLsizei count,
7363 const GLfloat* v) {
7364 driver_->fn.glUniform4fvFn(location, count, v);
7367 void GLApiBase::glUniform4iFn(GLint location,
7368 GLint x,
7369 GLint y,
7370 GLint z,
7371 GLint w) {
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,
7380 GLuint v0,
7381 GLuint v1,
7382 GLuint v2,
7383 GLuint v3) {
7384 driver_->fn.glUniform4uiFn(location, v0, v1, v2, v3);
7387 void GLApiBase::glUniform4uivFn(GLint location,
7388 GLsizei count,
7389 const GLuint* v) {
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,
7401 GLsizei count,
7402 GLboolean transpose,
7403 const GLfloat* value) {
7404 driver_->fn.glUniformMatrix2fvFn(location, count, transpose, value);
7407 void GLApiBase::glUniformMatrix2x3fvFn(GLint location,
7408 GLsizei count,
7409 GLboolean transpose,
7410 const GLfloat* value) {
7411 driver_->fn.glUniformMatrix2x3fvFn(location, count, transpose, value);
7414 void GLApiBase::glUniformMatrix2x4fvFn(GLint location,
7415 GLsizei count,
7416 GLboolean transpose,
7417 const GLfloat* value) {
7418 driver_->fn.glUniformMatrix2x4fvFn(location, count, transpose, value);
7421 void GLApiBase::glUniformMatrix3fvFn(GLint location,
7422 GLsizei count,
7423 GLboolean transpose,
7424 const GLfloat* value) {
7425 driver_->fn.glUniformMatrix3fvFn(location, count, transpose, value);
7428 void GLApiBase::glUniformMatrix3x2fvFn(GLint location,
7429 GLsizei count,
7430 GLboolean transpose,
7431 const GLfloat* value) {
7432 driver_->fn.glUniformMatrix3x2fvFn(location, count, transpose, value);
7435 void GLApiBase::glUniformMatrix3x4fvFn(GLint location,
7436 GLsizei count,
7437 GLboolean transpose,
7438 const GLfloat* value) {
7439 driver_->fn.glUniformMatrix3x4fvFn(location, count, transpose, value);
7442 void GLApiBase::glUniformMatrix4fvFn(GLint location,
7443 GLsizei count,
7444 GLboolean transpose,
7445 const GLfloat* value) {
7446 driver_->fn.glUniformMatrix4fvFn(location, count, transpose, value);
7449 void GLApiBase::glUniformMatrix4x2fvFn(GLint location,
7450 GLsizei count,
7451 GLboolean transpose,
7452 const GLfloat* value) {
7453 driver_->fn.glUniformMatrix4x2fvFn(location, count, transpose, value);
7456 void GLApiBase::glUniformMatrix4x3fvFn(GLint location,
7457 GLsizei count,
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,
7492 GLfloat x,
7493 GLfloat y,
7494 GLfloat z) {
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,
7503 GLfloat x,
7504 GLfloat y,
7505 GLfloat z,
7506 GLfloat w) {
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,
7519 GLint x,
7520 GLint y,
7521 GLint z,
7522 GLint w) {
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,
7531 GLuint x,
7532 GLuint y,
7533 GLuint z,
7534 GLuint w) {
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,
7543 GLint size,
7544 GLenum type,
7545 GLsizei stride,
7546 const void* ptr) {
7547 driver_->fn.glVertexAttribIPointerFn(indx, size, type, stride, ptr);
7550 void GLApiBase::glVertexAttribPointerFn(GLuint indx,
7551 GLint size,
7552 GLenum type,
7553 GLboolean normalized,
7554 GLsizei stride,
7555 const void* ptr) {
7556 driver_->fn.glVertexAttribPointerFn(indx, size, type, normalized, stride,
7557 ptr);
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,
7565 GLbitfield flags,
7566 GLuint64 timeout) {
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,
7591 GLuint index,
7592 const char* name) {
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,
7603 GLuint index,
7604 GLuint buffer) {
7605 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBindBufferBase")
7606 gl_api_->glBindBufferBaseFn(target, index, buffer);
7609 void TraceGLApi::glBindBufferRangeFn(GLenum target,
7610 GLuint index,
7611 GLuint buffer,
7612 GLintptr offset,
7613 GLsizeiptr size) {
7614 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBindBufferRange")
7615 gl_api_->glBindBufferRangeFn(target, index, buffer, offset, size);
7618 void TraceGLApi::glBindFragDataLocationFn(GLuint program,
7619 GLuint colorNumber,
7620 const char* name) {
7621 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBindFragDataLocation")
7622 gl_api_->glBindFragDataLocationFn(program, colorNumber, name);
7625 void TraceGLApi::glBindFragDataLocationIndexedFn(GLuint program,
7626 GLuint colorNumber,
7627 GLuint index,
7628 const char* name) {
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,
7670 GLclampf green,
7671 GLclampf blue,
7672 GLclampf alpha) {
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,
7693 GLenum dstRGB,
7694 GLenum srcAlpha,
7695 GLenum dstAlpha) {
7696 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBlendFuncSeparate")
7697 gl_api_->glBlendFuncSeparateFn(srcRGB, dstRGB, srcAlpha, dstAlpha);
7700 void TraceGLApi::glBlitFramebufferFn(GLint srcX0,
7701 GLint srcY0,
7702 GLint srcX1,
7703 GLint srcY1,
7704 GLint dstX0,
7705 GLint dstY0,
7706 GLint dstX1,
7707 GLint dstY1,
7708 GLbitfield mask,
7709 GLenum filter) {
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,
7716 GLint srcY0,
7717 GLint srcX1,
7718 GLint srcY1,
7719 GLint dstX0,
7720 GLint dstY0,
7721 GLint dstX1,
7722 GLint dstY1,
7723 GLbitfield mask,
7724 GLenum filter) {
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,
7731 GLint srcY0,
7732 GLint srcX1,
7733 GLint srcY1,
7734 GLint dstX0,
7735 GLint dstY0,
7736 GLint dstX1,
7737 GLint dstY1,
7738 GLbitfield mask,
7739 GLenum filter) {
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,
7746 GLsizeiptr size,
7747 const void* data,
7748 GLenum usage) {
7749 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBufferData")
7750 gl_api_->glBufferDataFn(target, size, data, usage);
7753 void TraceGLApi::glBufferSubDataFn(GLenum target,
7754 GLintptr offset,
7755 GLsizeiptr size,
7756 const void* data) {
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,
7773 GLint drawbuffer,
7774 const GLfloat depth,
7775 GLint stencil) {
7776 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glClearBufferfi")
7777 gl_api_->glClearBufferfiFn(buffer, drawbuffer, depth, stencil);
7780 void TraceGLApi::glClearBufferfvFn(GLenum buffer,
7781 GLint drawbuffer,
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,
7788 GLint drawbuffer,
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,
7795 GLint drawbuffer,
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,
7802 GLclampf green,
7803 GLclampf blue,
7804 GLclampf alpha) {
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,
7825 GLbitfield flags,
7826 GLuint64 timeout) {
7827 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glClientWaitSync")
7828 return gl_api_->glClientWaitSyncFn(sync, flags, timeout);
7831 void TraceGLApi::glColorMaskFn(GLboolean red,
7832 GLboolean green,
7833 GLboolean blue,
7834 GLboolean alpha) {
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,
7845 GLint level,
7846 GLenum internalformat,
7847 GLsizei width,
7848 GLsizei height,
7849 GLint border,
7850 GLsizei imageSize,
7851 const void* data) {
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,
7858 GLint level,
7859 GLenum internalformat,
7860 GLsizei width,
7861 GLsizei height,
7862 GLsizei depth,
7863 GLint border,
7864 GLsizei imageSize,
7865 const void* data) {
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,
7872 GLint level,
7873 GLint xoffset,
7874 GLint yoffset,
7875 GLsizei width,
7876 GLsizei height,
7877 GLenum format,
7878 GLsizei imageSize,
7879 const void* data) {
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,
7886 GLint level,
7887 GLint xoffset,
7888 GLint yoffset,
7889 GLint zoffset,
7890 GLsizei width,
7891 GLsizei height,
7892 GLsizei depth,
7893 GLenum format,
7894 GLsizei imageSize,
7895 const void* data) {
7896 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glCompressedTexSubImage3D")
7897 gl_api_->glCompressedTexSubImage3DFn(target, level, xoffset, yoffset, zoffset,
7898 width, height, depth, format, imageSize,
7899 data);
7902 void TraceGLApi::glCopyBufferSubDataFn(GLenum readTarget,
7903 GLenum writeTarget,
7904 GLintptr readOffset,
7905 GLintptr writeOffset,
7906 GLsizeiptr size) {
7907 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glCopyBufferSubData")
7908 gl_api_->glCopyBufferSubDataFn(readTarget, writeTarget, readOffset,
7909 writeOffset, size);
7912 void TraceGLApi::glCopyTexImage2DFn(GLenum target,
7913 GLint level,
7914 GLenum internalformat,
7915 GLint x,
7916 GLint y,
7917 GLsizei width,
7918 GLsizei height,
7919 GLint border) {
7920 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glCopyTexImage2D")
7921 gl_api_->glCopyTexImage2DFn(target, level, internalformat, x, y, width,
7922 height, border);
7925 void TraceGLApi::glCopyTexSubImage2DFn(GLenum target,
7926 GLint level,
7927 GLint xoffset,
7928 GLint yoffset,
7929 GLint x,
7930 GLint y,
7931 GLsizei width,
7932 GLsizei height) {
7933 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glCopyTexSubImage2D")
7934 gl_api_->glCopyTexSubImage2DFn(target, level, xoffset, yoffset, x, y, width,
7935 height);
7938 void TraceGLApi::glCopyTexSubImage3DFn(GLenum target,
7939 GLint level,
7940 GLint xoffset,
7941 GLint yoffset,
7942 GLint zoffset,
7943 GLint x,
7944 GLint y,
7945 GLsizei width,
7946 GLsizei height) {
7947 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glCopyTexSubImage3D")
7948 gl_api_->glCopyTexSubImage3DFn(target, level, xoffset, yoffset, zoffset, x, y,
7949 width, height);
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,
8082 GLint first,
8083 GLsizei count,
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,
8100 GLsizei count,
8101 GLenum type,
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,
8108 GLsizei count,
8109 GLenum type,
8110 const void* indices,
8111 GLsizei primcount) {
8112 TRACE_EVENT_BINARY_EFFICIENT0("gpu",
8113 "TraceGLAPI::glDrawElementsInstancedANGLE")
8114 gl_api_->glDrawElementsInstancedANGLEFn(mode, count, type, indices,
8115 primcount);
8118 void TraceGLApi::glDrawRangeElementsFn(GLenum mode,
8119 GLuint start,
8120 GLuint end,
8121 GLsizei count,
8122 GLenum type,
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,
8188 GLintptr offset,
8189 GLsizeiptr length) {
8190 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glFlushMappedBufferRange")
8191 gl_api_->glFlushMappedBufferRangeFn(target, offset, length);
8194 void TraceGLApi::glFramebufferRenderbufferEXTFn(GLenum target,
8195 GLenum attachment,
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,
8205 GLenum attachment,
8206 GLenum textarget,
8207 GLuint texture,
8208 GLint level) {
8209 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glFramebufferTexture2DEXT")
8210 gl_api_->glFramebufferTexture2DEXTFn(target, attachment, textarget, texture,
8211 level);
8214 void TraceGLApi::glFramebufferTexture2DMultisampleEXTFn(GLenum target,
8215 GLenum attachment,
8216 GLenum textarget,
8217 GLuint texture,
8218 GLint level,
8219 GLsizei samples) {
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,
8227 GLenum attachment,
8228 GLenum textarget,
8229 GLuint texture,
8230 GLint level,
8231 GLsizei samples) {
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,
8239 GLenum attachment,
8240 GLuint texture,
8241 GLint level,
8242 GLint layer) {
8243 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glFramebufferTextureLayer")
8244 gl_api_->glFramebufferTextureLayerFn(target, attachment, texture, level,
8245 layer);
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,
8309 GLuint index,
8310 GLsizei bufsize,
8311 GLsizei* length,
8312 GLint* size,
8313 GLenum* type,
8314 char* name) {
8315 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetActiveAttrib")
8316 gl_api_->glGetActiveAttribFn(program, index, bufsize, length, size, type,
8317 name);
8320 void TraceGLApi::glGetActiveUniformFn(GLuint program,
8321 GLuint index,
8322 GLsizei bufsize,
8323 GLsizei* length,
8324 GLint* size,
8325 GLenum* type,
8326 char* name) {
8327 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetActiveUniform")
8328 gl_api_->glGetActiveUniformFn(program, index, bufsize, length, size, type,
8329 name);
8332 void TraceGLApi::glGetActiveUniformBlockivFn(GLuint program,
8333 GLuint uniformBlockIndex,
8334 GLenum pname,
8335 GLint* params) {
8336 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetActiveUniformBlockiv")
8337 gl_api_->glGetActiveUniformBlockivFn(program, uniformBlockIndex, pname,
8338 params);
8341 void TraceGLApi::glGetActiveUniformBlockNameFn(GLuint program,
8342 GLuint uniformBlockIndex,
8343 GLsizei bufSize,
8344 GLsizei* length,
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,
8355 GLenum pname,
8356 GLint* params) {
8357 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetActiveUniformsiv")
8358 gl_api_->glGetActiveUniformsivFn(program, uniformCount, uniformIndices, pname,
8359 params);
8362 void TraceGLApi::glGetAttachedShadersFn(GLuint program,
8363 GLsizei maxcount,
8364 GLsizei* count,
8365 GLuint* shaders) {
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,
8381 GLenum pname,
8382 GLint* params) {
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,
8408 GLenum attachment,
8409 GLenum pname,
8410 GLint* params) {
8411 TRACE_EVENT_BINARY_EFFICIENT0(
8412 "gpu", "TraceGLAPI::glGetFramebufferAttachmentParameterivEXT")
8413 gl_api_->glGetFramebufferAttachmentParameterivEXTFn(target, attachment, pname,
8414 params);
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,
8424 GLuint index,
8425 GLint64* data) {
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,
8447 GLenum pname,
8448 GLsizei bufSize,
8449 GLint* params) {
8450 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetInternalformativ")
8451 gl_api_->glGetInternalformativFn(target, internalformat, pname, bufSize,
8452 params);
8455 void TraceGLApi::glGetProgramBinaryFn(GLuint program,
8456 GLsizei bufSize,
8457 GLsizei* length,
8458 GLenum* binaryFormat,
8459 GLvoid* binary) {
8460 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetProgramBinary")
8461 gl_api_->glGetProgramBinaryFn(program, bufSize, length, binaryFormat, binary);
8464 void TraceGLApi::glGetProgramInfoLogFn(GLuint program,
8465 GLsizei bufsize,
8466 GLsizei* length,
8467 char* infolog) {
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,
8479 const char* name) {
8480 TRACE_EVENT_BINARY_EFFICIENT0("gpu",
8481 "TraceGLAPI::glGetProgramResourceLocation")
8482 return gl_api_->glGetProgramResourceLocationFn(program, programInterface,
8483 name);
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,
8492 GLenum pname,
8493 GLint64* params) {
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,
8504 GLenum pname,
8505 GLuint64* params) {
8506 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetQueryObjectui64v")
8507 gl_api_->glGetQueryObjectui64vFn(id, pname, params);
8510 void TraceGLApi::glGetQueryObjectuivFn(GLuint id,
8511 GLenum pname,
8512 GLuint* params) {
8513 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetQueryObjectuiv")
8514 gl_api_->glGetQueryObjectuivFn(id, pname, params);
8517 void TraceGLApi::glGetRenderbufferParameterivEXTFn(GLenum target,
8518 GLenum pname,
8519 GLint* params) {
8520 TRACE_EVENT_BINARY_EFFICIENT0("gpu",
8521 "TraceGLAPI::glGetRenderbufferParameterivEXT")
8522 gl_api_->glGetRenderbufferParameterivEXTFn(target, pname, params);
8525 void TraceGLApi::glGetSamplerParameterfvFn(GLuint sampler,
8526 GLenum pname,
8527 GLfloat* params) {
8528 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetSamplerParameterfv")
8529 gl_api_->glGetSamplerParameterfvFn(sampler, pname, params);
8532 void TraceGLApi::glGetSamplerParameterivFn(GLuint sampler,
8533 GLenum pname,
8534 GLint* params) {
8535 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetSamplerParameteriv")
8536 gl_api_->glGetSamplerParameterivFn(sampler, pname, params);
8539 void TraceGLApi::glGetShaderInfoLogFn(GLuint shader,
8540 GLsizei bufsize,
8541 GLsizei* length,
8542 char* infolog) {
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,
8554 GLint* range,
8555 GLint* precision) {
8556 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetShaderPrecisionFormat")
8557 gl_api_->glGetShaderPrecisionFormatFn(shadertype, precisiontype, range,
8558 precision);
8561 void TraceGLApi::glGetShaderSourceFn(GLuint shader,
8562 GLsizei bufsize,
8563 GLsizei* length,
8564 char* source) {
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,
8580 GLenum pname,
8581 GLsizei bufSize,
8582 GLsizei* length,
8583 GLint* values) {
8584 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetSynciv")
8585 gl_api_->glGetSyncivFn(sync, pname, bufSize, length, values);
8588 void TraceGLApi::glGetTexLevelParameterfvFn(GLenum target,
8589 GLint level,
8590 GLenum pname,
8591 GLfloat* params) {
8592 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetTexLevelParameterfv")
8593 gl_api_->glGetTexLevelParameterfvFn(target, level, pname, params);
8596 void TraceGLApi::glGetTexLevelParameterivFn(GLenum target,
8597 GLint level,
8598 GLenum pname,
8599 GLint* params) {
8600 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetTexLevelParameteriv")
8601 gl_api_->glGetTexLevelParameterivFn(target, level, pname, params);
8604 void TraceGLApi::glGetTexParameterfvFn(GLenum target,
8605 GLenum pname,
8606 GLfloat* params) {
8607 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetTexParameterfv")
8608 gl_api_->glGetTexParameterfvFn(target, pname, params);
8611 void TraceGLApi::glGetTexParameterivFn(GLenum target,
8612 GLenum pname,
8613 GLint* params) {
8614 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetTexParameteriv")
8615 gl_api_->glGetTexParameterivFn(target, pname, params);
8618 void TraceGLApi::glGetTransformFeedbackVaryingFn(GLuint program,
8619 GLuint index,
8620 GLsizei bufSize,
8621 GLsizei* length,
8622 GLsizei* size,
8623 GLenum* type,
8624 char* name) {
8625 TRACE_EVENT_BINARY_EFFICIENT0("gpu",
8626 "TraceGLAPI::glGetTransformFeedbackVarying")
8627 gl_api_->glGetTransformFeedbackVaryingFn(program, index, bufSize, length,
8628 size, type, name);
8631 void TraceGLApi::glGetTranslatedShaderSourceANGLEFn(GLuint shader,
8632 GLsizei bufsize,
8633 GLsizei* length,
8634 char* source) {
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,
8647 GLint location,
8648 GLfloat* params) {
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,
8659 uniformIndices);
8662 void TraceGLApi::glGetUniformivFn(GLuint program,
8663 GLint location,
8664 GLint* params) {
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,
8675 GLint location,
8676 GLuint* params) {
8677 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetUniformuiv")
8678 gl_api_->glGetUniformuivFn(program, location, params);
8681 void TraceGLApi::glGetVertexAttribfvFn(GLuint index,
8682 GLenum pname,
8683 GLfloat* params) {
8684 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetVertexAttribfv")
8685 gl_api_->glGetVertexAttribfvFn(index, pname, params);
8688 void TraceGLApi::glGetVertexAttribivFn(GLuint index,
8689 GLenum pname,
8690 GLint* params) {
8691 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetVertexAttribiv")
8692 gl_api_->glGetVertexAttribivFn(index, pname, params);
8695 void TraceGLApi::glGetVertexAttribPointervFn(GLuint index,
8696 GLenum pname,
8697 void** pointer) {
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,
8722 GLint x,
8723 GLint y,
8724 GLint width,
8725 GLint height) {
8726 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glInvalidateSubFramebuffer")
8727 gl_api_->glInvalidateSubFramebufferFn(target, numAttachments, attachments, x,
8728 y, width, height);
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,
8817 GLintptr offset,
8818 GLsizeiptr length,
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,
8862 GLsizei length) {
8863 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glProgramBinary")
8864 gl_api_->glProgramBinaryFn(program, binaryFormat, binary, length);
8867 void TraceGLApi::glProgramParameteriFn(GLuint program,
8868 GLenum pname,
8869 GLint value) {
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,
8890 GLint y,
8891 GLsizei width,
8892 GLsizei height,
8893 GLenum format,
8894 GLenum type,
8895 void* pixels) {
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,
8907 GLsizei width,
8908 GLsizei height) {
8909 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glRenderbufferStorageEXT")
8910 gl_api_->glRenderbufferStorageEXTFn(target, internalformat, width, height);
8913 void TraceGLApi::glRenderbufferStorageMultisampleFn(GLenum target,
8914 GLsizei samples,
8915 GLenum internalformat,
8916 GLsizei width,
8917 GLsizei height) {
8918 TRACE_EVENT_BINARY_EFFICIENT0("gpu",
8919 "TraceGLAPI::glRenderbufferStorageMultisample")
8920 gl_api_->glRenderbufferStorageMultisampleFn(target, samples, internalformat,
8921 width, height);
8924 void TraceGLApi::glRenderbufferStorageMultisampleANGLEFn(GLenum target,
8925 GLsizei samples,
8926 GLenum internalformat,
8927 GLsizei width,
8928 GLsizei height) {
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,
8936 GLsizei samples,
8937 GLenum internalformat,
8938 GLsizei width,
8939 GLsizei height) {
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,
8947 GLsizei samples,
8948 GLenum internalformat,
8949 GLsizei width,
8950 GLsizei height) {
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,
8968 GLenum pname,
8969 GLfloat param) {
8970 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glSamplerParameterf")
8971 gl_api_->glSamplerParameterfFn(sampler, pname, param);
8974 void TraceGLApi::glSamplerParameterfvFn(GLuint sampler,
8975 GLenum pname,
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,
8982 GLenum pname,
8983 GLint param) {
8984 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glSamplerParameteri")
8985 gl_api_->glSamplerParameteriFn(sampler, pname, param);
8988 void TraceGLApi::glSamplerParameterivFn(GLuint sampler,
8989 GLenum pname,
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,
9013 const void* binary,
9014 GLsizei length) {
9015 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glShaderBinary")
9016 gl_api_->glShaderBinaryFn(n, shaders, binaryformat, binary, length);
9019 void TraceGLApi::glShaderSourceFn(GLuint shader,
9020 GLsizei count,
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,
9033 GLenum func,
9034 GLint ref,
9035 GLuint mask) {
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,
9056 GLenum fail,
9057 GLenum zfail,
9058 GLenum zpass) {
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,
9074 GLint level,
9075 GLint internalformat,
9076 GLsizei width,
9077 GLsizei height,
9078 GLint border,
9079 GLenum format,
9080 GLenum type,
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,
9088 GLint level,
9089 GLint internalformat,
9090 GLsizei width,
9091 GLsizei height,
9092 GLsizei depth,
9093 GLint border,
9094 GLenum format,
9095 GLenum type,
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,
9108 GLenum pname,
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,
9120 GLenum pname,
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,
9127 GLsizei levels,
9128 GLenum internalformat,
9129 GLsizei width,
9130 GLsizei height) {
9131 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glTexStorage2DEXT")
9132 gl_api_->glTexStorage2DEXTFn(target, levels, internalformat, width, height);
9135 void TraceGLApi::glTexStorage3DFn(GLenum target,
9136 GLsizei levels,
9137 GLenum internalformat,
9138 GLsizei width,
9139 GLsizei height,
9140 GLsizei depth) {
9141 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glTexStorage3D")
9142 gl_api_->glTexStorage3DFn(target, levels, internalformat, width, height,
9143 depth);
9146 void TraceGLApi::glTexSubImage2DFn(GLenum target,
9147 GLint level,
9148 GLint xoffset,
9149 GLint yoffset,
9150 GLsizei width,
9151 GLsizei height,
9152 GLenum format,
9153 GLenum type,
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,
9161 GLint level,
9162 GLint xoffset,
9163 GLint yoffset,
9164 GLint zoffset,
9165 GLsizei width,
9166 GLsizei height,
9167 GLsizei depth,
9168 GLenum format,
9169 GLenum type,
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,
9177 GLsizei count,
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,
9191 GLsizei count,
9192 const GLfloat* v) {
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,
9213 GLsizei count,
9214 const GLuint* v) {
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,
9225 GLsizei count,
9226 const GLfloat* v) {
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,
9247 GLsizei count,
9248 const GLuint* v) {
9249 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform2uiv")
9250 gl_api_->glUniform2uivFn(location, count, v);
9253 void TraceGLApi::glUniform3fFn(GLint location,
9254 GLfloat x,
9255 GLfloat y,
9256 GLfloat z) {
9257 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform3f")
9258 gl_api_->glUniform3fFn(location, x, y, z);
9261 void TraceGLApi::glUniform3fvFn(GLint location,
9262 GLsizei count,
9263 const GLfloat* v) {
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,
9279 GLuint v0,
9280 GLuint v1,
9281 GLuint v2) {
9282 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform3ui")
9283 gl_api_->glUniform3uiFn(location, v0, v1, v2);
9286 void TraceGLApi::glUniform3uivFn(GLint location,
9287 GLsizei count,
9288 const GLuint* v) {
9289 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform3uiv")
9290 gl_api_->glUniform3uivFn(location, count, v);
9293 void TraceGLApi::glUniform4fFn(GLint location,
9294 GLfloat x,
9295 GLfloat y,
9296 GLfloat z,
9297 GLfloat w) {
9298 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform4f")
9299 gl_api_->glUniform4fFn(location, x, y, z, w);
9302 void TraceGLApi::glUniform4fvFn(GLint location,
9303 GLsizei count,
9304 const GLfloat* v) {
9305 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform4fv")
9306 gl_api_->glUniform4fvFn(location, count, v);
9309 void TraceGLApi::glUniform4iFn(GLint location,
9310 GLint x,
9311 GLint y,
9312 GLint z,
9313 GLint w) {
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,
9324 GLuint v0,
9325 GLuint v1,
9326 GLuint v2,
9327 GLuint v3) {
9328 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform4ui")
9329 gl_api_->glUniform4uiFn(location, v0, v1, v2, v3);
9332 void TraceGLApi::glUniform4uivFn(GLint location,
9333 GLsizei count,
9334 const GLuint* v) {
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,
9348 GLsizei count,
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,
9356 GLsizei count,
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,
9364 GLsizei count,
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,
9372 GLsizei count,
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,
9380 GLsizei count,
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,
9388 GLsizei count,
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,
9396 GLsizei count,
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,
9404 GLsizei count,
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,
9412 GLsizei count,
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,
9455 GLfloat x,
9456 GLfloat y,
9457 GLfloat z) {
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,
9468 GLfloat x,
9469 GLfloat y,
9470 GLfloat z,
9471 GLfloat w) {
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,
9487 GLint x,
9488 GLint y,
9489 GLint z,
9490 GLint w) {
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,
9501 GLuint x,
9502 GLuint y,
9503 GLuint z,
9504 GLuint w) {
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,
9515 GLint size,
9516 GLenum type,
9517 GLsizei stride,
9518 const void* ptr) {
9519 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glVertexAttribIPointer")
9520 gl_api_->glVertexAttribIPointerFn(indx, size, type, stride, ptr);
9523 void TraceGLApi::glVertexAttribPointerFn(GLuint indx,
9524 GLint size,
9525 GLenum type,
9526 GLboolean normalized,
9527 GLsizei stride,
9528 const void* ptr) {
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,
9539 GLbitfield flags,
9540 GLuint64 timeout) {
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) {
9561 NOTREACHED()
9562 << "Trying to call glBeginTransformFeedback() without current GL context";
9563 LOG(ERROR)
9564 << "Trying to call glBeginTransformFeedback() without current GL context";
9567 void NoContextGLApi::glBindAttribLocationFn(GLuint program,
9568 GLuint index,
9569 const char* name) {
9570 NOTREACHED()
9571 << "Trying to call glBindAttribLocation() without current GL context";
9572 LOG(ERROR)
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,
9582 GLuint index,
9583 GLuint buffer) {
9584 NOTREACHED()
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,
9590 GLuint index,
9591 GLuint buffer,
9592 GLintptr offset,
9593 GLsizeiptr size) {
9594 NOTREACHED()
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,
9600 GLuint colorNumber,
9601 const char* name) {
9602 NOTREACHED()
9603 << "Trying to call glBindFragDataLocation() without current GL context";
9604 LOG(ERROR)
9605 << "Trying to call glBindFragDataLocation() without current GL context";
9608 void NoContextGLApi::glBindFragDataLocationIndexedFn(GLuint program,
9609 GLuint colorNumber,
9610 GLuint index,
9611 const char* name) {
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) {
9619 NOTREACHED()
9620 << "Trying to call glBindFramebufferEXT() without current GL context";
9621 LOG(ERROR)
9622 << "Trying to call glBindFramebufferEXT() without current GL context";
9625 void NoContextGLApi::glBindRenderbufferEXTFn(GLenum target,
9626 GLuint renderbuffer) {
9627 NOTREACHED()
9628 << "Trying to call glBindRenderbufferEXT() without current GL context";
9629 LOG(ERROR)
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) {
9644 NOTREACHED()
9645 << "Trying to call glBindTransformFeedback() without current GL context";
9646 LOG(ERROR)
9647 << "Trying to call glBindTransformFeedback() without current GL context";
9650 void NoContextGLApi::glBindVertexArrayOESFn(GLuint array) {
9651 NOTREACHED()
9652 << "Trying to call glBindVertexArrayOES() without current GL context";
9653 LOG(ERROR)
9654 << "Trying to call glBindVertexArrayOES() without current GL context";
9657 void NoContextGLApi::glBlendBarrierKHRFn(void) {
9658 NOTREACHED()
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,
9664 GLclampf green,
9665 GLclampf blue,
9666 GLclampf alpha) {
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,
9677 GLenum modeAlpha) {
9678 NOTREACHED()
9679 << "Trying to call glBlendEquationSeparate() without current GL context";
9680 LOG(ERROR)
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,
9690 GLenum dstRGB,
9691 GLenum srcAlpha,
9692 GLenum dstAlpha) {
9693 NOTREACHED()
9694 << "Trying to call glBlendFuncSeparate() without current GL context";
9695 LOG(ERROR)
9696 << "Trying to call glBlendFuncSeparate() without current GL context";
9699 void NoContextGLApi::glBlitFramebufferFn(GLint srcX0,
9700 GLint srcY0,
9701 GLint srcX1,
9702 GLint srcY1,
9703 GLint dstX0,
9704 GLint dstY0,
9705 GLint dstX1,
9706 GLint dstY1,
9707 GLbitfield mask,
9708 GLenum filter) {
9709 NOTREACHED()
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,
9715 GLint srcY0,
9716 GLint srcX1,
9717 GLint srcY1,
9718 GLint dstX0,
9719 GLint dstY0,
9720 GLint dstX1,
9721 GLint dstY1,
9722 GLbitfield mask,
9723 GLenum filter) {
9724 NOTREACHED()
9725 << "Trying to call glBlitFramebufferANGLE() without current GL context";
9726 LOG(ERROR)
9727 << "Trying to call glBlitFramebufferANGLE() without current GL context";
9730 void NoContextGLApi::glBlitFramebufferEXTFn(GLint srcX0,
9731 GLint srcY0,
9732 GLint srcX1,
9733 GLint srcY1,
9734 GLint dstX0,
9735 GLint dstY0,
9736 GLint dstX1,
9737 GLint dstY1,
9738 GLbitfield mask,
9739 GLenum filter) {
9740 NOTREACHED()
9741 << "Trying to call glBlitFramebufferEXT() without current GL context";
9742 LOG(ERROR)
9743 << "Trying to call glBlitFramebufferEXT() without current GL context";
9746 void NoContextGLApi::glBufferDataFn(GLenum target,
9747 GLsizeiptr size,
9748 const void* data,
9749 GLenum usage) {
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,
9755 GLintptr offset,
9756 GLsizeiptr size,
9757 const void* data) {
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 "
9766 "GL context";
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,
9776 GLint drawbuffer,
9777 const GLfloat depth,
9778 GLint stencil) {
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,
9784 GLint drawbuffer,
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,
9791 GLint drawbuffer,
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,
9798 GLint drawbuffer,
9799 const GLuint* value) {
9800 NOTREACHED()
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,
9806 GLclampf green,
9807 GLclampf blue,
9808 GLclampf alpha) {
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,
9829 GLbitfield flags,
9830 GLuint64 timeout) {
9831 NOTREACHED()
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,
9838 GLboolean green,
9839 GLboolean blue,
9840 GLboolean alpha) {
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,
9851 GLint level,
9852 GLenum internalformat,
9853 GLsizei width,
9854 GLsizei height,
9855 GLint border,
9856 GLsizei imageSize,
9857 const void* data) {
9858 NOTREACHED()
9859 << "Trying to call glCompressedTexImage2D() without current GL context";
9860 LOG(ERROR)
9861 << "Trying to call glCompressedTexImage2D() without current GL context";
9864 void NoContextGLApi::glCompressedTexImage3DFn(GLenum target,
9865 GLint level,
9866 GLenum internalformat,
9867 GLsizei width,
9868 GLsizei height,
9869 GLsizei depth,
9870 GLint border,
9871 GLsizei imageSize,
9872 const void* data) {
9873 NOTREACHED()
9874 << "Trying to call glCompressedTexImage3D() without current GL context";
9875 LOG(ERROR)
9876 << "Trying to call glCompressedTexImage3D() without current GL context";
9879 void NoContextGLApi::glCompressedTexSubImage2DFn(GLenum target,
9880 GLint level,
9881 GLint xoffset,
9882 GLint yoffset,
9883 GLsizei width,
9884 GLsizei height,
9885 GLenum format,
9886 GLsizei imageSize,
9887 const void* data) {
9888 NOTREACHED() << "Trying to call glCompressedTexSubImage2D() without current "
9889 "GL context";
9890 LOG(ERROR) << "Trying to call glCompressedTexSubImage2D() without current GL "
9891 "context";
9894 void NoContextGLApi::glCompressedTexSubImage3DFn(GLenum target,
9895 GLint level,
9896 GLint xoffset,
9897 GLint yoffset,
9898 GLint zoffset,
9899 GLsizei width,
9900 GLsizei height,
9901 GLsizei depth,
9902 GLenum format,
9903 GLsizei imageSize,
9904 const void* data) {
9905 NOTREACHED() << "Trying to call glCompressedTexSubImage3D() without current "
9906 "GL context";
9907 LOG(ERROR) << "Trying to call glCompressedTexSubImage3D() without current GL "
9908 "context";
9911 void NoContextGLApi::glCopyBufferSubDataFn(GLenum readTarget,
9912 GLenum writeTarget,
9913 GLintptr readOffset,
9914 GLintptr writeOffset,
9915 GLsizeiptr size) {
9916 NOTREACHED()
9917 << "Trying to call glCopyBufferSubData() without current GL context";
9918 LOG(ERROR)
9919 << "Trying to call glCopyBufferSubData() without current GL context";
9922 void NoContextGLApi::glCopyTexImage2DFn(GLenum target,
9923 GLint level,
9924 GLenum internalformat,
9925 GLint x,
9926 GLint y,
9927 GLsizei width,
9928 GLsizei height,
9929 GLint border) {
9930 NOTREACHED()
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,
9936 GLint level,
9937 GLint xoffset,
9938 GLint yoffset,
9939 GLint x,
9940 GLint y,
9941 GLsizei width,
9942 GLsizei height) {
9943 NOTREACHED()
9944 << "Trying to call glCopyTexSubImage2D() without current GL context";
9945 LOG(ERROR)
9946 << "Trying to call glCopyTexSubImage2D() without current GL context";
9949 void NoContextGLApi::glCopyTexSubImage3DFn(GLenum target,
9950 GLint level,
9951 GLint xoffset,
9952 GLint yoffset,
9953 GLint zoffset,
9954 GLint x,
9955 GLint y,
9956 GLsizei width,
9957 GLsizei height) {
9958 NOTREACHED()
9959 << "Trying to call glCopyTexSubImage3D() without current GL context";
9960 LOG(ERROR)
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";
9967 return 0U;
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";
9973 return 0U;
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) {
9982 NOTREACHED()
9983 << "Trying to call glDeleteBuffersARB() without current GL context";
9984 LOG(ERROR)
9985 << "Trying to call glDeleteBuffersARB() without current GL context";
9988 void NoContextGLApi::glDeleteFencesAPPLEFn(GLsizei n, const GLuint* fences) {
9989 NOTREACHED()
9990 << "Trying to call glDeleteFencesAPPLE() without current GL context";
9991 LOG(ERROR)
9992 << "Trying to call glDeleteFencesAPPLE() without current GL context";
9995 void NoContextGLApi::glDeleteFencesNVFn(GLsizei n, const GLuint* fences) {
9996 NOTREACHED()
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) {
10003 NOTREACHED()
10004 << "Trying to call glDeleteFramebuffersEXT() without current GL context";
10005 LOG(ERROR)
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) {
10021 NOTREACHED()
10022 << "Trying to call glDeleteRenderbuffersEXT() without current GL context";
10023 LOG(ERROR)
10024 << "Trying to call glDeleteRenderbuffersEXT() without current GL context";
10027 void NoContextGLApi::glDeleteSamplersFn(GLsizei n, const GLuint* samplers) {
10028 NOTREACHED()
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) {
10044 NOTREACHED()
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 "
10052 "GL context";
10053 LOG(ERROR) << "Trying to call glDeleteTransformFeedbacks() without current "
10054 "GL context";
10057 void NoContextGLApi::glDeleteVertexArraysOESFn(GLsizei n,
10058 const GLuint* arrays) {
10059 NOTREACHED()
10060 << "Trying to call glDeleteVertexArraysOES() without current GL context";
10061 LOG(ERROR)
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 "
10097 "GL context";
10098 LOG(ERROR) << "Trying to call glDisableVertexAttribArray() without current "
10099 "GL context";
10102 void NoContextGLApi::glDiscardFramebufferEXTFn(GLenum target,
10103 GLsizei numAttachments,
10104 const GLenum* attachments) {
10105 NOTREACHED()
10106 << "Trying to call glDiscardFramebufferEXT() without current GL context";
10107 LOG(ERROR)
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,
10117 GLint first,
10118 GLsizei count,
10119 GLsizei primcount) {
10120 NOTREACHED() << "Trying to call glDrawArraysInstancedANGLE() without current "
10121 "GL context";
10122 LOG(ERROR) << "Trying to call glDrawArraysInstancedANGLE() without current "
10123 "GL context";
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) {
10132 NOTREACHED()
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,
10138 GLsizei count,
10139 GLenum type,
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,
10146 GLsizei count,
10147 GLenum type,
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 "
10153 "GL context";
10156 void NoContextGLApi::glDrawRangeElementsFn(GLenum mode,
10157 GLuint start,
10158 GLuint end,
10159 GLsizei count,
10160 GLenum type,
10161 const void* indices) {
10162 NOTREACHED()
10163 << "Trying to call glDrawRangeElements() without current GL context";
10164 LOG(ERROR)
10165 << "Trying to call glDrawRangeElements() without current GL context";
10168 void NoContextGLApi::glEGLImageTargetRenderbufferStorageOESFn(
10169 GLenum target,
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 "
10182 "GL context";
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 "
10192 "GL context";
10193 LOG(ERROR) << "Trying to call glEnableVertexAttribArray() without current GL "
10194 "context";
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) {
10203 NOTREACHED()
10204 << "Trying to call glEndTransformFeedback() without current GL context";
10205 LOG(ERROR)
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";
10212 return NULL;
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) {
10221 NOTREACHED()
10222 << "Trying to call glFinishFenceAPPLE() without current GL context";
10223 LOG(ERROR)
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,
10238 GLintptr offset,
10239 GLsizeiptr length) {
10240 NOTREACHED()
10241 << "Trying to call glFlushMappedBufferRange() without current GL context";
10242 LOG(ERROR)
10243 << "Trying to call glFlushMappedBufferRange() without current GL context";
10246 void NoContextGLApi::glFramebufferRenderbufferEXTFn(GLenum target,
10247 GLenum attachment,
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 "
10253 "GL context";
10256 void NoContextGLApi::glFramebufferTexture2DEXTFn(GLenum target,
10257 GLenum attachment,
10258 GLenum textarget,
10259 GLuint texture,
10260 GLint level) {
10261 NOTREACHED() << "Trying to call glFramebufferTexture2DEXT() without current "
10262 "GL context";
10263 LOG(ERROR) << "Trying to call glFramebufferTexture2DEXT() without current GL "
10264 "context";
10267 void NoContextGLApi::glFramebufferTexture2DMultisampleEXTFn(GLenum target,
10268 GLenum attachment,
10269 GLenum textarget,
10270 GLuint texture,
10271 GLint level,
10272 GLsizei samples) {
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,
10280 GLenum attachment,
10281 GLenum textarget,
10282 GLuint texture,
10283 GLint level,
10284 GLsizei samples) {
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,
10292 GLenum attachment,
10293 GLuint texture,
10294 GLint level,
10295 GLint layer) {
10296 NOTREACHED() << "Trying to call glFramebufferTextureLayer() without current "
10297 "GL context";
10298 LOG(ERROR) << "Trying to call glFramebufferTextureLayer() without current GL "
10299 "context";
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) {
10313 NOTREACHED()
10314 << "Trying to call glGenerateMipmapEXT() without current GL context";
10315 LOG(ERROR)
10316 << "Trying to call glGenerateMipmapEXT() without current GL context";
10319 void NoContextGLApi::glGenFencesAPPLEFn(GLsizei n, GLuint* fences) {
10320 NOTREACHED()
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) {
10331 NOTREACHED()
10332 << "Trying to call glGenFramebuffersEXT() without current GL context";
10333 LOG(ERROR)
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) {
10343 NOTREACHED()
10344 << "Trying to call glGenRenderbuffersEXT() without current GL context";
10345 LOG(ERROR)
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) {
10360 NOTREACHED()
10361 << "Trying to call glGenTransformFeedbacks() without current GL context";
10362 LOG(ERROR)
10363 << "Trying to call glGenTransformFeedbacks() without current GL context";
10366 void NoContextGLApi::glGenVertexArraysOESFn(GLsizei n, GLuint* arrays) {
10367 NOTREACHED()
10368 << "Trying to call glGenVertexArraysOES() without current GL context";
10369 LOG(ERROR)
10370 << "Trying to call glGenVertexArraysOES() without current GL context";
10373 void NoContextGLApi::glGetActiveAttribFn(GLuint program,
10374 GLuint index,
10375 GLsizei bufsize,
10376 GLsizei* length,
10377 GLint* size,
10378 GLenum* type,
10379 char* name) {
10380 NOTREACHED()
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,
10386 GLuint index,
10387 GLsizei bufsize,
10388 GLsizei* length,
10389 GLint* size,
10390 GLenum* type,
10391 char* name) {
10392 NOTREACHED()
10393 << "Trying to call glGetActiveUniform() without current GL context";
10394 LOG(ERROR)
10395 << "Trying to call glGetActiveUniform() without current GL context";
10398 void NoContextGLApi::glGetActiveUniformBlockivFn(GLuint program,
10399 GLuint uniformBlockIndex,
10400 GLenum pname,
10401 GLint* params) {
10402 NOTREACHED() << "Trying to call glGetActiveUniformBlockiv() without current "
10403 "GL context";
10404 LOG(ERROR) << "Trying to call glGetActiveUniformBlockiv() without current GL "
10405 "context";
10408 void NoContextGLApi::glGetActiveUniformBlockNameFn(GLuint program,
10409 GLuint uniformBlockIndex,
10410 GLsizei bufSize,
10411 GLsizei* length,
10412 char* uniformBlockName) {
10413 NOTREACHED() << "Trying to call glGetActiveUniformBlockName() without "
10414 "current GL context";
10415 LOG(ERROR) << "Trying to call glGetActiveUniformBlockName() without current "
10416 "GL context";
10419 void NoContextGLApi::glGetActiveUniformsivFn(GLuint program,
10420 GLsizei uniformCount,
10421 const GLuint* uniformIndices,
10422 GLenum pname,
10423 GLint* params) {
10424 NOTREACHED()
10425 << "Trying to call glGetActiveUniformsiv() without current GL context";
10426 LOG(ERROR)
10427 << "Trying to call glGetActiveUniformsiv() without current GL context";
10430 void NoContextGLApi::glGetAttachedShadersFn(GLuint program,
10431 GLsizei maxcount,
10432 GLsizei* count,
10433 GLuint* shaders) {
10434 NOTREACHED()
10435 << "Trying to call glGetAttachedShaders() without current GL context";
10436 LOG(ERROR)
10437 << "Trying to call glGetAttachedShaders() without current GL context";
10440 GLint NoContextGLApi::glGetAttribLocationFn(GLuint program, const char* name) {
10441 NOTREACHED()
10442 << "Trying to call glGetAttribLocation() without current GL context";
10443 LOG(ERROR)
10444 << "Trying to call glGetAttribLocation() without current GL context";
10445 return 0;
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,
10454 GLenum pname,
10455 GLint* params) {
10456 NOTREACHED()
10457 << "Trying to call glGetBufferParameteriv() without current GL context";
10458 LOG(ERROR)
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,
10469 GLenum pname,
10470 GLint* params) {
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) {
10482 NOTREACHED()
10483 << "Trying to call glGetFragDataLocation() without current GL context";
10484 LOG(ERROR)
10485 << "Trying to call glGetFragDataLocation() without current GL context";
10486 return 0;
10489 void NoContextGLApi::glGetFramebufferAttachmentParameterivEXTFn(
10490 GLenum target,
10491 GLenum attachment,
10492 GLenum pname,
10493 GLint* params) {
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 "
10504 "GL context";
10505 return static_cast<GLenum>(0);
10508 void NoContextGLApi::glGetInteger64i_vFn(GLenum target,
10509 GLuint index,
10510 GLint64* data) {
10511 NOTREACHED()
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,
10522 GLuint index,
10523 GLint* data) {
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,
10535 GLenum pname,
10536 GLsizei bufSize,
10537 GLint* params) {
10538 NOTREACHED()
10539 << "Trying to call glGetInternalformativ() without current GL context";
10540 LOG(ERROR)
10541 << "Trying to call glGetInternalformativ() without current GL context";
10544 void NoContextGLApi::glGetProgramBinaryFn(GLuint program,
10545 GLsizei bufSize,
10546 GLsizei* length,
10547 GLenum* binaryFormat,
10548 GLvoid* binary) {
10549 NOTREACHED()
10550 << "Trying to call glGetProgramBinary() without current GL context";
10551 LOG(ERROR)
10552 << "Trying to call glGetProgramBinary() without current GL context";
10555 void NoContextGLApi::glGetProgramInfoLogFn(GLuint program,
10556 GLsizei bufsize,
10557 GLsizei* length,
10558 char* infolog) {
10559 NOTREACHED()
10560 << "Trying to call glGetProgramInfoLog() without current GL context";
10561 LOG(ERROR)
10562 << "Trying to call glGetProgramInfoLog() without current GL context";
10565 void NoContextGLApi::glGetProgramivFn(GLuint program,
10566 GLenum pname,
10567 GLint* params) {
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 "
10578 "GL context";
10579 return 0;
10582 void NoContextGLApi::glGetQueryivFn(GLenum target,
10583 GLenum pname,
10584 GLint* params) {
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,
10590 GLenum pname,
10591 GLint64* params) {
10592 NOTREACHED()
10593 << "Trying to call glGetQueryObjecti64v() without current GL context";
10594 LOG(ERROR)
10595 << "Trying to call glGetQueryObjecti64v() without current GL context";
10598 void NoContextGLApi::glGetQueryObjectivFn(GLuint id,
10599 GLenum pname,
10600 GLint* params) {
10601 NOTREACHED()
10602 << "Trying to call glGetQueryObjectiv() without current GL context";
10603 LOG(ERROR)
10604 << "Trying to call glGetQueryObjectiv() without current GL context";
10607 void NoContextGLApi::glGetQueryObjectui64vFn(GLuint id,
10608 GLenum pname,
10609 GLuint64* params) {
10610 NOTREACHED()
10611 << "Trying to call glGetQueryObjectui64v() without current GL context";
10612 LOG(ERROR)
10613 << "Trying to call glGetQueryObjectui64v() without current GL context";
10616 void NoContextGLApi::glGetQueryObjectuivFn(GLuint id,
10617 GLenum pname,
10618 GLuint* params) {
10619 NOTREACHED()
10620 << "Trying to call glGetQueryObjectuiv() without current GL context";
10621 LOG(ERROR)
10622 << "Trying to call glGetQueryObjectuiv() without current GL context";
10625 void NoContextGLApi::glGetRenderbufferParameterivEXTFn(GLenum target,
10626 GLenum pname,
10627 GLint* params) {
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,
10635 GLenum pname,
10636 GLfloat* params) {
10637 NOTREACHED()
10638 << "Trying to call glGetSamplerParameterfv() without current GL context";
10639 LOG(ERROR)
10640 << "Trying to call glGetSamplerParameterfv() without current GL context";
10643 void NoContextGLApi::glGetSamplerParameterivFn(GLuint sampler,
10644 GLenum pname,
10645 GLint* params) {
10646 NOTREACHED()
10647 << "Trying to call glGetSamplerParameteriv() without current GL context";
10648 LOG(ERROR)
10649 << "Trying to call glGetSamplerParameteriv() without current GL context";
10652 void NoContextGLApi::glGetShaderInfoLogFn(GLuint shader,
10653 GLsizei bufsize,
10654 GLsizei* length,
10655 char* infolog) {
10656 NOTREACHED()
10657 << "Trying to call glGetShaderInfoLog() without current GL context";
10658 LOG(ERROR)
10659 << "Trying to call glGetShaderInfoLog() without current GL context";
10662 void NoContextGLApi::glGetShaderivFn(GLuint shader,
10663 GLenum pname,
10664 GLint* params) {
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,
10671 GLint* range,
10672 GLint* precision) {
10673 NOTREACHED() << "Trying to call glGetShaderPrecisionFormat() without current "
10674 "GL context";
10675 LOG(ERROR) << "Trying to call glGetShaderPrecisionFormat() without current "
10676 "GL context";
10679 void NoContextGLApi::glGetShaderSourceFn(GLuint shader,
10680 GLsizei bufsize,
10681 GLsizei* length,
10682 char* source) {
10683 NOTREACHED()
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";
10691 return NULL;
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";
10697 return NULL;
10700 void NoContextGLApi::glGetSyncivFn(GLsync sync,
10701 GLenum pname,
10702 GLsizei bufSize,
10703 GLsizei* length,
10704 GLint* values) {
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,
10710 GLint level,
10711 GLenum pname,
10712 GLfloat* params) {
10713 NOTREACHED()
10714 << "Trying to call glGetTexLevelParameterfv() without current GL context";
10715 LOG(ERROR)
10716 << "Trying to call glGetTexLevelParameterfv() without current GL context";
10719 void NoContextGLApi::glGetTexLevelParameterivFn(GLenum target,
10720 GLint level,
10721 GLenum pname,
10722 GLint* params) {
10723 NOTREACHED()
10724 << "Trying to call glGetTexLevelParameteriv() without current GL context";
10725 LOG(ERROR)
10726 << "Trying to call glGetTexLevelParameteriv() without current GL context";
10729 void NoContextGLApi::glGetTexParameterfvFn(GLenum target,
10730 GLenum pname,
10731 GLfloat* params) {
10732 NOTREACHED()
10733 << "Trying to call glGetTexParameterfv() without current GL context";
10734 LOG(ERROR)
10735 << "Trying to call glGetTexParameterfv() without current GL context";
10738 void NoContextGLApi::glGetTexParameterivFn(GLenum target,
10739 GLenum pname,
10740 GLint* params) {
10741 NOTREACHED()
10742 << "Trying to call glGetTexParameteriv() without current GL context";
10743 LOG(ERROR)
10744 << "Trying to call glGetTexParameteriv() without current GL context";
10747 void NoContextGLApi::glGetTransformFeedbackVaryingFn(GLuint program,
10748 GLuint index,
10749 GLsizei bufSize,
10750 GLsizei* length,
10751 GLsizei* size,
10752 GLenum* type,
10753 char* name) {
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,
10761 GLsizei bufsize,
10762 GLsizei* length,
10763 char* source) {
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) {
10772 NOTREACHED()
10773 << "Trying to call glGetUniformBlockIndex() without current GL context";
10774 LOG(ERROR)
10775 << "Trying to call glGetUniformBlockIndex() without current GL context";
10776 return 0U;
10779 void NoContextGLApi::glGetUniformfvFn(GLuint program,
10780 GLint location,
10781 GLfloat* params) {
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) {
10790 NOTREACHED()
10791 << "Trying to call glGetUniformIndices() without current GL context";
10792 LOG(ERROR)
10793 << "Trying to call glGetUniformIndices() without current GL context";
10796 void NoContextGLApi::glGetUniformivFn(GLuint program,
10797 GLint location,
10798 GLint* params) {
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) {
10804 NOTREACHED()
10805 << "Trying to call glGetUniformLocation() without current GL context";
10806 LOG(ERROR)
10807 << "Trying to call glGetUniformLocation() without current GL context";
10808 return 0;
10811 void NoContextGLApi::glGetUniformuivFn(GLuint program,
10812 GLint location,
10813 GLuint* params) {
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,
10819 GLenum pname,
10820 GLfloat* params) {
10821 NOTREACHED()
10822 << "Trying to call glGetVertexAttribfv() without current GL context";
10823 LOG(ERROR)
10824 << "Trying to call glGetVertexAttribfv() without current GL context";
10827 void NoContextGLApi::glGetVertexAttribivFn(GLuint index,
10828 GLenum pname,
10829 GLint* params) {
10830 NOTREACHED()
10831 << "Trying to call glGetVertexAttribiv() without current GL context";
10832 LOG(ERROR)
10833 << "Trying to call glGetVertexAttribiv() without current GL context";
10836 void NoContextGLApi::glGetVertexAttribPointervFn(GLuint index,
10837 GLenum pname,
10838 void** pointer) {
10839 NOTREACHED() << "Trying to call glGetVertexAttribPointerv() without current "
10840 "GL context";
10841 LOG(ERROR) << "Trying to call glGetVertexAttribPointerv() without current GL "
10842 "context";
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) {
10852 NOTREACHED()
10853 << "Trying to call glInsertEventMarkerEXT() without current GL context";
10854 LOG(ERROR)
10855 << "Trying to call glInsertEventMarkerEXT() without current GL context";
10858 void NoContextGLApi::glInvalidateFramebufferFn(GLenum target,
10859 GLsizei numAttachments,
10860 const GLenum* attachments) {
10861 NOTREACHED()
10862 << "Trying to call glInvalidateFramebuffer() without current GL context";
10863 LOG(ERROR)
10864 << "Trying to call glInvalidateFramebuffer() without current GL context";
10867 void NoContextGLApi::glInvalidateSubFramebufferFn(GLenum target,
10868 GLsizei numAttachments,
10869 const GLenum* attachments,
10870 GLint x,
10871 GLint y,
10872 GLint width,
10873 GLint height) {
10874 NOTREACHED() << "Trying to call glInvalidateSubFramebuffer() without current "
10875 "GL context";
10876 LOG(ERROR) << "Trying to call glInvalidateSubFramebuffer() without current "
10877 "GL context";
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";
10883 return GL_FALSE;
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";
10889 return GL_FALSE;
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";
10895 return GL_FALSE;
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";
10901 return GL_FALSE;
10904 GLboolean NoContextGLApi::glIsFramebufferEXTFn(GLuint framebuffer) {
10905 NOTREACHED()
10906 << "Trying to call glIsFramebufferEXT() without current GL context";
10907 LOG(ERROR)
10908 << "Trying to call glIsFramebufferEXT() without current GL context";
10909 return GL_FALSE;
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";
10915 return GL_FALSE;
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";
10921 return GL_FALSE;
10924 GLboolean NoContextGLApi::glIsRenderbufferEXTFn(GLuint renderbuffer) {
10925 NOTREACHED()
10926 << "Trying to call glIsRenderbufferEXT() without current GL context";
10927 LOG(ERROR)
10928 << "Trying to call glIsRenderbufferEXT() without current GL context";
10929 return GL_FALSE;
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";
10935 return GL_FALSE;
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";
10941 return GL_FALSE;
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";
10947 return GL_FALSE;
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";
10953 return GL_FALSE;
10956 GLboolean NoContextGLApi::glIsTransformFeedbackFn(GLuint id) {
10957 NOTREACHED()
10958 << "Trying to call glIsTransformFeedback() without current GL context";
10959 LOG(ERROR)
10960 << "Trying to call glIsTransformFeedback() without current GL context";
10961 return GL_FALSE;
10964 GLboolean NoContextGLApi::glIsVertexArrayOESFn(GLuint array) {
10965 NOTREACHED()
10966 << "Trying to call glIsVertexArrayOES() without current GL context";
10967 LOG(ERROR)
10968 << "Trying to call glIsVertexArrayOES() without current GL context";
10969 return GL_FALSE;
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";
10985 return NULL;
10988 void* NoContextGLApi::glMapBufferRangeFn(GLenum target,
10989 GLintptr offset,
10990 GLsizeiptr length,
10991 GLbitfield access) {
10992 NOTREACHED()
10993 << "Trying to call glMapBufferRange() without current GL context";
10994 LOG(ERROR) << "Trying to call glMapBufferRange() without current GL context";
10995 return NULL;
10998 void NoContextGLApi::glMatrixLoadfEXTFn(GLenum matrixMode, const GLfloat* m) {
10999 NOTREACHED()
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) {
11005 NOTREACHED()
11006 << "Trying to call glMatrixLoadIdentityEXT() without current GL context";
11007 LOG(ERROR)
11008 << "Trying to call glMatrixLoadIdentityEXT() without current GL context";
11011 void NoContextGLApi::glPauseTransformFeedbackFn(void) {
11012 NOTREACHED()
11013 << "Trying to call glPauseTransformFeedback() without current GL context";
11014 LOG(ERROR)
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) {
11024 NOTREACHED()
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) {
11035 NOTREACHED()
11036 << "Trying to call glPopGroupMarkerEXT() without current GL context";
11037 LOG(ERROR)
11038 << "Trying to call glPopGroupMarkerEXT() without current GL context";
11041 void NoContextGLApi::glProgramBinaryFn(GLuint program,
11042 GLenum binaryFormat,
11043 const GLvoid* binary,
11044 GLsizei length) {
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,
11050 GLenum pname,
11051 GLint value) {
11052 NOTREACHED()
11053 << "Trying to call glProgramParameteri() without current GL context";
11054 LOG(ERROR)
11055 << "Trying to call glProgramParameteri() without current GL context";
11058 void NoContextGLApi::glPushGroupMarkerEXTFn(GLsizei length,
11059 const char* marker) {
11060 NOTREACHED()
11061 << "Trying to call glPushGroupMarkerEXT() without current GL context";
11062 LOG(ERROR)
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,
11077 GLint y,
11078 GLsizei width,
11079 GLsizei height,
11080 GLenum format,
11081 GLenum type,
11082 void* pixels) {
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) {
11088 NOTREACHED()
11089 << "Trying to call glReleaseShaderCompiler() without current GL context";
11090 LOG(ERROR)
11091 << "Trying to call glReleaseShaderCompiler() without current GL context";
11094 void NoContextGLApi::glRenderbufferStorageEXTFn(GLenum target,
11095 GLenum internalformat,
11096 GLsizei width,
11097 GLsizei height) {
11098 NOTREACHED()
11099 << "Trying to call glRenderbufferStorageEXT() without current GL context";
11100 LOG(ERROR)
11101 << "Trying to call glRenderbufferStorageEXT() without current GL context";
11104 void NoContextGLApi::glRenderbufferStorageMultisampleFn(GLenum target,
11105 GLsizei samples,
11106 GLenum internalformat,
11107 GLsizei width,
11108 GLsizei height) {
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(
11116 GLenum target,
11117 GLsizei samples,
11118 GLenum internalformat,
11119 GLsizei width,
11120 GLsizei height) {
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(
11128 GLenum target,
11129 GLsizei samples,
11130 GLenum internalformat,
11131 GLsizei width,
11132 GLsizei height) {
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(
11140 GLenum target,
11141 GLsizei samples,
11142 GLenum internalformat,
11143 GLsizei width,
11144 GLsizei height) {
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 "
11153 "GL context";
11154 LOG(ERROR) << "Trying to call glResumeTransformFeedback() without current GL "
11155 "context";
11158 void NoContextGLApi::glSampleCoverageFn(GLclampf value, GLboolean invert) {
11159 NOTREACHED()
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,
11165 GLenum pname,
11166 GLfloat param) {
11167 NOTREACHED()
11168 << "Trying to call glSamplerParameterf() without current GL context";
11169 LOG(ERROR)
11170 << "Trying to call glSamplerParameterf() without current GL context";
11173 void NoContextGLApi::glSamplerParameterfvFn(GLuint sampler,
11174 GLenum pname,
11175 const GLfloat* params) {
11176 NOTREACHED()
11177 << "Trying to call glSamplerParameterfv() without current GL context";
11178 LOG(ERROR)
11179 << "Trying to call glSamplerParameterfv() without current GL context";
11182 void NoContextGLApi::glSamplerParameteriFn(GLuint sampler,
11183 GLenum pname,
11184 GLint param) {
11185 NOTREACHED()
11186 << "Trying to call glSamplerParameteri() without current GL context";
11187 LOG(ERROR)
11188 << "Trying to call glSamplerParameteri() without current GL context";
11191 void NoContextGLApi::glSamplerParameterivFn(GLuint sampler,
11192 GLenum pname,
11193 const GLint* params) {
11194 NOTREACHED()
11195 << "Trying to call glSamplerParameteriv() without current GL context";
11196 LOG(ERROR)
11197 << "Trying to call glSamplerParameteriv() without current GL context";
11200 void NoContextGLApi::glScissorFn(GLint x,
11201 GLint y,
11202 GLsizei width,
11203 GLsizei height) {
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,
11222 GLsizei length) {
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,
11228 GLsizei count,
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,
11241 GLenum func,
11242 GLint ref,
11243 GLuint mask) {
11244 NOTREACHED()
11245 << "Trying to call glStencilFuncSeparate() without current GL context";
11246 LOG(ERROR)
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) {
11256 NOTREACHED()
11257 << "Trying to call glStencilMaskSeparate() without current GL context";
11258 LOG(ERROR)
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,
11268 GLenum fail,
11269 GLenum zfail,
11270 GLenum zpass) {
11271 NOTREACHED()
11272 << "Trying to call glStencilOpSeparate() without current GL context";
11273 LOG(ERROR)
11274 << "Trying to call glStencilOpSeparate() without current GL context";
11277 GLboolean NoContextGLApi::glTestFenceAPPLEFn(GLuint fence) {
11278 NOTREACHED()
11279 << "Trying to call glTestFenceAPPLE() without current GL context";
11280 LOG(ERROR) << "Trying to call glTestFenceAPPLE() without current GL context";
11281 return GL_FALSE;
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";
11287 return GL_FALSE;
11290 void NoContextGLApi::glTexImage2DFn(GLenum target,
11291 GLint level,
11292 GLint internalformat,
11293 GLsizei width,
11294 GLsizei height,
11295 GLint border,
11296 GLenum format,
11297 GLenum type,
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,
11304 GLint level,
11305 GLint internalformat,
11306 GLsizei width,
11307 GLsizei height,
11308 GLsizei depth,
11309 GLint border,
11310 GLenum format,
11311 GLenum type,
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,
11318 GLenum pname,
11319 GLfloat param) {
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,
11325 GLenum pname,
11326 const GLfloat* params) {
11327 NOTREACHED()
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,
11333 GLenum pname,
11334 GLint param) {
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,
11340 GLenum pname,
11341 const GLint* params) {
11342 NOTREACHED()
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,
11348 GLsizei levels,
11349 GLenum internalformat,
11350 GLsizei width,
11351 GLsizei height) {
11352 NOTREACHED()
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,
11358 GLsizei levels,
11359 GLenum internalformat,
11360 GLsizei width,
11361 GLsizei height,
11362 GLsizei depth) {
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,
11368 GLint level,
11369 GLint xoffset,
11370 GLint yoffset,
11371 GLsizei width,
11372 GLsizei height,
11373 GLenum format,
11374 GLenum type,
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,
11381 GLint level,
11382 GLint xoffset,
11383 GLint yoffset,
11384 GLint zoffset,
11385 GLsizei width,
11386 GLsizei height,
11387 GLsizei depth,
11388 GLenum format,
11389 GLenum type,
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,
11396 GLsizei count,
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 "
11402 "GL context";
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,
11411 GLsizei count,
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,
11423 GLsizei count,
11424 const GLint* v) {
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,
11435 GLsizei count,
11436 const GLuint* v) {
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,
11447 GLsizei count,
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,
11459 GLsizei count,
11460 const GLint* v) {
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,
11471 GLsizei count,
11472 const GLuint* v) {
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,
11478 GLfloat x,
11479 GLfloat y,
11480 GLfloat z) {
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,
11486 GLsizei count,
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,
11498 GLsizei count,
11499 const GLint* v) {
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,
11505 GLuint v0,
11506 GLuint v1,
11507 GLuint v2) {
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,
11513 GLsizei count,
11514 const GLuint* v) {
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,
11520 GLfloat x,
11521 GLfloat y,
11522 GLfloat z,
11523 GLfloat w) {
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,
11529 GLsizei count,
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,
11536 GLint x,
11537 GLint y,
11538 GLint z,
11539 GLint w) {
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,
11545 GLsizei count,
11546 const GLint* v) {
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,
11552 GLuint v0,
11553 GLuint v1,
11554 GLuint v2,
11555 GLuint v3) {
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,
11561 GLsizei count,
11562 const GLuint* v) {
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) {
11570 NOTREACHED()
11571 << "Trying to call glUniformBlockBinding() without current GL context";
11572 LOG(ERROR)
11573 << "Trying to call glUniformBlockBinding() without current GL context";
11576 void NoContextGLApi::glUniformMatrix2fvFn(GLint location,
11577 GLsizei count,
11578 GLboolean transpose,
11579 const GLfloat* value) {
11580 NOTREACHED()
11581 << "Trying to call glUniformMatrix2fv() without current GL context";
11582 LOG(ERROR)
11583 << "Trying to call glUniformMatrix2fv() without current GL context";
11586 void NoContextGLApi::glUniformMatrix2x3fvFn(GLint location,
11587 GLsizei count,
11588 GLboolean transpose,
11589 const GLfloat* value) {
11590 NOTREACHED()
11591 << "Trying to call glUniformMatrix2x3fv() without current GL context";
11592 LOG(ERROR)
11593 << "Trying to call glUniformMatrix2x3fv() without current GL context";
11596 void NoContextGLApi::glUniformMatrix2x4fvFn(GLint location,
11597 GLsizei count,
11598 GLboolean transpose,
11599 const GLfloat* value) {
11600 NOTREACHED()
11601 << "Trying to call glUniformMatrix2x4fv() without current GL context";
11602 LOG(ERROR)
11603 << "Trying to call glUniformMatrix2x4fv() without current GL context";
11606 void NoContextGLApi::glUniformMatrix3fvFn(GLint location,
11607 GLsizei count,
11608 GLboolean transpose,
11609 const GLfloat* value) {
11610 NOTREACHED()
11611 << "Trying to call glUniformMatrix3fv() without current GL context";
11612 LOG(ERROR)
11613 << "Trying to call glUniformMatrix3fv() without current GL context";
11616 void NoContextGLApi::glUniformMatrix3x2fvFn(GLint location,
11617 GLsizei count,
11618 GLboolean transpose,
11619 const GLfloat* value) {
11620 NOTREACHED()
11621 << "Trying to call glUniformMatrix3x2fv() without current GL context";
11622 LOG(ERROR)
11623 << "Trying to call glUniformMatrix3x2fv() without current GL context";
11626 void NoContextGLApi::glUniformMatrix3x4fvFn(GLint location,
11627 GLsizei count,
11628 GLboolean transpose,
11629 const GLfloat* value) {
11630 NOTREACHED()
11631 << "Trying to call glUniformMatrix3x4fv() without current GL context";
11632 LOG(ERROR)
11633 << "Trying to call glUniformMatrix3x4fv() without current GL context";
11636 void NoContextGLApi::glUniformMatrix4fvFn(GLint location,
11637 GLsizei count,
11638 GLboolean transpose,
11639 const GLfloat* value) {
11640 NOTREACHED()
11641 << "Trying to call glUniformMatrix4fv() without current GL context";
11642 LOG(ERROR)
11643 << "Trying to call glUniformMatrix4fv() without current GL context";
11646 void NoContextGLApi::glUniformMatrix4x2fvFn(GLint location,
11647 GLsizei count,
11648 GLboolean transpose,
11649 const GLfloat* value) {
11650 NOTREACHED()
11651 << "Trying to call glUniformMatrix4x2fv() without current GL context";
11652 LOG(ERROR)
11653 << "Trying to call glUniformMatrix4x2fv() without current GL context";
11656 void NoContextGLApi::glUniformMatrix4x3fvFn(GLint location,
11657 GLsizei count,
11658 GLboolean transpose,
11659 const GLfloat* value) {
11660 NOTREACHED()
11661 << "Trying to call glUniformMatrix4x3fv() without current GL context";
11662 LOG(ERROR)
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";
11669 return GL_FALSE;
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) {
11678 NOTREACHED()
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) {
11684 NOTREACHED()
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) {
11690 NOTREACHED()
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) {
11696 NOTREACHED()
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) {
11702 NOTREACHED()
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,
11708 GLfloat x,
11709 GLfloat y,
11710 GLfloat z) {
11711 NOTREACHED()
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) {
11717 NOTREACHED()
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,
11723 GLfloat x,
11724 GLfloat y,
11725 GLfloat z,
11726 GLfloat w) {
11727 NOTREACHED()
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) {
11733 NOTREACHED()
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,
11739 GLuint divisor) {
11740 NOTREACHED() << "Trying to call glVertexAttribDivisorANGLE() without current "
11741 "GL context";
11742 LOG(ERROR) << "Trying to call glVertexAttribDivisorANGLE() without current "
11743 "GL context";
11746 void NoContextGLApi::glVertexAttribI4iFn(GLuint indx,
11747 GLint x,
11748 GLint y,
11749 GLint z,
11750 GLint w) {
11751 NOTREACHED()
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) {
11757 NOTREACHED()
11758 << "Trying to call glVertexAttribI4iv() without current GL context";
11759 LOG(ERROR)
11760 << "Trying to call glVertexAttribI4iv() without current GL context";
11763 void NoContextGLApi::glVertexAttribI4uiFn(GLuint indx,
11764 GLuint x,
11765 GLuint y,
11766 GLuint z,
11767 GLuint w) {
11768 NOTREACHED()
11769 << "Trying to call glVertexAttribI4ui() without current GL context";
11770 LOG(ERROR)
11771 << "Trying to call glVertexAttribI4ui() without current GL context";
11774 void NoContextGLApi::glVertexAttribI4uivFn(GLuint indx, const GLuint* values) {
11775 NOTREACHED()
11776 << "Trying to call glVertexAttribI4uiv() without current GL context";
11777 LOG(ERROR)
11778 << "Trying to call glVertexAttribI4uiv() without current GL context";
11781 void NoContextGLApi::glVertexAttribIPointerFn(GLuint indx,
11782 GLint size,
11783 GLenum type,
11784 GLsizei stride,
11785 const void* ptr) {
11786 NOTREACHED()
11787 << "Trying to call glVertexAttribIPointer() without current GL context";
11788 LOG(ERROR)
11789 << "Trying to call glVertexAttribIPointer() without current GL context";
11792 void NoContextGLApi::glVertexAttribPointerFn(GLuint indx,
11793 GLint size,
11794 GLenum type,
11795 GLboolean normalized,
11796 GLsizei stride,
11797 const void* ptr) {
11798 NOTREACHED()
11799 << "Trying to call glVertexAttribPointer() without current GL context";
11800 LOG(ERROR)
11801 << "Trying to call glVertexAttribPointer() without current GL context";
11804 void NoContextGLApi::glViewportFn(GLint x,
11805 GLint y,
11806 GLsizei width,
11807 GLsizei height) {
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,
11813 GLbitfield flags,
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);
11820 } // namespace gfx