Suppress data races in blink::Scheduler
[chromium-blink-merge.git] / ui / gl / gl_bindings_autogen_gl.cc
blob11383b15a15cbd7adccc7a9b25ee9c80dbd14342
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.glBeginQueryARBFn = 0;
33 fn.glBeginTransformFeedbackFn = 0;
34 fn.glBindAttribLocationFn = reinterpret_cast<glBindAttribLocationProc>(
35 GetGLProcAddress("glBindAttribLocation"));
36 fn.glBindBufferFn =
37 reinterpret_cast<glBindBufferProc>(GetGLProcAddress("glBindBuffer"));
38 fn.glBindBufferBaseFn = 0;
39 fn.glBindBufferRangeFn = 0;
40 fn.glBindFragDataLocationFn = 0;
41 fn.glBindFragDataLocationIndexedFn = 0;
42 fn.glBindFramebufferEXTFn = 0;
43 fn.glBindRenderbufferEXTFn = 0;
44 fn.glBindSamplerFn = 0;
45 fn.glBindTextureFn =
46 reinterpret_cast<glBindTextureProc>(GetGLProcAddress("glBindTexture"));
47 fn.glBindTransformFeedbackFn = 0;
48 fn.glBindVertexArrayOESFn = 0;
49 fn.glBlendBarrierKHRFn = 0;
50 fn.glBlendColorFn =
51 reinterpret_cast<glBlendColorProc>(GetGLProcAddress("glBlendColor"));
52 fn.glBlendEquationFn = reinterpret_cast<glBlendEquationProc>(
53 GetGLProcAddress("glBlendEquation"));
54 fn.glBlendEquationSeparateFn = reinterpret_cast<glBlendEquationSeparateProc>(
55 GetGLProcAddress("glBlendEquationSeparate"));
56 fn.glBlendFuncFn =
57 reinterpret_cast<glBlendFuncProc>(GetGLProcAddress("glBlendFunc"));
58 fn.glBlendFuncSeparateFn = reinterpret_cast<glBlendFuncSeparateProc>(
59 GetGLProcAddress("glBlendFuncSeparate"));
60 fn.glBlitFramebufferFn = 0;
61 fn.glBlitFramebufferANGLEFn = 0;
62 fn.glBlitFramebufferEXTFn = 0;
63 fn.glBufferDataFn =
64 reinterpret_cast<glBufferDataProc>(GetGLProcAddress("glBufferData"));
65 fn.glBufferSubDataFn = reinterpret_cast<glBufferSubDataProc>(
66 GetGLProcAddress("glBufferSubData"));
67 fn.glCheckFramebufferStatusEXTFn = 0;
68 fn.glClearFn = reinterpret_cast<glClearProc>(GetGLProcAddress("glClear"));
69 fn.glClearBufferfiFn = 0;
70 fn.glClearBufferfvFn = 0;
71 fn.glClearBufferivFn = 0;
72 fn.glClearBufferuivFn = 0;
73 fn.glClearColorFn =
74 reinterpret_cast<glClearColorProc>(GetGLProcAddress("glClearColor"));
75 fn.glClearDepthFn =
76 reinterpret_cast<glClearDepthProc>(GetGLProcAddress("glClearDepth"));
77 fn.glClearDepthfFn = 0;
78 fn.glClearStencilFn =
79 reinterpret_cast<glClearStencilProc>(GetGLProcAddress("glClearStencil"));
80 fn.glClientWaitSyncFn = 0;
81 fn.glColorMaskFn =
82 reinterpret_cast<glColorMaskProc>(GetGLProcAddress("glColorMask"));
83 fn.glCompileShaderFn = reinterpret_cast<glCompileShaderProc>(
84 GetGLProcAddress("glCompileShader"));
85 fn.glCompressedTexImage2DFn = reinterpret_cast<glCompressedTexImage2DProc>(
86 GetGLProcAddress("glCompressedTexImage2D"));
87 fn.glCompressedTexImage3DFn = 0;
88 fn.glCompressedTexSubImage2DFn =
89 reinterpret_cast<glCompressedTexSubImage2DProc>(
90 GetGLProcAddress("glCompressedTexSubImage2D"));
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.glDeleteQueriesARBFn = 0;
112 fn.glDeleteRenderbuffersEXTFn = 0;
113 fn.glDeleteSamplersFn = 0;
114 fn.glDeleteShaderFn =
115 reinterpret_cast<glDeleteShaderProc>(GetGLProcAddress("glDeleteShader"));
116 fn.glDeleteSyncFn = 0;
117 fn.glDeleteTexturesFn = reinterpret_cast<glDeleteTexturesProc>(
118 GetGLProcAddress("glDeleteTextures"));
119 fn.glDeleteTransformFeedbacksFn = 0;
120 fn.glDeleteVertexArraysOESFn = 0;
121 fn.glDepthFuncFn =
122 reinterpret_cast<glDepthFuncProc>(GetGLProcAddress("glDepthFunc"));
123 fn.glDepthMaskFn =
124 reinterpret_cast<glDepthMaskProc>(GetGLProcAddress("glDepthMask"));
125 fn.glDepthRangeFn =
126 reinterpret_cast<glDepthRangeProc>(GetGLProcAddress("glDepthRange"));
127 fn.glDepthRangefFn = 0;
128 fn.glDetachShaderFn =
129 reinterpret_cast<glDetachShaderProc>(GetGLProcAddress("glDetachShader"));
130 fn.glDisableFn =
131 reinterpret_cast<glDisableProc>(GetGLProcAddress("glDisable"));
132 fn.glDisableVertexAttribArrayFn =
133 reinterpret_cast<glDisableVertexAttribArrayProc>(
134 GetGLProcAddress("glDisableVertexAttribArray"));
135 fn.glDiscardFramebufferEXTFn = 0;
136 fn.glDrawArraysFn =
137 reinterpret_cast<glDrawArraysProc>(GetGLProcAddress("glDrawArrays"));
138 fn.glDrawArraysInstancedANGLEFn = 0;
139 fn.glDrawBufferFn = 0;
140 fn.glDrawBuffersARBFn = 0;
141 fn.glDrawElementsFn =
142 reinterpret_cast<glDrawElementsProc>(GetGLProcAddress("glDrawElements"));
143 fn.glDrawElementsInstancedANGLEFn = 0;
144 fn.glDrawRangeElementsFn = 0;
145 fn.glEGLImageTargetRenderbufferStorageOESFn = 0;
146 fn.glEGLImageTargetTexture2DOESFn = 0;
147 fn.glEnableFn = reinterpret_cast<glEnableProc>(GetGLProcAddress("glEnable"));
148 fn.glEnableVertexAttribArrayFn =
149 reinterpret_cast<glEnableVertexAttribArrayProc>(
150 GetGLProcAddress("glEnableVertexAttribArray"));
151 fn.glEndQueryFn = 0;
152 fn.glEndQueryARBFn = 0;
153 fn.glEndTransformFeedbackFn = 0;
154 fn.glFenceSyncFn = 0;
155 fn.glFinishFn = reinterpret_cast<glFinishProc>(GetGLProcAddress("glFinish"));
156 fn.glFinishFenceAPPLEFn = 0;
157 fn.glFinishFenceNVFn = 0;
158 fn.glFlushFn = reinterpret_cast<glFlushProc>(GetGLProcAddress("glFlush"));
159 fn.glFlushMappedBufferRangeFn = 0;
160 fn.glFramebufferRenderbufferEXTFn = 0;
161 fn.glFramebufferTexture2DEXTFn = 0;
162 fn.glFramebufferTexture2DMultisampleEXTFn = 0;
163 fn.glFramebufferTexture2DMultisampleIMGFn = 0;
164 fn.glFramebufferTextureLayerFn = 0;
165 fn.glFrontFaceFn =
166 reinterpret_cast<glFrontFaceProc>(GetGLProcAddress("glFrontFace"));
167 fn.glGenBuffersARBFn =
168 reinterpret_cast<glGenBuffersARBProc>(GetGLProcAddress("glGenBuffers"));
169 fn.glGenerateMipmapEXTFn = 0;
170 fn.glGenFencesAPPLEFn = 0;
171 fn.glGenFencesNVFn = 0;
172 fn.glGenFramebuffersEXTFn = 0;
173 fn.glGenQueriesFn = 0;
174 fn.glGenQueriesARBFn = 0;
175 fn.glGenRenderbuffersEXTFn = 0;
176 fn.glGenSamplersFn = 0;
177 fn.glGenTexturesFn =
178 reinterpret_cast<glGenTexturesProc>(GetGLProcAddress("glGenTextures"));
179 fn.glGenTransformFeedbacksFn = 0;
180 fn.glGenVertexArraysOESFn = 0;
181 fn.glGetActiveAttribFn = reinterpret_cast<glGetActiveAttribProc>(
182 GetGLProcAddress("glGetActiveAttrib"));
183 fn.glGetActiveUniformFn = reinterpret_cast<glGetActiveUniformProc>(
184 GetGLProcAddress("glGetActiveUniform"));
185 fn.glGetActiveUniformBlockivFn = 0;
186 fn.glGetActiveUniformBlockNameFn = 0;
187 fn.glGetActiveUniformsivFn = 0;
188 fn.glGetAttachedShadersFn = reinterpret_cast<glGetAttachedShadersProc>(
189 GetGLProcAddress("glGetAttachedShaders"));
190 fn.glGetAttribLocationFn = reinterpret_cast<glGetAttribLocationProc>(
191 GetGLProcAddress("glGetAttribLocation"));
192 fn.glGetBooleanvFn =
193 reinterpret_cast<glGetBooleanvProc>(GetGLProcAddress("glGetBooleanv"));
194 fn.glGetBufferParameterivFn = reinterpret_cast<glGetBufferParameterivProc>(
195 GetGLProcAddress("glGetBufferParameteriv"));
196 fn.glGetErrorFn =
197 reinterpret_cast<glGetErrorProc>(GetGLProcAddress("glGetError"));
198 fn.glGetFenceivNVFn = 0;
199 fn.glGetFloatvFn =
200 reinterpret_cast<glGetFloatvProc>(GetGLProcAddress("glGetFloatv"));
201 fn.glGetFragDataLocationFn = 0;
202 fn.glGetFramebufferAttachmentParameterivEXTFn = 0;
203 fn.glGetGraphicsResetStatusARBFn = 0;
204 fn.glGetInteger64i_vFn = 0;
205 fn.glGetInteger64vFn = 0;
206 fn.glGetIntegeri_vFn = 0;
207 fn.glGetIntegervFn =
208 reinterpret_cast<glGetIntegervProc>(GetGLProcAddress("glGetIntegerv"));
209 fn.glGetInternalformativFn = 0;
210 fn.glGetProgramBinaryFn = 0;
211 fn.glGetProgramInfoLogFn = reinterpret_cast<glGetProgramInfoLogProc>(
212 GetGLProcAddress("glGetProgramInfoLog"));
213 fn.glGetProgramivFn =
214 reinterpret_cast<glGetProgramivProc>(GetGLProcAddress("glGetProgramiv"));
215 fn.glGetQueryivFn = 0;
216 fn.glGetQueryivARBFn = 0;
217 fn.glGetQueryObjecti64vFn = 0;
218 fn.glGetQueryObjectivFn = 0;
219 fn.glGetQueryObjectivARBFn = 0;
220 fn.glGetQueryObjectui64vFn = 0;
221 fn.glGetQueryObjectuivFn = 0;
222 fn.glGetQueryObjectuivARBFn = 0;
223 fn.glGetRenderbufferParameterivEXTFn = 0;
224 fn.glGetSamplerParameterfvFn = 0;
225 fn.glGetSamplerParameterivFn = 0;
226 fn.glGetShaderInfoLogFn = reinterpret_cast<glGetShaderInfoLogProc>(
227 GetGLProcAddress("glGetShaderInfoLog"));
228 fn.glGetShaderivFn =
229 reinterpret_cast<glGetShaderivProc>(GetGLProcAddress("glGetShaderiv"));
230 fn.glGetShaderPrecisionFormatFn = 0;
231 fn.glGetShaderSourceFn = reinterpret_cast<glGetShaderSourceProc>(
232 GetGLProcAddress("glGetShaderSource"));
233 fn.glGetStringFn =
234 reinterpret_cast<glGetStringProc>(GetGLProcAddress("glGetString"));
235 fn.glGetSyncivFn = 0;
236 fn.glGetTexLevelParameterfvFn = 0;
237 fn.glGetTexLevelParameterivFn = 0;
238 fn.glGetTexParameterfvFn = reinterpret_cast<glGetTexParameterfvProc>(
239 GetGLProcAddress("glGetTexParameterfv"));
240 fn.glGetTexParameterivFn = reinterpret_cast<glGetTexParameterivProc>(
241 GetGLProcAddress("glGetTexParameteriv"));
242 fn.glGetTransformFeedbackVaryingFn = 0;
243 fn.glGetTranslatedShaderSourceANGLEFn = 0;
244 fn.glGetUniformBlockIndexFn = 0;
245 fn.glGetUniformfvFn =
246 reinterpret_cast<glGetUniformfvProc>(GetGLProcAddress("glGetUniformfv"));
247 fn.glGetUniformIndicesFn = 0;
248 fn.glGetUniformivFn =
249 reinterpret_cast<glGetUniformivProc>(GetGLProcAddress("glGetUniformiv"));
250 fn.glGetUniformLocationFn = reinterpret_cast<glGetUniformLocationProc>(
251 GetGLProcAddress("glGetUniformLocation"));
252 fn.glGetVertexAttribfvFn = reinterpret_cast<glGetVertexAttribfvProc>(
253 GetGLProcAddress("glGetVertexAttribfv"));
254 fn.glGetVertexAttribivFn = reinterpret_cast<glGetVertexAttribivProc>(
255 GetGLProcAddress("glGetVertexAttribiv"));
256 fn.glGetVertexAttribPointervFn =
257 reinterpret_cast<glGetVertexAttribPointervProc>(
258 GetGLProcAddress("glGetVertexAttribPointerv"));
259 fn.glHintFn = reinterpret_cast<glHintProc>(GetGLProcAddress("glHint"));
260 fn.glInsertEventMarkerEXTFn = 0;
261 fn.glInvalidateFramebufferFn = 0;
262 fn.glInvalidateSubFramebufferFn = 0;
263 fn.glIsBufferFn =
264 reinterpret_cast<glIsBufferProc>(GetGLProcAddress("glIsBuffer"));
265 fn.glIsEnabledFn =
266 reinterpret_cast<glIsEnabledProc>(GetGLProcAddress("glIsEnabled"));
267 fn.glIsFenceAPPLEFn = 0;
268 fn.glIsFenceNVFn = 0;
269 fn.glIsFramebufferEXTFn = 0;
270 fn.glIsProgramFn =
271 reinterpret_cast<glIsProgramProc>(GetGLProcAddress("glIsProgram"));
272 fn.glIsQueryFn = 0;
273 fn.glIsQueryARBFn = 0;
274 fn.glIsRenderbufferEXTFn = 0;
275 fn.glIsSamplerFn = 0;
276 fn.glIsShaderFn =
277 reinterpret_cast<glIsShaderProc>(GetGLProcAddress("glIsShader"));
278 fn.glIsSyncFn = 0;
279 fn.glIsTextureFn =
280 reinterpret_cast<glIsTextureProc>(GetGLProcAddress("glIsTexture"));
281 fn.glIsTransformFeedbackFn = 0;
282 fn.glIsVertexArrayOESFn = 0;
283 fn.glLineWidthFn =
284 reinterpret_cast<glLineWidthProc>(GetGLProcAddress("glLineWidth"));
285 fn.glLinkProgramFn =
286 reinterpret_cast<glLinkProgramProc>(GetGLProcAddress("glLinkProgram"));
287 fn.glMapBufferFn = 0;
288 fn.glMapBufferRangeFn = 0;
289 fn.glMatrixLoadfEXTFn = 0;
290 fn.glMatrixLoadIdentityEXTFn = 0;
291 fn.glPauseTransformFeedbackFn = 0;
292 fn.glPixelStoreiFn =
293 reinterpret_cast<glPixelStoreiProc>(GetGLProcAddress("glPixelStorei"));
294 fn.glPointParameteriFn = 0;
295 fn.glPolygonOffsetFn = reinterpret_cast<glPolygonOffsetProc>(
296 GetGLProcAddress("glPolygonOffset"));
297 fn.glPopGroupMarkerEXTFn = 0;
298 fn.glProgramBinaryFn = 0;
299 fn.glProgramParameteriFn = 0;
300 fn.glPushGroupMarkerEXTFn = 0;
301 fn.glQueryCounterFn = 0;
302 fn.glReadBufferFn = 0;
303 fn.glReadPixelsFn =
304 reinterpret_cast<glReadPixelsProc>(GetGLProcAddress("glReadPixels"));
305 fn.glReleaseShaderCompilerFn = 0;
306 fn.glRenderbufferStorageEXTFn = 0;
307 fn.glRenderbufferStorageMultisampleFn = 0;
308 fn.glRenderbufferStorageMultisampleANGLEFn = 0;
309 fn.glRenderbufferStorageMultisampleEXTFn = 0;
310 fn.glRenderbufferStorageMultisampleIMGFn = 0;
311 fn.glResumeTransformFeedbackFn = 0;
312 fn.glSampleCoverageFn = reinterpret_cast<glSampleCoverageProc>(
313 GetGLProcAddress("glSampleCoverage"));
314 fn.glSamplerParameterfFn = 0;
315 fn.glSamplerParameterfvFn = 0;
316 fn.glSamplerParameteriFn = 0;
317 fn.glSamplerParameterivFn = 0;
318 fn.glScissorFn =
319 reinterpret_cast<glScissorProc>(GetGLProcAddress("glScissor"));
320 fn.glSetFenceAPPLEFn = 0;
321 fn.glSetFenceNVFn = 0;
322 fn.glShaderBinaryFn = 0;
323 fn.glShaderSourceFn =
324 reinterpret_cast<glShaderSourceProc>(GetGLProcAddress("glShaderSource"));
325 fn.glStencilFuncFn =
326 reinterpret_cast<glStencilFuncProc>(GetGLProcAddress("glStencilFunc"));
327 fn.glStencilFuncSeparateFn = reinterpret_cast<glStencilFuncSeparateProc>(
328 GetGLProcAddress("glStencilFuncSeparate"));
329 fn.glStencilMaskFn =
330 reinterpret_cast<glStencilMaskProc>(GetGLProcAddress("glStencilMask"));
331 fn.glStencilMaskSeparateFn = reinterpret_cast<glStencilMaskSeparateProc>(
332 GetGLProcAddress("glStencilMaskSeparate"));
333 fn.glStencilOpFn =
334 reinterpret_cast<glStencilOpProc>(GetGLProcAddress("glStencilOp"));
335 fn.glStencilOpSeparateFn = reinterpret_cast<glStencilOpSeparateProc>(
336 GetGLProcAddress("glStencilOpSeparate"));
337 fn.glTestFenceAPPLEFn = 0;
338 fn.glTestFenceNVFn = 0;
339 fn.glTexImage2DFn =
340 reinterpret_cast<glTexImage2DProc>(GetGLProcAddress("glTexImage2D"));
341 fn.glTexImage3DFn = 0;
342 fn.glTexParameterfFn = reinterpret_cast<glTexParameterfProc>(
343 GetGLProcAddress("glTexParameterf"));
344 fn.glTexParameterfvFn = reinterpret_cast<glTexParameterfvProc>(
345 GetGLProcAddress("glTexParameterfv"));
346 fn.glTexParameteriFn = reinterpret_cast<glTexParameteriProc>(
347 GetGLProcAddress("glTexParameteri"));
348 fn.glTexParameterivFn = reinterpret_cast<glTexParameterivProc>(
349 GetGLProcAddress("glTexParameteriv"));
350 fn.glTexStorage2DEXTFn = 0;
351 fn.glTexStorage3DFn = 0;
352 fn.glTexSubImage2DFn = reinterpret_cast<glTexSubImage2DProc>(
353 GetGLProcAddress("glTexSubImage2D"));
354 fn.glTransformFeedbackVaryingsFn = 0;
355 fn.glUniform1fFn =
356 reinterpret_cast<glUniform1fProc>(GetGLProcAddress("glUniform1f"));
357 fn.glUniform1fvFn =
358 reinterpret_cast<glUniform1fvProc>(GetGLProcAddress("glUniform1fv"));
359 fn.glUniform1iFn =
360 reinterpret_cast<glUniform1iProc>(GetGLProcAddress("glUniform1i"));
361 fn.glUniform1ivFn =
362 reinterpret_cast<glUniform1ivProc>(GetGLProcAddress("glUniform1iv"));
363 fn.glUniform1uiFn = 0;
364 fn.glUniform1uivFn = 0;
365 fn.glUniform2fFn =
366 reinterpret_cast<glUniform2fProc>(GetGLProcAddress("glUniform2f"));
367 fn.glUniform2fvFn =
368 reinterpret_cast<glUniform2fvProc>(GetGLProcAddress("glUniform2fv"));
369 fn.glUniform2iFn =
370 reinterpret_cast<glUniform2iProc>(GetGLProcAddress("glUniform2i"));
371 fn.glUniform2ivFn =
372 reinterpret_cast<glUniform2ivProc>(GetGLProcAddress("glUniform2iv"));
373 fn.glUniform2uiFn = 0;
374 fn.glUniform2uivFn = 0;
375 fn.glUniform3fFn =
376 reinterpret_cast<glUniform3fProc>(GetGLProcAddress("glUniform3f"));
377 fn.glUniform3fvFn =
378 reinterpret_cast<glUniform3fvProc>(GetGLProcAddress("glUniform3fv"));
379 fn.glUniform3iFn =
380 reinterpret_cast<glUniform3iProc>(GetGLProcAddress("glUniform3i"));
381 fn.glUniform3ivFn =
382 reinterpret_cast<glUniform3ivProc>(GetGLProcAddress("glUniform3iv"));
383 fn.glUniform3uiFn = 0;
384 fn.glUniform3uivFn = 0;
385 fn.glUniform4fFn =
386 reinterpret_cast<glUniform4fProc>(GetGLProcAddress("glUniform4f"));
387 fn.glUniform4fvFn =
388 reinterpret_cast<glUniform4fvProc>(GetGLProcAddress("glUniform4fv"));
389 fn.glUniform4iFn =
390 reinterpret_cast<glUniform4iProc>(GetGLProcAddress("glUniform4i"));
391 fn.glUniform4ivFn =
392 reinterpret_cast<glUniform4ivProc>(GetGLProcAddress("glUniform4iv"));
393 fn.glUniform4uiFn = 0;
394 fn.glUniform4uivFn = 0;
395 fn.glUniformBlockBindingFn = 0;
396 fn.glUniformMatrix2fvFn = reinterpret_cast<glUniformMatrix2fvProc>(
397 GetGLProcAddress("glUniformMatrix2fv"));
398 fn.glUniformMatrix2x3fvFn = 0;
399 fn.glUniformMatrix2x4fvFn = 0;
400 fn.glUniformMatrix3fvFn = reinterpret_cast<glUniformMatrix3fvProc>(
401 GetGLProcAddress("glUniformMatrix3fv"));
402 fn.glUniformMatrix3x2fvFn = 0;
403 fn.glUniformMatrix3x4fvFn = 0;
404 fn.glUniformMatrix4fvFn = reinterpret_cast<glUniformMatrix4fvProc>(
405 GetGLProcAddress("glUniformMatrix4fv"));
406 fn.glUniformMatrix4x2fvFn = 0;
407 fn.glUniformMatrix4x3fvFn = 0;
408 fn.glUnmapBufferFn = 0;
409 fn.glUseProgramFn =
410 reinterpret_cast<glUseProgramProc>(GetGLProcAddress("glUseProgram"));
411 fn.glValidateProgramFn = reinterpret_cast<glValidateProgramProc>(
412 GetGLProcAddress("glValidateProgram"));
413 fn.glVertexAttrib1fFn = reinterpret_cast<glVertexAttrib1fProc>(
414 GetGLProcAddress("glVertexAttrib1f"));
415 fn.glVertexAttrib1fvFn = reinterpret_cast<glVertexAttrib1fvProc>(
416 GetGLProcAddress("glVertexAttrib1fv"));
417 fn.glVertexAttrib2fFn = reinterpret_cast<glVertexAttrib2fProc>(
418 GetGLProcAddress("glVertexAttrib2f"));
419 fn.glVertexAttrib2fvFn = reinterpret_cast<glVertexAttrib2fvProc>(
420 GetGLProcAddress("glVertexAttrib2fv"));
421 fn.glVertexAttrib3fFn = reinterpret_cast<glVertexAttrib3fProc>(
422 GetGLProcAddress("glVertexAttrib3f"));
423 fn.glVertexAttrib3fvFn = reinterpret_cast<glVertexAttrib3fvProc>(
424 GetGLProcAddress("glVertexAttrib3fv"));
425 fn.glVertexAttrib4fFn = reinterpret_cast<glVertexAttrib4fProc>(
426 GetGLProcAddress("glVertexAttrib4f"));
427 fn.glVertexAttrib4fvFn = reinterpret_cast<glVertexAttrib4fvProc>(
428 GetGLProcAddress("glVertexAttrib4fv"));
429 fn.glVertexAttribDivisorANGLEFn = 0;
430 fn.glVertexAttribI4iFn = 0;
431 fn.glVertexAttribI4ivFn = 0;
432 fn.glVertexAttribI4uiFn = 0;
433 fn.glVertexAttribI4uivFn = 0;
434 fn.glVertexAttribIPointerFn = 0;
435 fn.glVertexAttribPointerFn = reinterpret_cast<glVertexAttribPointerProc>(
436 GetGLProcAddress("glVertexAttribPointer"));
437 fn.glViewportFn =
438 reinterpret_cast<glViewportProc>(GetGLProcAddress("glViewport"));
439 fn.glWaitSyncFn = 0;
442 void DriverGL::InitializeDynamicBindings(GLContext* context) {
443 DCHECK(context && context->IsCurrent(NULL));
444 const GLVersionInfo* ver = context->GetVersionInfo();
445 ALLOW_UNUSED_LOCAL(ver);
446 std::string extensions = context->GetExtensions() + " ";
447 ALLOW_UNUSED_LOCAL(extensions);
449 ext.b_GL_ANGLE_framebuffer_blit =
450 extensions.find("GL_ANGLE_framebuffer_blit ") != std::string::npos;
451 ext.b_GL_ANGLE_framebuffer_multisample =
452 extensions.find("GL_ANGLE_framebuffer_multisample ") != std::string::npos;
453 ext.b_GL_ANGLE_instanced_arrays =
454 extensions.find("GL_ANGLE_instanced_arrays ") != std::string::npos;
455 ext.b_GL_ANGLE_translated_shader_source =
456 extensions.find("GL_ANGLE_translated_shader_source ") !=
457 std::string::npos;
458 ext.b_GL_APPLE_fence =
459 extensions.find("GL_APPLE_fence ") != std::string::npos;
460 ext.b_GL_APPLE_vertex_array_object =
461 extensions.find("GL_APPLE_vertex_array_object ") != std::string::npos;
462 ext.b_GL_ARB_draw_buffers =
463 extensions.find("GL_ARB_draw_buffers ") != std::string::npos;
464 ext.b_GL_ARB_draw_instanced =
465 extensions.find("GL_ARB_draw_instanced ") != std::string::npos;
466 ext.b_GL_ARB_get_program_binary =
467 extensions.find("GL_ARB_get_program_binary ") != std::string::npos;
468 ext.b_GL_ARB_instanced_arrays =
469 extensions.find("GL_ARB_instanced_arrays ") != std::string::npos;
470 ext.b_GL_ARB_map_buffer_range =
471 extensions.find("GL_ARB_map_buffer_range ") != std::string::npos;
472 ext.b_GL_ARB_occlusion_query =
473 extensions.find("GL_ARB_occlusion_query ") != std::string::npos;
474 ext.b_GL_ARB_robustness =
475 extensions.find("GL_ARB_robustness ") != std::string::npos;
476 ext.b_GL_ARB_sync = extensions.find("GL_ARB_sync ") != std::string::npos;
477 ext.b_GL_ARB_texture_storage =
478 extensions.find("GL_ARB_texture_storage ") != std::string::npos;
479 ext.b_GL_ARB_timer_query =
480 extensions.find("GL_ARB_timer_query ") != std::string::npos;
481 ext.b_GL_ARB_vertex_array_object =
482 extensions.find("GL_ARB_vertex_array_object ") != std::string::npos;
483 ext.b_GL_CHROMIUM_gles_depth_binding_hack =
484 extensions.find("GL_CHROMIUM_gles_depth_binding_hack ") !=
485 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);
543 debug_fn.glBeginQueryARBFn = 0;
544 if (ext.b_GL_ARB_occlusion_query) {
545 fn.glBeginQueryARBFn = reinterpret_cast<glBeginQueryARBProc>(
546 GetGLProcAddress("glBeginQueryARB"));
547 DCHECK(fn.glBeginQueryARBFn);
548 } else if (ext.b_GL_EXT_disjoint_timer_query ||
549 ext.b_GL_EXT_occlusion_query_boolean) {
550 fn.glBeginQueryARBFn = reinterpret_cast<glBeginQueryARBProc>(
551 GetGLProcAddress("glBeginQueryEXT"));
552 DCHECK(fn.glBeginQueryARBFn);
555 debug_fn.glBeginTransformFeedbackFn = 0;
556 if (ver->IsAtLeastGL(3u, 0u) || ver->IsAtLeastGLES(3u, 0u)) {
557 fn.glBeginTransformFeedbackFn =
558 reinterpret_cast<glBeginTransformFeedbackProc>(
559 GetGLProcAddress("glBeginTransformFeedback"));
560 DCHECK(fn.glBeginTransformFeedbackFn);
563 debug_fn.glBindBufferBaseFn = 0;
564 if (ver->IsAtLeastGL(3u, 0u) || ver->IsAtLeastGLES(3u, 0u)) {
565 fn.glBindBufferBaseFn = reinterpret_cast<glBindBufferBaseProc>(
566 GetGLProcAddress("glBindBufferBase"));
567 DCHECK(fn.glBindBufferBaseFn);
570 debug_fn.glBindBufferRangeFn = 0;
571 if (ver->IsAtLeastGL(3u, 0u) || ver->IsAtLeastGLES(3u, 0u)) {
572 fn.glBindBufferRangeFn = reinterpret_cast<glBindBufferRangeProc>(
573 GetGLProcAddress("glBindBufferRange"));
574 DCHECK(fn.glBindBufferRangeFn);
577 debug_fn.glBindFragDataLocationFn = 0;
578 if (ver->IsAtLeastGL(3u, 0u)) {
579 fn.glBindFragDataLocationFn = reinterpret_cast<glBindFragDataLocationProc>(
580 GetGLProcAddress("glBindFragDataLocation"));
581 DCHECK(fn.glBindFragDataLocationFn);
584 debug_fn.glBindFragDataLocationIndexedFn = 0;
585 if (ver->IsAtLeastGL(3u, 3u)) {
586 fn.glBindFragDataLocationIndexedFn =
587 reinterpret_cast<glBindFragDataLocationIndexedProc>(
588 GetGLProcAddress("glBindFragDataLocationIndexed"));
589 DCHECK(fn.glBindFragDataLocationIndexedFn);
592 debug_fn.glBindFramebufferEXTFn = 0;
593 if (ver->IsAtLeastGL(3u, 0u) || ver->is_es) {
594 fn.glBindFramebufferEXTFn = reinterpret_cast<glBindFramebufferEXTProc>(
595 GetGLProcAddress("glBindFramebuffer"));
596 DCHECK(fn.glBindFramebufferEXTFn);
597 } else if (ext.b_GL_EXT_framebuffer_object) {
598 fn.glBindFramebufferEXTFn = reinterpret_cast<glBindFramebufferEXTProc>(
599 GetGLProcAddress("glBindFramebufferEXT"));
600 DCHECK(fn.glBindFramebufferEXTFn);
603 debug_fn.glBindRenderbufferEXTFn = 0;
604 if (ver->IsAtLeastGL(3u, 0u) || ver->is_es) {
605 fn.glBindRenderbufferEXTFn = reinterpret_cast<glBindRenderbufferEXTProc>(
606 GetGLProcAddress("glBindRenderbuffer"));
607 DCHECK(fn.glBindRenderbufferEXTFn);
608 } else if (ext.b_GL_EXT_framebuffer_object) {
609 fn.glBindRenderbufferEXTFn = reinterpret_cast<glBindRenderbufferEXTProc>(
610 GetGLProcAddress("glBindRenderbufferEXT"));
611 DCHECK(fn.glBindRenderbufferEXTFn);
614 debug_fn.glBindSamplerFn = 0;
615 if (ver->IsAtLeastGL(3u, 3u) || ver->IsAtLeastGLES(3u, 0u)) {
616 fn.glBindSamplerFn =
617 reinterpret_cast<glBindSamplerProc>(GetGLProcAddress("glBindSampler"));
618 DCHECK(fn.glBindSamplerFn);
621 debug_fn.glBindTransformFeedbackFn = 0;
622 if (ver->IsAtLeastGLES(3u, 0u) || ver->IsAtLeastGL(4u, 0u)) {
623 fn.glBindTransformFeedbackFn =
624 reinterpret_cast<glBindTransformFeedbackProc>(
625 GetGLProcAddress("glBindTransformFeedback"));
626 DCHECK(fn.glBindTransformFeedbackFn);
629 debug_fn.glBindVertexArrayOESFn = 0;
630 if (ver->IsAtLeastGL(3u, 0u) || ver->IsAtLeastGLES(3u, 0u) ||
631 ext.b_GL_ARB_vertex_array_object) {
632 fn.glBindVertexArrayOESFn = reinterpret_cast<glBindVertexArrayOESProc>(
633 GetGLProcAddress("glBindVertexArray"));
634 DCHECK(fn.glBindVertexArrayOESFn);
635 } else if (ext.b_GL_OES_vertex_array_object) {
636 fn.glBindVertexArrayOESFn = reinterpret_cast<glBindVertexArrayOESProc>(
637 GetGLProcAddress("glBindVertexArrayOES"));
638 DCHECK(fn.glBindVertexArrayOESFn);
639 } else if (ext.b_GL_APPLE_vertex_array_object) {
640 fn.glBindVertexArrayOESFn = reinterpret_cast<glBindVertexArrayOESProc>(
641 GetGLProcAddress("glBindVertexArrayAPPLE"));
642 DCHECK(fn.glBindVertexArrayOESFn);
645 debug_fn.glBlendBarrierKHRFn = 0;
646 if (ext.b_GL_NV_blend_equation_advanced) {
647 fn.glBlendBarrierKHRFn = reinterpret_cast<glBlendBarrierKHRProc>(
648 GetGLProcAddress("glBlendBarrierNV"));
649 DCHECK(fn.glBlendBarrierKHRFn);
650 } else if (ext.b_GL_KHR_blend_equation_advanced) {
651 fn.glBlendBarrierKHRFn = reinterpret_cast<glBlendBarrierKHRProc>(
652 GetGLProcAddress("glBlendBarrierKHR"));
653 DCHECK(fn.glBlendBarrierKHRFn);
656 debug_fn.glBlitFramebufferFn = 0;
657 if (ver->IsAtLeastGL(3u, 0u) || ver->IsAtLeastGLES(3u, 0u)) {
658 fn.glBlitFramebufferFn = reinterpret_cast<glBlitFramebufferProc>(
659 GetGLProcAddress("glBlitFramebuffer"));
660 DCHECK(fn.glBlitFramebufferFn);
663 debug_fn.glBlitFramebufferANGLEFn = 0;
664 if (ver->IsAtLeastGL(3u, 0u) || ver->IsAtLeastGLES(3u, 0u)) {
665 fn.glBlitFramebufferANGLEFn = reinterpret_cast<glBlitFramebufferANGLEProc>(
666 GetGLProcAddress("glBlitFramebuffer"));
667 DCHECK(fn.glBlitFramebufferANGLEFn);
668 } else if (ext.b_GL_ANGLE_framebuffer_blit) {
669 fn.glBlitFramebufferANGLEFn = reinterpret_cast<glBlitFramebufferANGLEProc>(
670 GetGLProcAddress("glBlitFramebufferANGLE"));
671 DCHECK(fn.glBlitFramebufferANGLEFn);
674 debug_fn.glBlitFramebufferEXTFn = 0;
675 if (ver->IsAtLeastGL(3u, 0u) || ver->IsAtLeastGLES(3u, 0u)) {
676 fn.glBlitFramebufferEXTFn = reinterpret_cast<glBlitFramebufferEXTProc>(
677 GetGLProcAddress("glBlitFramebuffer"));
678 DCHECK(fn.glBlitFramebufferEXTFn);
679 } else if (ext.b_GL_EXT_framebuffer_blit) {
680 fn.glBlitFramebufferEXTFn = reinterpret_cast<glBlitFramebufferEXTProc>(
681 GetGLProcAddress("glBlitFramebufferEXT"));
682 DCHECK(fn.glBlitFramebufferEXTFn);
685 debug_fn.glCheckFramebufferStatusEXTFn = 0;
686 if (ver->IsAtLeastGL(3u, 0u) || ver->is_es) {
687 fn.glCheckFramebufferStatusEXTFn =
688 reinterpret_cast<glCheckFramebufferStatusEXTProc>(
689 GetGLProcAddress("glCheckFramebufferStatus"));
690 DCHECK(fn.glCheckFramebufferStatusEXTFn);
691 } else if (ext.b_GL_EXT_framebuffer_object) {
692 fn.glCheckFramebufferStatusEXTFn =
693 reinterpret_cast<glCheckFramebufferStatusEXTProc>(
694 GetGLProcAddress("glCheckFramebufferStatusEXT"));
695 DCHECK(fn.glCheckFramebufferStatusEXTFn);
698 debug_fn.glClearBufferfiFn = 0;
699 if (ver->IsAtLeastGL(3u, 0u) || ver->IsAtLeastGLES(3u, 0u)) {
700 fn.glClearBufferfiFn = reinterpret_cast<glClearBufferfiProc>(
701 GetGLProcAddress("glClearBufferfi"));
702 DCHECK(fn.glClearBufferfiFn);
705 debug_fn.glClearBufferfvFn = 0;
706 if (ver->IsAtLeastGL(3u, 0u) || ver->IsAtLeastGLES(3u, 0u)) {
707 fn.glClearBufferfvFn = reinterpret_cast<glClearBufferfvProc>(
708 GetGLProcAddress("glClearBufferfv"));
709 DCHECK(fn.glClearBufferfvFn);
712 debug_fn.glClearBufferivFn = 0;
713 if (ver->IsAtLeastGL(3u, 0u) || ver->IsAtLeastGLES(3u, 0u)) {
714 fn.glClearBufferivFn = reinterpret_cast<glClearBufferivProc>(
715 GetGLProcAddress("glClearBufferiv"));
716 DCHECK(fn.glClearBufferivFn);
719 debug_fn.glClearBufferuivFn = 0;
720 if (ver->IsAtLeastGL(3u, 0u) || ver->IsAtLeastGLES(3u, 0u)) {
721 fn.glClearBufferuivFn = reinterpret_cast<glClearBufferuivProc>(
722 GetGLProcAddress("glClearBufferuiv"));
723 DCHECK(fn.glClearBufferuivFn);
726 debug_fn.glClearDepthfFn = 0;
727 if (ver->IsAtLeastGL(4u, 1u) || ver->is_es) {
728 fn.glClearDepthfFn =
729 reinterpret_cast<glClearDepthfProc>(GetGLProcAddress("glClearDepthf"));
730 DCHECK(fn.glClearDepthfFn);
733 debug_fn.glClientWaitSyncFn = 0;
734 if (ver->IsAtLeastGL(3u, 2u) || ver->IsAtLeastGLES(3u, 0u) ||
735 ext.b_GL_ARB_sync) {
736 fn.glClientWaitSyncFn = reinterpret_cast<glClientWaitSyncProc>(
737 GetGLProcAddress("glClientWaitSync"));
738 DCHECK(fn.glClientWaitSyncFn);
741 debug_fn.glCompressedTexImage3DFn = 0;
742 if (!ver->is_es || ver->IsAtLeastGLES(3u, 0u)) {
743 fn.glCompressedTexImage3DFn = reinterpret_cast<glCompressedTexImage3DProc>(
744 GetGLProcAddress("glCompressedTexImage3D"));
745 DCHECK(fn.glCompressedTexImage3DFn);
748 debug_fn.glCopyBufferSubDataFn = 0;
749 if (ver->IsAtLeastGLES(3u, 0u) || ver->IsAtLeastGL(3u, 1u)) {
750 fn.glCopyBufferSubDataFn = reinterpret_cast<glCopyBufferSubDataProc>(
751 GetGLProcAddress("glCopyBufferSubData"));
752 DCHECK(fn.glCopyBufferSubDataFn);
755 debug_fn.glCopyTexSubImage3DFn = 0;
756 if (!ver->is_es || ver->IsAtLeastGLES(3u, 0u)) {
757 fn.glCopyTexSubImage3DFn = reinterpret_cast<glCopyTexSubImage3DProc>(
758 GetGLProcAddress("glCopyTexSubImage3D"));
759 DCHECK(fn.glCopyTexSubImage3DFn);
762 debug_fn.glDeleteFencesAPPLEFn = 0;
763 if (ext.b_GL_APPLE_fence) {
764 fn.glDeleteFencesAPPLEFn = reinterpret_cast<glDeleteFencesAPPLEProc>(
765 GetGLProcAddress("glDeleteFencesAPPLE"));
766 DCHECK(fn.glDeleteFencesAPPLEFn);
769 debug_fn.glDeleteFencesNVFn = 0;
770 if (ext.b_GL_NV_fence) {
771 fn.glDeleteFencesNVFn = reinterpret_cast<glDeleteFencesNVProc>(
772 GetGLProcAddress("glDeleteFencesNV"));
773 DCHECK(fn.glDeleteFencesNVFn);
776 debug_fn.glDeleteFramebuffersEXTFn = 0;
777 if (ver->IsAtLeastGL(3u, 0u) || ver->is_es) {
778 fn.glDeleteFramebuffersEXTFn =
779 reinterpret_cast<glDeleteFramebuffersEXTProc>(
780 GetGLProcAddress("glDeleteFramebuffers"));
781 DCHECK(fn.glDeleteFramebuffersEXTFn);
782 } else if (ext.b_GL_EXT_framebuffer_object) {
783 fn.glDeleteFramebuffersEXTFn =
784 reinterpret_cast<glDeleteFramebuffersEXTProc>(
785 GetGLProcAddress("glDeleteFramebuffersEXT"));
786 DCHECK(fn.glDeleteFramebuffersEXTFn);
789 debug_fn.glDeleteQueriesFn = 0;
790 if (!ver->is_es || ver->IsAtLeastGLES(3u, 0u)) {
791 fn.glDeleteQueriesFn = reinterpret_cast<glDeleteQueriesProc>(
792 GetGLProcAddress("glDeleteQueries"));
793 DCHECK(fn.glDeleteQueriesFn);
796 debug_fn.glDeleteQueriesARBFn = 0;
797 if (ext.b_GL_ARB_occlusion_query) {
798 fn.glDeleteQueriesARBFn = reinterpret_cast<glDeleteQueriesARBProc>(
799 GetGLProcAddress("glDeleteQueriesARB"));
800 DCHECK(fn.glDeleteQueriesARBFn);
801 } else if (ext.b_GL_EXT_disjoint_timer_query ||
802 ext.b_GL_EXT_occlusion_query_boolean) {
803 fn.glDeleteQueriesARBFn = reinterpret_cast<glDeleteQueriesARBProc>(
804 GetGLProcAddress("glDeleteQueriesEXT"));
805 DCHECK(fn.glDeleteQueriesARBFn);
808 debug_fn.glDeleteRenderbuffersEXTFn = 0;
809 if (ver->IsAtLeastGL(3u, 0u) || ver->is_es) {
810 fn.glDeleteRenderbuffersEXTFn =
811 reinterpret_cast<glDeleteRenderbuffersEXTProc>(
812 GetGLProcAddress("glDeleteRenderbuffers"));
813 DCHECK(fn.glDeleteRenderbuffersEXTFn);
814 } else if (ext.b_GL_EXT_framebuffer_object) {
815 fn.glDeleteRenderbuffersEXTFn =
816 reinterpret_cast<glDeleteRenderbuffersEXTProc>(
817 GetGLProcAddress("glDeleteRenderbuffersEXT"));
818 DCHECK(fn.glDeleteRenderbuffersEXTFn);
821 debug_fn.glDeleteSamplersFn = 0;
822 if (ver->IsAtLeastGL(3u, 3u) || ver->IsAtLeastGLES(3u, 0u)) {
823 fn.glDeleteSamplersFn = reinterpret_cast<glDeleteSamplersProc>(
824 GetGLProcAddress("glDeleteSamplers"));
825 DCHECK(fn.glDeleteSamplersFn);
828 debug_fn.glDeleteSyncFn = 0;
829 if (ver->IsAtLeastGL(3u, 2u) || ver->IsAtLeastGLES(3u, 0u) ||
830 ext.b_GL_ARB_sync) {
831 fn.glDeleteSyncFn =
832 reinterpret_cast<glDeleteSyncProc>(GetGLProcAddress("glDeleteSync"));
833 DCHECK(fn.glDeleteSyncFn);
836 debug_fn.glDeleteTransformFeedbacksFn = 0;
837 if (ver->IsAtLeastGLES(3u, 0u) || ver->IsAtLeastGL(4u, 0u)) {
838 fn.glDeleteTransformFeedbacksFn =
839 reinterpret_cast<glDeleteTransformFeedbacksProc>(
840 GetGLProcAddress("glDeleteTransformFeedbacks"));
841 DCHECK(fn.glDeleteTransformFeedbacksFn);
844 debug_fn.glDeleteVertexArraysOESFn = 0;
845 if (ver->IsAtLeastGL(3u, 0u) || ver->IsAtLeastGLES(3u, 0u) ||
846 ext.b_GL_ARB_vertex_array_object) {
847 fn.glDeleteVertexArraysOESFn =
848 reinterpret_cast<glDeleteVertexArraysOESProc>(
849 GetGLProcAddress("glDeleteVertexArrays"));
850 DCHECK(fn.glDeleteVertexArraysOESFn);
851 } else if (ext.b_GL_OES_vertex_array_object) {
852 fn.glDeleteVertexArraysOESFn =
853 reinterpret_cast<glDeleteVertexArraysOESProc>(
854 GetGLProcAddress("glDeleteVertexArraysOES"));
855 DCHECK(fn.glDeleteVertexArraysOESFn);
856 } else if (ext.b_GL_APPLE_vertex_array_object) {
857 fn.glDeleteVertexArraysOESFn =
858 reinterpret_cast<glDeleteVertexArraysOESProc>(
859 GetGLProcAddress("glDeleteVertexArraysAPPLE"));
860 DCHECK(fn.glDeleteVertexArraysOESFn);
863 debug_fn.glDepthRangefFn = 0;
864 if (ver->IsAtLeastGL(4u, 1u) || ver->is_es) {
865 fn.glDepthRangefFn =
866 reinterpret_cast<glDepthRangefProc>(GetGLProcAddress("glDepthRangef"));
867 DCHECK(fn.glDepthRangefFn);
870 debug_fn.glDiscardFramebufferEXTFn = 0;
871 if (ext.b_GL_EXT_discard_framebuffer) {
872 fn.glDiscardFramebufferEXTFn =
873 reinterpret_cast<glDiscardFramebufferEXTProc>(
874 GetGLProcAddress("glDiscardFramebufferEXT"));
875 DCHECK(fn.glDiscardFramebufferEXTFn);
878 debug_fn.glDrawArraysInstancedANGLEFn = 0;
879 if (ver->IsAtLeastGLES(3u, 0u) || ver->IsAtLeastGL(3u, 1u)) {
880 fn.glDrawArraysInstancedANGLEFn =
881 reinterpret_cast<glDrawArraysInstancedANGLEProc>(
882 GetGLProcAddress("glDrawArraysInstanced"));
883 DCHECK(fn.glDrawArraysInstancedANGLEFn);
884 } else if (ext.b_GL_ARB_draw_instanced) {
885 fn.glDrawArraysInstancedANGLEFn =
886 reinterpret_cast<glDrawArraysInstancedANGLEProc>(
887 GetGLProcAddress("glDrawArraysInstancedARB"));
888 DCHECK(fn.glDrawArraysInstancedANGLEFn);
889 } else if (ext.b_GL_ANGLE_instanced_arrays) {
890 fn.glDrawArraysInstancedANGLEFn =
891 reinterpret_cast<glDrawArraysInstancedANGLEProc>(
892 GetGLProcAddress("glDrawArraysInstancedANGLE"));
893 DCHECK(fn.glDrawArraysInstancedANGLEFn);
896 debug_fn.glDrawBufferFn = 0;
897 if (!ver->is_es) {
898 fn.glDrawBufferFn =
899 reinterpret_cast<glDrawBufferProc>(GetGLProcAddress("glDrawBuffer"));
900 DCHECK(fn.glDrawBufferFn);
903 debug_fn.glDrawBuffersARBFn = 0;
904 if (!ver->is_es || ver->IsAtLeastGLES(3u, 0u)) {
905 fn.glDrawBuffersARBFn = reinterpret_cast<glDrawBuffersARBProc>(
906 GetGLProcAddress("glDrawBuffers"));
907 DCHECK(fn.glDrawBuffersARBFn);
908 } else if (ext.b_GL_ARB_draw_buffers) {
909 fn.glDrawBuffersARBFn = reinterpret_cast<glDrawBuffersARBProc>(
910 GetGLProcAddress("glDrawBuffersARB"));
911 DCHECK(fn.glDrawBuffersARBFn);
912 } else if (ext.b_GL_EXT_draw_buffers) {
913 fn.glDrawBuffersARBFn = reinterpret_cast<glDrawBuffersARBProc>(
914 GetGLProcAddress("glDrawBuffersEXT"));
915 DCHECK(fn.glDrawBuffersARBFn);
918 debug_fn.glDrawElementsInstancedANGLEFn = 0;
919 if (ver->IsAtLeastGLES(3u, 0u) || ver->IsAtLeastGL(3u, 1u)) {
920 fn.glDrawElementsInstancedANGLEFn =
921 reinterpret_cast<glDrawElementsInstancedANGLEProc>(
922 GetGLProcAddress("glDrawElementsInstanced"));
923 DCHECK(fn.glDrawElementsInstancedANGLEFn);
924 } else if (ext.b_GL_ARB_draw_instanced) {
925 fn.glDrawElementsInstancedANGLEFn =
926 reinterpret_cast<glDrawElementsInstancedANGLEProc>(
927 GetGLProcAddress("glDrawElementsInstancedARB"));
928 DCHECK(fn.glDrawElementsInstancedANGLEFn);
929 } else if (ext.b_GL_ANGLE_instanced_arrays) {
930 fn.glDrawElementsInstancedANGLEFn =
931 reinterpret_cast<glDrawElementsInstancedANGLEProc>(
932 GetGLProcAddress("glDrawElementsInstancedANGLE"));
933 DCHECK(fn.glDrawElementsInstancedANGLEFn);
936 debug_fn.glDrawRangeElementsFn = 0;
937 if (!ver->is_es || ver->IsAtLeastGLES(3u, 0u)) {
938 fn.glDrawRangeElementsFn = reinterpret_cast<glDrawRangeElementsProc>(
939 GetGLProcAddress("glDrawRangeElements"));
940 DCHECK(fn.glDrawRangeElementsFn);
943 debug_fn.glEGLImageTargetRenderbufferStorageOESFn = 0;
944 if (ext.b_GL_OES_EGL_image) {
945 fn.glEGLImageTargetRenderbufferStorageOESFn =
946 reinterpret_cast<glEGLImageTargetRenderbufferStorageOESProc>(
947 GetGLProcAddress("glEGLImageTargetRenderbufferStorageOES"));
948 DCHECK(fn.glEGLImageTargetRenderbufferStorageOESFn);
951 debug_fn.glEGLImageTargetTexture2DOESFn = 0;
952 if (ext.b_GL_OES_EGL_image) {
953 fn.glEGLImageTargetTexture2DOESFn =
954 reinterpret_cast<glEGLImageTargetTexture2DOESProc>(
955 GetGLProcAddress("glEGLImageTargetTexture2DOES"));
956 DCHECK(fn.glEGLImageTargetTexture2DOESFn);
959 debug_fn.glEndQueryFn = 0;
960 if (!ver->is_es || ver->IsAtLeastGLES(3u, 0u)) {
961 fn.glEndQueryFn =
962 reinterpret_cast<glEndQueryProc>(GetGLProcAddress("glEndQuery"));
963 DCHECK(fn.glEndQueryFn);
966 debug_fn.glEndQueryARBFn = 0;
967 if (ext.b_GL_ARB_occlusion_query) {
968 fn.glEndQueryARBFn =
969 reinterpret_cast<glEndQueryARBProc>(GetGLProcAddress("glEndQueryARB"));
970 DCHECK(fn.glEndQueryARBFn);
971 } else if (ext.b_GL_EXT_disjoint_timer_query ||
972 ext.b_GL_EXT_occlusion_query_boolean) {
973 fn.glEndQueryARBFn =
974 reinterpret_cast<glEndQueryARBProc>(GetGLProcAddress("glEndQueryEXT"));
975 DCHECK(fn.glEndQueryARBFn);
978 debug_fn.glEndTransformFeedbackFn = 0;
979 if (ver->IsAtLeastGL(3u, 0u) || ver->IsAtLeastGLES(3u, 0u)) {
980 fn.glEndTransformFeedbackFn = reinterpret_cast<glEndTransformFeedbackProc>(
981 GetGLProcAddress("glEndTransformFeedback"));
982 DCHECK(fn.glEndTransformFeedbackFn);
985 debug_fn.glFenceSyncFn = 0;
986 if (ver->IsAtLeastGL(3u, 2u) || ver->IsAtLeastGLES(3u, 0u) ||
987 ext.b_GL_ARB_sync) {
988 fn.glFenceSyncFn =
989 reinterpret_cast<glFenceSyncProc>(GetGLProcAddress("glFenceSync"));
990 DCHECK(fn.glFenceSyncFn);
993 debug_fn.glFinishFenceAPPLEFn = 0;
994 if (ext.b_GL_APPLE_fence) {
995 fn.glFinishFenceAPPLEFn = reinterpret_cast<glFinishFenceAPPLEProc>(
996 GetGLProcAddress("glFinishFenceAPPLE"));
997 DCHECK(fn.glFinishFenceAPPLEFn);
1000 debug_fn.glFinishFenceNVFn = 0;
1001 if (ext.b_GL_NV_fence) {
1002 fn.glFinishFenceNVFn = reinterpret_cast<glFinishFenceNVProc>(
1003 GetGLProcAddress("glFinishFenceNV"));
1004 DCHECK(fn.glFinishFenceNVFn);
1007 debug_fn.glFlushMappedBufferRangeFn = 0;
1008 if (ver->IsAtLeastGL(3u, 0u) || ver->IsAtLeastGLES(3u, 0u)) {
1009 fn.glFlushMappedBufferRangeFn =
1010 reinterpret_cast<glFlushMappedBufferRangeProc>(
1011 GetGLProcAddress("glFlushMappedBufferRange"));
1012 DCHECK(fn.glFlushMappedBufferRangeFn);
1015 debug_fn.glFramebufferRenderbufferEXTFn = 0;
1016 if (ver->IsAtLeastGL(3u, 0u) || ver->is_es) {
1017 fn.glFramebufferRenderbufferEXTFn =
1018 reinterpret_cast<glFramebufferRenderbufferEXTProc>(
1019 GetGLProcAddress("glFramebufferRenderbuffer"));
1020 DCHECK(fn.glFramebufferRenderbufferEXTFn);
1021 } else if (ext.b_GL_EXT_framebuffer_object) {
1022 fn.glFramebufferRenderbufferEXTFn =
1023 reinterpret_cast<glFramebufferRenderbufferEXTProc>(
1024 GetGLProcAddress("glFramebufferRenderbufferEXT"));
1025 DCHECK(fn.glFramebufferRenderbufferEXTFn);
1028 debug_fn.glFramebufferTexture2DEXTFn = 0;
1029 if (ver->IsAtLeastGL(3u, 0u) || ver->is_es) {
1030 fn.glFramebufferTexture2DEXTFn =
1031 reinterpret_cast<glFramebufferTexture2DEXTProc>(
1032 GetGLProcAddress("glFramebufferTexture2D"));
1033 DCHECK(fn.glFramebufferTexture2DEXTFn);
1034 } else if (ext.b_GL_EXT_framebuffer_object) {
1035 fn.glFramebufferTexture2DEXTFn =
1036 reinterpret_cast<glFramebufferTexture2DEXTProc>(
1037 GetGLProcAddress("glFramebufferTexture2DEXT"));
1038 DCHECK(fn.glFramebufferTexture2DEXTFn);
1041 debug_fn.glFramebufferTexture2DMultisampleEXTFn = 0;
1042 if (ext.b_GL_EXT_multisampled_render_to_texture) {
1043 fn.glFramebufferTexture2DMultisampleEXTFn =
1044 reinterpret_cast<glFramebufferTexture2DMultisampleEXTProc>(
1045 GetGLProcAddress("glFramebufferTexture2DMultisampleEXT"));
1046 DCHECK(fn.glFramebufferTexture2DMultisampleEXTFn);
1049 debug_fn.glFramebufferTexture2DMultisampleIMGFn = 0;
1050 if (ext.b_GL_IMG_multisampled_render_to_texture) {
1051 fn.glFramebufferTexture2DMultisampleIMGFn =
1052 reinterpret_cast<glFramebufferTexture2DMultisampleIMGProc>(
1053 GetGLProcAddress("glFramebufferTexture2DMultisampleIMG"));
1054 DCHECK(fn.glFramebufferTexture2DMultisampleIMGFn);
1057 debug_fn.glFramebufferTextureLayerFn = 0;
1058 if (ver->IsAtLeastGL(3u, 0u) || ver->IsAtLeastGLES(3u, 0u)) {
1059 fn.glFramebufferTextureLayerFn =
1060 reinterpret_cast<glFramebufferTextureLayerProc>(
1061 GetGLProcAddress("glFramebufferTextureLayer"));
1062 DCHECK(fn.glFramebufferTextureLayerFn);
1065 debug_fn.glGenerateMipmapEXTFn = 0;
1066 if (ver->IsAtLeastGL(3u, 0u) || ver->is_es) {
1067 fn.glGenerateMipmapEXTFn = reinterpret_cast<glGenerateMipmapEXTProc>(
1068 GetGLProcAddress("glGenerateMipmap"));
1069 DCHECK(fn.glGenerateMipmapEXTFn);
1070 } else if (ext.b_GL_EXT_framebuffer_object) {
1071 fn.glGenerateMipmapEXTFn = reinterpret_cast<glGenerateMipmapEXTProc>(
1072 GetGLProcAddress("glGenerateMipmapEXT"));
1073 DCHECK(fn.glGenerateMipmapEXTFn);
1076 debug_fn.glGenFencesAPPLEFn = 0;
1077 if (ext.b_GL_APPLE_fence) {
1078 fn.glGenFencesAPPLEFn = reinterpret_cast<glGenFencesAPPLEProc>(
1079 GetGLProcAddress("glGenFencesAPPLE"));
1080 DCHECK(fn.glGenFencesAPPLEFn);
1083 debug_fn.glGenFencesNVFn = 0;
1084 if (ext.b_GL_NV_fence) {
1085 fn.glGenFencesNVFn =
1086 reinterpret_cast<glGenFencesNVProc>(GetGLProcAddress("glGenFencesNV"));
1087 DCHECK(fn.glGenFencesNVFn);
1090 debug_fn.glGenFramebuffersEXTFn = 0;
1091 if (ver->IsAtLeastGL(3u, 0u) || ver->is_es) {
1092 fn.glGenFramebuffersEXTFn = reinterpret_cast<glGenFramebuffersEXTProc>(
1093 GetGLProcAddress("glGenFramebuffers"));
1094 DCHECK(fn.glGenFramebuffersEXTFn);
1095 } else if (ext.b_GL_EXT_framebuffer_object) {
1096 fn.glGenFramebuffersEXTFn = reinterpret_cast<glGenFramebuffersEXTProc>(
1097 GetGLProcAddress("glGenFramebuffersEXT"));
1098 DCHECK(fn.glGenFramebuffersEXTFn);
1101 debug_fn.glGenQueriesFn = 0;
1102 if (!ver->is_es || ver->IsAtLeastGLES(3u, 0u)) {
1103 fn.glGenQueriesFn =
1104 reinterpret_cast<glGenQueriesProc>(GetGLProcAddress("glGenQueries"));
1105 DCHECK(fn.glGenQueriesFn);
1108 debug_fn.glGenQueriesARBFn = 0;
1109 if (ext.b_GL_ARB_occlusion_query) {
1110 fn.glGenQueriesARBFn = reinterpret_cast<glGenQueriesARBProc>(
1111 GetGLProcAddress("glGenQueriesARB"));
1112 DCHECK(fn.glGenQueriesARBFn);
1113 } else if (ext.b_GL_EXT_disjoint_timer_query ||
1114 ext.b_GL_EXT_occlusion_query_boolean) {
1115 fn.glGenQueriesARBFn = reinterpret_cast<glGenQueriesARBProc>(
1116 GetGLProcAddress("glGenQueriesEXT"));
1117 DCHECK(fn.glGenQueriesARBFn);
1120 debug_fn.glGenRenderbuffersEXTFn = 0;
1121 if (ver->IsAtLeastGL(3u, 0u) || ver->is_es) {
1122 fn.glGenRenderbuffersEXTFn = reinterpret_cast<glGenRenderbuffersEXTProc>(
1123 GetGLProcAddress("glGenRenderbuffers"));
1124 DCHECK(fn.glGenRenderbuffersEXTFn);
1125 } else if (ext.b_GL_EXT_framebuffer_object) {
1126 fn.glGenRenderbuffersEXTFn = reinterpret_cast<glGenRenderbuffersEXTProc>(
1127 GetGLProcAddress("glGenRenderbuffersEXT"));
1128 DCHECK(fn.glGenRenderbuffersEXTFn);
1131 debug_fn.glGenSamplersFn = 0;
1132 if (ver->IsAtLeastGL(3u, 3u) || ver->IsAtLeastGLES(3u, 0u)) {
1133 fn.glGenSamplersFn =
1134 reinterpret_cast<glGenSamplersProc>(GetGLProcAddress("glGenSamplers"));
1135 DCHECK(fn.glGenSamplersFn);
1138 debug_fn.glGenTransformFeedbacksFn = 0;
1139 if (ver->IsAtLeastGLES(3u, 0u) || ver->IsAtLeastGL(4u, 0u)) {
1140 fn.glGenTransformFeedbacksFn =
1141 reinterpret_cast<glGenTransformFeedbacksProc>(
1142 GetGLProcAddress("glGenTransformFeedbacks"));
1143 DCHECK(fn.glGenTransformFeedbacksFn);
1146 debug_fn.glGenVertexArraysOESFn = 0;
1147 if (ver->IsAtLeastGL(3u, 0u) || ver->IsAtLeastGLES(3u, 0u) ||
1148 ext.b_GL_ARB_vertex_array_object) {
1149 fn.glGenVertexArraysOESFn = reinterpret_cast<glGenVertexArraysOESProc>(
1150 GetGLProcAddress("glGenVertexArrays"));
1151 DCHECK(fn.glGenVertexArraysOESFn);
1152 } else if (ext.b_GL_OES_vertex_array_object) {
1153 fn.glGenVertexArraysOESFn = reinterpret_cast<glGenVertexArraysOESProc>(
1154 GetGLProcAddress("glGenVertexArraysOES"));
1155 DCHECK(fn.glGenVertexArraysOESFn);
1156 } else if (ext.b_GL_APPLE_vertex_array_object) {
1157 fn.glGenVertexArraysOESFn = reinterpret_cast<glGenVertexArraysOESProc>(
1158 GetGLProcAddress("glGenVertexArraysAPPLE"));
1159 DCHECK(fn.glGenVertexArraysOESFn);
1162 debug_fn.glGetActiveUniformBlockivFn = 0;
1163 if (ver->IsAtLeastGLES(3u, 0u) || ver->IsAtLeastGL(3u, 1u)) {
1164 fn.glGetActiveUniformBlockivFn =
1165 reinterpret_cast<glGetActiveUniformBlockivProc>(
1166 GetGLProcAddress("glGetActiveUniformBlockiv"));
1167 DCHECK(fn.glGetActiveUniformBlockivFn);
1170 debug_fn.glGetActiveUniformBlockNameFn = 0;
1171 if (ver->IsAtLeastGLES(3u, 0u) || ver->IsAtLeastGL(3u, 1u)) {
1172 fn.glGetActiveUniformBlockNameFn =
1173 reinterpret_cast<glGetActiveUniformBlockNameProc>(
1174 GetGLProcAddress("glGetActiveUniformBlockName"));
1175 DCHECK(fn.glGetActiveUniformBlockNameFn);
1178 debug_fn.glGetActiveUniformsivFn = 0;
1179 if (ver->IsAtLeastGLES(3u, 0u) || ver->IsAtLeastGL(3u, 1u)) {
1180 fn.glGetActiveUniformsivFn = reinterpret_cast<glGetActiveUniformsivProc>(
1181 GetGLProcAddress("glGetActiveUniformsiv"));
1182 DCHECK(fn.glGetActiveUniformsivFn);
1185 debug_fn.glGetFenceivNVFn = 0;
1186 if (ext.b_GL_NV_fence) {
1187 fn.glGetFenceivNVFn = reinterpret_cast<glGetFenceivNVProc>(
1188 GetGLProcAddress("glGetFenceivNV"));
1189 DCHECK(fn.glGetFenceivNVFn);
1192 debug_fn.glGetFragDataLocationFn = 0;
1193 if (ver->IsAtLeastGL(3u, 0u) || ver->IsAtLeastGLES(3u, 0u)) {
1194 fn.glGetFragDataLocationFn = reinterpret_cast<glGetFragDataLocationProc>(
1195 GetGLProcAddress("glGetFragDataLocation"));
1196 DCHECK(fn.glGetFragDataLocationFn);
1199 debug_fn.glGetFramebufferAttachmentParameterivEXTFn = 0;
1200 if (ver->IsAtLeastGL(3u, 0u) || ver->is_es) {
1201 fn.glGetFramebufferAttachmentParameterivEXTFn =
1202 reinterpret_cast<glGetFramebufferAttachmentParameterivEXTProc>(
1203 GetGLProcAddress("glGetFramebufferAttachmentParameteriv"));
1204 DCHECK(fn.glGetFramebufferAttachmentParameterivEXTFn);
1205 } else if (ext.b_GL_EXT_framebuffer_object) {
1206 fn.glGetFramebufferAttachmentParameterivEXTFn =
1207 reinterpret_cast<glGetFramebufferAttachmentParameterivEXTProc>(
1208 GetGLProcAddress("glGetFramebufferAttachmentParameterivEXT"));
1209 DCHECK(fn.glGetFramebufferAttachmentParameterivEXTFn);
1212 debug_fn.glGetGraphicsResetStatusARBFn = 0;
1213 if (ver->IsAtLeastGL(4u, 5u)) {
1214 fn.glGetGraphicsResetStatusARBFn =
1215 reinterpret_cast<glGetGraphicsResetStatusARBProc>(
1216 GetGLProcAddress("glGetGraphicsResetStatus"));
1217 DCHECK(fn.glGetGraphicsResetStatusARBFn);
1218 } else if (ext.b_GL_ARB_robustness) {
1219 fn.glGetGraphicsResetStatusARBFn =
1220 reinterpret_cast<glGetGraphicsResetStatusARBProc>(
1221 GetGLProcAddress("glGetGraphicsResetStatusARB"));
1222 DCHECK(fn.glGetGraphicsResetStatusARBFn);
1223 } else if (ext.b_GL_KHR_robustness) {
1224 fn.glGetGraphicsResetStatusARBFn =
1225 reinterpret_cast<glGetGraphicsResetStatusARBProc>(
1226 GetGLProcAddress("glGetGraphicsResetStatusKHR"));
1227 DCHECK(fn.glGetGraphicsResetStatusARBFn);
1228 } else if (ext.b_GL_EXT_robustness) {
1229 fn.glGetGraphicsResetStatusARBFn =
1230 reinterpret_cast<glGetGraphicsResetStatusARBProc>(
1231 GetGLProcAddress("glGetGraphicsResetStatusEXT"));
1232 DCHECK(fn.glGetGraphicsResetStatusARBFn);
1235 debug_fn.glGetInteger64i_vFn = 0;
1236 if (ver->IsAtLeastGL(3u, 2u) || ver->IsAtLeastGLES(3u, 0u)) {
1237 fn.glGetInteger64i_vFn = reinterpret_cast<glGetInteger64i_vProc>(
1238 GetGLProcAddress("glGetInteger64i_v"));
1239 DCHECK(fn.glGetInteger64i_vFn);
1242 debug_fn.glGetInteger64vFn = 0;
1243 if (ver->IsAtLeastGL(3u, 2u) || ver->IsAtLeastGLES(3u, 0u)) {
1244 fn.glGetInteger64vFn = reinterpret_cast<glGetInteger64vProc>(
1245 GetGLProcAddress("glGetInteger64v"));
1246 DCHECK(fn.glGetInteger64vFn);
1249 debug_fn.glGetIntegeri_vFn = 0;
1250 if (ver->IsAtLeastGL(3u, 0u) || ver->IsAtLeastGLES(3u, 0u)) {
1251 fn.glGetIntegeri_vFn = reinterpret_cast<glGetIntegeri_vProc>(
1252 GetGLProcAddress("glGetIntegeri_v"));
1253 DCHECK(fn.glGetIntegeri_vFn);
1256 debug_fn.glGetInternalformativFn = 0;
1257 if (ver->IsAtLeastGL(4u, 2u) || ver->IsAtLeastGLES(3u, 0u)) {
1258 fn.glGetInternalformativFn = reinterpret_cast<glGetInternalformativProc>(
1259 GetGLProcAddress("glGetInternalformativ"));
1260 DCHECK(fn.glGetInternalformativFn);
1263 debug_fn.glGetProgramBinaryFn = 0;
1264 if (ver->IsAtLeastGL(4u, 1u) || ver->IsAtLeastGLES(3u, 0u) ||
1265 ext.b_GL_ARB_get_program_binary) {
1266 fn.glGetProgramBinaryFn = reinterpret_cast<glGetProgramBinaryProc>(
1267 GetGLProcAddress("glGetProgramBinary"));
1268 DCHECK(fn.glGetProgramBinaryFn);
1269 } else if (ext.b_GL_OES_get_program_binary) {
1270 fn.glGetProgramBinaryFn = reinterpret_cast<glGetProgramBinaryProc>(
1271 GetGLProcAddress("glGetProgramBinaryOES"));
1272 DCHECK(fn.glGetProgramBinaryFn);
1275 debug_fn.glGetQueryivFn = 0;
1276 if (!ver->is_es || ver->IsAtLeastGLES(3u, 0u)) {
1277 fn.glGetQueryivFn =
1278 reinterpret_cast<glGetQueryivProc>(GetGLProcAddress("glGetQueryiv"));
1279 DCHECK(fn.glGetQueryivFn);
1282 debug_fn.glGetQueryivARBFn = 0;
1283 if (ext.b_GL_ARB_occlusion_query) {
1284 fn.glGetQueryivARBFn = reinterpret_cast<glGetQueryivARBProc>(
1285 GetGLProcAddress("glGetQueryivARB"));
1286 DCHECK(fn.glGetQueryivARBFn);
1287 } else if (ext.b_GL_EXT_disjoint_timer_query ||
1288 ext.b_GL_EXT_occlusion_query_boolean) {
1289 fn.glGetQueryivARBFn = reinterpret_cast<glGetQueryivARBProc>(
1290 GetGLProcAddress("glGetQueryivEXT"));
1291 DCHECK(fn.glGetQueryivARBFn);
1294 debug_fn.glGetQueryObjecti64vFn = 0;
1295 if (ver->IsAtLeastGL(3u, 3u) || ext.b_GL_ARB_timer_query) {
1296 fn.glGetQueryObjecti64vFn = reinterpret_cast<glGetQueryObjecti64vProc>(
1297 GetGLProcAddress("glGetQueryObjecti64v"));
1298 DCHECK(fn.glGetQueryObjecti64vFn);
1299 } else if (ext.b_GL_EXT_timer_query || ext.b_GL_EXT_disjoint_timer_query) {
1300 fn.glGetQueryObjecti64vFn = reinterpret_cast<glGetQueryObjecti64vProc>(
1301 GetGLProcAddress("glGetQueryObjecti64vEXT"));
1302 DCHECK(fn.glGetQueryObjecti64vFn);
1305 debug_fn.glGetQueryObjectivFn = 0;
1306 if (!ver->is_es) {
1307 fn.glGetQueryObjectivFn = reinterpret_cast<glGetQueryObjectivProc>(
1308 GetGLProcAddress("glGetQueryObjectiv"));
1309 DCHECK(fn.glGetQueryObjectivFn);
1312 debug_fn.glGetQueryObjectivARBFn = 0;
1313 if (ext.b_GL_ARB_occlusion_query) {
1314 fn.glGetQueryObjectivARBFn = reinterpret_cast<glGetQueryObjectivARBProc>(
1315 GetGLProcAddress("glGetQueryObjectivARB"));
1316 DCHECK(fn.glGetQueryObjectivARBFn);
1317 } else if (ext.b_GL_EXT_disjoint_timer_query) {
1318 fn.glGetQueryObjectivARBFn = reinterpret_cast<glGetQueryObjectivARBProc>(
1319 GetGLProcAddress("glGetQueryObjectivEXT"));
1320 DCHECK(fn.glGetQueryObjectivARBFn);
1323 debug_fn.glGetQueryObjectui64vFn = 0;
1324 if (ver->IsAtLeastGL(3u, 3u) || ext.b_GL_ARB_timer_query) {
1325 fn.glGetQueryObjectui64vFn = reinterpret_cast<glGetQueryObjectui64vProc>(
1326 GetGLProcAddress("glGetQueryObjectui64v"));
1327 DCHECK(fn.glGetQueryObjectui64vFn);
1328 } else if (ext.b_GL_EXT_timer_query || ext.b_GL_EXT_disjoint_timer_query) {
1329 fn.glGetQueryObjectui64vFn = reinterpret_cast<glGetQueryObjectui64vProc>(
1330 GetGLProcAddress("glGetQueryObjectui64vEXT"));
1331 DCHECK(fn.glGetQueryObjectui64vFn);
1334 debug_fn.glGetQueryObjectuivFn = 0;
1335 if (!ver->is_es || ver->IsAtLeastGLES(3u, 0u)) {
1336 fn.glGetQueryObjectuivFn = reinterpret_cast<glGetQueryObjectuivProc>(
1337 GetGLProcAddress("glGetQueryObjectuiv"));
1338 DCHECK(fn.glGetQueryObjectuivFn);
1341 debug_fn.glGetQueryObjectuivARBFn = 0;
1342 if (ext.b_GL_ARB_occlusion_query) {
1343 fn.glGetQueryObjectuivARBFn = reinterpret_cast<glGetQueryObjectuivARBProc>(
1344 GetGLProcAddress("glGetQueryObjectuivARB"));
1345 DCHECK(fn.glGetQueryObjectuivARBFn);
1346 } else if (ext.b_GL_EXT_disjoint_timer_query ||
1347 ext.b_GL_EXT_occlusion_query_boolean) {
1348 fn.glGetQueryObjectuivARBFn = reinterpret_cast<glGetQueryObjectuivARBProc>(
1349 GetGLProcAddress("glGetQueryObjectuivEXT"));
1350 DCHECK(fn.glGetQueryObjectuivARBFn);
1353 debug_fn.glGetRenderbufferParameterivEXTFn = 0;
1354 if (ver->IsAtLeastGL(3u, 0u) || ver->is_es) {
1355 fn.glGetRenderbufferParameterivEXTFn =
1356 reinterpret_cast<glGetRenderbufferParameterivEXTProc>(
1357 GetGLProcAddress("glGetRenderbufferParameteriv"));
1358 DCHECK(fn.glGetRenderbufferParameterivEXTFn);
1359 } else if (ext.b_GL_EXT_framebuffer_object) {
1360 fn.glGetRenderbufferParameterivEXTFn =
1361 reinterpret_cast<glGetRenderbufferParameterivEXTProc>(
1362 GetGLProcAddress("glGetRenderbufferParameterivEXT"));
1363 DCHECK(fn.glGetRenderbufferParameterivEXTFn);
1366 debug_fn.glGetSamplerParameterfvFn = 0;
1367 if (ver->IsAtLeastGL(3u, 3u) || ver->IsAtLeastGLES(3u, 0u)) {
1368 fn.glGetSamplerParameterfvFn =
1369 reinterpret_cast<glGetSamplerParameterfvProc>(
1370 GetGLProcAddress("glGetSamplerParameterfv"));
1371 DCHECK(fn.glGetSamplerParameterfvFn);
1374 debug_fn.glGetSamplerParameterivFn = 0;
1375 if (ver->IsAtLeastGL(3u, 3u) || ver->IsAtLeastGLES(3u, 0u)) {
1376 fn.glGetSamplerParameterivFn =
1377 reinterpret_cast<glGetSamplerParameterivProc>(
1378 GetGLProcAddress("glGetSamplerParameteriv"));
1379 DCHECK(fn.glGetSamplerParameterivFn);
1382 debug_fn.glGetShaderPrecisionFormatFn = 0;
1383 if (ver->IsAtLeastGL(4u, 1u) || ver->is_es) {
1384 fn.glGetShaderPrecisionFormatFn =
1385 reinterpret_cast<glGetShaderPrecisionFormatProc>(
1386 GetGLProcAddress("glGetShaderPrecisionFormat"));
1387 DCHECK(fn.glGetShaderPrecisionFormatFn);
1390 debug_fn.glGetSyncivFn = 0;
1391 if (ver->IsAtLeastGL(3u, 2u) || ver->IsAtLeastGLES(3u, 0u) ||
1392 ext.b_GL_ARB_sync) {
1393 fn.glGetSyncivFn =
1394 reinterpret_cast<glGetSyncivProc>(GetGLProcAddress("glGetSynciv"));
1395 DCHECK(fn.glGetSyncivFn);
1398 debug_fn.glGetTexLevelParameterfvFn = 0;
1399 if (!ver->is_es || ver->IsAtLeastGLES(3u, 1u)) {
1400 fn.glGetTexLevelParameterfvFn =
1401 reinterpret_cast<glGetTexLevelParameterfvProc>(
1402 GetGLProcAddress("glGetTexLevelParameterfv"));
1403 DCHECK(fn.glGetTexLevelParameterfvFn);
1406 debug_fn.glGetTexLevelParameterivFn = 0;
1407 if (!ver->is_es || ver->IsAtLeastGLES(3u, 1u)) {
1408 fn.glGetTexLevelParameterivFn =
1409 reinterpret_cast<glGetTexLevelParameterivProc>(
1410 GetGLProcAddress("glGetTexLevelParameteriv"));
1411 DCHECK(fn.glGetTexLevelParameterivFn);
1414 debug_fn.glGetTransformFeedbackVaryingFn = 0;
1415 if (ver->IsAtLeastGL(3u, 0u) || ver->IsAtLeastGLES(3u, 0u)) {
1416 fn.glGetTransformFeedbackVaryingFn =
1417 reinterpret_cast<glGetTransformFeedbackVaryingProc>(
1418 GetGLProcAddress("glGetTransformFeedbackVarying"));
1419 DCHECK(fn.glGetTransformFeedbackVaryingFn);
1422 debug_fn.glGetTranslatedShaderSourceANGLEFn = 0;
1423 if (ext.b_GL_ANGLE_translated_shader_source) {
1424 fn.glGetTranslatedShaderSourceANGLEFn =
1425 reinterpret_cast<glGetTranslatedShaderSourceANGLEProc>(
1426 GetGLProcAddress("glGetTranslatedShaderSourceANGLE"));
1427 DCHECK(fn.glGetTranslatedShaderSourceANGLEFn);
1430 debug_fn.glGetUniformBlockIndexFn = 0;
1431 if (ver->IsAtLeastGLES(3u, 0u) || ver->IsAtLeastGL(3u, 1u)) {
1432 fn.glGetUniformBlockIndexFn = reinterpret_cast<glGetUniformBlockIndexProc>(
1433 GetGLProcAddress("glGetUniformBlockIndex"));
1434 DCHECK(fn.glGetUniformBlockIndexFn);
1437 debug_fn.glGetUniformIndicesFn = 0;
1438 if (ver->IsAtLeastGLES(3u, 0u) || ver->IsAtLeastGL(3u, 1u)) {
1439 fn.glGetUniformIndicesFn = reinterpret_cast<glGetUniformIndicesProc>(
1440 GetGLProcAddress("glGetUniformIndices"));
1441 DCHECK(fn.glGetUniformIndicesFn);
1444 debug_fn.glInsertEventMarkerEXTFn = 0;
1445 if (ext.b_GL_EXT_debug_marker) {
1446 fn.glInsertEventMarkerEXTFn = reinterpret_cast<glInsertEventMarkerEXTProc>(
1447 GetGLProcAddress("glInsertEventMarkerEXT"));
1448 DCHECK(fn.glInsertEventMarkerEXTFn);
1451 debug_fn.glInvalidateFramebufferFn = 0;
1452 if (ver->IsAtLeastGL(4u, 3u) || ver->IsAtLeastGLES(3u, 0u)) {
1453 fn.glInvalidateFramebufferFn =
1454 reinterpret_cast<glInvalidateFramebufferProc>(
1455 GetGLProcAddress("glInvalidateFramebuffer"));
1456 DCHECK(fn.glInvalidateFramebufferFn);
1459 debug_fn.glInvalidateSubFramebufferFn = 0;
1460 if (ver->IsAtLeastGL(4u, 3u) || ver->IsAtLeastGLES(3u, 0u)) {
1461 fn.glInvalidateSubFramebufferFn =
1462 reinterpret_cast<glInvalidateSubFramebufferProc>(
1463 GetGLProcAddress("glInvalidateSubFramebuffer"));
1464 DCHECK(fn.glInvalidateSubFramebufferFn);
1467 debug_fn.glIsFenceAPPLEFn = 0;
1468 if (ext.b_GL_APPLE_fence) {
1469 fn.glIsFenceAPPLEFn = reinterpret_cast<glIsFenceAPPLEProc>(
1470 GetGLProcAddress("glIsFenceAPPLE"));
1471 DCHECK(fn.glIsFenceAPPLEFn);
1474 debug_fn.glIsFenceNVFn = 0;
1475 if (ext.b_GL_NV_fence) {
1476 fn.glIsFenceNVFn =
1477 reinterpret_cast<glIsFenceNVProc>(GetGLProcAddress("glIsFenceNV"));
1478 DCHECK(fn.glIsFenceNVFn);
1481 debug_fn.glIsFramebufferEXTFn = 0;
1482 if (ver->IsAtLeastGL(3u, 0u) || ver->is_es) {
1483 fn.glIsFramebufferEXTFn = reinterpret_cast<glIsFramebufferEXTProc>(
1484 GetGLProcAddress("glIsFramebuffer"));
1485 DCHECK(fn.glIsFramebufferEXTFn);
1486 } else if (ext.b_GL_EXT_framebuffer_object) {
1487 fn.glIsFramebufferEXTFn = reinterpret_cast<glIsFramebufferEXTProc>(
1488 GetGLProcAddress("glIsFramebufferEXT"));
1489 DCHECK(fn.glIsFramebufferEXTFn);
1492 debug_fn.glIsQueryFn = 0;
1493 if (!ver->is_es || ver->IsAtLeastGLES(3u, 0u)) {
1494 fn.glIsQueryFn =
1495 reinterpret_cast<glIsQueryProc>(GetGLProcAddress("glIsQuery"));
1496 DCHECK(fn.glIsQueryFn);
1499 debug_fn.glIsQueryARBFn = 0;
1500 if (ext.b_GL_ARB_occlusion_query) {
1501 fn.glIsQueryARBFn =
1502 reinterpret_cast<glIsQueryARBProc>(GetGLProcAddress("glIsQueryARB"));
1503 DCHECK(fn.glIsQueryARBFn);
1504 } else if (ext.b_GL_EXT_disjoint_timer_query ||
1505 ext.b_GL_EXT_occlusion_query_boolean) {
1506 fn.glIsQueryARBFn =
1507 reinterpret_cast<glIsQueryARBProc>(GetGLProcAddress("glIsQueryEXT"));
1508 DCHECK(fn.glIsQueryARBFn);
1511 debug_fn.glIsRenderbufferEXTFn = 0;
1512 if (ver->IsAtLeastGL(3u, 0u) || ver->is_es) {
1513 fn.glIsRenderbufferEXTFn = reinterpret_cast<glIsRenderbufferEXTProc>(
1514 GetGLProcAddress("glIsRenderbuffer"));
1515 DCHECK(fn.glIsRenderbufferEXTFn);
1516 } else if (ext.b_GL_EXT_framebuffer_object) {
1517 fn.glIsRenderbufferEXTFn = reinterpret_cast<glIsRenderbufferEXTProc>(
1518 GetGLProcAddress("glIsRenderbufferEXT"));
1519 DCHECK(fn.glIsRenderbufferEXTFn);
1522 debug_fn.glIsSamplerFn = 0;
1523 if (ver->IsAtLeastGL(3u, 3u) || ver->IsAtLeastGLES(3u, 0u)) {
1524 fn.glIsSamplerFn =
1525 reinterpret_cast<glIsSamplerProc>(GetGLProcAddress("glIsSampler"));
1526 DCHECK(fn.glIsSamplerFn);
1529 debug_fn.glIsSyncFn = 0;
1530 if (ver->IsAtLeastGL(3u, 2u) || ver->IsAtLeastGLES(3u, 0u) ||
1531 ext.b_GL_ARB_sync) {
1532 fn.glIsSyncFn =
1533 reinterpret_cast<glIsSyncProc>(GetGLProcAddress("glIsSync"));
1534 DCHECK(fn.glIsSyncFn);
1537 debug_fn.glIsTransformFeedbackFn = 0;
1538 if (ver->IsAtLeastGLES(3u, 0u) || ver->IsAtLeastGL(4u, 0u)) {
1539 fn.glIsTransformFeedbackFn = reinterpret_cast<glIsTransformFeedbackProc>(
1540 GetGLProcAddress("glIsTransformFeedback"));
1541 DCHECK(fn.glIsTransformFeedbackFn);
1544 debug_fn.glIsVertexArrayOESFn = 0;
1545 if (ver->IsAtLeastGL(3u, 0u) || ver->IsAtLeastGLES(3u, 0u) ||
1546 ext.b_GL_ARB_vertex_array_object) {
1547 fn.glIsVertexArrayOESFn = reinterpret_cast<glIsVertexArrayOESProc>(
1548 GetGLProcAddress("glIsVertexArray"));
1549 DCHECK(fn.glIsVertexArrayOESFn);
1550 } else if (ext.b_GL_OES_vertex_array_object) {
1551 fn.glIsVertexArrayOESFn = reinterpret_cast<glIsVertexArrayOESProc>(
1552 GetGLProcAddress("glIsVertexArrayOES"));
1553 DCHECK(fn.glIsVertexArrayOESFn);
1554 } else if (ext.b_GL_APPLE_vertex_array_object) {
1555 fn.glIsVertexArrayOESFn = reinterpret_cast<glIsVertexArrayOESProc>(
1556 GetGLProcAddress("glIsVertexArrayAPPLE"));
1557 DCHECK(fn.glIsVertexArrayOESFn);
1560 debug_fn.glMapBufferFn = 0;
1561 if (!ver->is_es) {
1562 fn.glMapBufferFn =
1563 reinterpret_cast<glMapBufferProc>(GetGLProcAddress("glMapBuffer"));
1564 DCHECK(fn.glMapBufferFn);
1565 } else if (ext.b_GL_OES_mapbuffer) {
1566 fn.glMapBufferFn =
1567 reinterpret_cast<glMapBufferProc>(GetGLProcAddress("glMapBufferOES"));
1568 DCHECK(fn.glMapBufferFn);
1571 debug_fn.glMapBufferRangeFn = 0;
1572 if (ver->IsAtLeastGL(3u, 0u) || ver->IsAtLeastGLES(3u, 0u) ||
1573 ext.b_GL_ARB_map_buffer_range) {
1574 fn.glMapBufferRangeFn = reinterpret_cast<glMapBufferRangeProc>(
1575 GetGLProcAddress("glMapBufferRange"));
1576 DCHECK(fn.glMapBufferRangeFn);
1577 } else if (ext.b_GL_EXT_map_buffer_range) {
1578 fn.glMapBufferRangeFn = reinterpret_cast<glMapBufferRangeProc>(
1579 GetGLProcAddress("glMapBufferRangeEXT"));
1580 DCHECK(fn.glMapBufferRangeFn);
1583 debug_fn.glMatrixLoadfEXTFn = 0;
1584 if (ext.b_GL_EXT_direct_state_access || ext.b_GL_NV_path_rendering) {
1585 fn.glMatrixLoadfEXTFn = reinterpret_cast<glMatrixLoadfEXTProc>(
1586 GetGLProcAddress("glMatrixLoadfEXT"));
1587 DCHECK(fn.glMatrixLoadfEXTFn);
1590 debug_fn.glMatrixLoadIdentityEXTFn = 0;
1591 if (ext.b_GL_EXT_direct_state_access || ext.b_GL_NV_path_rendering) {
1592 fn.glMatrixLoadIdentityEXTFn =
1593 reinterpret_cast<glMatrixLoadIdentityEXTProc>(
1594 GetGLProcAddress("glMatrixLoadIdentityEXT"));
1595 DCHECK(fn.glMatrixLoadIdentityEXTFn);
1598 debug_fn.glPauseTransformFeedbackFn = 0;
1599 if (ver->IsAtLeastGLES(3u, 0u) || ver->IsAtLeastGL(4u, 0u)) {
1600 fn.glPauseTransformFeedbackFn =
1601 reinterpret_cast<glPauseTransformFeedbackProc>(
1602 GetGLProcAddress("glPauseTransformFeedback"));
1603 DCHECK(fn.glPauseTransformFeedbackFn);
1606 debug_fn.glPointParameteriFn = 0;
1607 if (!ver->is_es) {
1608 fn.glPointParameteriFn = reinterpret_cast<glPointParameteriProc>(
1609 GetGLProcAddress("glPointParameteri"));
1610 DCHECK(fn.glPointParameteriFn);
1613 debug_fn.glPopGroupMarkerEXTFn = 0;
1614 if (ext.b_GL_EXT_debug_marker) {
1615 fn.glPopGroupMarkerEXTFn = reinterpret_cast<glPopGroupMarkerEXTProc>(
1616 GetGLProcAddress("glPopGroupMarkerEXT"));
1617 DCHECK(fn.glPopGroupMarkerEXTFn);
1620 debug_fn.glProgramBinaryFn = 0;
1621 if (ver->IsAtLeastGL(4u, 1u) || ver->IsAtLeastGLES(3u, 0u) ||
1622 ext.b_GL_ARB_get_program_binary) {
1623 fn.glProgramBinaryFn = reinterpret_cast<glProgramBinaryProc>(
1624 GetGLProcAddress("glProgramBinary"));
1625 DCHECK(fn.glProgramBinaryFn);
1626 } else if (ext.b_GL_OES_get_program_binary) {
1627 fn.glProgramBinaryFn = reinterpret_cast<glProgramBinaryProc>(
1628 GetGLProcAddress("glProgramBinaryOES"));
1629 DCHECK(fn.glProgramBinaryFn);
1632 debug_fn.glProgramParameteriFn = 0;
1633 if (ver->IsAtLeastGL(4u, 1u) || ver->IsAtLeastGLES(3u, 0u) ||
1634 ext.b_GL_ARB_get_program_binary) {
1635 fn.glProgramParameteriFn = reinterpret_cast<glProgramParameteriProc>(
1636 GetGLProcAddress("glProgramParameteri"));
1637 DCHECK(fn.glProgramParameteriFn);
1640 debug_fn.glPushGroupMarkerEXTFn = 0;
1641 if (ext.b_GL_EXT_debug_marker) {
1642 fn.glPushGroupMarkerEXTFn = reinterpret_cast<glPushGroupMarkerEXTProc>(
1643 GetGLProcAddress("glPushGroupMarkerEXT"));
1644 DCHECK(fn.glPushGroupMarkerEXTFn);
1647 debug_fn.glQueryCounterFn = 0;
1648 if (ver->IsAtLeastGL(3u, 3u) || ext.b_GL_ARB_timer_query) {
1649 fn.glQueryCounterFn = reinterpret_cast<glQueryCounterProc>(
1650 GetGLProcAddress("glQueryCounter"));
1651 DCHECK(fn.glQueryCounterFn);
1652 } else if (ext.b_GL_EXT_disjoint_timer_query) {
1653 fn.glQueryCounterFn = reinterpret_cast<glQueryCounterProc>(
1654 GetGLProcAddress("glQueryCounterEXT"));
1655 DCHECK(fn.glQueryCounterFn);
1658 debug_fn.glReadBufferFn = 0;
1659 if (!ver->is_es || ver->IsAtLeastGLES(3u, 0u)) {
1660 fn.glReadBufferFn =
1661 reinterpret_cast<glReadBufferProc>(GetGLProcAddress("glReadBuffer"));
1662 DCHECK(fn.glReadBufferFn);
1665 debug_fn.glReleaseShaderCompilerFn = 0;
1666 if (ver->IsAtLeastGL(4u, 1u) || ver->is_es) {
1667 fn.glReleaseShaderCompilerFn =
1668 reinterpret_cast<glReleaseShaderCompilerProc>(
1669 GetGLProcAddress("glReleaseShaderCompiler"));
1670 DCHECK(fn.glReleaseShaderCompilerFn);
1673 debug_fn.glRenderbufferStorageEXTFn = 0;
1674 if (ver->IsAtLeastGL(3u, 0u) || ver->is_es) {
1675 fn.glRenderbufferStorageEXTFn =
1676 reinterpret_cast<glRenderbufferStorageEXTProc>(
1677 GetGLProcAddress("glRenderbufferStorage"));
1678 DCHECK(fn.glRenderbufferStorageEXTFn);
1679 } else if (ext.b_GL_EXT_framebuffer_object) {
1680 fn.glRenderbufferStorageEXTFn =
1681 reinterpret_cast<glRenderbufferStorageEXTProc>(
1682 GetGLProcAddress("glRenderbufferStorageEXT"));
1683 DCHECK(fn.glRenderbufferStorageEXTFn);
1686 debug_fn.glRenderbufferStorageMultisampleFn = 0;
1687 if (ver->IsAtLeastGL(3u, 0u) || ver->IsAtLeastGLES(3u, 0u)) {
1688 fn.glRenderbufferStorageMultisampleFn =
1689 reinterpret_cast<glRenderbufferStorageMultisampleProc>(
1690 GetGLProcAddress("glRenderbufferStorageMultisample"));
1691 DCHECK(fn.glRenderbufferStorageMultisampleFn);
1694 debug_fn.glRenderbufferStorageMultisampleANGLEFn = 0;
1695 if (ext.b_GL_ANGLE_framebuffer_multisample) {
1696 fn.glRenderbufferStorageMultisampleANGLEFn =
1697 reinterpret_cast<glRenderbufferStorageMultisampleANGLEProc>(
1698 GetGLProcAddress("glRenderbufferStorageMultisampleANGLE"));
1699 DCHECK(fn.glRenderbufferStorageMultisampleANGLEFn);
1702 debug_fn.glRenderbufferStorageMultisampleEXTFn = 0;
1703 if (ext.b_GL_EXT_multisampled_render_to_texture ||
1704 ext.b_GL_EXT_framebuffer_multisample) {
1705 fn.glRenderbufferStorageMultisampleEXTFn =
1706 reinterpret_cast<glRenderbufferStorageMultisampleEXTProc>(
1707 GetGLProcAddress("glRenderbufferStorageMultisampleEXT"));
1708 DCHECK(fn.glRenderbufferStorageMultisampleEXTFn);
1711 debug_fn.glRenderbufferStorageMultisampleIMGFn = 0;
1712 if (ext.b_GL_IMG_multisampled_render_to_texture) {
1713 fn.glRenderbufferStorageMultisampleIMGFn =
1714 reinterpret_cast<glRenderbufferStorageMultisampleIMGProc>(
1715 GetGLProcAddress("glRenderbufferStorageMultisampleIMG"));
1716 DCHECK(fn.glRenderbufferStorageMultisampleIMGFn);
1719 debug_fn.glResumeTransformFeedbackFn = 0;
1720 if (ver->IsAtLeastGLES(3u, 0u) || ver->IsAtLeastGL(4u, 0u)) {
1721 fn.glResumeTransformFeedbackFn =
1722 reinterpret_cast<glResumeTransformFeedbackProc>(
1723 GetGLProcAddress("glResumeTransformFeedback"));
1724 DCHECK(fn.glResumeTransformFeedbackFn);
1727 debug_fn.glSamplerParameterfFn = 0;
1728 if (ver->IsAtLeastGL(3u, 3u) || ver->IsAtLeastGLES(3u, 0u)) {
1729 fn.glSamplerParameterfFn = reinterpret_cast<glSamplerParameterfProc>(
1730 GetGLProcAddress("glSamplerParameterf"));
1731 DCHECK(fn.glSamplerParameterfFn);
1734 debug_fn.glSamplerParameterfvFn = 0;
1735 if (ver->IsAtLeastGL(3u, 3u) || ver->IsAtLeastGLES(3u, 0u)) {
1736 fn.glSamplerParameterfvFn = reinterpret_cast<glSamplerParameterfvProc>(
1737 GetGLProcAddress("glSamplerParameterfv"));
1738 DCHECK(fn.glSamplerParameterfvFn);
1741 debug_fn.glSamplerParameteriFn = 0;
1742 if (ver->IsAtLeastGL(3u, 3u) || ver->IsAtLeastGLES(3u, 0u)) {
1743 fn.glSamplerParameteriFn = reinterpret_cast<glSamplerParameteriProc>(
1744 GetGLProcAddress("glSamplerParameteri"));
1745 DCHECK(fn.glSamplerParameteriFn);
1748 debug_fn.glSamplerParameterivFn = 0;
1749 if (ver->IsAtLeastGL(3u, 3u) || ver->IsAtLeastGLES(3u, 0u)) {
1750 fn.glSamplerParameterivFn = reinterpret_cast<glSamplerParameterivProc>(
1751 GetGLProcAddress("glSamplerParameteriv"));
1752 DCHECK(fn.glSamplerParameterivFn);
1755 debug_fn.glSetFenceAPPLEFn = 0;
1756 if (ext.b_GL_APPLE_fence) {
1757 fn.glSetFenceAPPLEFn = reinterpret_cast<glSetFenceAPPLEProc>(
1758 GetGLProcAddress("glSetFenceAPPLE"));
1759 DCHECK(fn.glSetFenceAPPLEFn);
1762 debug_fn.glSetFenceNVFn = 0;
1763 if (ext.b_GL_NV_fence) {
1764 fn.glSetFenceNVFn =
1765 reinterpret_cast<glSetFenceNVProc>(GetGLProcAddress("glSetFenceNV"));
1766 DCHECK(fn.glSetFenceNVFn);
1769 debug_fn.glShaderBinaryFn = 0;
1770 if (ver->IsAtLeastGL(4u, 1u) || ver->is_es) {
1771 fn.glShaderBinaryFn = reinterpret_cast<glShaderBinaryProc>(
1772 GetGLProcAddress("glShaderBinary"));
1773 DCHECK(fn.glShaderBinaryFn);
1776 debug_fn.glTestFenceAPPLEFn = 0;
1777 if (ext.b_GL_APPLE_fence) {
1778 fn.glTestFenceAPPLEFn = reinterpret_cast<glTestFenceAPPLEProc>(
1779 GetGLProcAddress("glTestFenceAPPLE"));
1780 DCHECK(fn.glTestFenceAPPLEFn);
1783 debug_fn.glTestFenceNVFn = 0;
1784 if (ext.b_GL_NV_fence) {
1785 fn.glTestFenceNVFn =
1786 reinterpret_cast<glTestFenceNVProc>(GetGLProcAddress("glTestFenceNV"));
1787 DCHECK(fn.glTestFenceNVFn);
1790 debug_fn.glTexImage3DFn = 0;
1791 if (!ver->is_es || ver->IsAtLeastGLES(3u, 0u)) {
1792 fn.glTexImage3DFn =
1793 reinterpret_cast<glTexImage3DProc>(GetGLProcAddress("glTexImage3D"));
1794 DCHECK(fn.glTexImage3DFn);
1797 debug_fn.glTexStorage2DEXTFn = 0;
1798 if (ver->IsAtLeastGL(4u, 2u) || ver->IsAtLeastGLES(3u, 0u) ||
1799 ext.b_GL_ARB_texture_storage) {
1800 fn.glTexStorage2DEXTFn = reinterpret_cast<glTexStorage2DEXTProc>(
1801 GetGLProcAddress("glTexStorage2D"));
1802 DCHECK(fn.glTexStorage2DEXTFn);
1803 } else if (ext.b_GL_EXT_texture_storage) {
1804 fn.glTexStorage2DEXTFn = reinterpret_cast<glTexStorage2DEXTProc>(
1805 GetGLProcAddress("glTexStorage2DEXT"));
1806 DCHECK(fn.glTexStorage2DEXTFn);
1809 debug_fn.glTexStorage3DFn = 0;
1810 if (ver->IsAtLeastGL(4u, 2u) || ver->IsAtLeastGLES(3u, 0u)) {
1811 fn.glTexStorage3DFn = reinterpret_cast<glTexStorage3DProc>(
1812 GetGLProcAddress("glTexStorage3D"));
1813 DCHECK(fn.glTexStorage3DFn);
1816 debug_fn.glTransformFeedbackVaryingsFn = 0;
1817 if (ver->IsAtLeastGL(3u, 0u) || ver->IsAtLeastGLES(3u, 0u)) {
1818 fn.glTransformFeedbackVaryingsFn =
1819 reinterpret_cast<glTransformFeedbackVaryingsProc>(
1820 GetGLProcAddress("glTransformFeedbackVaryings"));
1821 DCHECK(fn.glTransformFeedbackVaryingsFn);
1824 debug_fn.glUniform1uiFn = 0;
1825 if (ver->IsAtLeastGL(3u, 0u) || ver->IsAtLeastGLES(3u, 0u)) {
1826 fn.glUniform1uiFn =
1827 reinterpret_cast<glUniform1uiProc>(GetGLProcAddress("glUniform1ui"));
1828 DCHECK(fn.glUniform1uiFn);
1831 debug_fn.glUniform1uivFn = 0;
1832 if (ver->IsAtLeastGL(3u, 0u) || ver->IsAtLeastGLES(3u, 0u)) {
1833 fn.glUniform1uivFn =
1834 reinterpret_cast<glUniform1uivProc>(GetGLProcAddress("glUniform1uiv"));
1835 DCHECK(fn.glUniform1uivFn);
1838 debug_fn.glUniform2uiFn = 0;
1839 if (ver->IsAtLeastGL(3u, 0u) || ver->IsAtLeastGLES(3u, 0u)) {
1840 fn.glUniform2uiFn =
1841 reinterpret_cast<glUniform2uiProc>(GetGLProcAddress("glUniform2ui"));
1842 DCHECK(fn.glUniform2uiFn);
1845 debug_fn.glUniform2uivFn = 0;
1846 if (ver->IsAtLeastGL(3u, 0u) || ver->IsAtLeastGLES(3u, 0u)) {
1847 fn.glUniform2uivFn =
1848 reinterpret_cast<glUniform2uivProc>(GetGLProcAddress("glUniform2uiv"));
1849 DCHECK(fn.glUniform2uivFn);
1852 debug_fn.glUniform3uiFn = 0;
1853 if (ver->IsAtLeastGL(3u, 0u) || ver->IsAtLeastGLES(3u, 0u)) {
1854 fn.glUniform3uiFn =
1855 reinterpret_cast<glUniform3uiProc>(GetGLProcAddress("glUniform3ui"));
1856 DCHECK(fn.glUniform3uiFn);
1859 debug_fn.glUniform3uivFn = 0;
1860 if (ver->IsAtLeastGL(3u, 0u) || ver->IsAtLeastGLES(3u, 0u)) {
1861 fn.glUniform3uivFn =
1862 reinterpret_cast<glUniform3uivProc>(GetGLProcAddress("glUniform3uiv"));
1863 DCHECK(fn.glUniform3uivFn);
1866 debug_fn.glUniform4uiFn = 0;
1867 if (ver->IsAtLeastGL(3u, 0u) || ver->IsAtLeastGLES(3u, 0u)) {
1868 fn.glUniform4uiFn =
1869 reinterpret_cast<glUniform4uiProc>(GetGLProcAddress("glUniform4ui"));
1870 DCHECK(fn.glUniform4uiFn);
1873 debug_fn.glUniform4uivFn = 0;
1874 if (ver->IsAtLeastGL(3u, 0u) || ver->IsAtLeastGLES(3u, 0u)) {
1875 fn.glUniform4uivFn =
1876 reinterpret_cast<glUniform4uivProc>(GetGLProcAddress("glUniform4uiv"));
1877 DCHECK(fn.glUniform4uivFn);
1880 debug_fn.glUniformBlockBindingFn = 0;
1881 if (ver->IsAtLeastGLES(3u, 0u) || ver->IsAtLeastGL(3u, 1u)) {
1882 fn.glUniformBlockBindingFn = reinterpret_cast<glUniformBlockBindingProc>(
1883 GetGLProcAddress("glUniformBlockBinding"));
1884 DCHECK(fn.glUniformBlockBindingFn);
1887 debug_fn.glUniformMatrix2x3fvFn = 0;
1888 if (!ver->is_es || ver->IsAtLeastGLES(3u, 0u)) {
1889 fn.glUniformMatrix2x3fvFn = reinterpret_cast<glUniformMatrix2x3fvProc>(
1890 GetGLProcAddress("glUniformMatrix2x3fv"));
1891 DCHECK(fn.glUniformMatrix2x3fvFn);
1894 debug_fn.glUniformMatrix2x4fvFn = 0;
1895 if (!ver->is_es || ver->IsAtLeastGLES(3u, 0u)) {
1896 fn.glUniformMatrix2x4fvFn = reinterpret_cast<glUniformMatrix2x4fvProc>(
1897 GetGLProcAddress("glUniformMatrix2x4fv"));
1898 DCHECK(fn.glUniformMatrix2x4fvFn);
1901 debug_fn.glUniformMatrix3x2fvFn = 0;
1902 if (!ver->is_es || ver->IsAtLeastGLES(3u, 0u)) {
1903 fn.glUniformMatrix3x2fvFn = reinterpret_cast<glUniformMatrix3x2fvProc>(
1904 GetGLProcAddress("glUniformMatrix3x2fv"));
1905 DCHECK(fn.glUniformMatrix3x2fvFn);
1908 debug_fn.glUniformMatrix3x4fvFn = 0;
1909 if (!ver->is_es || ver->IsAtLeastGLES(3u, 0u)) {
1910 fn.glUniformMatrix3x4fvFn = reinterpret_cast<glUniformMatrix3x4fvProc>(
1911 GetGLProcAddress("glUniformMatrix3x4fv"));
1912 DCHECK(fn.glUniformMatrix3x4fvFn);
1915 debug_fn.glUniformMatrix4x2fvFn = 0;
1916 if (!ver->is_es || ver->IsAtLeastGLES(3u, 0u)) {
1917 fn.glUniformMatrix4x2fvFn = reinterpret_cast<glUniformMatrix4x2fvProc>(
1918 GetGLProcAddress("glUniformMatrix4x2fv"));
1919 DCHECK(fn.glUniformMatrix4x2fvFn);
1922 debug_fn.glUniformMatrix4x3fvFn = 0;
1923 if (!ver->is_es || ver->IsAtLeastGLES(3u, 0u)) {
1924 fn.glUniformMatrix4x3fvFn = reinterpret_cast<glUniformMatrix4x3fvProc>(
1925 GetGLProcAddress("glUniformMatrix4x3fv"));
1926 DCHECK(fn.glUniformMatrix4x3fvFn);
1929 debug_fn.glUnmapBufferFn = 0;
1930 if (!ver->is_es || ver->IsAtLeastGLES(3u, 0u)) {
1931 fn.glUnmapBufferFn =
1932 reinterpret_cast<glUnmapBufferProc>(GetGLProcAddress("glUnmapBuffer"));
1933 DCHECK(fn.glUnmapBufferFn);
1934 } else if (ext.b_GL_OES_mapbuffer) {
1935 fn.glUnmapBufferFn = reinterpret_cast<glUnmapBufferProc>(
1936 GetGLProcAddress("glUnmapBufferOES"));
1937 DCHECK(fn.glUnmapBufferFn);
1940 debug_fn.glVertexAttribDivisorANGLEFn = 0;
1941 if (ver->IsAtLeastGL(3u, 3u) || ver->IsAtLeastGLES(3u, 0u)) {
1942 fn.glVertexAttribDivisorANGLEFn =
1943 reinterpret_cast<glVertexAttribDivisorANGLEProc>(
1944 GetGLProcAddress("glVertexAttribDivisor"));
1945 DCHECK(fn.glVertexAttribDivisorANGLEFn);
1946 } else if (ext.b_GL_ARB_instanced_arrays) {
1947 fn.glVertexAttribDivisorANGLEFn =
1948 reinterpret_cast<glVertexAttribDivisorANGLEProc>(
1949 GetGLProcAddress("glVertexAttribDivisorARB"));
1950 DCHECK(fn.glVertexAttribDivisorANGLEFn);
1951 } else if (ext.b_GL_ANGLE_instanced_arrays) {
1952 fn.glVertexAttribDivisorANGLEFn =
1953 reinterpret_cast<glVertexAttribDivisorANGLEProc>(
1954 GetGLProcAddress("glVertexAttribDivisorANGLE"));
1955 DCHECK(fn.glVertexAttribDivisorANGLEFn);
1958 debug_fn.glVertexAttribI4iFn = 0;
1959 if (ver->IsAtLeastGL(3u, 0u) || ver->IsAtLeastGLES(3u, 0u)) {
1960 fn.glVertexAttribI4iFn = reinterpret_cast<glVertexAttribI4iProc>(
1961 GetGLProcAddress("glVertexAttribI4i"));
1962 DCHECK(fn.glVertexAttribI4iFn);
1965 debug_fn.glVertexAttribI4ivFn = 0;
1966 if (ver->IsAtLeastGL(3u, 0u) || ver->IsAtLeastGLES(3u, 0u)) {
1967 fn.glVertexAttribI4ivFn = reinterpret_cast<glVertexAttribI4ivProc>(
1968 GetGLProcAddress("glVertexAttribI4iv"));
1969 DCHECK(fn.glVertexAttribI4ivFn);
1972 debug_fn.glVertexAttribI4uiFn = 0;
1973 if (ver->IsAtLeastGL(3u, 0u) || ver->IsAtLeastGLES(3u, 0u)) {
1974 fn.glVertexAttribI4uiFn = reinterpret_cast<glVertexAttribI4uiProc>(
1975 GetGLProcAddress("glVertexAttribI4ui"));
1976 DCHECK(fn.glVertexAttribI4uiFn);
1979 debug_fn.glVertexAttribI4uivFn = 0;
1980 if (ver->IsAtLeastGL(3u, 0u) || ver->IsAtLeastGLES(3u, 0u)) {
1981 fn.glVertexAttribI4uivFn = reinterpret_cast<glVertexAttribI4uivProc>(
1982 GetGLProcAddress("glVertexAttribI4uiv"));
1983 DCHECK(fn.glVertexAttribI4uivFn);
1986 debug_fn.glVertexAttribIPointerFn = 0;
1987 if (ver->IsAtLeastGL(3u, 0u) || ver->IsAtLeastGLES(3u, 0u)) {
1988 fn.glVertexAttribIPointerFn = reinterpret_cast<glVertexAttribIPointerProc>(
1989 GetGLProcAddress("glVertexAttribIPointer"));
1990 DCHECK(fn.glVertexAttribIPointerFn);
1993 debug_fn.glWaitSyncFn = 0;
1994 if (ver->IsAtLeastGL(3u, 2u) || ver->IsAtLeastGLES(3u, 0u) ||
1995 ext.b_GL_ARB_sync) {
1996 fn.glWaitSyncFn =
1997 reinterpret_cast<glWaitSyncProc>(GetGLProcAddress("glWaitSync"));
1998 DCHECK(fn.glWaitSyncFn);
2001 if (g_debugBindingsInitialized)
2002 InitializeDebugBindings();
2005 extern "C" {
2007 static void GL_BINDING_CALL Debug_glActiveTexture(GLenum texture) {
2008 GL_SERVICE_LOG("glActiveTexture"
2009 << "(" << GLEnums::GetStringEnum(texture) << ")");
2010 g_driver_gl.debug_fn.glActiveTextureFn(texture);
2013 static void GL_BINDING_CALL
2014 Debug_glAttachShader(GLuint program, GLuint shader) {
2015 GL_SERVICE_LOG("glAttachShader"
2016 << "(" << program << ", " << shader << ")");
2017 g_driver_gl.debug_fn.glAttachShaderFn(program, shader);
2020 static void GL_BINDING_CALL Debug_glBeginQuery(GLenum target, GLuint id) {
2021 GL_SERVICE_LOG("glBeginQuery"
2022 << "(" << GLEnums::GetStringEnum(target) << ", " << id << ")");
2023 g_driver_gl.debug_fn.glBeginQueryFn(target, id);
2026 static void GL_BINDING_CALL Debug_glBeginQueryARB(GLenum target, GLuint id) {
2027 GL_SERVICE_LOG("glBeginQueryARB"
2028 << "(" << GLEnums::GetStringEnum(target) << ", " << id << ")");
2029 g_driver_gl.debug_fn.glBeginQueryARBFn(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_glCopyBufferSubData(GLenum readTarget,
2426 GLenum writeTarget,
2427 GLintptr readOffset,
2428 GLintptr writeOffset,
2429 GLsizeiptr size) {
2430 GL_SERVICE_LOG("glCopyBufferSubData"
2431 << "(" << GLEnums::GetStringEnum(readTarget) << ", "
2432 << GLEnums::GetStringEnum(writeTarget) << ", " << readOffset
2433 << ", " << writeOffset << ", " << size << ")");
2434 g_driver_gl.debug_fn.glCopyBufferSubDataFn(readTarget, writeTarget,
2435 readOffset, writeOffset, size);
2438 static void GL_BINDING_CALL Debug_glCopyTexImage2D(GLenum target,
2439 GLint level,
2440 GLenum internalformat,
2441 GLint x,
2442 GLint y,
2443 GLsizei width,
2444 GLsizei height,
2445 GLint border) {
2446 GL_SERVICE_LOG("glCopyTexImage2D"
2447 << "(" << GLEnums::GetStringEnum(target) << ", " << level
2448 << ", " << GLEnums::GetStringEnum(internalformat) << ", " << x
2449 << ", " << y << ", " << width << ", " << height << ", "
2450 << border << ")");
2451 g_driver_gl.debug_fn.glCopyTexImage2DFn(target, level, internalformat, x, y,
2452 width, height, border);
2455 static void GL_BINDING_CALL Debug_glCopyTexSubImage2D(GLenum target,
2456 GLint level,
2457 GLint xoffset,
2458 GLint yoffset,
2459 GLint x,
2460 GLint y,
2461 GLsizei width,
2462 GLsizei height) {
2463 GL_SERVICE_LOG("glCopyTexSubImage2D"
2464 << "(" << GLEnums::GetStringEnum(target) << ", " << level
2465 << ", " << xoffset << ", " << yoffset << ", " << x << ", " << y
2466 << ", " << width << ", " << height << ")");
2467 g_driver_gl.debug_fn.glCopyTexSubImage2DFn(target, level, xoffset, yoffset, x,
2468 y, width, height);
2471 static void GL_BINDING_CALL Debug_glCopyTexSubImage3D(GLenum target,
2472 GLint level,
2473 GLint xoffset,
2474 GLint yoffset,
2475 GLint zoffset,
2476 GLint x,
2477 GLint y,
2478 GLsizei width,
2479 GLsizei height) {
2480 GL_SERVICE_LOG("glCopyTexSubImage3D"
2481 << "(" << GLEnums::GetStringEnum(target) << ", " << level
2482 << ", " << xoffset << ", " << yoffset << ", " << zoffset
2483 << ", " << x << ", " << y << ", " << width << ", " << height
2484 << ")");
2485 g_driver_gl.debug_fn.glCopyTexSubImage3DFn(target, level, xoffset, yoffset,
2486 zoffset, x, y, width, height);
2489 static GLuint GL_BINDING_CALL Debug_glCreateProgram(void) {
2490 GL_SERVICE_LOG("glCreateProgram"
2491 << "("
2492 << ")");
2493 GLuint result = g_driver_gl.debug_fn.glCreateProgramFn();
2494 GL_SERVICE_LOG("GL_RESULT: " << result);
2495 return result;
2498 static GLuint GL_BINDING_CALL Debug_glCreateShader(GLenum type) {
2499 GL_SERVICE_LOG("glCreateShader"
2500 << "(" << GLEnums::GetStringEnum(type) << ")");
2501 GLuint result = g_driver_gl.debug_fn.glCreateShaderFn(type);
2502 GL_SERVICE_LOG("GL_RESULT: " << result);
2503 return result;
2506 static void GL_BINDING_CALL Debug_glCullFace(GLenum mode) {
2507 GL_SERVICE_LOG("glCullFace"
2508 << "(" << GLEnums::GetStringEnum(mode) << ")");
2509 g_driver_gl.debug_fn.glCullFaceFn(mode);
2512 static void GL_BINDING_CALL
2513 Debug_glDeleteBuffersARB(GLsizei n, const GLuint* buffers) {
2514 GL_SERVICE_LOG("glDeleteBuffersARB"
2515 << "(" << n << ", " << static_cast<const void*>(buffers)
2516 << ")");
2517 g_driver_gl.debug_fn.glDeleteBuffersARBFn(n, buffers);
2520 static void GL_BINDING_CALL
2521 Debug_glDeleteFencesAPPLE(GLsizei n, const GLuint* fences) {
2522 GL_SERVICE_LOG("glDeleteFencesAPPLE"
2523 << "(" << n << ", " << static_cast<const void*>(fences)
2524 << ")");
2525 g_driver_gl.debug_fn.glDeleteFencesAPPLEFn(n, fences);
2528 static void GL_BINDING_CALL
2529 Debug_glDeleteFencesNV(GLsizei n, const GLuint* fences) {
2530 GL_SERVICE_LOG("glDeleteFencesNV"
2531 << "(" << n << ", " << static_cast<const void*>(fences)
2532 << ")");
2533 g_driver_gl.debug_fn.glDeleteFencesNVFn(n, fences);
2536 static void GL_BINDING_CALL
2537 Debug_glDeleteFramebuffersEXT(GLsizei n, const GLuint* framebuffers) {
2538 GL_SERVICE_LOG("glDeleteFramebuffersEXT"
2539 << "(" << n << ", " << static_cast<const void*>(framebuffers)
2540 << ")");
2541 g_driver_gl.debug_fn.glDeleteFramebuffersEXTFn(n, framebuffers);
2544 static void GL_BINDING_CALL Debug_glDeleteProgram(GLuint program) {
2545 GL_SERVICE_LOG("glDeleteProgram"
2546 << "(" << program << ")");
2547 g_driver_gl.debug_fn.glDeleteProgramFn(program);
2550 static void GL_BINDING_CALL
2551 Debug_glDeleteQueries(GLsizei n, const GLuint* ids) {
2552 GL_SERVICE_LOG("glDeleteQueries"
2553 << "(" << n << ", " << static_cast<const void*>(ids) << ")");
2554 g_driver_gl.debug_fn.glDeleteQueriesFn(n, ids);
2557 static void GL_BINDING_CALL
2558 Debug_glDeleteQueriesARB(GLsizei n, const GLuint* ids) {
2559 GL_SERVICE_LOG("glDeleteQueriesARB"
2560 << "(" << n << ", " << static_cast<const void*>(ids) << ")");
2561 g_driver_gl.debug_fn.glDeleteQueriesARBFn(n, ids);
2564 static void GL_BINDING_CALL
2565 Debug_glDeleteRenderbuffersEXT(GLsizei n, const GLuint* renderbuffers) {
2566 GL_SERVICE_LOG("glDeleteRenderbuffersEXT"
2567 << "(" << n << ", " << static_cast<const void*>(renderbuffers)
2568 << ")");
2569 g_driver_gl.debug_fn.glDeleteRenderbuffersEXTFn(n, renderbuffers);
2572 static void GL_BINDING_CALL
2573 Debug_glDeleteSamplers(GLsizei n, const GLuint* samplers) {
2574 GL_SERVICE_LOG("glDeleteSamplers"
2575 << "(" << n << ", " << static_cast<const void*>(samplers)
2576 << ")");
2577 g_driver_gl.debug_fn.glDeleteSamplersFn(n, samplers);
2580 static void GL_BINDING_CALL Debug_glDeleteShader(GLuint shader) {
2581 GL_SERVICE_LOG("glDeleteShader"
2582 << "(" << shader << ")");
2583 g_driver_gl.debug_fn.glDeleteShaderFn(shader);
2586 static void GL_BINDING_CALL Debug_glDeleteSync(GLsync sync) {
2587 GL_SERVICE_LOG("glDeleteSync"
2588 << "(" << sync << ")");
2589 g_driver_gl.debug_fn.glDeleteSyncFn(sync);
2592 static void GL_BINDING_CALL
2593 Debug_glDeleteTextures(GLsizei n, const GLuint* textures) {
2594 GL_SERVICE_LOG("glDeleteTextures"
2595 << "(" << n << ", " << static_cast<const void*>(textures)
2596 << ")");
2597 g_driver_gl.debug_fn.glDeleteTexturesFn(n, textures);
2600 static void GL_BINDING_CALL
2601 Debug_glDeleteTransformFeedbacks(GLsizei n, const GLuint* ids) {
2602 GL_SERVICE_LOG("glDeleteTransformFeedbacks"
2603 << "(" << n << ", " << static_cast<const void*>(ids) << ")");
2604 g_driver_gl.debug_fn.glDeleteTransformFeedbacksFn(n, ids);
2607 static void GL_BINDING_CALL
2608 Debug_glDeleteVertexArraysOES(GLsizei n, const GLuint* arrays) {
2609 GL_SERVICE_LOG("glDeleteVertexArraysOES"
2610 << "(" << n << ", " << static_cast<const void*>(arrays)
2611 << ")");
2612 g_driver_gl.debug_fn.glDeleteVertexArraysOESFn(n, arrays);
2615 static void GL_BINDING_CALL Debug_glDepthFunc(GLenum func) {
2616 GL_SERVICE_LOG("glDepthFunc"
2617 << "(" << GLEnums::GetStringEnum(func) << ")");
2618 g_driver_gl.debug_fn.glDepthFuncFn(func);
2621 static void GL_BINDING_CALL Debug_glDepthMask(GLboolean flag) {
2622 GL_SERVICE_LOG("glDepthMask"
2623 << "(" << GLEnums::GetStringBool(flag) << ")");
2624 g_driver_gl.debug_fn.glDepthMaskFn(flag);
2627 static void GL_BINDING_CALL Debug_glDepthRange(GLclampd zNear, GLclampd zFar) {
2628 GL_SERVICE_LOG("glDepthRange"
2629 << "(" << zNear << ", " << zFar << ")");
2630 g_driver_gl.debug_fn.glDepthRangeFn(zNear, zFar);
2633 static void GL_BINDING_CALL Debug_glDepthRangef(GLclampf zNear, GLclampf zFar) {
2634 GL_SERVICE_LOG("glDepthRangef"
2635 << "(" << zNear << ", " << zFar << ")");
2636 g_driver_gl.debug_fn.glDepthRangefFn(zNear, zFar);
2639 static void GL_BINDING_CALL
2640 Debug_glDetachShader(GLuint program, GLuint shader) {
2641 GL_SERVICE_LOG("glDetachShader"
2642 << "(" << program << ", " << shader << ")");
2643 g_driver_gl.debug_fn.glDetachShaderFn(program, shader);
2646 static void GL_BINDING_CALL Debug_glDisable(GLenum cap) {
2647 GL_SERVICE_LOG("glDisable"
2648 << "(" << GLEnums::GetStringEnum(cap) << ")");
2649 g_driver_gl.debug_fn.glDisableFn(cap);
2652 static void GL_BINDING_CALL Debug_glDisableVertexAttribArray(GLuint index) {
2653 GL_SERVICE_LOG("glDisableVertexAttribArray"
2654 << "(" << index << ")");
2655 g_driver_gl.debug_fn.glDisableVertexAttribArrayFn(index);
2658 static void GL_BINDING_CALL
2659 Debug_glDiscardFramebufferEXT(GLenum target,
2660 GLsizei numAttachments,
2661 const GLenum* attachments) {
2662 GL_SERVICE_LOG("glDiscardFramebufferEXT"
2663 << "(" << GLEnums::GetStringEnum(target) << ", "
2664 << numAttachments << ", "
2665 << static_cast<const void*>(attachments) << ")");
2666 g_driver_gl.debug_fn.glDiscardFramebufferEXTFn(target, numAttachments,
2667 attachments);
2670 static void GL_BINDING_CALL
2671 Debug_glDrawArrays(GLenum mode, GLint first, GLsizei count) {
2672 GL_SERVICE_LOG("glDrawArrays"
2673 << "(" << GLEnums::GetStringEnum(mode) << ", " << first << ", "
2674 << count << ")");
2675 g_driver_gl.debug_fn.glDrawArraysFn(mode, first, count);
2678 static void GL_BINDING_CALL
2679 Debug_glDrawArraysInstancedANGLE(GLenum mode,
2680 GLint first,
2681 GLsizei count,
2682 GLsizei primcount) {
2683 GL_SERVICE_LOG("glDrawArraysInstancedANGLE"
2684 << "(" << GLEnums::GetStringEnum(mode) << ", " << first << ", "
2685 << count << ", " << primcount << ")");
2686 g_driver_gl.debug_fn.glDrawArraysInstancedANGLEFn(mode, first, count,
2687 primcount);
2690 static void GL_BINDING_CALL Debug_glDrawBuffer(GLenum mode) {
2691 GL_SERVICE_LOG("glDrawBuffer"
2692 << "(" << GLEnums::GetStringEnum(mode) << ")");
2693 g_driver_gl.debug_fn.glDrawBufferFn(mode);
2696 static void GL_BINDING_CALL
2697 Debug_glDrawBuffersARB(GLsizei n, const GLenum* bufs) {
2698 GL_SERVICE_LOG("glDrawBuffersARB"
2699 << "(" << n << ", " << static_cast<const void*>(bufs) << ")");
2700 g_driver_gl.debug_fn.glDrawBuffersARBFn(n, bufs);
2703 static void GL_BINDING_CALL Debug_glDrawElements(GLenum mode,
2704 GLsizei count,
2705 GLenum type,
2706 const void* indices) {
2707 GL_SERVICE_LOG("glDrawElements"
2708 << "(" << GLEnums::GetStringEnum(mode) << ", " << count << ", "
2709 << GLEnums::GetStringEnum(type) << ", "
2710 << static_cast<const void*>(indices) << ")");
2711 g_driver_gl.debug_fn.glDrawElementsFn(mode, count, type, indices);
2714 static void GL_BINDING_CALL
2715 Debug_glDrawElementsInstancedANGLE(GLenum mode,
2716 GLsizei count,
2717 GLenum type,
2718 const void* indices,
2719 GLsizei primcount) {
2720 GL_SERVICE_LOG("glDrawElementsInstancedANGLE"
2721 << "(" << GLEnums::GetStringEnum(mode) << ", " << count << ", "
2722 << GLEnums::GetStringEnum(type) << ", "
2723 << static_cast<const void*>(indices) << ", " << primcount
2724 << ")");
2725 g_driver_gl.debug_fn.glDrawElementsInstancedANGLEFn(mode, count, type,
2726 indices, primcount);
2729 static void GL_BINDING_CALL Debug_glDrawRangeElements(GLenum mode,
2730 GLuint start,
2731 GLuint end,
2732 GLsizei count,
2733 GLenum type,
2734 const void* indices) {
2735 GL_SERVICE_LOG("glDrawRangeElements"
2736 << "(" << GLEnums::GetStringEnum(mode) << ", " << start << ", "
2737 << end << ", " << count << ", " << GLEnums::GetStringEnum(type)
2738 << ", " << static_cast<const void*>(indices) << ")");
2739 g_driver_gl.debug_fn.glDrawRangeElementsFn(mode, start, end, count, type,
2740 indices);
2743 static void GL_BINDING_CALL
2744 Debug_glEGLImageTargetRenderbufferStorageOES(GLenum target,
2745 GLeglImageOES image) {
2746 GL_SERVICE_LOG("glEGLImageTargetRenderbufferStorageOES"
2747 << "(" << GLEnums::GetStringEnum(target) << ", " << image
2748 << ")");
2749 g_driver_gl.debug_fn.glEGLImageTargetRenderbufferStorageOESFn(target, image);
2752 static void GL_BINDING_CALL
2753 Debug_glEGLImageTargetTexture2DOES(GLenum target, GLeglImageOES image) {
2754 GL_SERVICE_LOG("glEGLImageTargetTexture2DOES"
2755 << "(" << GLEnums::GetStringEnum(target) << ", " << image
2756 << ")");
2757 g_driver_gl.debug_fn.glEGLImageTargetTexture2DOESFn(target, image);
2760 static void GL_BINDING_CALL Debug_glEnable(GLenum cap) {
2761 GL_SERVICE_LOG("glEnable"
2762 << "(" << GLEnums::GetStringEnum(cap) << ")");
2763 g_driver_gl.debug_fn.glEnableFn(cap);
2766 static void GL_BINDING_CALL Debug_glEnableVertexAttribArray(GLuint index) {
2767 GL_SERVICE_LOG("glEnableVertexAttribArray"
2768 << "(" << index << ")");
2769 g_driver_gl.debug_fn.glEnableVertexAttribArrayFn(index);
2772 static void GL_BINDING_CALL Debug_glEndQuery(GLenum target) {
2773 GL_SERVICE_LOG("glEndQuery"
2774 << "(" << GLEnums::GetStringEnum(target) << ")");
2775 g_driver_gl.debug_fn.glEndQueryFn(target);
2778 static void GL_BINDING_CALL Debug_glEndQueryARB(GLenum target) {
2779 GL_SERVICE_LOG("glEndQueryARB"
2780 << "(" << GLEnums::GetStringEnum(target) << ")");
2781 g_driver_gl.debug_fn.glEndQueryARBFn(target);
2784 static void GL_BINDING_CALL Debug_glEndTransformFeedback(void) {
2785 GL_SERVICE_LOG("glEndTransformFeedback"
2786 << "("
2787 << ")");
2788 g_driver_gl.debug_fn.glEndTransformFeedbackFn();
2791 static GLsync GL_BINDING_CALL
2792 Debug_glFenceSync(GLenum condition, GLbitfield flags) {
2793 GL_SERVICE_LOG("glFenceSync"
2794 << "(" << GLEnums::GetStringEnum(condition) << ", " << flags
2795 << ")");
2796 GLsync result = g_driver_gl.debug_fn.glFenceSyncFn(condition, flags);
2797 GL_SERVICE_LOG("GL_RESULT: " << result);
2798 return result;
2801 static void GL_BINDING_CALL Debug_glFinish(void) {
2802 GL_SERVICE_LOG("glFinish"
2803 << "("
2804 << ")");
2805 g_driver_gl.debug_fn.glFinishFn();
2808 static void GL_BINDING_CALL Debug_glFinishFenceAPPLE(GLuint fence) {
2809 GL_SERVICE_LOG("glFinishFenceAPPLE"
2810 << "(" << fence << ")");
2811 g_driver_gl.debug_fn.glFinishFenceAPPLEFn(fence);
2814 static void GL_BINDING_CALL Debug_glFinishFenceNV(GLuint fence) {
2815 GL_SERVICE_LOG("glFinishFenceNV"
2816 << "(" << fence << ")");
2817 g_driver_gl.debug_fn.glFinishFenceNVFn(fence);
2820 static void GL_BINDING_CALL Debug_glFlush(void) {
2821 GL_SERVICE_LOG("glFlush"
2822 << "("
2823 << ")");
2824 g_driver_gl.debug_fn.glFlushFn();
2827 static void GL_BINDING_CALL Debug_glFlushMappedBufferRange(GLenum target,
2828 GLintptr offset,
2829 GLsizeiptr length) {
2830 GL_SERVICE_LOG("glFlushMappedBufferRange"
2831 << "(" << GLEnums::GetStringEnum(target) << ", " << offset
2832 << ", " << length << ")");
2833 g_driver_gl.debug_fn.glFlushMappedBufferRangeFn(target, offset, length);
2836 static void GL_BINDING_CALL
2837 Debug_glFramebufferRenderbufferEXT(GLenum target,
2838 GLenum attachment,
2839 GLenum renderbuffertarget,
2840 GLuint renderbuffer) {
2841 GL_SERVICE_LOG("glFramebufferRenderbufferEXT"
2842 << "(" << GLEnums::GetStringEnum(target) << ", "
2843 << GLEnums::GetStringEnum(attachment) << ", "
2844 << GLEnums::GetStringEnum(renderbuffertarget) << ", "
2845 << renderbuffer << ")");
2846 g_driver_gl.debug_fn.glFramebufferRenderbufferEXTFn(
2847 target, attachment, renderbuffertarget, renderbuffer);
2850 static void GL_BINDING_CALL Debug_glFramebufferTexture2DEXT(GLenum target,
2851 GLenum attachment,
2852 GLenum textarget,
2853 GLuint texture,
2854 GLint level) {
2855 GL_SERVICE_LOG("glFramebufferTexture2DEXT"
2856 << "(" << GLEnums::GetStringEnum(target) << ", "
2857 << GLEnums::GetStringEnum(attachment) << ", "
2858 << GLEnums::GetStringEnum(textarget) << ", " << texture << ", "
2859 << level << ")");
2860 g_driver_gl.debug_fn.glFramebufferTexture2DEXTFn(target, attachment,
2861 textarget, texture, level);
2864 static void GL_BINDING_CALL
2865 Debug_glFramebufferTexture2DMultisampleEXT(GLenum target,
2866 GLenum attachment,
2867 GLenum textarget,
2868 GLuint texture,
2869 GLint level,
2870 GLsizei samples) {
2871 GL_SERVICE_LOG("glFramebufferTexture2DMultisampleEXT"
2872 << "(" << GLEnums::GetStringEnum(target) << ", "
2873 << GLEnums::GetStringEnum(attachment) << ", "
2874 << GLEnums::GetStringEnum(textarget) << ", " << texture << ", "
2875 << level << ", " << samples << ")");
2876 g_driver_gl.debug_fn.glFramebufferTexture2DMultisampleEXTFn(
2877 target, attachment, textarget, texture, level, samples);
2880 static void GL_BINDING_CALL
2881 Debug_glFramebufferTexture2DMultisampleIMG(GLenum target,
2882 GLenum attachment,
2883 GLenum textarget,
2884 GLuint texture,
2885 GLint level,
2886 GLsizei samples) {
2887 GL_SERVICE_LOG("glFramebufferTexture2DMultisampleIMG"
2888 << "(" << GLEnums::GetStringEnum(target) << ", "
2889 << GLEnums::GetStringEnum(attachment) << ", "
2890 << GLEnums::GetStringEnum(textarget) << ", " << texture << ", "
2891 << level << ", " << samples << ")");
2892 g_driver_gl.debug_fn.glFramebufferTexture2DMultisampleIMGFn(
2893 target, attachment, textarget, texture, level, samples);
2896 static void GL_BINDING_CALL Debug_glFramebufferTextureLayer(GLenum target,
2897 GLenum attachment,
2898 GLuint texture,
2899 GLint level,
2900 GLint layer) {
2901 GL_SERVICE_LOG("glFramebufferTextureLayer"
2902 << "(" << GLEnums::GetStringEnum(target) << ", "
2903 << GLEnums::GetStringEnum(attachment) << ", " << texture
2904 << ", " << level << ", " << layer << ")");
2905 g_driver_gl.debug_fn.glFramebufferTextureLayerFn(target, attachment, texture,
2906 level, layer);
2909 static void GL_BINDING_CALL Debug_glFrontFace(GLenum mode) {
2910 GL_SERVICE_LOG("glFrontFace"
2911 << "(" << GLEnums::GetStringEnum(mode) << ")");
2912 g_driver_gl.debug_fn.glFrontFaceFn(mode);
2915 static void GL_BINDING_CALL Debug_glGenBuffersARB(GLsizei n, GLuint* buffers) {
2916 GL_SERVICE_LOG("glGenBuffersARB"
2917 << "(" << n << ", " << static_cast<const void*>(buffers)
2918 << ")");
2919 g_driver_gl.debug_fn.glGenBuffersARBFn(n, buffers);
2922 static void GL_BINDING_CALL Debug_glGenerateMipmapEXT(GLenum target) {
2923 GL_SERVICE_LOG("glGenerateMipmapEXT"
2924 << "(" << GLEnums::GetStringEnum(target) << ")");
2925 g_driver_gl.debug_fn.glGenerateMipmapEXTFn(target);
2928 static void GL_BINDING_CALL Debug_glGenFencesAPPLE(GLsizei n, GLuint* fences) {
2929 GL_SERVICE_LOG("glGenFencesAPPLE"
2930 << "(" << n << ", " << static_cast<const void*>(fences)
2931 << ")");
2932 g_driver_gl.debug_fn.glGenFencesAPPLEFn(n, fences);
2935 static void GL_BINDING_CALL Debug_glGenFencesNV(GLsizei n, GLuint* fences) {
2936 GL_SERVICE_LOG("glGenFencesNV"
2937 << "(" << n << ", " << static_cast<const void*>(fences)
2938 << ")");
2939 g_driver_gl.debug_fn.glGenFencesNVFn(n, fences);
2942 static void GL_BINDING_CALL
2943 Debug_glGenFramebuffersEXT(GLsizei n, GLuint* framebuffers) {
2944 GL_SERVICE_LOG("glGenFramebuffersEXT"
2945 << "(" << n << ", " << static_cast<const void*>(framebuffers)
2946 << ")");
2947 g_driver_gl.debug_fn.glGenFramebuffersEXTFn(n, framebuffers);
2950 static void GL_BINDING_CALL Debug_glGenQueries(GLsizei n, GLuint* ids) {
2951 GL_SERVICE_LOG("glGenQueries"
2952 << "(" << n << ", " << static_cast<const void*>(ids) << ")");
2953 g_driver_gl.debug_fn.glGenQueriesFn(n, ids);
2956 static void GL_BINDING_CALL Debug_glGenQueriesARB(GLsizei n, GLuint* ids) {
2957 GL_SERVICE_LOG("glGenQueriesARB"
2958 << "(" << n << ", " << static_cast<const void*>(ids) << ")");
2959 g_driver_gl.debug_fn.glGenQueriesARBFn(n, ids);
2962 static void GL_BINDING_CALL
2963 Debug_glGenRenderbuffersEXT(GLsizei n, GLuint* renderbuffers) {
2964 GL_SERVICE_LOG("glGenRenderbuffersEXT"
2965 << "(" << n << ", " << static_cast<const void*>(renderbuffers)
2966 << ")");
2967 g_driver_gl.debug_fn.glGenRenderbuffersEXTFn(n, renderbuffers);
2970 static void GL_BINDING_CALL Debug_glGenSamplers(GLsizei n, GLuint* samplers) {
2971 GL_SERVICE_LOG("glGenSamplers"
2972 << "(" << n << ", " << static_cast<const void*>(samplers)
2973 << ")");
2974 g_driver_gl.debug_fn.glGenSamplersFn(n, samplers);
2977 static void GL_BINDING_CALL Debug_glGenTextures(GLsizei n, GLuint* textures) {
2978 GL_SERVICE_LOG("glGenTextures"
2979 << "(" << n << ", " << static_cast<const void*>(textures)
2980 << ")");
2981 g_driver_gl.debug_fn.glGenTexturesFn(n, textures);
2984 static void GL_BINDING_CALL
2985 Debug_glGenTransformFeedbacks(GLsizei n, GLuint* ids) {
2986 GL_SERVICE_LOG("glGenTransformFeedbacks"
2987 << "(" << n << ", " << static_cast<const void*>(ids) << ")");
2988 g_driver_gl.debug_fn.glGenTransformFeedbacksFn(n, ids);
2991 static void GL_BINDING_CALL
2992 Debug_glGenVertexArraysOES(GLsizei n, GLuint* arrays) {
2993 GL_SERVICE_LOG("glGenVertexArraysOES"
2994 << "(" << n << ", " << static_cast<const void*>(arrays)
2995 << ")");
2996 g_driver_gl.debug_fn.glGenVertexArraysOESFn(n, arrays);
2999 static void GL_BINDING_CALL Debug_glGetActiveAttrib(GLuint program,
3000 GLuint index,
3001 GLsizei bufsize,
3002 GLsizei* length,
3003 GLint* size,
3004 GLenum* type,
3005 char* name) {
3006 GL_SERVICE_LOG("glGetActiveAttrib"
3007 << "(" << program << ", " << index << ", " << bufsize << ", "
3008 << static_cast<const void*>(length) << ", "
3009 << static_cast<const void*>(size) << ", "
3010 << static_cast<const void*>(type) << ", "
3011 << static_cast<const void*>(name) << ")");
3012 g_driver_gl.debug_fn.glGetActiveAttribFn(program, index, bufsize, length,
3013 size, type, name);
3016 static void GL_BINDING_CALL Debug_glGetActiveUniform(GLuint program,
3017 GLuint index,
3018 GLsizei bufsize,
3019 GLsizei* length,
3020 GLint* size,
3021 GLenum* type,
3022 char* name) {
3023 GL_SERVICE_LOG("glGetActiveUniform"
3024 << "(" << program << ", " << index << ", " << bufsize << ", "
3025 << static_cast<const void*>(length) << ", "
3026 << static_cast<const void*>(size) << ", "
3027 << static_cast<const void*>(type) << ", "
3028 << static_cast<const void*>(name) << ")");
3029 g_driver_gl.debug_fn.glGetActiveUniformFn(program, index, bufsize, length,
3030 size, type, name);
3033 static void GL_BINDING_CALL
3034 Debug_glGetActiveUniformBlockiv(GLuint program,
3035 GLuint uniformBlockIndex,
3036 GLenum pname,
3037 GLint* params) {
3038 GL_SERVICE_LOG("glGetActiveUniformBlockiv"
3039 << "(" << program << ", " << uniformBlockIndex << ", "
3040 << GLEnums::GetStringEnum(pname) << ", "
3041 << static_cast<const void*>(params) << ")");
3042 g_driver_gl.debug_fn.glGetActiveUniformBlockivFn(program, uniformBlockIndex,
3043 pname, params);
3046 static void GL_BINDING_CALL
3047 Debug_glGetActiveUniformBlockName(GLuint program,
3048 GLuint uniformBlockIndex,
3049 GLsizei bufSize,
3050 GLsizei* length,
3051 char* uniformBlockName) {
3052 GL_SERVICE_LOG("glGetActiveUniformBlockName"
3053 << "(" << program << ", " << uniformBlockIndex << ", "
3054 << bufSize << ", " << static_cast<const void*>(length) << ", "
3055 << static_cast<const void*>(uniformBlockName) << ")");
3056 g_driver_gl.debug_fn.glGetActiveUniformBlockNameFn(
3057 program, uniformBlockIndex, bufSize, length, uniformBlockName);
3060 static void GL_BINDING_CALL
3061 Debug_glGetActiveUniformsiv(GLuint program,
3062 GLsizei uniformCount,
3063 const GLuint* uniformIndices,
3064 GLenum pname,
3065 GLint* params) {
3066 GL_SERVICE_LOG("glGetActiveUniformsiv"
3067 << "(" << program << ", " << uniformCount << ", "
3068 << static_cast<const void*>(uniformIndices) << ", "
3069 << GLEnums::GetStringEnum(pname) << ", "
3070 << static_cast<const void*>(params) << ")");
3071 g_driver_gl.debug_fn.glGetActiveUniformsivFn(program, uniformCount,
3072 uniformIndices, pname, params);
3075 static void GL_BINDING_CALL Debug_glGetAttachedShaders(GLuint program,
3076 GLsizei maxcount,
3077 GLsizei* count,
3078 GLuint* shaders) {
3079 GL_SERVICE_LOG("glGetAttachedShaders"
3080 << "(" << program << ", " << maxcount << ", "
3081 << static_cast<const void*>(count) << ", "
3082 << static_cast<const void*>(shaders) << ")");
3083 g_driver_gl.debug_fn.glGetAttachedShadersFn(program, maxcount, count,
3084 shaders);
3087 static GLint GL_BINDING_CALL
3088 Debug_glGetAttribLocation(GLuint program, const char* name) {
3089 GL_SERVICE_LOG("glGetAttribLocation"
3090 << "(" << program << ", " << name << ")");
3091 GLint result = g_driver_gl.debug_fn.glGetAttribLocationFn(program, name);
3092 GL_SERVICE_LOG("GL_RESULT: " << result);
3093 return result;
3096 static void GL_BINDING_CALL
3097 Debug_glGetBooleanv(GLenum pname, GLboolean* params) {
3098 GL_SERVICE_LOG("glGetBooleanv"
3099 << "(" << GLEnums::GetStringEnum(pname) << ", "
3100 << static_cast<const void*>(params) << ")");
3101 g_driver_gl.debug_fn.glGetBooleanvFn(pname, params);
3104 static void GL_BINDING_CALL
3105 Debug_glGetBufferParameteriv(GLenum target, GLenum pname, GLint* params) {
3106 GL_SERVICE_LOG("glGetBufferParameteriv"
3107 << "(" << GLEnums::GetStringEnum(target) << ", "
3108 << GLEnums::GetStringEnum(pname) << ", "
3109 << static_cast<const void*>(params) << ")");
3110 g_driver_gl.debug_fn.glGetBufferParameterivFn(target, pname, params);
3113 static GLenum GL_BINDING_CALL Debug_glGetError(void) {
3114 GL_SERVICE_LOG("glGetError"
3115 << "("
3116 << ")");
3117 GLenum result = g_driver_gl.debug_fn.glGetErrorFn();
3119 GL_SERVICE_LOG("GL_RESULT: " << GLEnums::GetStringError(result));
3121 return result;
3124 static void GL_BINDING_CALL
3125 Debug_glGetFenceivNV(GLuint fence, GLenum pname, GLint* params) {
3126 GL_SERVICE_LOG("glGetFenceivNV"
3127 << "(" << fence << ", " << GLEnums::GetStringEnum(pname)
3128 << ", " << static_cast<const void*>(params) << ")");
3129 g_driver_gl.debug_fn.glGetFenceivNVFn(fence, pname, params);
3132 static void GL_BINDING_CALL Debug_glGetFloatv(GLenum pname, GLfloat* params) {
3133 GL_SERVICE_LOG("glGetFloatv"
3134 << "(" << GLEnums::GetStringEnum(pname) << ", "
3135 << static_cast<const void*>(params) << ")");
3136 g_driver_gl.debug_fn.glGetFloatvFn(pname, params);
3139 static GLint GL_BINDING_CALL
3140 Debug_glGetFragDataLocation(GLuint program, const char* name) {
3141 GL_SERVICE_LOG("glGetFragDataLocation"
3142 << "(" << program << ", " << name << ")");
3143 GLint result = g_driver_gl.debug_fn.glGetFragDataLocationFn(program, name);
3144 GL_SERVICE_LOG("GL_RESULT: " << result);
3145 return result;
3148 static void GL_BINDING_CALL
3149 Debug_glGetFramebufferAttachmentParameterivEXT(GLenum target,
3150 GLenum attachment,
3151 GLenum pname,
3152 GLint* params) {
3153 GL_SERVICE_LOG("glGetFramebufferAttachmentParameterivEXT"
3154 << "(" << GLEnums::GetStringEnum(target) << ", "
3155 << GLEnums::GetStringEnum(attachment) << ", "
3156 << GLEnums::GetStringEnum(pname) << ", "
3157 << static_cast<const void*>(params) << ")");
3158 g_driver_gl.debug_fn.glGetFramebufferAttachmentParameterivEXTFn(
3159 target, attachment, pname, params);
3162 static GLenum GL_BINDING_CALL Debug_glGetGraphicsResetStatusARB(void) {
3163 GL_SERVICE_LOG("glGetGraphicsResetStatusARB"
3164 << "("
3165 << ")");
3166 GLenum result = g_driver_gl.debug_fn.glGetGraphicsResetStatusARBFn();
3167 GL_SERVICE_LOG("GL_RESULT: " << result);
3168 return result;
3171 static void GL_BINDING_CALL
3172 Debug_glGetInteger64i_v(GLenum target, GLuint index, GLint64* data) {
3173 GL_SERVICE_LOG("glGetInteger64i_v"
3174 << "(" << GLEnums::GetStringEnum(target) << ", " << index
3175 << ", " << static_cast<const void*>(data) << ")");
3176 g_driver_gl.debug_fn.glGetInteger64i_vFn(target, index, data);
3179 static void GL_BINDING_CALL
3180 Debug_glGetInteger64v(GLenum pname, GLint64* params) {
3181 GL_SERVICE_LOG("glGetInteger64v"
3182 << "(" << GLEnums::GetStringEnum(pname) << ", "
3183 << static_cast<const void*>(params) << ")");
3184 g_driver_gl.debug_fn.glGetInteger64vFn(pname, params);
3187 static void GL_BINDING_CALL
3188 Debug_glGetIntegeri_v(GLenum target, GLuint index, GLint* data) {
3189 GL_SERVICE_LOG("glGetIntegeri_v"
3190 << "(" << GLEnums::GetStringEnum(target) << ", " << index
3191 << ", " << static_cast<const void*>(data) << ")");
3192 g_driver_gl.debug_fn.glGetIntegeri_vFn(target, index, data);
3195 static void GL_BINDING_CALL Debug_glGetIntegerv(GLenum pname, GLint* params) {
3196 GL_SERVICE_LOG("glGetIntegerv"
3197 << "(" << GLEnums::GetStringEnum(pname) << ", "
3198 << static_cast<const void*>(params) << ")");
3199 g_driver_gl.debug_fn.glGetIntegervFn(pname, params);
3202 static void GL_BINDING_CALL Debug_glGetInternalformativ(GLenum target,
3203 GLenum internalformat,
3204 GLenum pname,
3205 GLsizei bufSize,
3206 GLint* params) {
3207 GL_SERVICE_LOG("glGetInternalformativ"
3208 << "(" << GLEnums::GetStringEnum(target) << ", "
3209 << GLEnums::GetStringEnum(internalformat) << ", "
3210 << GLEnums::GetStringEnum(pname) << ", " << bufSize << ", "
3211 << static_cast<const void*>(params) << ")");
3212 g_driver_gl.debug_fn.glGetInternalformativFn(target, internalformat, pname,
3213 bufSize, params);
3216 static void GL_BINDING_CALL Debug_glGetProgramBinary(GLuint program,
3217 GLsizei bufSize,
3218 GLsizei* length,
3219 GLenum* binaryFormat,
3220 GLvoid* binary) {
3221 GL_SERVICE_LOG("glGetProgramBinary"
3222 << "(" << program << ", " << bufSize << ", "
3223 << static_cast<const void*>(length) << ", "
3224 << static_cast<const void*>(binaryFormat) << ", "
3225 << static_cast<const void*>(binary) << ")");
3226 g_driver_gl.debug_fn.glGetProgramBinaryFn(program, bufSize, length,
3227 binaryFormat, binary);
3230 static void GL_BINDING_CALL Debug_glGetProgramInfoLog(GLuint program,
3231 GLsizei bufsize,
3232 GLsizei* length,
3233 char* infolog) {
3234 GL_SERVICE_LOG("glGetProgramInfoLog"
3235 << "(" << program << ", " << bufsize << ", "
3236 << static_cast<const void*>(length) << ", "
3237 << static_cast<const void*>(infolog) << ")");
3238 g_driver_gl.debug_fn.glGetProgramInfoLogFn(program, bufsize, length, infolog);
3241 static void GL_BINDING_CALL
3242 Debug_glGetProgramiv(GLuint program, GLenum pname, GLint* params) {
3243 GL_SERVICE_LOG("glGetProgramiv"
3244 << "(" << program << ", " << GLEnums::GetStringEnum(pname)
3245 << ", " << static_cast<const void*>(params) << ")");
3246 g_driver_gl.debug_fn.glGetProgramivFn(program, pname, params);
3249 static void GL_BINDING_CALL
3250 Debug_glGetQueryiv(GLenum target, GLenum pname, GLint* params) {
3251 GL_SERVICE_LOG("glGetQueryiv"
3252 << "(" << GLEnums::GetStringEnum(target) << ", "
3253 << GLEnums::GetStringEnum(pname) << ", "
3254 << static_cast<const void*>(params) << ")");
3255 g_driver_gl.debug_fn.glGetQueryivFn(target, pname, params);
3258 static void GL_BINDING_CALL
3259 Debug_glGetQueryivARB(GLenum target, GLenum pname, GLint* params) {
3260 GL_SERVICE_LOG("glGetQueryivARB"
3261 << "(" << GLEnums::GetStringEnum(target) << ", "
3262 << GLEnums::GetStringEnum(pname) << ", "
3263 << static_cast<const void*>(params) << ")");
3264 g_driver_gl.debug_fn.glGetQueryivARBFn(target, pname, params);
3267 static void GL_BINDING_CALL
3268 Debug_glGetQueryObjecti64v(GLuint id, GLenum pname, GLint64* params) {
3269 GL_SERVICE_LOG("glGetQueryObjecti64v"
3270 << "(" << id << ", " << GLEnums::GetStringEnum(pname) << ", "
3271 << static_cast<const void*>(params) << ")");
3272 g_driver_gl.debug_fn.glGetQueryObjecti64vFn(id, pname, params);
3275 static void GL_BINDING_CALL
3276 Debug_glGetQueryObjectiv(GLuint id, GLenum pname, GLint* params) {
3277 GL_SERVICE_LOG("glGetQueryObjectiv"
3278 << "(" << id << ", " << GLEnums::GetStringEnum(pname) << ", "
3279 << static_cast<const void*>(params) << ")");
3280 g_driver_gl.debug_fn.glGetQueryObjectivFn(id, pname, params);
3283 static void GL_BINDING_CALL
3284 Debug_glGetQueryObjectivARB(GLuint id, GLenum pname, GLint* params) {
3285 GL_SERVICE_LOG("glGetQueryObjectivARB"
3286 << "(" << id << ", " << GLEnums::GetStringEnum(pname) << ", "
3287 << static_cast<const void*>(params) << ")");
3288 g_driver_gl.debug_fn.glGetQueryObjectivARBFn(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_glGetQueryObjectuivARB(GLuint id, GLenum pname, GLuint* params) {
3309 GL_SERVICE_LOG("glGetQueryObjectuivARB"
3310 << "(" << id << ", " << GLEnums::GetStringEnum(pname) << ", "
3311 << static_cast<const void*>(params) << ")");
3312 g_driver_gl.debug_fn.glGetQueryObjectuivARBFn(id, pname, params);
3315 static void GL_BINDING_CALL
3316 Debug_glGetRenderbufferParameterivEXT(GLenum target,
3317 GLenum pname,
3318 GLint* params) {
3319 GL_SERVICE_LOG("glGetRenderbufferParameterivEXT"
3320 << "(" << GLEnums::GetStringEnum(target) << ", "
3321 << GLEnums::GetStringEnum(pname) << ", "
3322 << static_cast<const void*>(params) << ")");
3323 g_driver_gl.debug_fn.glGetRenderbufferParameterivEXTFn(target, pname, params);
3326 static void GL_BINDING_CALL
3327 Debug_glGetSamplerParameterfv(GLuint sampler, GLenum pname, GLfloat* params) {
3328 GL_SERVICE_LOG("glGetSamplerParameterfv"
3329 << "(" << sampler << ", " << GLEnums::GetStringEnum(pname)
3330 << ", " << static_cast<const void*>(params) << ")");
3331 g_driver_gl.debug_fn.glGetSamplerParameterfvFn(sampler, pname, params);
3334 static void GL_BINDING_CALL
3335 Debug_glGetSamplerParameteriv(GLuint sampler, GLenum pname, GLint* params) {
3336 GL_SERVICE_LOG("glGetSamplerParameteriv"
3337 << "(" << sampler << ", " << GLEnums::GetStringEnum(pname)
3338 << ", " << static_cast<const void*>(params) << ")");
3339 g_driver_gl.debug_fn.glGetSamplerParameterivFn(sampler, pname, params);
3342 static void GL_BINDING_CALL Debug_glGetShaderInfoLog(GLuint shader,
3343 GLsizei bufsize,
3344 GLsizei* length,
3345 char* infolog) {
3346 GL_SERVICE_LOG("glGetShaderInfoLog"
3347 << "(" << shader << ", " << bufsize << ", "
3348 << static_cast<const void*>(length) << ", "
3349 << static_cast<const void*>(infolog) << ")");
3350 g_driver_gl.debug_fn.glGetShaderInfoLogFn(shader, bufsize, length, infolog);
3353 static void GL_BINDING_CALL
3354 Debug_glGetShaderiv(GLuint shader, GLenum pname, GLint* params) {
3355 GL_SERVICE_LOG("glGetShaderiv"
3356 << "(" << shader << ", " << GLEnums::GetStringEnum(pname)
3357 << ", " << static_cast<const void*>(params) << ")");
3358 g_driver_gl.debug_fn.glGetShaderivFn(shader, pname, params);
3361 static void GL_BINDING_CALL
3362 Debug_glGetShaderPrecisionFormat(GLenum shadertype,
3363 GLenum precisiontype,
3364 GLint* range,
3365 GLint* precision) {
3366 GL_SERVICE_LOG("glGetShaderPrecisionFormat"
3367 << "(" << GLEnums::GetStringEnum(shadertype) << ", "
3368 << GLEnums::GetStringEnum(precisiontype) << ", "
3369 << static_cast<const void*>(range) << ", "
3370 << static_cast<const void*>(precision) << ")");
3371 g_driver_gl.debug_fn.glGetShaderPrecisionFormatFn(shadertype, precisiontype,
3372 range, precision);
3375 static void GL_BINDING_CALL Debug_glGetShaderSource(GLuint shader,
3376 GLsizei bufsize,
3377 GLsizei* length,
3378 char* source) {
3379 GL_SERVICE_LOG("glGetShaderSource"
3380 << "(" << shader << ", " << bufsize << ", "
3381 << static_cast<const void*>(length) << ", "
3382 << static_cast<const void*>(source) << ")");
3383 g_driver_gl.debug_fn.glGetShaderSourceFn(shader, bufsize, length, source);
3386 static const GLubyte* GL_BINDING_CALL Debug_glGetString(GLenum name) {
3387 GL_SERVICE_LOG("glGetString"
3388 << "(" << GLEnums::GetStringEnum(name) << ")");
3389 const GLubyte* result = g_driver_gl.debug_fn.glGetStringFn(name);
3390 GL_SERVICE_LOG("GL_RESULT: " << result);
3391 return result;
3394 static void GL_BINDING_CALL Debug_glGetSynciv(GLsync sync,
3395 GLenum pname,
3396 GLsizei bufSize,
3397 GLsizei* length,
3398 GLint* values) {
3399 GL_SERVICE_LOG("glGetSynciv"
3400 << "(" << sync << ", " << GLEnums::GetStringEnum(pname) << ", "
3401 << bufSize << ", " << static_cast<const void*>(length) << ", "
3402 << static_cast<const void*>(values) << ")");
3403 g_driver_gl.debug_fn.glGetSyncivFn(sync, pname, bufSize, length, values);
3406 static void GL_BINDING_CALL Debug_glGetTexLevelParameterfv(GLenum target,
3407 GLint level,
3408 GLenum pname,
3409 GLfloat* params) {
3410 GL_SERVICE_LOG("glGetTexLevelParameterfv"
3411 << "(" << GLEnums::GetStringEnum(target) << ", " << level
3412 << ", " << GLEnums::GetStringEnum(pname) << ", "
3413 << static_cast<const void*>(params) << ")");
3414 g_driver_gl.debug_fn.glGetTexLevelParameterfvFn(target, level, pname, params);
3417 static void GL_BINDING_CALL Debug_glGetTexLevelParameteriv(GLenum target,
3418 GLint level,
3419 GLenum pname,
3420 GLint* params) {
3421 GL_SERVICE_LOG("glGetTexLevelParameteriv"
3422 << "(" << GLEnums::GetStringEnum(target) << ", " << level
3423 << ", " << GLEnums::GetStringEnum(pname) << ", "
3424 << static_cast<const void*>(params) << ")");
3425 g_driver_gl.debug_fn.glGetTexLevelParameterivFn(target, level, pname, params);
3428 static void GL_BINDING_CALL
3429 Debug_glGetTexParameterfv(GLenum target, GLenum pname, GLfloat* params) {
3430 GL_SERVICE_LOG("glGetTexParameterfv"
3431 << "(" << GLEnums::GetStringEnum(target) << ", "
3432 << GLEnums::GetStringEnum(pname) << ", "
3433 << static_cast<const void*>(params) << ")");
3434 g_driver_gl.debug_fn.glGetTexParameterfvFn(target, pname, params);
3437 static void GL_BINDING_CALL
3438 Debug_glGetTexParameteriv(GLenum target, GLenum pname, GLint* params) {
3439 GL_SERVICE_LOG("glGetTexParameteriv"
3440 << "(" << GLEnums::GetStringEnum(target) << ", "
3441 << GLEnums::GetStringEnum(pname) << ", "
3442 << static_cast<const void*>(params) << ")");
3443 g_driver_gl.debug_fn.glGetTexParameterivFn(target, pname, params);
3446 static void GL_BINDING_CALL Debug_glGetTransformFeedbackVarying(GLuint program,
3447 GLuint index,
3448 GLsizei bufSize,
3449 GLsizei* length,
3450 GLenum* type,
3451 char* name) {
3452 GL_SERVICE_LOG("glGetTransformFeedbackVarying"
3453 << "(" << program << ", " << index << ", " << bufSize << ", "
3454 << static_cast<const void*>(length) << ", "
3455 << static_cast<const void*>(type) << ", "
3456 << static_cast<const void*>(name) << ")");
3457 g_driver_gl.debug_fn.glGetTransformFeedbackVaryingFn(program, index, bufSize,
3458 length, type, name);
3461 static void GL_BINDING_CALL
3462 Debug_glGetTranslatedShaderSourceANGLE(GLuint shader,
3463 GLsizei bufsize,
3464 GLsizei* length,
3465 char* source) {
3466 GL_SERVICE_LOG("glGetTranslatedShaderSourceANGLE"
3467 << "(" << shader << ", " << bufsize << ", "
3468 << static_cast<const void*>(length) << ", "
3469 << static_cast<const void*>(source) << ")");
3470 g_driver_gl.debug_fn.glGetTranslatedShaderSourceANGLEFn(shader, bufsize,
3471 length, source);
3474 static GLuint GL_BINDING_CALL
3475 Debug_glGetUniformBlockIndex(GLuint program, const char* uniformBlockName) {
3476 GL_SERVICE_LOG("glGetUniformBlockIndex"
3477 << "(" << program << ", " << uniformBlockName << ")");
3478 GLuint result =
3479 g_driver_gl.debug_fn.glGetUniformBlockIndexFn(program, uniformBlockName);
3480 GL_SERVICE_LOG("GL_RESULT: " << result);
3481 return result;
3484 static void GL_BINDING_CALL
3485 Debug_glGetUniformfv(GLuint program, GLint location, GLfloat* params) {
3486 GL_SERVICE_LOG("glGetUniformfv"
3487 << "(" << program << ", " << location << ", "
3488 << static_cast<const void*>(params) << ")");
3489 g_driver_gl.debug_fn.glGetUniformfvFn(program, location, params);
3492 static void GL_BINDING_CALL
3493 Debug_glGetUniformIndices(GLuint program,
3494 GLsizei uniformCount,
3495 const char* const* uniformNames,
3496 GLuint* uniformIndices) {
3497 GL_SERVICE_LOG("glGetUniformIndices"
3498 << "(" << program << ", " << uniformCount << ", "
3499 << static_cast<const void*>(uniformNames) << ", "
3500 << static_cast<const void*>(uniformIndices) << ")");
3501 g_driver_gl.debug_fn.glGetUniformIndicesFn(program, uniformCount,
3502 uniformNames, uniformIndices);
3505 static void GL_BINDING_CALL
3506 Debug_glGetUniformiv(GLuint program, GLint location, GLint* params) {
3507 GL_SERVICE_LOG("glGetUniformiv"
3508 << "(" << program << ", " << location << ", "
3509 << static_cast<const void*>(params) << ")");
3510 g_driver_gl.debug_fn.glGetUniformivFn(program, location, params);
3513 static GLint GL_BINDING_CALL
3514 Debug_glGetUniformLocation(GLuint program, const char* name) {
3515 GL_SERVICE_LOG("glGetUniformLocation"
3516 << "(" << program << ", " << name << ")");
3517 GLint result = g_driver_gl.debug_fn.glGetUniformLocationFn(program, name);
3518 GL_SERVICE_LOG("GL_RESULT: " << result);
3519 return result;
3522 static void GL_BINDING_CALL
3523 Debug_glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat* params) {
3524 GL_SERVICE_LOG("glGetVertexAttribfv"
3525 << "(" << index << ", " << GLEnums::GetStringEnum(pname)
3526 << ", " << static_cast<const void*>(params) << ")");
3527 g_driver_gl.debug_fn.glGetVertexAttribfvFn(index, pname, params);
3530 static void GL_BINDING_CALL
3531 Debug_glGetVertexAttribiv(GLuint index, GLenum pname, GLint* params) {
3532 GL_SERVICE_LOG("glGetVertexAttribiv"
3533 << "(" << index << ", " << GLEnums::GetStringEnum(pname)
3534 << ", " << static_cast<const void*>(params) << ")");
3535 g_driver_gl.debug_fn.glGetVertexAttribivFn(index, pname, params);
3538 static void GL_BINDING_CALL
3539 Debug_glGetVertexAttribPointerv(GLuint index, GLenum pname, void** pointer) {
3540 GL_SERVICE_LOG("glGetVertexAttribPointerv"
3541 << "(" << index << ", " << GLEnums::GetStringEnum(pname)
3542 << ", " << pointer << ")");
3543 g_driver_gl.debug_fn.glGetVertexAttribPointervFn(index, pname, pointer);
3546 static void GL_BINDING_CALL Debug_glHint(GLenum target, GLenum mode) {
3547 GL_SERVICE_LOG("glHint"
3548 << "(" << GLEnums::GetStringEnum(target) << ", "
3549 << GLEnums::GetStringEnum(mode) << ")");
3550 g_driver_gl.debug_fn.glHintFn(target, mode);
3553 static void GL_BINDING_CALL
3554 Debug_glInsertEventMarkerEXT(GLsizei length, const char* marker) {
3555 GL_SERVICE_LOG("glInsertEventMarkerEXT"
3556 << "(" << length << ", " << marker << ")");
3557 g_driver_gl.debug_fn.glInsertEventMarkerEXTFn(length, marker);
3560 static void GL_BINDING_CALL
3561 Debug_glInvalidateFramebuffer(GLenum target,
3562 GLsizei numAttachments,
3563 const GLenum* attachments) {
3564 GL_SERVICE_LOG("glInvalidateFramebuffer"
3565 << "(" << GLEnums::GetStringEnum(target) << ", "
3566 << numAttachments << ", "
3567 << static_cast<const void*>(attachments) << ")");
3568 g_driver_gl.debug_fn.glInvalidateFramebufferFn(target, numAttachments,
3569 attachments);
3572 static void GL_BINDING_CALL
3573 Debug_glInvalidateSubFramebuffer(GLenum target,
3574 GLsizei numAttachments,
3575 const GLenum* attachments,
3576 GLint x,
3577 GLint y,
3578 GLint width,
3579 GLint height) {
3580 GL_SERVICE_LOG("glInvalidateSubFramebuffer"
3581 << "(" << GLEnums::GetStringEnum(target) << ", "
3582 << numAttachments << ", "
3583 << static_cast<const void*>(attachments) << ", " << x << ", "
3584 << y << ", " << width << ", " << height << ")");
3585 g_driver_gl.debug_fn.glInvalidateSubFramebufferFn(
3586 target, numAttachments, attachments, x, y, width, height);
3589 static GLboolean GL_BINDING_CALL Debug_glIsBuffer(GLuint buffer) {
3590 GL_SERVICE_LOG("glIsBuffer"
3591 << "(" << buffer << ")");
3592 GLboolean result = g_driver_gl.debug_fn.glIsBufferFn(buffer);
3593 GL_SERVICE_LOG("GL_RESULT: " << result);
3594 return result;
3597 static GLboolean GL_BINDING_CALL Debug_glIsEnabled(GLenum cap) {
3598 GL_SERVICE_LOG("glIsEnabled"
3599 << "(" << GLEnums::GetStringEnum(cap) << ")");
3600 GLboolean result = g_driver_gl.debug_fn.glIsEnabledFn(cap);
3601 GL_SERVICE_LOG("GL_RESULT: " << result);
3602 return result;
3605 static GLboolean GL_BINDING_CALL Debug_glIsFenceAPPLE(GLuint fence) {
3606 GL_SERVICE_LOG("glIsFenceAPPLE"
3607 << "(" << fence << ")");
3608 GLboolean result = g_driver_gl.debug_fn.glIsFenceAPPLEFn(fence);
3609 GL_SERVICE_LOG("GL_RESULT: " << result);
3610 return result;
3613 static GLboolean GL_BINDING_CALL Debug_glIsFenceNV(GLuint fence) {
3614 GL_SERVICE_LOG("glIsFenceNV"
3615 << "(" << fence << ")");
3616 GLboolean result = g_driver_gl.debug_fn.glIsFenceNVFn(fence);
3617 GL_SERVICE_LOG("GL_RESULT: " << result);
3618 return result;
3621 static GLboolean GL_BINDING_CALL Debug_glIsFramebufferEXT(GLuint framebuffer) {
3622 GL_SERVICE_LOG("glIsFramebufferEXT"
3623 << "(" << framebuffer << ")");
3624 GLboolean result = g_driver_gl.debug_fn.glIsFramebufferEXTFn(framebuffer);
3625 GL_SERVICE_LOG("GL_RESULT: " << result);
3626 return result;
3629 static GLboolean GL_BINDING_CALL Debug_glIsProgram(GLuint program) {
3630 GL_SERVICE_LOG("glIsProgram"
3631 << "(" << program << ")");
3632 GLboolean result = g_driver_gl.debug_fn.glIsProgramFn(program);
3633 GL_SERVICE_LOG("GL_RESULT: " << result);
3634 return result;
3637 static GLboolean GL_BINDING_CALL Debug_glIsQuery(GLuint query) {
3638 GL_SERVICE_LOG("glIsQuery"
3639 << "(" << query << ")");
3640 GLboolean result = g_driver_gl.debug_fn.glIsQueryFn(query);
3641 GL_SERVICE_LOG("GL_RESULT: " << result);
3642 return result;
3645 static GLboolean GL_BINDING_CALL Debug_glIsQueryARB(GLuint query) {
3646 GL_SERVICE_LOG("glIsQueryARB"
3647 << "(" << query << ")");
3648 GLboolean result = g_driver_gl.debug_fn.glIsQueryARBFn(query);
3649 GL_SERVICE_LOG("GL_RESULT: " << result);
3650 return result;
3653 static GLboolean GL_BINDING_CALL
3654 Debug_glIsRenderbufferEXT(GLuint renderbuffer) {
3655 GL_SERVICE_LOG("glIsRenderbufferEXT"
3656 << "(" << renderbuffer << ")");
3657 GLboolean result = g_driver_gl.debug_fn.glIsRenderbufferEXTFn(renderbuffer);
3658 GL_SERVICE_LOG("GL_RESULT: " << result);
3659 return result;
3662 static GLboolean GL_BINDING_CALL Debug_glIsSampler(GLuint sampler) {
3663 GL_SERVICE_LOG("glIsSampler"
3664 << "(" << sampler << ")");
3665 GLboolean result = g_driver_gl.debug_fn.glIsSamplerFn(sampler);
3666 GL_SERVICE_LOG("GL_RESULT: " << result);
3667 return result;
3670 static GLboolean GL_BINDING_CALL Debug_glIsShader(GLuint shader) {
3671 GL_SERVICE_LOG("glIsShader"
3672 << "(" << shader << ")");
3673 GLboolean result = g_driver_gl.debug_fn.glIsShaderFn(shader);
3674 GL_SERVICE_LOG("GL_RESULT: " << result);
3675 return result;
3678 static GLboolean GL_BINDING_CALL Debug_glIsSync(GLsync sync) {
3679 GL_SERVICE_LOG("glIsSync"
3680 << "(" << sync << ")");
3681 GLboolean result = g_driver_gl.debug_fn.glIsSyncFn(sync);
3682 GL_SERVICE_LOG("GL_RESULT: " << result);
3683 return result;
3686 static GLboolean GL_BINDING_CALL Debug_glIsTexture(GLuint texture) {
3687 GL_SERVICE_LOG("glIsTexture"
3688 << "(" << texture << ")");
3689 GLboolean result = g_driver_gl.debug_fn.glIsTextureFn(texture);
3690 GL_SERVICE_LOG("GL_RESULT: " << result);
3691 return result;
3694 static GLboolean GL_BINDING_CALL Debug_glIsTransformFeedback(GLuint id) {
3695 GL_SERVICE_LOG("glIsTransformFeedback"
3696 << "(" << id << ")");
3697 GLboolean result = g_driver_gl.debug_fn.glIsTransformFeedbackFn(id);
3698 GL_SERVICE_LOG("GL_RESULT: " << result);
3699 return result;
3702 static GLboolean GL_BINDING_CALL Debug_glIsVertexArrayOES(GLuint array) {
3703 GL_SERVICE_LOG("glIsVertexArrayOES"
3704 << "(" << array << ")");
3705 GLboolean result = g_driver_gl.debug_fn.glIsVertexArrayOESFn(array);
3706 GL_SERVICE_LOG("GL_RESULT: " << result);
3707 return result;
3710 static void GL_BINDING_CALL Debug_glLineWidth(GLfloat width) {
3711 GL_SERVICE_LOG("glLineWidth"
3712 << "(" << width << ")");
3713 g_driver_gl.debug_fn.glLineWidthFn(width);
3716 static void GL_BINDING_CALL Debug_glLinkProgram(GLuint program) {
3717 GL_SERVICE_LOG("glLinkProgram"
3718 << "(" << program << ")");
3719 g_driver_gl.debug_fn.glLinkProgramFn(program);
3722 static void* GL_BINDING_CALL Debug_glMapBuffer(GLenum target, GLenum access) {
3723 GL_SERVICE_LOG("glMapBuffer"
3724 << "(" << GLEnums::GetStringEnum(target) << ", "
3725 << GLEnums::GetStringEnum(access) << ")");
3726 void* result = g_driver_gl.debug_fn.glMapBufferFn(target, access);
3727 GL_SERVICE_LOG("GL_RESULT: " << result);
3728 return result;
3731 static void* GL_BINDING_CALL Debug_glMapBufferRange(GLenum target,
3732 GLintptr offset,
3733 GLsizeiptr length,
3734 GLbitfield access) {
3735 GL_SERVICE_LOG("glMapBufferRange"
3736 << "(" << GLEnums::GetStringEnum(target) << ", " << offset
3737 << ", " << length << ", " << access << ")");
3738 void* result =
3739 g_driver_gl.debug_fn.glMapBufferRangeFn(target, offset, length, access);
3740 GL_SERVICE_LOG("GL_RESULT: " << result);
3741 return result;
3744 static void GL_BINDING_CALL
3745 Debug_glMatrixLoadfEXT(GLenum matrixMode, const GLfloat* m) {
3746 GL_SERVICE_LOG("glMatrixLoadfEXT"
3747 << "(" << GLEnums::GetStringEnum(matrixMode) << ", "
3748 << static_cast<const void*>(m) << ")");
3749 g_driver_gl.debug_fn.glMatrixLoadfEXTFn(matrixMode, m);
3752 static void GL_BINDING_CALL Debug_glMatrixLoadIdentityEXT(GLenum matrixMode) {
3753 GL_SERVICE_LOG("glMatrixLoadIdentityEXT"
3754 << "(" << GLEnums::GetStringEnum(matrixMode) << ")");
3755 g_driver_gl.debug_fn.glMatrixLoadIdentityEXTFn(matrixMode);
3758 static void GL_BINDING_CALL Debug_glPauseTransformFeedback(void) {
3759 GL_SERVICE_LOG("glPauseTransformFeedback"
3760 << "("
3761 << ")");
3762 g_driver_gl.debug_fn.glPauseTransformFeedbackFn();
3765 static void GL_BINDING_CALL Debug_glPixelStorei(GLenum pname, GLint param) {
3766 GL_SERVICE_LOG("glPixelStorei"
3767 << "(" << GLEnums::GetStringEnum(pname) << ", " << param
3768 << ")");
3769 g_driver_gl.debug_fn.glPixelStoreiFn(pname, param);
3772 static void GL_BINDING_CALL Debug_glPointParameteri(GLenum pname, GLint param) {
3773 GL_SERVICE_LOG("glPointParameteri"
3774 << "(" << GLEnums::GetStringEnum(pname) << ", " << param
3775 << ")");
3776 g_driver_gl.debug_fn.glPointParameteriFn(pname, param);
3779 static void GL_BINDING_CALL
3780 Debug_glPolygonOffset(GLfloat factor, GLfloat units) {
3781 GL_SERVICE_LOG("glPolygonOffset"
3782 << "(" << factor << ", " << units << ")");
3783 g_driver_gl.debug_fn.glPolygonOffsetFn(factor, units);
3786 static void GL_BINDING_CALL Debug_glPopGroupMarkerEXT(void) {
3787 GL_SERVICE_LOG("glPopGroupMarkerEXT"
3788 << "("
3789 << ")");
3790 g_driver_gl.debug_fn.glPopGroupMarkerEXTFn();
3793 static void GL_BINDING_CALL Debug_glProgramBinary(GLuint program,
3794 GLenum binaryFormat,
3795 const GLvoid* binary,
3796 GLsizei length) {
3797 GL_SERVICE_LOG("glProgramBinary"
3798 << "(" << program << ", "
3799 << GLEnums::GetStringEnum(binaryFormat) << ", "
3800 << static_cast<const void*>(binary) << ", " << length << ")");
3801 g_driver_gl.debug_fn.glProgramBinaryFn(program, binaryFormat, binary, length);
3804 static void GL_BINDING_CALL
3805 Debug_glProgramParameteri(GLuint program, GLenum pname, GLint value) {
3806 GL_SERVICE_LOG("glProgramParameteri"
3807 << "(" << program << ", " << GLEnums::GetStringEnum(pname)
3808 << ", " << value << ")");
3809 g_driver_gl.debug_fn.glProgramParameteriFn(program, pname, value);
3812 static void GL_BINDING_CALL
3813 Debug_glPushGroupMarkerEXT(GLsizei length, const char* marker) {
3814 GL_SERVICE_LOG("glPushGroupMarkerEXT"
3815 << "(" << length << ", " << marker << ")");
3816 g_driver_gl.debug_fn.glPushGroupMarkerEXTFn(length, marker);
3819 static void GL_BINDING_CALL Debug_glQueryCounter(GLuint id, GLenum target) {
3820 GL_SERVICE_LOG("glQueryCounter"
3821 << "(" << id << ", " << GLEnums::GetStringEnum(target) << ")");
3822 g_driver_gl.debug_fn.glQueryCounterFn(id, target);
3825 static void GL_BINDING_CALL Debug_glReadBuffer(GLenum src) {
3826 GL_SERVICE_LOG("glReadBuffer"
3827 << "(" << GLEnums::GetStringEnum(src) << ")");
3828 g_driver_gl.debug_fn.glReadBufferFn(src);
3831 static void GL_BINDING_CALL Debug_glReadPixels(GLint x,
3832 GLint y,
3833 GLsizei width,
3834 GLsizei height,
3835 GLenum format,
3836 GLenum type,
3837 void* pixels) {
3838 GL_SERVICE_LOG("glReadPixels"
3839 << "(" << x << ", " << y << ", " << width << ", " << height
3840 << ", " << GLEnums::GetStringEnum(format) << ", "
3841 << GLEnums::GetStringEnum(type) << ", "
3842 << static_cast<const void*>(pixels) << ")");
3843 g_driver_gl.debug_fn.glReadPixelsFn(x, y, width, height, format, type,
3844 pixels);
3847 static void GL_BINDING_CALL Debug_glReleaseShaderCompiler(void) {
3848 GL_SERVICE_LOG("glReleaseShaderCompiler"
3849 << "("
3850 << ")");
3851 g_driver_gl.debug_fn.glReleaseShaderCompilerFn();
3854 static void GL_BINDING_CALL
3855 Debug_glRenderbufferStorageEXT(GLenum target,
3856 GLenum internalformat,
3857 GLsizei width,
3858 GLsizei height) {
3859 GL_SERVICE_LOG("glRenderbufferStorageEXT"
3860 << "(" << GLEnums::GetStringEnum(target) << ", "
3861 << GLEnums::GetStringEnum(internalformat) << ", " << width
3862 << ", " << height << ")");
3863 g_driver_gl.debug_fn.glRenderbufferStorageEXTFn(target, internalformat, width,
3864 height);
3867 static void GL_BINDING_CALL
3868 Debug_glRenderbufferStorageMultisample(GLenum target,
3869 GLsizei samples,
3870 GLenum internalformat,
3871 GLsizei width,
3872 GLsizei height) {
3873 GL_SERVICE_LOG("glRenderbufferStorageMultisample"
3874 << "(" << GLEnums::GetStringEnum(target) << ", " << samples
3875 << ", " << GLEnums::GetStringEnum(internalformat) << ", "
3876 << width << ", " << height << ")");
3877 g_driver_gl.debug_fn.glRenderbufferStorageMultisampleFn(
3878 target, samples, internalformat, width, height);
3881 static void GL_BINDING_CALL
3882 Debug_glRenderbufferStorageMultisampleANGLE(GLenum target,
3883 GLsizei samples,
3884 GLenum internalformat,
3885 GLsizei width,
3886 GLsizei height) {
3887 GL_SERVICE_LOG("glRenderbufferStorageMultisampleANGLE"
3888 << "(" << GLEnums::GetStringEnum(target) << ", " << samples
3889 << ", " << GLEnums::GetStringEnum(internalformat) << ", "
3890 << width << ", " << height << ")");
3891 g_driver_gl.debug_fn.glRenderbufferStorageMultisampleANGLEFn(
3892 target, samples, internalformat, width, height);
3895 static void GL_BINDING_CALL
3896 Debug_glRenderbufferStorageMultisampleEXT(GLenum target,
3897 GLsizei samples,
3898 GLenum internalformat,
3899 GLsizei width,
3900 GLsizei height) {
3901 GL_SERVICE_LOG("glRenderbufferStorageMultisampleEXT"
3902 << "(" << GLEnums::GetStringEnum(target) << ", " << samples
3903 << ", " << GLEnums::GetStringEnum(internalformat) << ", "
3904 << width << ", " << height << ")");
3905 g_driver_gl.debug_fn.glRenderbufferStorageMultisampleEXTFn(
3906 target, samples, internalformat, width, height);
3909 static void GL_BINDING_CALL
3910 Debug_glRenderbufferStorageMultisampleIMG(GLenum target,
3911 GLsizei samples,
3912 GLenum internalformat,
3913 GLsizei width,
3914 GLsizei height) {
3915 GL_SERVICE_LOG("glRenderbufferStorageMultisampleIMG"
3916 << "(" << GLEnums::GetStringEnum(target) << ", " << samples
3917 << ", " << GLEnums::GetStringEnum(internalformat) << ", "
3918 << width << ", " << height << ")");
3919 g_driver_gl.debug_fn.glRenderbufferStorageMultisampleIMGFn(
3920 target, samples, internalformat, width, height);
3923 static void GL_BINDING_CALL Debug_glResumeTransformFeedback(void) {
3924 GL_SERVICE_LOG("glResumeTransformFeedback"
3925 << "("
3926 << ")");
3927 g_driver_gl.debug_fn.glResumeTransformFeedbackFn();
3930 static void GL_BINDING_CALL
3931 Debug_glSampleCoverage(GLclampf value, GLboolean invert) {
3932 GL_SERVICE_LOG("glSampleCoverage"
3933 << "(" << value << ", " << GLEnums::GetStringBool(invert)
3934 << ")");
3935 g_driver_gl.debug_fn.glSampleCoverageFn(value, invert);
3938 static void GL_BINDING_CALL
3939 Debug_glSamplerParameterf(GLuint sampler, GLenum pname, GLfloat param) {
3940 GL_SERVICE_LOG("glSamplerParameterf"
3941 << "(" << sampler << ", " << GLEnums::GetStringEnum(pname)
3942 << ", " << param << ")");
3943 g_driver_gl.debug_fn.glSamplerParameterfFn(sampler, pname, param);
3946 static void GL_BINDING_CALL Debug_glSamplerParameterfv(GLuint sampler,
3947 GLenum pname,
3948 const GLfloat* params) {
3949 GL_SERVICE_LOG("glSamplerParameterfv"
3950 << "(" << sampler << ", " << GLEnums::GetStringEnum(pname)
3951 << ", " << static_cast<const void*>(params) << ")");
3952 g_driver_gl.debug_fn.glSamplerParameterfvFn(sampler, pname, params);
3955 static void GL_BINDING_CALL
3956 Debug_glSamplerParameteri(GLuint sampler, GLenum pname, GLint param) {
3957 GL_SERVICE_LOG("glSamplerParameteri"
3958 << "(" << sampler << ", " << GLEnums::GetStringEnum(pname)
3959 << ", " << param << ")");
3960 g_driver_gl.debug_fn.glSamplerParameteriFn(sampler, pname, param);
3963 static void GL_BINDING_CALL
3964 Debug_glSamplerParameteriv(GLuint sampler, GLenum pname, const GLint* params) {
3965 GL_SERVICE_LOG("glSamplerParameteriv"
3966 << "(" << sampler << ", " << GLEnums::GetStringEnum(pname)
3967 << ", " << static_cast<const void*>(params) << ")");
3968 g_driver_gl.debug_fn.glSamplerParameterivFn(sampler, pname, params);
3971 static void GL_BINDING_CALL
3972 Debug_glScissor(GLint x, GLint y, GLsizei width, GLsizei height) {
3973 GL_SERVICE_LOG("glScissor"
3974 << "(" << x << ", " << y << ", " << width << ", " << height
3975 << ")");
3976 g_driver_gl.debug_fn.glScissorFn(x, y, width, height);
3979 static void GL_BINDING_CALL Debug_glSetFenceAPPLE(GLuint fence) {
3980 GL_SERVICE_LOG("glSetFenceAPPLE"
3981 << "(" << fence << ")");
3982 g_driver_gl.debug_fn.glSetFenceAPPLEFn(fence);
3985 static void GL_BINDING_CALL Debug_glSetFenceNV(GLuint fence, GLenum condition) {
3986 GL_SERVICE_LOG("glSetFenceNV"
3987 << "(" << fence << ", " << GLEnums::GetStringEnum(condition)
3988 << ")");
3989 g_driver_gl.debug_fn.glSetFenceNVFn(fence, condition);
3992 static void GL_BINDING_CALL Debug_glShaderBinary(GLsizei n,
3993 const GLuint* shaders,
3994 GLenum binaryformat,
3995 const void* binary,
3996 GLsizei length) {
3997 GL_SERVICE_LOG("glShaderBinary"
3998 << "(" << n << ", " << static_cast<const void*>(shaders)
3999 << ", " << GLEnums::GetStringEnum(binaryformat) << ", "
4000 << static_cast<const void*>(binary) << ", " << length << ")");
4001 g_driver_gl.debug_fn.glShaderBinaryFn(n, shaders, binaryformat, binary,
4002 length);
4005 static void GL_BINDING_CALL Debug_glShaderSource(GLuint shader,
4006 GLsizei count,
4007 const char* const* str,
4008 const GLint* length) {
4009 GL_SERVICE_LOG("glShaderSource"
4010 << "(" << shader << ", " << count << ", "
4011 << static_cast<const void*>(str) << ", "
4012 << static_cast<const void*>(length) << ")");
4013 g_driver_gl.debug_fn.glShaderSourceFn(shader, count, str, length);
4015 GL_SERVICE_LOG_CODE_BLOCK({
4016 for (GLsizei ii = 0; ii < count; ++ii) {
4017 if (str[ii]) {
4018 if (length && length[ii] >= 0) {
4019 std::string source(str[ii], length[ii]);
4020 GL_SERVICE_LOG(" " << ii << ": ---\n" << source << "\n---");
4021 } else {
4022 GL_SERVICE_LOG(" " << ii << ": ---\n" << str[ii] << "\n---");
4024 } else {
4025 GL_SERVICE_LOG(" " << ii << ": NULL");
4031 static void GL_BINDING_CALL
4032 Debug_glStencilFunc(GLenum func, GLint ref, GLuint mask) {
4033 GL_SERVICE_LOG("glStencilFunc"
4034 << "(" << GLEnums::GetStringEnum(func) << ", " << ref << ", "
4035 << mask << ")");
4036 g_driver_gl.debug_fn.glStencilFuncFn(func, ref, mask);
4039 static void GL_BINDING_CALL
4040 Debug_glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask) {
4041 GL_SERVICE_LOG("glStencilFuncSeparate"
4042 << "(" << GLEnums::GetStringEnum(face) << ", "
4043 << GLEnums::GetStringEnum(func) << ", " << ref << ", " << mask
4044 << ")");
4045 g_driver_gl.debug_fn.glStencilFuncSeparateFn(face, func, ref, mask);
4048 static void GL_BINDING_CALL Debug_glStencilMask(GLuint mask) {
4049 GL_SERVICE_LOG("glStencilMask"
4050 << "(" << mask << ")");
4051 g_driver_gl.debug_fn.glStencilMaskFn(mask);
4054 static void GL_BINDING_CALL
4055 Debug_glStencilMaskSeparate(GLenum face, GLuint mask) {
4056 GL_SERVICE_LOG("glStencilMaskSeparate"
4057 << "(" << GLEnums::GetStringEnum(face) << ", " << mask << ")");
4058 g_driver_gl.debug_fn.glStencilMaskSeparateFn(face, mask);
4061 static void GL_BINDING_CALL
4062 Debug_glStencilOp(GLenum fail, GLenum zfail, GLenum zpass) {
4063 GL_SERVICE_LOG("glStencilOp"
4064 << "(" << GLEnums::GetStringEnum(fail) << ", "
4065 << GLEnums::GetStringEnum(zfail) << ", "
4066 << GLEnums::GetStringEnum(zpass) << ")");
4067 g_driver_gl.debug_fn.glStencilOpFn(fail, zfail, zpass);
4070 static void GL_BINDING_CALL Debug_glStencilOpSeparate(GLenum face,
4071 GLenum fail,
4072 GLenum zfail,
4073 GLenum zpass) {
4074 GL_SERVICE_LOG("glStencilOpSeparate"
4075 << "(" << GLEnums::GetStringEnum(face) << ", "
4076 << GLEnums::GetStringEnum(fail) << ", "
4077 << GLEnums::GetStringEnum(zfail) << ", "
4078 << GLEnums::GetStringEnum(zpass) << ")");
4079 g_driver_gl.debug_fn.glStencilOpSeparateFn(face, fail, zfail, zpass);
4082 static GLboolean GL_BINDING_CALL Debug_glTestFenceAPPLE(GLuint fence) {
4083 GL_SERVICE_LOG("glTestFenceAPPLE"
4084 << "(" << fence << ")");
4085 GLboolean result = g_driver_gl.debug_fn.glTestFenceAPPLEFn(fence);
4086 GL_SERVICE_LOG("GL_RESULT: " << result);
4087 return result;
4090 static GLboolean GL_BINDING_CALL Debug_glTestFenceNV(GLuint fence) {
4091 GL_SERVICE_LOG("glTestFenceNV"
4092 << "(" << fence << ")");
4093 GLboolean result = g_driver_gl.debug_fn.glTestFenceNVFn(fence);
4094 GL_SERVICE_LOG("GL_RESULT: " << result);
4095 return result;
4098 static void GL_BINDING_CALL Debug_glTexImage2D(GLenum target,
4099 GLint level,
4100 GLint internalformat,
4101 GLsizei width,
4102 GLsizei height,
4103 GLint border,
4104 GLenum format,
4105 GLenum type,
4106 const void* pixels) {
4107 GL_SERVICE_LOG("glTexImage2D"
4108 << "(" << GLEnums::GetStringEnum(target) << ", " << level
4109 << ", " << internalformat << ", " << width << ", " << height
4110 << ", " << border << ", " << GLEnums::GetStringEnum(format)
4111 << ", " << GLEnums::GetStringEnum(type) << ", "
4112 << static_cast<const void*>(pixels) << ")");
4113 g_driver_gl.debug_fn.glTexImage2DFn(target, level, internalformat, width,
4114 height, border, format, type, pixels);
4117 static void GL_BINDING_CALL Debug_glTexImage3D(GLenum target,
4118 GLint level,
4119 GLint internalformat,
4120 GLsizei width,
4121 GLsizei height,
4122 GLsizei depth,
4123 GLint border,
4124 GLenum format,
4125 GLenum type,
4126 const void* pixels) {
4127 GL_SERVICE_LOG("glTexImage3D"
4128 << "(" << GLEnums::GetStringEnum(target) << ", " << level
4129 << ", " << internalformat << ", " << width << ", " << height
4130 << ", " << depth << ", " << border << ", "
4131 << GLEnums::GetStringEnum(format) << ", "
4132 << GLEnums::GetStringEnum(type) << ", "
4133 << static_cast<const void*>(pixels) << ")");
4134 g_driver_gl.debug_fn.glTexImage3DFn(target, level, internalformat, width,
4135 height, depth, border, format, type,
4136 pixels);
4139 static void GL_BINDING_CALL
4140 Debug_glTexParameterf(GLenum target, GLenum pname, GLfloat param) {
4141 GL_SERVICE_LOG("glTexParameterf"
4142 << "(" << GLEnums::GetStringEnum(target) << ", "
4143 << GLEnums::GetStringEnum(pname) << ", " << param << ")");
4144 g_driver_gl.debug_fn.glTexParameterfFn(target, pname, param);
4147 static void GL_BINDING_CALL
4148 Debug_glTexParameterfv(GLenum target, GLenum pname, const GLfloat* params) {
4149 GL_SERVICE_LOG("glTexParameterfv"
4150 << "(" << GLEnums::GetStringEnum(target) << ", "
4151 << GLEnums::GetStringEnum(pname) << ", "
4152 << static_cast<const void*>(params) << ")");
4153 g_driver_gl.debug_fn.glTexParameterfvFn(target, pname, params);
4156 static void GL_BINDING_CALL
4157 Debug_glTexParameteri(GLenum target, GLenum pname, GLint param) {
4158 GL_SERVICE_LOG("glTexParameteri"
4159 << "(" << GLEnums::GetStringEnum(target) << ", "
4160 << GLEnums::GetStringEnum(pname) << ", " << param << ")");
4161 g_driver_gl.debug_fn.glTexParameteriFn(target, pname, param);
4164 static void GL_BINDING_CALL
4165 Debug_glTexParameteriv(GLenum target, GLenum pname, const GLint* params) {
4166 GL_SERVICE_LOG("glTexParameteriv"
4167 << "(" << GLEnums::GetStringEnum(target) << ", "
4168 << GLEnums::GetStringEnum(pname) << ", "
4169 << static_cast<const void*>(params) << ")");
4170 g_driver_gl.debug_fn.glTexParameterivFn(target, pname, params);
4173 static void GL_BINDING_CALL Debug_glTexStorage2DEXT(GLenum target,
4174 GLsizei levels,
4175 GLenum internalformat,
4176 GLsizei width,
4177 GLsizei height) {
4178 GL_SERVICE_LOG("glTexStorage2DEXT"
4179 << "(" << GLEnums::GetStringEnum(target) << ", " << levels
4180 << ", " << GLEnums::GetStringEnum(internalformat) << ", "
4181 << width << ", " << height << ")");
4182 g_driver_gl.debug_fn.glTexStorage2DEXTFn(target, levels, internalformat,
4183 width, height);
4186 static void GL_BINDING_CALL Debug_glTexStorage3D(GLenum target,
4187 GLsizei levels,
4188 GLenum internalformat,
4189 GLsizei width,
4190 GLsizei height,
4191 GLsizei depth) {
4192 GL_SERVICE_LOG("glTexStorage3D"
4193 << "(" << GLEnums::GetStringEnum(target) << ", " << levels
4194 << ", " << GLEnums::GetStringEnum(internalformat) << ", "
4195 << width << ", " << height << ", " << depth << ")");
4196 g_driver_gl.debug_fn.glTexStorage3DFn(target, levels, internalformat, width,
4197 height, depth);
4200 static void GL_BINDING_CALL Debug_glTexSubImage2D(GLenum target,
4201 GLint level,
4202 GLint xoffset,
4203 GLint yoffset,
4204 GLsizei width,
4205 GLsizei height,
4206 GLenum format,
4207 GLenum type,
4208 const void* pixels) {
4209 GL_SERVICE_LOG("glTexSubImage2D"
4210 << "(" << GLEnums::GetStringEnum(target) << ", " << level
4211 << ", " << xoffset << ", " << yoffset << ", " << width << ", "
4212 << height << ", " << GLEnums::GetStringEnum(format) << ", "
4213 << GLEnums::GetStringEnum(type) << ", "
4214 << static_cast<const void*>(pixels) << ")");
4215 g_driver_gl.debug_fn.glTexSubImage2DFn(target, level, xoffset, yoffset, width,
4216 height, format, type, pixels);
4219 static void GL_BINDING_CALL
4220 Debug_glTransformFeedbackVaryings(GLuint program,
4221 GLsizei count,
4222 const char* const* varyings,
4223 GLenum bufferMode) {
4224 GL_SERVICE_LOG("glTransformFeedbackVaryings"
4225 << "(" << program << ", " << count << ", "
4226 << static_cast<const void*>(varyings) << ", "
4227 << GLEnums::GetStringEnum(bufferMode) << ")");
4228 g_driver_gl.debug_fn.glTransformFeedbackVaryingsFn(program, count, varyings,
4229 bufferMode);
4232 static void GL_BINDING_CALL Debug_glUniform1f(GLint location, GLfloat x) {
4233 GL_SERVICE_LOG("glUniform1f"
4234 << "(" << location << ", " << x << ")");
4235 g_driver_gl.debug_fn.glUniform1fFn(location, x);
4238 static void GL_BINDING_CALL
4239 Debug_glUniform1fv(GLint location, GLsizei count, const GLfloat* v) {
4240 GL_SERVICE_LOG("glUniform1fv"
4241 << "(" << location << ", " << count << ", "
4242 << static_cast<const void*>(v) << ")");
4243 g_driver_gl.debug_fn.glUniform1fvFn(location, count, v);
4246 static void GL_BINDING_CALL Debug_glUniform1i(GLint location, GLint x) {
4247 GL_SERVICE_LOG("glUniform1i"
4248 << "(" << location << ", " << x << ")");
4249 g_driver_gl.debug_fn.glUniform1iFn(location, x);
4252 static void GL_BINDING_CALL
4253 Debug_glUniform1iv(GLint location, GLsizei count, const GLint* v) {
4254 GL_SERVICE_LOG("glUniform1iv"
4255 << "(" << location << ", " << count << ", "
4256 << static_cast<const void*>(v) << ")");
4257 g_driver_gl.debug_fn.glUniform1ivFn(location, count, v);
4260 static void GL_BINDING_CALL Debug_glUniform1ui(GLint location, GLuint v0) {
4261 GL_SERVICE_LOG("glUniform1ui"
4262 << "(" << location << ", " << v0 << ")");
4263 g_driver_gl.debug_fn.glUniform1uiFn(location, v0);
4266 static void GL_BINDING_CALL
4267 Debug_glUniform1uiv(GLint location, GLsizei count, const GLuint* v) {
4268 GL_SERVICE_LOG("glUniform1uiv"
4269 << "(" << location << ", " << count << ", "
4270 << static_cast<const void*>(v) << ")");
4271 g_driver_gl.debug_fn.glUniform1uivFn(location, count, v);
4274 static void GL_BINDING_CALL
4275 Debug_glUniform2f(GLint location, GLfloat x, GLfloat y) {
4276 GL_SERVICE_LOG("glUniform2f"
4277 << "(" << location << ", " << x << ", " << y << ")");
4278 g_driver_gl.debug_fn.glUniform2fFn(location, x, y);
4281 static void GL_BINDING_CALL
4282 Debug_glUniform2fv(GLint location, GLsizei count, const GLfloat* v) {
4283 GL_SERVICE_LOG("glUniform2fv"
4284 << "(" << location << ", " << count << ", "
4285 << static_cast<const void*>(v) << ")");
4286 g_driver_gl.debug_fn.glUniform2fvFn(location, count, v);
4289 static void GL_BINDING_CALL
4290 Debug_glUniform2i(GLint location, GLint x, GLint y) {
4291 GL_SERVICE_LOG("glUniform2i"
4292 << "(" << location << ", " << x << ", " << y << ")");
4293 g_driver_gl.debug_fn.glUniform2iFn(location, x, y);
4296 static void GL_BINDING_CALL
4297 Debug_glUniform2iv(GLint location, GLsizei count, const GLint* v) {
4298 GL_SERVICE_LOG("glUniform2iv"
4299 << "(" << location << ", " << count << ", "
4300 << static_cast<const void*>(v) << ")");
4301 g_driver_gl.debug_fn.glUniform2ivFn(location, count, v);
4304 static void GL_BINDING_CALL
4305 Debug_glUniform2ui(GLint location, GLuint v0, GLuint v1) {
4306 GL_SERVICE_LOG("glUniform2ui"
4307 << "(" << location << ", " << v0 << ", " << v1 << ")");
4308 g_driver_gl.debug_fn.glUniform2uiFn(location, v0, v1);
4311 static void GL_BINDING_CALL
4312 Debug_glUniform2uiv(GLint location, GLsizei count, const GLuint* v) {
4313 GL_SERVICE_LOG("glUniform2uiv"
4314 << "(" << location << ", " << count << ", "
4315 << static_cast<const void*>(v) << ")");
4316 g_driver_gl.debug_fn.glUniform2uivFn(location, count, v);
4319 static void GL_BINDING_CALL
4320 Debug_glUniform3f(GLint location, GLfloat x, GLfloat y, GLfloat z) {
4321 GL_SERVICE_LOG("glUniform3f"
4322 << "(" << location << ", " << x << ", " << y << ", " << z
4323 << ")");
4324 g_driver_gl.debug_fn.glUniform3fFn(location, x, y, z);
4327 static void GL_BINDING_CALL
4328 Debug_glUniform3fv(GLint location, GLsizei count, const GLfloat* v) {
4329 GL_SERVICE_LOG("glUniform3fv"
4330 << "(" << location << ", " << count << ", "
4331 << static_cast<const void*>(v) << ")");
4332 g_driver_gl.debug_fn.glUniform3fvFn(location, count, v);
4335 static void GL_BINDING_CALL
4336 Debug_glUniform3i(GLint location, GLint x, GLint y, GLint z) {
4337 GL_SERVICE_LOG("glUniform3i"
4338 << "(" << location << ", " << x << ", " << y << ", " << z
4339 << ")");
4340 g_driver_gl.debug_fn.glUniform3iFn(location, x, y, z);
4343 static void GL_BINDING_CALL
4344 Debug_glUniform3iv(GLint location, GLsizei count, const GLint* v) {
4345 GL_SERVICE_LOG("glUniform3iv"
4346 << "(" << location << ", " << count << ", "
4347 << static_cast<const void*>(v) << ")");
4348 g_driver_gl.debug_fn.glUniform3ivFn(location, count, v);
4351 static void GL_BINDING_CALL
4352 Debug_glUniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2) {
4353 GL_SERVICE_LOG("glUniform3ui"
4354 << "(" << location << ", " << v0 << ", " << v1 << ", " << v2
4355 << ")");
4356 g_driver_gl.debug_fn.glUniform3uiFn(location, v0, v1, v2);
4359 static void GL_BINDING_CALL
4360 Debug_glUniform3uiv(GLint location, GLsizei count, const GLuint* v) {
4361 GL_SERVICE_LOG("glUniform3uiv"
4362 << "(" << location << ", " << count << ", "
4363 << static_cast<const void*>(v) << ")");
4364 g_driver_gl.debug_fn.glUniform3uivFn(location, count, v);
4367 static void GL_BINDING_CALL
4368 Debug_glUniform4f(GLint location, GLfloat x, GLfloat y, GLfloat z, GLfloat w) {
4369 GL_SERVICE_LOG("glUniform4f"
4370 << "(" << location << ", " << x << ", " << y << ", " << z
4371 << ", " << w << ")");
4372 g_driver_gl.debug_fn.glUniform4fFn(location, x, y, z, w);
4375 static void GL_BINDING_CALL
4376 Debug_glUniform4fv(GLint location, GLsizei count, const GLfloat* v) {
4377 GL_SERVICE_LOG("glUniform4fv"
4378 << "(" << location << ", " << count << ", "
4379 << static_cast<const void*>(v) << ")");
4380 g_driver_gl.debug_fn.glUniform4fvFn(location, count, v);
4383 static void GL_BINDING_CALL
4384 Debug_glUniform4i(GLint location, GLint x, GLint y, GLint z, GLint w) {
4385 GL_SERVICE_LOG("glUniform4i"
4386 << "(" << location << ", " << x << ", " << y << ", " << z
4387 << ", " << w << ")");
4388 g_driver_gl.debug_fn.glUniform4iFn(location, x, y, z, w);
4391 static void GL_BINDING_CALL
4392 Debug_glUniform4iv(GLint location, GLsizei count, const GLint* v) {
4393 GL_SERVICE_LOG("glUniform4iv"
4394 << "(" << location << ", " << count << ", "
4395 << static_cast<const void*>(v) << ")");
4396 g_driver_gl.debug_fn.glUniform4ivFn(location, count, v);
4399 static void GL_BINDING_CALL
4400 Debug_glUniform4ui(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3) {
4401 GL_SERVICE_LOG("glUniform4ui"
4402 << "(" << location << ", " << v0 << ", " << v1 << ", " << v2
4403 << ", " << v3 << ")");
4404 g_driver_gl.debug_fn.glUniform4uiFn(location, v0, v1, v2, v3);
4407 static void GL_BINDING_CALL
4408 Debug_glUniform4uiv(GLint location, GLsizei count, const GLuint* v) {
4409 GL_SERVICE_LOG("glUniform4uiv"
4410 << "(" << location << ", " << count << ", "
4411 << static_cast<const void*>(v) << ")");
4412 g_driver_gl.debug_fn.glUniform4uivFn(location, count, v);
4415 static void GL_BINDING_CALL
4416 Debug_glUniformBlockBinding(GLuint program,
4417 GLuint uniformBlockIndex,
4418 GLuint uniformBlockBinding) {
4419 GL_SERVICE_LOG("glUniformBlockBinding"
4420 << "(" << program << ", " << uniformBlockIndex << ", "
4421 << uniformBlockBinding << ")");
4422 g_driver_gl.debug_fn.glUniformBlockBindingFn(program, uniformBlockIndex,
4423 uniformBlockBinding);
4426 static void GL_BINDING_CALL Debug_glUniformMatrix2fv(GLint location,
4427 GLsizei count,
4428 GLboolean transpose,
4429 const GLfloat* value) {
4430 GL_SERVICE_LOG("glUniformMatrix2fv"
4431 << "(" << location << ", " << count << ", "
4432 << GLEnums::GetStringBool(transpose) << ", "
4433 << static_cast<const void*>(value) << ")");
4434 g_driver_gl.debug_fn.glUniformMatrix2fvFn(location, count, transpose, value);
4437 static void GL_BINDING_CALL Debug_glUniformMatrix2x3fv(GLint location,
4438 GLsizei count,
4439 GLboolean transpose,
4440 const GLfloat* value) {
4441 GL_SERVICE_LOG("glUniformMatrix2x3fv"
4442 << "(" << location << ", " << count << ", "
4443 << GLEnums::GetStringBool(transpose) << ", "
4444 << static_cast<const void*>(value) << ")");
4445 g_driver_gl.debug_fn.glUniformMatrix2x3fvFn(location, count, transpose,
4446 value);
4449 static void GL_BINDING_CALL Debug_glUniformMatrix2x4fv(GLint location,
4450 GLsizei count,
4451 GLboolean transpose,
4452 const GLfloat* value) {
4453 GL_SERVICE_LOG("glUniformMatrix2x4fv"
4454 << "(" << location << ", " << count << ", "
4455 << GLEnums::GetStringBool(transpose) << ", "
4456 << static_cast<const void*>(value) << ")");
4457 g_driver_gl.debug_fn.glUniformMatrix2x4fvFn(location, count, transpose,
4458 value);
4461 static void GL_BINDING_CALL Debug_glUniformMatrix3fv(GLint location,
4462 GLsizei count,
4463 GLboolean transpose,
4464 const GLfloat* value) {
4465 GL_SERVICE_LOG("glUniformMatrix3fv"
4466 << "(" << location << ", " << count << ", "
4467 << GLEnums::GetStringBool(transpose) << ", "
4468 << static_cast<const void*>(value) << ")");
4469 g_driver_gl.debug_fn.glUniformMatrix3fvFn(location, count, transpose, value);
4472 static void GL_BINDING_CALL Debug_glUniformMatrix3x2fv(GLint location,
4473 GLsizei count,
4474 GLboolean transpose,
4475 const GLfloat* value) {
4476 GL_SERVICE_LOG("glUniformMatrix3x2fv"
4477 << "(" << location << ", " << count << ", "
4478 << GLEnums::GetStringBool(transpose) << ", "
4479 << static_cast<const void*>(value) << ")");
4480 g_driver_gl.debug_fn.glUniformMatrix3x2fvFn(location, count, transpose,
4481 value);
4484 static void GL_BINDING_CALL Debug_glUniformMatrix3x4fv(GLint location,
4485 GLsizei count,
4486 GLboolean transpose,
4487 const GLfloat* value) {
4488 GL_SERVICE_LOG("glUniformMatrix3x4fv"
4489 << "(" << location << ", " << count << ", "
4490 << GLEnums::GetStringBool(transpose) << ", "
4491 << static_cast<const void*>(value) << ")");
4492 g_driver_gl.debug_fn.glUniformMatrix3x4fvFn(location, count, transpose,
4493 value);
4496 static void GL_BINDING_CALL Debug_glUniformMatrix4fv(GLint location,
4497 GLsizei count,
4498 GLboolean transpose,
4499 const GLfloat* value) {
4500 GL_SERVICE_LOG("glUniformMatrix4fv"
4501 << "(" << location << ", " << count << ", "
4502 << GLEnums::GetStringBool(transpose) << ", "
4503 << static_cast<const void*>(value) << ")");
4504 g_driver_gl.debug_fn.glUniformMatrix4fvFn(location, count, transpose, value);
4507 static void GL_BINDING_CALL Debug_glUniformMatrix4x2fv(GLint location,
4508 GLsizei count,
4509 GLboolean transpose,
4510 const GLfloat* value) {
4511 GL_SERVICE_LOG("glUniformMatrix4x2fv"
4512 << "(" << location << ", " << count << ", "
4513 << GLEnums::GetStringBool(transpose) << ", "
4514 << static_cast<const void*>(value) << ")");
4515 g_driver_gl.debug_fn.glUniformMatrix4x2fvFn(location, count, transpose,
4516 value);
4519 static void GL_BINDING_CALL Debug_glUniformMatrix4x3fv(GLint location,
4520 GLsizei count,
4521 GLboolean transpose,
4522 const GLfloat* value) {
4523 GL_SERVICE_LOG("glUniformMatrix4x3fv"
4524 << "(" << location << ", " << count << ", "
4525 << GLEnums::GetStringBool(transpose) << ", "
4526 << static_cast<const void*>(value) << ")");
4527 g_driver_gl.debug_fn.glUniformMatrix4x3fvFn(location, count, transpose,
4528 value);
4531 static GLboolean GL_BINDING_CALL Debug_glUnmapBuffer(GLenum target) {
4532 GL_SERVICE_LOG("glUnmapBuffer"
4533 << "(" << GLEnums::GetStringEnum(target) << ")");
4534 GLboolean result = g_driver_gl.debug_fn.glUnmapBufferFn(target);
4535 GL_SERVICE_LOG("GL_RESULT: " << result);
4536 return result;
4539 static void GL_BINDING_CALL Debug_glUseProgram(GLuint program) {
4540 GL_SERVICE_LOG("glUseProgram"
4541 << "(" << program << ")");
4542 g_driver_gl.debug_fn.glUseProgramFn(program);
4545 static void GL_BINDING_CALL Debug_glValidateProgram(GLuint program) {
4546 GL_SERVICE_LOG("glValidateProgram"
4547 << "(" << program << ")");
4548 g_driver_gl.debug_fn.glValidateProgramFn(program);
4551 static void GL_BINDING_CALL Debug_glVertexAttrib1f(GLuint indx, GLfloat x) {
4552 GL_SERVICE_LOG("glVertexAttrib1f"
4553 << "(" << indx << ", " << x << ")");
4554 g_driver_gl.debug_fn.glVertexAttrib1fFn(indx, x);
4557 static void GL_BINDING_CALL
4558 Debug_glVertexAttrib1fv(GLuint indx, const GLfloat* values) {
4559 GL_SERVICE_LOG("glVertexAttrib1fv"
4560 << "(" << indx << ", " << static_cast<const void*>(values)
4561 << ")");
4562 g_driver_gl.debug_fn.glVertexAttrib1fvFn(indx, values);
4565 static void GL_BINDING_CALL
4566 Debug_glVertexAttrib2f(GLuint indx, GLfloat x, GLfloat y) {
4567 GL_SERVICE_LOG("glVertexAttrib2f"
4568 << "(" << indx << ", " << x << ", " << y << ")");
4569 g_driver_gl.debug_fn.glVertexAttrib2fFn(indx, x, y);
4572 static void GL_BINDING_CALL
4573 Debug_glVertexAttrib2fv(GLuint indx, const GLfloat* values) {
4574 GL_SERVICE_LOG("glVertexAttrib2fv"
4575 << "(" << indx << ", " << static_cast<const void*>(values)
4576 << ")");
4577 g_driver_gl.debug_fn.glVertexAttrib2fvFn(indx, values);
4580 static void GL_BINDING_CALL
4581 Debug_glVertexAttrib3f(GLuint indx, GLfloat x, GLfloat y, GLfloat z) {
4582 GL_SERVICE_LOG("glVertexAttrib3f"
4583 << "(" << indx << ", " << x << ", " << y << ", " << z << ")");
4584 g_driver_gl.debug_fn.glVertexAttrib3fFn(indx, x, y, z);
4587 static void GL_BINDING_CALL
4588 Debug_glVertexAttrib3fv(GLuint indx, const GLfloat* values) {
4589 GL_SERVICE_LOG("glVertexAttrib3fv"
4590 << "(" << indx << ", " << static_cast<const void*>(values)
4591 << ")");
4592 g_driver_gl.debug_fn.glVertexAttrib3fvFn(indx, values);
4595 static void GL_BINDING_CALL Debug_glVertexAttrib4f(GLuint indx,
4596 GLfloat x,
4597 GLfloat y,
4598 GLfloat z,
4599 GLfloat w) {
4600 GL_SERVICE_LOG("glVertexAttrib4f"
4601 << "(" << indx << ", " << x << ", " << y << ", " << z << ", "
4602 << w << ")");
4603 g_driver_gl.debug_fn.glVertexAttrib4fFn(indx, x, y, z, w);
4606 static void GL_BINDING_CALL
4607 Debug_glVertexAttrib4fv(GLuint indx, const GLfloat* values) {
4608 GL_SERVICE_LOG("glVertexAttrib4fv"
4609 << "(" << indx << ", " << static_cast<const void*>(values)
4610 << ")");
4611 g_driver_gl.debug_fn.glVertexAttrib4fvFn(indx, values);
4614 static void GL_BINDING_CALL
4615 Debug_glVertexAttribDivisorANGLE(GLuint index, GLuint divisor) {
4616 GL_SERVICE_LOG("glVertexAttribDivisorANGLE"
4617 << "(" << index << ", " << divisor << ")");
4618 g_driver_gl.debug_fn.glVertexAttribDivisorANGLEFn(index, divisor);
4621 static void GL_BINDING_CALL
4622 Debug_glVertexAttribI4i(GLuint indx, GLint x, GLint y, GLint z, GLint w) {
4623 GL_SERVICE_LOG("glVertexAttribI4i"
4624 << "(" << indx << ", " << x << ", " << y << ", " << z << ", "
4625 << w << ")");
4626 g_driver_gl.debug_fn.glVertexAttribI4iFn(indx, x, y, z, w);
4629 static void GL_BINDING_CALL
4630 Debug_glVertexAttribI4iv(GLuint indx, const GLint* values) {
4631 GL_SERVICE_LOG("glVertexAttribI4iv"
4632 << "(" << indx << ", " << static_cast<const void*>(values)
4633 << ")");
4634 g_driver_gl.debug_fn.glVertexAttribI4ivFn(indx, values);
4637 static void GL_BINDING_CALL
4638 Debug_glVertexAttribI4ui(GLuint indx, GLuint x, GLuint y, GLuint z, GLuint w) {
4639 GL_SERVICE_LOG("glVertexAttribI4ui"
4640 << "(" << indx << ", " << x << ", " << y << ", " << z << ", "
4641 << w << ")");
4642 g_driver_gl.debug_fn.glVertexAttribI4uiFn(indx, x, y, z, w);
4645 static void GL_BINDING_CALL
4646 Debug_glVertexAttribI4uiv(GLuint indx, const GLuint* values) {
4647 GL_SERVICE_LOG("glVertexAttribI4uiv"
4648 << "(" << indx << ", " << static_cast<const void*>(values)
4649 << ")");
4650 g_driver_gl.debug_fn.glVertexAttribI4uivFn(indx, values);
4653 static void GL_BINDING_CALL Debug_glVertexAttribIPointer(GLuint indx,
4654 GLint size,
4655 GLenum type,
4656 GLsizei stride,
4657 const void* ptr) {
4658 GL_SERVICE_LOG("glVertexAttribIPointer"
4659 << "(" << indx << ", " << size << ", "
4660 << GLEnums::GetStringEnum(type) << ", " << stride << ", "
4661 << static_cast<const void*>(ptr) << ")");
4662 g_driver_gl.debug_fn.glVertexAttribIPointerFn(indx, size, type, stride, ptr);
4665 static void GL_BINDING_CALL Debug_glVertexAttribPointer(GLuint indx,
4666 GLint size,
4667 GLenum type,
4668 GLboolean normalized,
4669 GLsizei stride,
4670 const void* ptr) {
4671 GL_SERVICE_LOG("glVertexAttribPointer"
4672 << "(" << indx << ", " << size << ", "
4673 << GLEnums::GetStringEnum(type) << ", "
4674 << GLEnums::GetStringBool(normalized) << ", " << stride << ", "
4675 << static_cast<const void*>(ptr) << ")");
4676 g_driver_gl.debug_fn.glVertexAttribPointerFn(indx, size, type, normalized,
4677 stride, ptr);
4680 static void GL_BINDING_CALL
4681 Debug_glViewport(GLint x, GLint y, GLsizei width, GLsizei height) {
4682 GL_SERVICE_LOG("glViewport"
4683 << "(" << x << ", " << y << ", " << width << ", " << height
4684 << ")");
4685 g_driver_gl.debug_fn.glViewportFn(x, y, width, height);
4688 static GLenum GL_BINDING_CALL
4689 Debug_glWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout) {
4690 GL_SERVICE_LOG("glWaitSync"
4691 << "(" << sync << ", " << flags << ", " << timeout << ")");
4692 GLenum result = g_driver_gl.debug_fn.glWaitSyncFn(sync, flags, timeout);
4693 GL_SERVICE_LOG("GL_RESULT: " << result);
4694 return result;
4696 } // extern "C"
4698 void DriverGL::InitializeDebugBindings() {
4699 if (!debug_fn.glActiveTextureFn) {
4700 debug_fn.glActiveTextureFn = fn.glActiveTextureFn;
4701 fn.glActiveTextureFn = Debug_glActiveTexture;
4703 if (!debug_fn.glAttachShaderFn) {
4704 debug_fn.glAttachShaderFn = fn.glAttachShaderFn;
4705 fn.glAttachShaderFn = Debug_glAttachShader;
4707 if (!debug_fn.glBeginQueryFn) {
4708 debug_fn.glBeginQueryFn = fn.glBeginQueryFn;
4709 fn.glBeginQueryFn = Debug_glBeginQuery;
4711 if (!debug_fn.glBeginQueryARBFn) {
4712 debug_fn.glBeginQueryARBFn = fn.glBeginQueryARBFn;
4713 fn.glBeginQueryARBFn = Debug_glBeginQueryARB;
4715 if (!debug_fn.glBeginTransformFeedbackFn) {
4716 debug_fn.glBeginTransformFeedbackFn = fn.glBeginTransformFeedbackFn;
4717 fn.glBeginTransformFeedbackFn = Debug_glBeginTransformFeedback;
4719 if (!debug_fn.glBindAttribLocationFn) {
4720 debug_fn.glBindAttribLocationFn = fn.glBindAttribLocationFn;
4721 fn.glBindAttribLocationFn = Debug_glBindAttribLocation;
4723 if (!debug_fn.glBindBufferFn) {
4724 debug_fn.glBindBufferFn = fn.glBindBufferFn;
4725 fn.glBindBufferFn = Debug_glBindBuffer;
4727 if (!debug_fn.glBindBufferBaseFn) {
4728 debug_fn.glBindBufferBaseFn = fn.glBindBufferBaseFn;
4729 fn.glBindBufferBaseFn = Debug_glBindBufferBase;
4731 if (!debug_fn.glBindBufferRangeFn) {
4732 debug_fn.glBindBufferRangeFn = fn.glBindBufferRangeFn;
4733 fn.glBindBufferRangeFn = Debug_glBindBufferRange;
4735 if (!debug_fn.glBindFragDataLocationFn) {
4736 debug_fn.glBindFragDataLocationFn = fn.glBindFragDataLocationFn;
4737 fn.glBindFragDataLocationFn = Debug_glBindFragDataLocation;
4739 if (!debug_fn.glBindFragDataLocationIndexedFn) {
4740 debug_fn.glBindFragDataLocationIndexedFn =
4741 fn.glBindFragDataLocationIndexedFn;
4742 fn.glBindFragDataLocationIndexedFn = Debug_glBindFragDataLocationIndexed;
4744 if (!debug_fn.glBindFramebufferEXTFn) {
4745 debug_fn.glBindFramebufferEXTFn = fn.glBindFramebufferEXTFn;
4746 fn.glBindFramebufferEXTFn = Debug_glBindFramebufferEXT;
4748 if (!debug_fn.glBindRenderbufferEXTFn) {
4749 debug_fn.glBindRenderbufferEXTFn = fn.glBindRenderbufferEXTFn;
4750 fn.glBindRenderbufferEXTFn = Debug_glBindRenderbufferEXT;
4752 if (!debug_fn.glBindSamplerFn) {
4753 debug_fn.glBindSamplerFn = fn.glBindSamplerFn;
4754 fn.glBindSamplerFn = Debug_glBindSampler;
4756 if (!debug_fn.glBindTextureFn) {
4757 debug_fn.glBindTextureFn = fn.glBindTextureFn;
4758 fn.glBindTextureFn = Debug_glBindTexture;
4760 if (!debug_fn.glBindTransformFeedbackFn) {
4761 debug_fn.glBindTransformFeedbackFn = fn.glBindTransformFeedbackFn;
4762 fn.glBindTransformFeedbackFn = Debug_glBindTransformFeedback;
4764 if (!debug_fn.glBindVertexArrayOESFn) {
4765 debug_fn.glBindVertexArrayOESFn = fn.glBindVertexArrayOESFn;
4766 fn.glBindVertexArrayOESFn = Debug_glBindVertexArrayOES;
4768 if (!debug_fn.glBlendBarrierKHRFn) {
4769 debug_fn.glBlendBarrierKHRFn = fn.glBlendBarrierKHRFn;
4770 fn.glBlendBarrierKHRFn = Debug_glBlendBarrierKHR;
4772 if (!debug_fn.glBlendColorFn) {
4773 debug_fn.glBlendColorFn = fn.glBlendColorFn;
4774 fn.glBlendColorFn = Debug_glBlendColor;
4776 if (!debug_fn.glBlendEquationFn) {
4777 debug_fn.glBlendEquationFn = fn.glBlendEquationFn;
4778 fn.glBlendEquationFn = Debug_glBlendEquation;
4780 if (!debug_fn.glBlendEquationSeparateFn) {
4781 debug_fn.glBlendEquationSeparateFn = fn.glBlendEquationSeparateFn;
4782 fn.glBlendEquationSeparateFn = Debug_glBlendEquationSeparate;
4784 if (!debug_fn.glBlendFuncFn) {
4785 debug_fn.glBlendFuncFn = fn.glBlendFuncFn;
4786 fn.glBlendFuncFn = Debug_glBlendFunc;
4788 if (!debug_fn.glBlendFuncSeparateFn) {
4789 debug_fn.glBlendFuncSeparateFn = fn.glBlendFuncSeparateFn;
4790 fn.glBlendFuncSeparateFn = Debug_glBlendFuncSeparate;
4792 if (!debug_fn.glBlitFramebufferFn) {
4793 debug_fn.glBlitFramebufferFn = fn.glBlitFramebufferFn;
4794 fn.glBlitFramebufferFn = Debug_glBlitFramebuffer;
4796 if (!debug_fn.glBlitFramebufferANGLEFn) {
4797 debug_fn.glBlitFramebufferANGLEFn = fn.glBlitFramebufferANGLEFn;
4798 fn.glBlitFramebufferANGLEFn = Debug_glBlitFramebufferANGLE;
4800 if (!debug_fn.glBlitFramebufferEXTFn) {
4801 debug_fn.glBlitFramebufferEXTFn = fn.glBlitFramebufferEXTFn;
4802 fn.glBlitFramebufferEXTFn = Debug_glBlitFramebufferEXT;
4804 if (!debug_fn.glBufferDataFn) {
4805 debug_fn.glBufferDataFn = fn.glBufferDataFn;
4806 fn.glBufferDataFn = Debug_glBufferData;
4808 if (!debug_fn.glBufferSubDataFn) {
4809 debug_fn.glBufferSubDataFn = fn.glBufferSubDataFn;
4810 fn.glBufferSubDataFn = Debug_glBufferSubData;
4812 if (!debug_fn.glCheckFramebufferStatusEXTFn) {
4813 debug_fn.glCheckFramebufferStatusEXTFn = fn.glCheckFramebufferStatusEXTFn;
4814 fn.glCheckFramebufferStatusEXTFn = Debug_glCheckFramebufferStatusEXT;
4816 if (!debug_fn.glClearFn) {
4817 debug_fn.glClearFn = fn.glClearFn;
4818 fn.glClearFn = Debug_glClear;
4820 if (!debug_fn.glClearBufferfiFn) {
4821 debug_fn.glClearBufferfiFn = fn.glClearBufferfiFn;
4822 fn.glClearBufferfiFn = Debug_glClearBufferfi;
4824 if (!debug_fn.glClearBufferfvFn) {
4825 debug_fn.glClearBufferfvFn = fn.glClearBufferfvFn;
4826 fn.glClearBufferfvFn = Debug_glClearBufferfv;
4828 if (!debug_fn.glClearBufferivFn) {
4829 debug_fn.glClearBufferivFn = fn.glClearBufferivFn;
4830 fn.glClearBufferivFn = Debug_glClearBufferiv;
4832 if (!debug_fn.glClearBufferuivFn) {
4833 debug_fn.glClearBufferuivFn = fn.glClearBufferuivFn;
4834 fn.glClearBufferuivFn = Debug_glClearBufferuiv;
4836 if (!debug_fn.glClearColorFn) {
4837 debug_fn.glClearColorFn = fn.glClearColorFn;
4838 fn.glClearColorFn = Debug_glClearColor;
4840 if (!debug_fn.glClearDepthFn) {
4841 debug_fn.glClearDepthFn = fn.glClearDepthFn;
4842 fn.glClearDepthFn = Debug_glClearDepth;
4844 if (!debug_fn.glClearDepthfFn) {
4845 debug_fn.glClearDepthfFn = fn.glClearDepthfFn;
4846 fn.glClearDepthfFn = Debug_glClearDepthf;
4848 if (!debug_fn.glClearStencilFn) {
4849 debug_fn.glClearStencilFn = fn.glClearStencilFn;
4850 fn.glClearStencilFn = Debug_glClearStencil;
4852 if (!debug_fn.glClientWaitSyncFn) {
4853 debug_fn.glClientWaitSyncFn = fn.glClientWaitSyncFn;
4854 fn.glClientWaitSyncFn = Debug_glClientWaitSync;
4856 if (!debug_fn.glColorMaskFn) {
4857 debug_fn.glColorMaskFn = fn.glColorMaskFn;
4858 fn.glColorMaskFn = Debug_glColorMask;
4860 if (!debug_fn.glCompileShaderFn) {
4861 debug_fn.glCompileShaderFn = fn.glCompileShaderFn;
4862 fn.glCompileShaderFn = Debug_glCompileShader;
4864 if (!debug_fn.glCompressedTexImage2DFn) {
4865 debug_fn.glCompressedTexImage2DFn = fn.glCompressedTexImage2DFn;
4866 fn.glCompressedTexImage2DFn = Debug_glCompressedTexImage2D;
4868 if (!debug_fn.glCompressedTexImage3DFn) {
4869 debug_fn.glCompressedTexImage3DFn = fn.glCompressedTexImage3DFn;
4870 fn.glCompressedTexImage3DFn = Debug_glCompressedTexImage3D;
4872 if (!debug_fn.glCompressedTexSubImage2DFn) {
4873 debug_fn.glCompressedTexSubImage2DFn = fn.glCompressedTexSubImage2DFn;
4874 fn.glCompressedTexSubImage2DFn = Debug_glCompressedTexSubImage2D;
4876 if (!debug_fn.glCopyBufferSubDataFn) {
4877 debug_fn.glCopyBufferSubDataFn = fn.glCopyBufferSubDataFn;
4878 fn.glCopyBufferSubDataFn = Debug_glCopyBufferSubData;
4880 if (!debug_fn.glCopyTexImage2DFn) {
4881 debug_fn.glCopyTexImage2DFn = fn.glCopyTexImage2DFn;
4882 fn.glCopyTexImage2DFn = Debug_glCopyTexImage2D;
4884 if (!debug_fn.glCopyTexSubImage2DFn) {
4885 debug_fn.glCopyTexSubImage2DFn = fn.glCopyTexSubImage2DFn;
4886 fn.glCopyTexSubImage2DFn = Debug_glCopyTexSubImage2D;
4888 if (!debug_fn.glCopyTexSubImage3DFn) {
4889 debug_fn.glCopyTexSubImage3DFn = fn.glCopyTexSubImage3DFn;
4890 fn.glCopyTexSubImage3DFn = Debug_glCopyTexSubImage3D;
4892 if (!debug_fn.glCreateProgramFn) {
4893 debug_fn.glCreateProgramFn = fn.glCreateProgramFn;
4894 fn.glCreateProgramFn = Debug_glCreateProgram;
4896 if (!debug_fn.glCreateShaderFn) {
4897 debug_fn.glCreateShaderFn = fn.glCreateShaderFn;
4898 fn.glCreateShaderFn = Debug_glCreateShader;
4900 if (!debug_fn.glCullFaceFn) {
4901 debug_fn.glCullFaceFn = fn.glCullFaceFn;
4902 fn.glCullFaceFn = Debug_glCullFace;
4904 if (!debug_fn.glDeleteBuffersARBFn) {
4905 debug_fn.glDeleteBuffersARBFn = fn.glDeleteBuffersARBFn;
4906 fn.glDeleteBuffersARBFn = Debug_glDeleteBuffersARB;
4908 if (!debug_fn.glDeleteFencesAPPLEFn) {
4909 debug_fn.glDeleteFencesAPPLEFn = fn.glDeleteFencesAPPLEFn;
4910 fn.glDeleteFencesAPPLEFn = Debug_glDeleteFencesAPPLE;
4912 if (!debug_fn.glDeleteFencesNVFn) {
4913 debug_fn.glDeleteFencesNVFn = fn.glDeleteFencesNVFn;
4914 fn.glDeleteFencesNVFn = Debug_glDeleteFencesNV;
4916 if (!debug_fn.glDeleteFramebuffersEXTFn) {
4917 debug_fn.glDeleteFramebuffersEXTFn = fn.glDeleteFramebuffersEXTFn;
4918 fn.glDeleteFramebuffersEXTFn = Debug_glDeleteFramebuffersEXT;
4920 if (!debug_fn.glDeleteProgramFn) {
4921 debug_fn.glDeleteProgramFn = fn.glDeleteProgramFn;
4922 fn.glDeleteProgramFn = Debug_glDeleteProgram;
4924 if (!debug_fn.glDeleteQueriesFn) {
4925 debug_fn.glDeleteQueriesFn = fn.glDeleteQueriesFn;
4926 fn.glDeleteQueriesFn = Debug_glDeleteQueries;
4928 if (!debug_fn.glDeleteQueriesARBFn) {
4929 debug_fn.glDeleteQueriesARBFn = fn.glDeleteQueriesARBFn;
4930 fn.glDeleteQueriesARBFn = Debug_glDeleteQueriesARB;
4932 if (!debug_fn.glDeleteRenderbuffersEXTFn) {
4933 debug_fn.glDeleteRenderbuffersEXTFn = fn.glDeleteRenderbuffersEXTFn;
4934 fn.glDeleteRenderbuffersEXTFn = Debug_glDeleteRenderbuffersEXT;
4936 if (!debug_fn.glDeleteSamplersFn) {
4937 debug_fn.glDeleteSamplersFn = fn.glDeleteSamplersFn;
4938 fn.glDeleteSamplersFn = Debug_glDeleteSamplers;
4940 if (!debug_fn.glDeleteShaderFn) {
4941 debug_fn.glDeleteShaderFn = fn.glDeleteShaderFn;
4942 fn.glDeleteShaderFn = Debug_glDeleteShader;
4944 if (!debug_fn.glDeleteSyncFn) {
4945 debug_fn.glDeleteSyncFn = fn.glDeleteSyncFn;
4946 fn.glDeleteSyncFn = Debug_glDeleteSync;
4948 if (!debug_fn.glDeleteTexturesFn) {
4949 debug_fn.glDeleteTexturesFn = fn.glDeleteTexturesFn;
4950 fn.glDeleteTexturesFn = Debug_glDeleteTextures;
4952 if (!debug_fn.glDeleteTransformFeedbacksFn) {
4953 debug_fn.glDeleteTransformFeedbacksFn = fn.glDeleteTransformFeedbacksFn;
4954 fn.glDeleteTransformFeedbacksFn = Debug_glDeleteTransformFeedbacks;
4956 if (!debug_fn.glDeleteVertexArraysOESFn) {
4957 debug_fn.glDeleteVertexArraysOESFn = fn.glDeleteVertexArraysOESFn;
4958 fn.glDeleteVertexArraysOESFn = Debug_glDeleteVertexArraysOES;
4960 if (!debug_fn.glDepthFuncFn) {
4961 debug_fn.glDepthFuncFn = fn.glDepthFuncFn;
4962 fn.glDepthFuncFn = Debug_glDepthFunc;
4964 if (!debug_fn.glDepthMaskFn) {
4965 debug_fn.glDepthMaskFn = fn.glDepthMaskFn;
4966 fn.glDepthMaskFn = Debug_glDepthMask;
4968 if (!debug_fn.glDepthRangeFn) {
4969 debug_fn.glDepthRangeFn = fn.glDepthRangeFn;
4970 fn.glDepthRangeFn = Debug_glDepthRange;
4972 if (!debug_fn.glDepthRangefFn) {
4973 debug_fn.glDepthRangefFn = fn.glDepthRangefFn;
4974 fn.glDepthRangefFn = Debug_glDepthRangef;
4976 if (!debug_fn.glDetachShaderFn) {
4977 debug_fn.glDetachShaderFn = fn.glDetachShaderFn;
4978 fn.glDetachShaderFn = Debug_glDetachShader;
4980 if (!debug_fn.glDisableFn) {
4981 debug_fn.glDisableFn = fn.glDisableFn;
4982 fn.glDisableFn = Debug_glDisable;
4984 if (!debug_fn.glDisableVertexAttribArrayFn) {
4985 debug_fn.glDisableVertexAttribArrayFn = fn.glDisableVertexAttribArrayFn;
4986 fn.glDisableVertexAttribArrayFn = Debug_glDisableVertexAttribArray;
4988 if (!debug_fn.glDiscardFramebufferEXTFn) {
4989 debug_fn.glDiscardFramebufferEXTFn = fn.glDiscardFramebufferEXTFn;
4990 fn.glDiscardFramebufferEXTFn = Debug_glDiscardFramebufferEXT;
4992 if (!debug_fn.glDrawArraysFn) {
4993 debug_fn.glDrawArraysFn = fn.glDrawArraysFn;
4994 fn.glDrawArraysFn = Debug_glDrawArrays;
4996 if (!debug_fn.glDrawArraysInstancedANGLEFn) {
4997 debug_fn.glDrawArraysInstancedANGLEFn = fn.glDrawArraysInstancedANGLEFn;
4998 fn.glDrawArraysInstancedANGLEFn = Debug_glDrawArraysInstancedANGLE;
5000 if (!debug_fn.glDrawBufferFn) {
5001 debug_fn.glDrawBufferFn = fn.glDrawBufferFn;
5002 fn.glDrawBufferFn = Debug_glDrawBuffer;
5004 if (!debug_fn.glDrawBuffersARBFn) {
5005 debug_fn.glDrawBuffersARBFn = fn.glDrawBuffersARBFn;
5006 fn.glDrawBuffersARBFn = Debug_glDrawBuffersARB;
5008 if (!debug_fn.glDrawElementsFn) {
5009 debug_fn.glDrawElementsFn = fn.glDrawElementsFn;
5010 fn.glDrawElementsFn = Debug_glDrawElements;
5012 if (!debug_fn.glDrawElementsInstancedANGLEFn) {
5013 debug_fn.glDrawElementsInstancedANGLEFn = fn.glDrawElementsInstancedANGLEFn;
5014 fn.glDrawElementsInstancedANGLEFn = Debug_glDrawElementsInstancedANGLE;
5016 if (!debug_fn.glDrawRangeElementsFn) {
5017 debug_fn.glDrawRangeElementsFn = fn.glDrawRangeElementsFn;
5018 fn.glDrawRangeElementsFn = Debug_glDrawRangeElements;
5020 if (!debug_fn.glEGLImageTargetRenderbufferStorageOESFn) {
5021 debug_fn.glEGLImageTargetRenderbufferStorageOESFn =
5022 fn.glEGLImageTargetRenderbufferStorageOESFn;
5023 fn.glEGLImageTargetRenderbufferStorageOESFn =
5024 Debug_glEGLImageTargetRenderbufferStorageOES;
5026 if (!debug_fn.glEGLImageTargetTexture2DOESFn) {
5027 debug_fn.glEGLImageTargetTexture2DOESFn = fn.glEGLImageTargetTexture2DOESFn;
5028 fn.glEGLImageTargetTexture2DOESFn = Debug_glEGLImageTargetTexture2DOES;
5030 if (!debug_fn.glEnableFn) {
5031 debug_fn.glEnableFn = fn.glEnableFn;
5032 fn.glEnableFn = Debug_glEnable;
5034 if (!debug_fn.glEnableVertexAttribArrayFn) {
5035 debug_fn.glEnableVertexAttribArrayFn = fn.glEnableVertexAttribArrayFn;
5036 fn.glEnableVertexAttribArrayFn = Debug_glEnableVertexAttribArray;
5038 if (!debug_fn.glEndQueryFn) {
5039 debug_fn.glEndQueryFn = fn.glEndQueryFn;
5040 fn.glEndQueryFn = Debug_glEndQuery;
5042 if (!debug_fn.glEndQueryARBFn) {
5043 debug_fn.glEndQueryARBFn = fn.glEndQueryARBFn;
5044 fn.glEndQueryARBFn = Debug_glEndQueryARB;
5046 if (!debug_fn.glEndTransformFeedbackFn) {
5047 debug_fn.glEndTransformFeedbackFn = fn.glEndTransformFeedbackFn;
5048 fn.glEndTransformFeedbackFn = Debug_glEndTransformFeedback;
5050 if (!debug_fn.glFenceSyncFn) {
5051 debug_fn.glFenceSyncFn = fn.glFenceSyncFn;
5052 fn.glFenceSyncFn = Debug_glFenceSync;
5054 if (!debug_fn.glFinishFn) {
5055 debug_fn.glFinishFn = fn.glFinishFn;
5056 fn.glFinishFn = Debug_glFinish;
5058 if (!debug_fn.glFinishFenceAPPLEFn) {
5059 debug_fn.glFinishFenceAPPLEFn = fn.glFinishFenceAPPLEFn;
5060 fn.glFinishFenceAPPLEFn = Debug_glFinishFenceAPPLE;
5062 if (!debug_fn.glFinishFenceNVFn) {
5063 debug_fn.glFinishFenceNVFn = fn.glFinishFenceNVFn;
5064 fn.glFinishFenceNVFn = Debug_glFinishFenceNV;
5066 if (!debug_fn.glFlushFn) {
5067 debug_fn.glFlushFn = fn.glFlushFn;
5068 fn.glFlushFn = Debug_glFlush;
5070 if (!debug_fn.glFlushMappedBufferRangeFn) {
5071 debug_fn.glFlushMappedBufferRangeFn = fn.glFlushMappedBufferRangeFn;
5072 fn.glFlushMappedBufferRangeFn = Debug_glFlushMappedBufferRange;
5074 if (!debug_fn.glFramebufferRenderbufferEXTFn) {
5075 debug_fn.glFramebufferRenderbufferEXTFn = fn.glFramebufferRenderbufferEXTFn;
5076 fn.glFramebufferRenderbufferEXTFn = Debug_glFramebufferRenderbufferEXT;
5078 if (!debug_fn.glFramebufferTexture2DEXTFn) {
5079 debug_fn.glFramebufferTexture2DEXTFn = fn.glFramebufferTexture2DEXTFn;
5080 fn.glFramebufferTexture2DEXTFn = Debug_glFramebufferTexture2DEXT;
5082 if (!debug_fn.glFramebufferTexture2DMultisampleEXTFn) {
5083 debug_fn.glFramebufferTexture2DMultisampleEXTFn =
5084 fn.glFramebufferTexture2DMultisampleEXTFn;
5085 fn.glFramebufferTexture2DMultisampleEXTFn =
5086 Debug_glFramebufferTexture2DMultisampleEXT;
5088 if (!debug_fn.glFramebufferTexture2DMultisampleIMGFn) {
5089 debug_fn.glFramebufferTexture2DMultisampleIMGFn =
5090 fn.glFramebufferTexture2DMultisampleIMGFn;
5091 fn.glFramebufferTexture2DMultisampleIMGFn =
5092 Debug_glFramebufferTexture2DMultisampleIMG;
5094 if (!debug_fn.glFramebufferTextureLayerFn) {
5095 debug_fn.glFramebufferTextureLayerFn = fn.glFramebufferTextureLayerFn;
5096 fn.glFramebufferTextureLayerFn = Debug_glFramebufferTextureLayer;
5098 if (!debug_fn.glFrontFaceFn) {
5099 debug_fn.glFrontFaceFn = fn.glFrontFaceFn;
5100 fn.glFrontFaceFn = Debug_glFrontFace;
5102 if (!debug_fn.glGenBuffersARBFn) {
5103 debug_fn.glGenBuffersARBFn = fn.glGenBuffersARBFn;
5104 fn.glGenBuffersARBFn = Debug_glGenBuffersARB;
5106 if (!debug_fn.glGenerateMipmapEXTFn) {
5107 debug_fn.glGenerateMipmapEXTFn = fn.glGenerateMipmapEXTFn;
5108 fn.glGenerateMipmapEXTFn = Debug_glGenerateMipmapEXT;
5110 if (!debug_fn.glGenFencesAPPLEFn) {
5111 debug_fn.glGenFencesAPPLEFn = fn.glGenFencesAPPLEFn;
5112 fn.glGenFencesAPPLEFn = Debug_glGenFencesAPPLE;
5114 if (!debug_fn.glGenFencesNVFn) {
5115 debug_fn.glGenFencesNVFn = fn.glGenFencesNVFn;
5116 fn.glGenFencesNVFn = Debug_glGenFencesNV;
5118 if (!debug_fn.glGenFramebuffersEXTFn) {
5119 debug_fn.glGenFramebuffersEXTFn = fn.glGenFramebuffersEXTFn;
5120 fn.glGenFramebuffersEXTFn = Debug_glGenFramebuffersEXT;
5122 if (!debug_fn.glGenQueriesFn) {
5123 debug_fn.glGenQueriesFn = fn.glGenQueriesFn;
5124 fn.glGenQueriesFn = Debug_glGenQueries;
5126 if (!debug_fn.glGenQueriesARBFn) {
5127 debug_fn.glGenQueriesARBFn = fn.glGenQueriesARBFn;
5128 fn.glGenQueriesARBFn = Debug_glGenQueriesARB;
5130 if (!debug_fn.glGenRenderbuffersEXTFn) {
5131 debug_fn.glGenRenderbuffersEXTFn = fn.glGenRenderbuffersEXTFn;
5132 fn.glGenRenderbuffersEXTFn = Debug_glGenRenderbuffersEXT;
5134 if (!debug_fn.glGenSamplersFn) {
5135 debug_fn.glGenSamplersFn = fn.glGenSamplersFn;
5136 fn.glGenSamplersFn = Debug_glGenSamplers;
5138 if (!debug_fn.glGenTexturesFn) {
5139 debug_fn.glGenTexturesFn = fn.glGenTexturesFn;
5140 fn.glGenTexturesFn = Debug_glGenTextures;
5142 if (!debug_fn.glGenTransformFeedbacksFn) {
5143 debug_fn.glGenTransformFeedbacksFn = fn.glGenTransformFeedbacksFn;
5144 fn.glGenTransformFeedbacksFn = Debug_glGenTransformFeedbacks;
5146 if (!debug_fn.glGenVertexArraysOESFn) {
5147 debug_fn.glGenVertexArraysOESFn = fn.glGenVertexArraysOESFn;
5148 fn.glGenVertexArraysOESFn = Debug_glGenVertexArraysOES;
5150 if (!debug_fn.glGetActiveAttribFn) {
5151 debug_fn.glGetActiveAttribFn = fn.glGetActiveAttribFn;
5152 fn.glGetActiveAttribFn = Debug_glGetActiveAttrib;
5154 if (!debug_fn.glGetActiveUniformFn) {
5155 debug_fn.glGetActiveUniformFn = fn.glGetActiveUniformFn;
5156 fn.glGetActiveUniformFn = Debug_glGetActiveUniform;
5158 if (!debug_fn.glGetActiveUniformBlockivFn) {
5159 debug_fn.glGetActiveUniformBlockivFn = fn.glGetActiveUniformBlockivFn;
5160 fn.glGetActiveUniformBlockivFn = Debug_glGetActiveUniformBlockiv;
5162 if (!debug_fn.glGetActiveUniformBlockNameFn) {
5163 debug_fn.glGetActiveUniformBlockNameFn = fn.glGetActiveUniformBlockNameFn;
5164 fn.glGetActiveUniformBlockNameFn = Debug_glGetActiveUniformBlockName;
5166 if (!debug_fn.glGetActiveUniformsivFn) {
5167 debug_fn.glGetActiveUniformsivFn = fn.glGetActiveUniformsivFn;
5168 fn.glGetActiveUniformsivFn = Debug_glGetActiveUniformsiv;
5170 if (!debug_fn.glGetAttachedShadersFn) {
5171 debug_fn.glGetAttachedShadersFn = fn.glGetAttachedShadersFn;
5172 fn.glGetAttachedShadersFn = Debug_glGetAttachedShaders;
5174 if (!debug_fn.glGetAttribLocationFn) {
5175 debug_fn.glGetAttribLocationFn = fn.glGetAttribLocationFn;
5176 fn.glGetAttribLocationFn = Debug_glGetAttribLocation;
5178 if (!debug_fn.glGetBooleanvFn) {
5179 debug_fn.glGetBooleanvFn = fn.glGetBooleanvFn;
5180 fn.glGetBooleanvFn = Debug_glGetBooleanv;
5182 if (!debug_fn.glGetBufferParameterivFn) {
5183 debug_fn.glGetBufferParameterivFn = fn.glGetBufferParameterivFn;
5184 fn.glGetBufferParameterivFn = Debug_glGetBufferParameteriv;
5186 if (!debug_fn.glGetErrorFn) {
5187 debug_fn.glGetErrorFn = fn.glGetErrorFn;
5188 fn.glGetErrorFn = Debug_glGetError;
5190 if (!debug_fn.glGetFenceivNVFn) {
5191 debug_fn.glGetFenceivNVFn = fn.glGetFenceivNVFn;
5192 fn.glGetFenceivNVFn = Debug_glGetFenceivNV;
5194 if (!debug_fn.glGetFloatvFn) {
5195 debug_fn.glGetFloatvFn = fn.glGetFloatvFn;
5196 fn.glGetFloatvFn = Debug_glGetFloatv;
5198 if (!debug_fn.glGetFragDataLocationFn) {
5199 debug_fn.glGetFragDataLocationFn = fn.glGetFragDataLocationFn;
5200 fn.glGetFragDataLocationFn = Debug_glGetFragDataLocation;
5202 if (!debug_fn.glGetFramebufferAttachmentParameterivEXTFn) {
5203 debug_fn.glGetFramebufferAttachmentParameterivEXTFn =
5204 fn.glGetFramebufferAttachmentParameterivEXTFn;
5205 fn.glGetFramebufferAttachmentParameterivEXTFn =
5206 Debug_glGetFramebufferAttachmentParameterivEXT;
5208 if (!debug_fn.glGetGraphicsResetStatusARBFn) {
5209 debug_fn.glGetGraphicsResetStatusARBFn = fn.glGetGraphicsResetStatusARBFn;
5210 fn.glGetGraphicsResetStatusARBFn = Debug_glGetGraphicsResetStatusARB;
5212 if (!debug_fn.glGetInteger64i_vFn) {
5213 debug_fn.glGetInteger64i_vFn = fn.glGetInteger64i_vFn;
5214 fn.glGetInteger64i_vFn = Debug_glGetInteger64i_v;
5216 if (!debug_fn.glGetInteger64vFn) {
5217 debug_fn.glGetInteger64vFn = fn.glGetInteger64vFn;
5218 fn.glGetInteger64vFn = Debug_glGetInteger64v;
5220 if (!debug_fn.glGetIntegeri_vFn) {
5221 debug_fn.glGetIntegeri_vFn = fn.glGetIntegeri_vFn;
5222 fn.glGetIntegeri_vFn = Debug_glGetIntegeri_v;
5224 if (!debug_fn.glGetIntegervFn) {
5225 debug_fn.glGetIntegervFn = fn.glGetIntegervFn;
5226 fn.glGetIntegervFn = Debug_glGetIntegerv;
5228 if (!debug_fn.glGetInternalformativFn) {
5229 debug_fn.glGetInternalformativFn = fn.glGetInternalformativFn;
5230 fn.glGetInternalformativFn = Debug_glGetInternalformativ;
5232 if (!debug_fn.glGetProgramBinaryFn) {
5233 debug_fn.glGetProgramBinaryFn = fn.glGetProgramBinaryFn;
5234 fn.glGetProgramBinaryFn = Debug_glGetProgramBinary;
5236 if (!debug_fn.glGetProgramInfoLogFn) {
5237 debug_fn.glGetProgramInfoLogFn = fn.glGetProgramInfoLogFn;
5238 fn.glGetProgramInfoLogFn = Debug_glGetProgramInfoLog;
5240 if (!debug_fn.glGetProgramivFn) {
5241 debug_fn.glGetProgramivFn = fn.glGetProgramivFn;
5242 fn.glGetProgramivFn = Debug_glGetProgramiv;
5244 if (!debug_fn.glGetQueryivFn) {
5245 debug_fn.glGetQueryivFn = fn.glGetQueryivFn;
5246 fn.glGetQueryivFn = Debug_glGetQueryiv;
5248 if (!debug_fn.glGetQueryivARBFn) {
5249 debug_fn.glGetQueryivARBFn = fn.glGetQueryivARBFn;
5250 fn.glGetQueryivARBFn = Debug_glGetQueryivARB;
5252 if (!debug_fn.glGetQueryObjecti64vFn) {
5253 debug_fn.glGetQueryObjecti64vFn = fn.glGetQueryObjecti64vFn;
5254 fn.glGetQueryObjecti64vFn = Debug_glGetQueryObjecti64v;
5256 if (!debug_fn.glGetQueryObjectivFn) {
5257 debug_fn.glGetQueryObjectivFn = fn.glGetQueryObjectivFn;
5258 fn.glGetQueryObjectivFn = Debug_glGetQueryObjectiv;
5260 if (!debug_fn.glGetQueryObjectivARBFn) {
5261 debug_fn.glGetQueryObjectivARBFn = fn.glGetQueryObjectivARBFn;
5262 fn.glGetQueryObjectivARBFn = Debug_glGetQueryObjectivARB;
5264 if (!debug_fn.glGetQueryObjectui64vFn) {
5265 debug_fn.glGetQueryObjectui64vFn = fn.glGetQueryObjectui64vFn;
5266 fn.glGetQueryObjectui64vFn = Debug_glGetQueryObjectui64v;
5268 if (!debug_fn.glGetQueryObjectuivFn) {
5269 debug_fn.glGetQueryObjectuivFn = fn.glGetQueryObjectuivFn;
5270 fn.glGetQueryObjectuivFn = Debug_glGetQueryObjectuiv;
5272 if (!debug_fn.glGetQueryObjectuivARBFn) {
5273 debug_fn.glGetQueryObjectuivARBFn = fn.glGetQueryObjectuivARBFn;
5274 fn.glGetQueryObjectuivARBFn = Debug_glGetQueryObjectuivARB;
5276 if (!debug_fn.glGetRenderbufferParameterivEXTFn) {
5277 debug_fn.glGetRenderbufferParameterivEXTFn =
5278 fn.glGetRenderbufferParameterivEXTFn;
5279 fn.glGetRenderbufferParameterivEXTFn =
5280 Debug_glGetRenderbufferParameterivEXT;
5282 if (!debug_fn.glGetSamplerParameterfvFn) {
5283 debug_fn.glGetSamplerParameterfvFn = fn.glGetSamplerParameterfvFn;
5284 fn.glGetSamplerParameterfvFn = Debug_glGetSamplerParameterfv;
5286 if (!debug_fn.glGetSamplerParameterivFn) {
5287 debug_fn.glGetSamplerParameterivFn = fn.glGetSamplerParameterivFn;
5288 fn.glGetSamplerParameterivFn = Debug_glGetSamplerParameteriv;
5290 if (!debug_fn.glGetShaderInfoLogFn) {
5291 debug_fn.glGetShaderInfoLogFn = fn.glGetShaderInfoLogFn;
5292 fn.glGetShaderInfoLogFn = Debug_glGetShaderInfoLog;
5294 if (!debug_fn.glGetShaderivFn) {
5295 debug_fn.glGetShaderivFn = fn.glGetShaderivFn;
5296 fn.glGetShaderivFn = Debug_glGetShaderiv;
5298 if (!debug_fn.glGetShaderPrecisionFormatFn) {
5299 debug_fn.glGetShaderPrecisionFormatFn = fn.glGetShaderPrecisionFormatFn;
5300 fn.glGetShaderPrecisionFormatFn = Debug_glGetShaderPrecisionFormat;
5302 if (!debug_fn.glGetShaderSourceFn) {
5303 debug_fn.glGetShaderSourceFn = fn.glGetShaderSourceFn;
5304 fn.glGetShaderSourceFn = Debug_glGetShaderSource;
5306 if (!debug_fn.glGetStringFn) {
5307 debug_fn.glGetStringFn = fn.glGetStringFn;
5308 fn.glGetStringFn = Debug_glGetString;
5310 if (!debug_fn.glGetSyncivFn) {
5311 debug_fn.glGetSyncivFn = fn.glGetSyncivFn;
5312 fn.glGetSyncivFn = Debug_glGetSynciv;
5314 if (!debug_fn.glGetTexLevelParameterfvFn) {
5315 debug_fn.glGetTexLevelParameterfvFn = fn.glGetTexLevelParameterfvFn;
5316 fn.glGetTexLevelParameterfvFn = Debug_glGetTexLevelParameterfv;
5318 if (!debug_fn.glGetTexLevelParameterivFn) {
5319 debug_fn.glGetTexLevelParameterivFn = fn.glGetTexLevelParameterivFn;
5320 fn.glGetTexLevelParameterivFn = Debug_glGetTexLevelParameteriv;
5322 if (!debug_fn.glGetTexParameterfvFn) {
5323 debug_fn.glGetTexParameterfvFn = fn.glGetTexParameterfvFn;
5324 fn.glGetTexParameterfvFn = Debug_glGetTexParameterfv;
5326 if (!debug_fn.glGetTexParameterivFn) {
5327 debug_fn.glGetTexParameterivFn = fn.glGetTexParameterivFn;
5328 fn.glGetTexParameterivFn = Debug_glGetTexParameteriv;
5330 if (!debug_fn.glGetTransformFeedbackVaryingFn) {
5331 debug_fn.glGetTransformFeedbackVaryingFn =
5332 fn.glGetTransformFeedbackVaryingFn;
5333 fn.glGetTransformFeedbackVaryingFn = Debug_glGetTransformFeedbackVarying;
5335 if (!debug_fn.glGetTranslatedShaderSourceANGLEFn) {
5336 debug_fn.glGetTranslatedShaderSourceANGLEFn =
5337 fn.glGetTranslatedShaderSourceANGLEFn;
5338 fn.glGetTranslatedShaderSourceANGLEFn =
5339 Debug_glGetTranslatedShaderSourceANGLE;
5341 if (!debug_fn.glGetUniformBlockIndexFn) {
5342 debug_fn.glGetUniformBlockIndexFn = fn.glGetUniformBlockIndexFn;
5343 fn.glGetUniformBlockIndexFn = Debug_glGetUniformBlockIndex;
5345 if (!debug_fn.glGetUniformfvFn) {
5346 debug_fn.glGetUniformfvFn = fn.glGetUniformfvFn;
5347 fn.glGetUniformfvFn = Debug_glGetUniformfv;
5349 if (!debug_fn.glGetUniformIndicesFn) {
5350 debug_fn.glGetUniformIndicesFn = fn.glGetUniformIndicesFn;
5351 fn.glGetUniformIndicesFn = Debug_glGetUniformIndices;
5353 if (!debug_fn.glGetUniformivFn) {
5354 debug_fn.glGetUniformivFn = fn.glGetUniformivFn;
5355 fn.glGetUniformivFn = Debug_glGetUniformiv;
5357 if (!debug_fn.glGetUniformLocationFn) {
5358 debug_fn.glGetUniformLocationFn = fn.glGetUniformLocationFn;
5359 fn.glGetUniformLocationFn = Debug_glGetUniformLocation;
5361 if (!debug_fn.glGetVertexAttribfvFn) {
5362 debug_fn.glGetVertexAttribfvFn = fn.glGetVertexAttribfvFn;
5363 fn.glGetVertexAttribfvFn = Debug_glGetVertexAttribfv;
5365 if (!debug_fn.glGetVertexAttribivFn) {
5366 debug_fn.glGetVertexAttribivFn = fn.glGetVertexAttribivFn;
5367 fn.glGetVertexAttribivFn = Debug_glGetVertexAttribiv;
5369 if (!debug_fn.glGetVertexAttribPointervFn) {
5370 debug_fn.glGetVertexAttribPointervFn = fn.glGetVertexAttribPointervFn;
5371 fn.glGetVertexAttribPointervFn = Debug_glGetVertexAttribPointerv;
5373 if (!debug_fn.glHintFn) {
5374 debug_fn.glHintFn = fn.glHintFn;
5375 fn.glHintFn = Debug_glHint;
5377 if (!debug_fn.glInsertEventMarkerEXTFn) {
5378 debug_fn.glInsertEventMarkerEXTFn = fn.glInsertEventMarkerEXTFn;
5379 fn.glInsertEventMarkerEXTFn = Debug_glInsertEventMarkerEXT;
5381 if (!debug_fn.glInvalidateFramebufferFn) {
5382 debug_fn.glInvalidateFramebufferFn = fn.glInvalidateFramebufferFn;
5383 fn.glInvalidateFramebufferFn = Debug_glInvalidateFramebuffer;
5385 if (!debug_fn.glInvalidateSubFramebufferFn) {
5386 debug_fn.glInvalidateSubFramebufferFn = fn.glInvalidateSubFramebufferFn;
5387 fn.glInvalidateSubFramebufferFn = Debug_glInvalidateSubFramebuffer;
5389 if (!debug_fn.glIsBufferFn) {
5390 debug_fn.glIsBufferFn = fn.glIsBufferFn;
5391 fn.glIsBufferFn = Debug_glIsBuffer;
5393 if (!debug_fn.glIsEnabledFn) {
5394 debug_fn.glIsEnabledFn = fn.glIsEnabledFn;
5395 fn.glIsEnabledFn = Debug_glIsEnabled;
5397 if (!debug_fn.glIsFenceAPPLEFn) {
5398 debug_fn.glIsFenceAPPLEFn = fn.glIsFenceAPPLEFn;
5399 fn.glIsFenceAPPLEFn = Debug_glIsFenceAPPLE;
5401 if (!debug_fn.glIsFenceNVFn) {
5402 debug_fn.glIsFenceNVFn = fn.glIsFenceNVFn;
5403 fn.glIsFenceNVFn = Debug_glIsFenceNV;
5405 if (!debug_fn.glIsFramebufferEXTFn) {
5406 debug_fn.glIsFramebufferEXTFn = fn.glIsFramebufferEXTFn;
5407 fn.glIsFramebufferEXTFn = Debug_glIsFramebufferEXT;
5409 if (!debug_fn.glIsProgramFn) {
5410 debug_fn.glIsProgramFn = fn.glIsProgramFn;
5411 fn.glIsProgramFn = Debug_glIsProgram;
5413 if (!debug_fn.glIsQueryFn) {
5414 debug_fn.glIsQueryFn = fn.glIsQueryFn;
5415 fn.glIsQueryFn = Debug_glIsQuery;
5417 if (!debug_fn.glIsQueryARBFn) {
5418 debug_fn.glIsQueryARBFn = fn.glIsQueryARBFn;
5419 fn.glIsQueryARBFn = Debug_glIsQueryARB;
5421 if (!debug_fn.glIsRenderbufferEXTFn) {
5422 debug_fn.glIsRenderbufferEXTFn = fn.glIsRenderbufferEXTFn;
5423 fn.glIsRenderbufferEXTFn = Debug_glIsRenderbufferEXT;
5425 if (!debug_fn.glIsSamplerFn) {
5426 debug_fn.glIsSamplerFn = fn.glIsSamplerFn;
5427 fn.glIsSamplerFn = Debug_glIsSampler;
5429 if (!debug_fn.glIsShaderFn) {
5430 debug_fn.glIsShaderFn = fn.glIsShaderFn;
5431 fn.glIsShaderFn = Debug_glIsShader;
5433 if (!debug_fn.glIsSyncFn) {
5434 debug_fn.glIsSyncFn = fn.glIsSyncFn;
5435 fn.glIsSyncFn = Debug_glIsSync;
5437 if (!debug_fn.glIsTextureFn) {
5438 debug_fn.glIsTextureFn = fn.glIsTextureFn;
5439 fn.glIsTextureFn = Debug_glIsTexture;
5441 if (!debug_fn.glIsTransformFeedbackFn) {
5442 debug_fn.glIsTransformFeedbackFn = fn.glIsTransformFeedbackFn;
5443 fn.glIsTransformFeedbackFn = Debug_glIsTransformFeedback;
5445 if (!debug_fn.glIsVertexArrayOESFn) {
5446 debug_fn.glIsVertexArrayOESFn = fn.glIsVertexArrayOESFn;
5447 fn.glIsVertexArrayOESFn = Debug_glIsVertexArrayOES;
5449 if (!debug_fn.glLineWidthFn) {
5450 debug_fn.glLineWidthFn = fn.glLineWidthFn;
5451 fn.glLineWidthFn = Debug_glLineWidth;
5453 if (!debug_fn.glLinkProgramFn) {
5454 debug_fn.glLinkProgramFn = fn.glLinkProgramFn;
5455 fn.glLinkProgramFn = Debug_glLinkProgram;
5457 if (!debug_fn.glMapBufferFn) {
5458 debug_fn.glMapBufferFn = fn.glMapBufferFn;
5459 fn.glMapBufferFn = Debug_glMapBuffer;
5461 if (!debug_fn.glMapBufferRangeFn) {
5462 debug_fn.glMapBufferRangeFn = fn.glMapBufferRangeFn;
5463 fn.glMapBufferRangeFn = Debug_glMapBufferRange;
5465 if (!debug_fn.glMatrixLoadfEXTFn) {
5466 debug_fn.glMatrixLoadfEXTFn = fn.glMatrixLoadfEXTFn;
5467 fn.glMatrixLoadfEXTFn = Debug_glMatrixLoadfEXT;
5469 if (!debug_fn.glMatrixLoadIdentityEXTFn) {
5470 debug_fn.glMatrixLoadIdentityEXTFn = fn.glMatrixLoadIdentityEXTFn;
5471 fn.glMatrixLoadIdentityEXTFn = Debug_glMatrixLoadIdentityEXT;
5473 if (!debug_fn.glPauseTransformFeedbackFn) {
5474 debug_fn.glPauseTransformFeedbackFn = fn.glPauseTransformFeedbackFn;
5475 fn.glPauseTransformFeedbackFn = Debug_glPauseTransformFeedback;
5477 if (!debug_fn.glPixelStoreiFn) {
5478 debug_fn.glPixelStoreiFn = fn.glPixelStoreiFn;
5479 fn.glPixelStoreiFn = Debug_glPixelStorei;
5481 if (!debug_fn.glPointParameteriFn) {
5482 debug_fn.glPointParameteriFn = fn.glPointParameteriFn;
5483 fn.glPointParameteriFn = Debug_glPointParameteri;
5485 if (!debug_fn.glPolygonOffsetFn) {
5486 debug_fn.glPolygonOffsetFn = fn.glPolygonOffsetFn;
5487 fn.glPolygonOffsetFn = Debug_glPolygonOffset;
5489 if (!debug_fn.glPopGroupMarkerEXTFn) {
5490 debug_fn.glPopGroupMarkerEXTFn = fn.glPopGroupMarkerEXTFn;
5491 fn.glPopGroupMarkerEXTFn = Debug_glPopGroupMarkerEXT;
5493 if (!debug_fn.glProgramBinaryFn) {
5494 debug_fn.glProgramBinaryFn = fn.glProgramBinaryFn;
5495 fn.glProgramBinaryFn = Debug_glProgramBinary;
5497 if (!debug_fn.glProgramParameteriFn) {
5498 debug_fn.glProgramParameteriFn = fn.glProgramParameteriFn;
5499 fn.glProgramParameteriFn = Debug_glProgramParameteri;
5501 if (!debug_fn.glPushGroupMarkerEXTFn) {
5502 debug_fn.glPushGroupMarkerEXTFn = fn.glPushGroupMarkerEXTFn;
5503 fn.glPushGroupMarkerEXTFn = Debug_glPushGroupMarkerEXT;
5505 if (!debug_fn.glQueryCounterFn) {
5506 debug_fn.glQueryCounterFn = fn.glQueryCounterFn;
5507 fn.glQueryCounterFn = Debug_glQueryCounter;
5509 if (!debug_fn.glReadBufferFn) {
5510 debug_fn.glReadBufferFn = fn.glReadBufferFn;
5511 fn.glReadBufferFn = Debug_glReadBuffer;
5513 if (!debug_fn.glReadPixelsFn) {
5514 debug_fn.glReadPixelsFn = fn.glReadPixelsFn;
5515 fn.glReadPixelsFn = Debug_glReadPixels;
5517 if (!debug_fn.glReleaseShaderCompilerFn) {
5518 debug_fn.glReleaseShaderCompilerFn = fn.glReleaseShaderCompilerFn;
5519 fn.glReleaseShaderCompilerFn = Debug_glReleaseShaderCompiler;
5521 if (!debug_fn.glRenderbufferStorageEXTFn) {
5522 debug_fn.glRenderbufferStorageEXTFn = fn.glRenderbufferStorageEXTFn;
5523 fn.glRenderbufferStorageEXTFn = Debug_glRenderbufferStorageEXT;
5525 if (!debug_fn.glRenderbufferStorageMultisampleFn) {
5526 debug_fn.glRenderbufferStorageMultisampleFn =
5527 fn.glRenderbufferStorageMultisampleFn;
5528 fn.glRenderbufferStorageMultisampleFn =
5529 Debug_glRenderbufferStorageMultisample;
5531 if (!debug_fn.glRenderbufferStorageMultisampleANGLEFn) {
5532 debug_fn.glRenderbufferStorageMultisampleANGLEFn =
5533 fn.glRenderbufferStorageMultisampleANGLEFn;
5534 fn.glRenderbufferStorageMultisampleANGLEFn =
5535 Debug_glRenderbufferStorageMultisampleANGLE;
5537 if (!debug_fn.glRenderbufferStorageMultisampleEXTFn) {
5538 debug_fn.glRenderbufferStorageMultisampleEXTFn =
5539 fn.glRenderbufferStorageMultisampleEXTFn;
5540 fn.glRenderbufferStorageMultisampleEXTFn =
5541 Debug_glRenderbufferStorageMultisampleEXT;
5543 if (!debug_fn.glRenderbufferStorageMultisampleIMGFn) {
5544 debug_fn.glRenderbufferStorageMultisampleIMGFn =
5545 fn.glRenderbufferStorageMultisampleIMGFn;
5546 fn.glRenderbufferStorageMultisampleIMGFn =
5547 Debug_glRenderbufferStorageMultisampleIMG;
5549 if (!debug_fn.glResumeTransformFeedbackFn) {
5550 debug_fn.glResumeTransformFeedbackFn = fn.glResumeTransformFeedbackFn;
5551 fn.glResumeTransformFeedbackFn = Debug_glResumeTransformFeedback;
5553 if (!debug_fn.glSampleCoverageFn) {
5554 debug_fn.glSampleCoverageFn = fn.glSampleCoverageFn;
5555 fn.glSampleCoverageFn = Debug_glSampleCoverage;
5557 if (!debug_fn.glSamplerParameterfFn) {
5558 debug_fn.glSamplerParameterfFn = fn.glSamplerParameterfFn;
5559 fn.glSamplerParameterfFn = Debug_glSamplerParameterf;
5561 if (!debug_fn.glSamplerParameterfvFn) {
5562 debug_fn.glSamplerParameterfvFn = fn.glSamplerParameterfvFn;
5563 fn.glSamplerParameterfvFn = Debug_glSamplerParameterfv;
5565 if (!debug_fn.glSamplerParameteriFn) {
5566 debug_fn.glSamplerParameteriFn = fn.glSamplerParameteriFn;
5567 fn.glSamplerParameteriFn = Debug_glSamplerParameteri;
5569 if (!debug_fn.glSamplerParameterivFn) {
5570 debug_fn.glSamplerParameterivFn = fn.glSamplerParameterivFn;
5571 fn.glSamplerParameterivFn = Debug_glSamplerParameteriv;
5573 if (!debug_fn.glScissorFn) {
5574 debug_fn.glScissorFn = fn.glScissorFn;
5575 fn.glScissorFn = Debug_glScissor;
5577 if (!debug_fn.glSetFenceAPPLEFn) {
5578 debug_fn.glSetFenceAPPLEFn = fn.glSetFenceAPPLEFn;
5579 fn.glSetFenceAPPLEFn = Debug_glSetFenceAPPLE;
5581 if (!debug_fn.glSetFenceNVFn) {
5582 debug_fn.glSetFenceNVFn = fn.glSetFenceNVFn;
5583 fn.glSetFenceNVFn = Debug_glSetFenceNV;
5585 if (!debug_fn.glShaderBinaryFn) {
5586 debug_fn.glShaderBinaryFn = fn.glShaderBinaryFn;
5587 fn.glShaderBinaryFn = Debug_glShaderBinary;
5589 if (!debug_fn.glShaderSourceFn) {
5590 debug_fn.glShaderSourceFn = fn.glShaderSourceFn;
5591 fn.glShaderSourceFn = Debug_glShaderSource;
5593 if (!debug_fn.glStencilFuncFn) {
5594 debug_fn.glStencilFuncFn = fn.glStencilFuncFn;
5595 fn.glStencilFuncFn = Debug_glStencilFunc;
5597 if (!debug_fn.glStencilFuncSeparateFn) {
5598 debug_fn.glStencilFuncSeparateFn = fn.glStencilFuncSeparateFn;
5599 fn.glStencilFuncSeparateFn = Debug_glStencilFuncSeparate;
5601 if (!debug_fn.glStencilMaskFn) {
5602 debug_fn.glStencilMaskFn = fn.glStencilMaskFn;
5603 fn.glStencilMaskFn = Debug_glStencilMask;
5605 if (!debug_fn.glStencilMaskSeparateFn) {
5606 debug_fn.glStencilMaskSeparateFn = fn.glStencilMaskSeparateFn;
5607 fn.glStencilMaskSeparateFn = Debug_glStencilMaskSeparate;
5609 if (!debug_fn.glStencilOpFn) {
5610 debug_fn.glStencilOpFn = fn.glStencilOpFn;
5611 fn.glStencilOpFn = Debug_glStencilOp;
5613 if (!debug_fn.glStencilOpSeparateFn) {
5614 debug_fn.glStencilOpSeparateFn = fn.glStencilOpSeparateFn;
5615 fn.glStencilOpSeparateFn = Debug_glStencilOpSeparate;
5617 if (!debug_fn.glTestFenceAPPLEFn) {
5618 debug_fn.glTestFenceAPPLEFn = fn.glTestFenceAPPLEFn;
5619 fn.glTestFenceAPPLEFn = Debug_glTestFenceAPPLE;
5621 if (!debug_fn.glTestFenceNVFn) {
5622 debug_fn.glTestFenceNVFn = fn.glTestFenceNVFn;
5623 fn.glTestFenceNVFn = Debug_glTestFenceNV;
5625 if (!debug_fn.glTexImage2DFn) {
5626 debug_fn.glTexImage2DFn = fn.glTexImage2DFn;
5627 fn.glTexImage2DFn = Debug_glTexImage2D;
5629 if (!debug_fn.glTexImage3DFn) {
5630 debug_fn.glTexImage3DFn = fn.glTexImage3DFn;
5631 fn.glTexImage3DFn = Debug_glTexImage3D;
5633 if (!debug_fn.glTexParameterfFn) {
5634 debug_fn.glTexParameterfFn = fn.glTexParameterfFn;
5635 fn.glTexParameterfFn = Debug_glTexParameterf;
5637 if (!debug_fn.glTexParameterfvFn) {
5638 debug_fn.glTexParameterfvFn = fn.glTexParameterfvFn;
5639 fn.glTexParameterfvFn = Debug_glTexParameterfv;
5641 if (!debug_fn.glTexParameteriFn) {
5642 debug_fn.glTexParameteriFn = fn.glTexParameteriFn;
5643 fn.glTexParameteriFn = Debug_glTexParameteri;
5645 if (!debug_fn.glTexParameterivFn) {
5646 debug_fn.glTexParameterivFn = fn.glTexParameterivFn;
5647 fn.glTexParameterivFn = Debug_glTexParameteriv;
5649 if (!debug_fn.glTexStorage2DEXTFn) {
5650 debug_fn.glTexStorage2DEXTFn = fn.glTexStorage2DEXTFn;
5651 fn.glTexStorage2DEXTFn = Debug_glTexStorage2DEXT;
5653 if (!debug_fn.glTexStorage3DFn) {
5654 debug_fn.glTexStorage3DFn = fn.glTexStorage3DFn;
5655 fn.glTexStorage3DFn = Debug_glTexStorage3D;
5657 if (!debug_fn.glTexSubImage2DFn) {
5658 debug_fn.glTexSubImage2DFn = fn.glTexSubImage2DFn;
5659 fn.glTexSubImage2DFn = Debug_glTexSubImage2D;
5661 if (!debug_fn.glTransformFeedbackVaryingsFn) {
5662 debug_fn.glTransformFeedbackVaryingsFn = fn.glTransformFeedbackVaryingsFn;
5663 fn.glTransformFeedbackVaryingsFn = Debug_glTransformFeedbackVaryings;
5665 if (!debug_fn.glUniform1fFn) {
5666 debug_fn.glUniform1fFn = fn.glUniform1fFn;
5667 fn.glUniform1fFn = Debug_glUniform1f;
5669 if (!debug_fn.glUniform1fvFn) {
5670 debug_fn.glUniform1fvFn = fn.glUniform1fvFn;
5671 fn.glUniform1fvFn = Debug_glUniform1fv;
5673 if (!debug_fn.glUniform1iFn) {
5674 debug_fn.glUniform1iFn = fn.glUniform1iFn;
5675 fn.glUniform1iFn = Debug_glUniform1i;
5677 if (!debug_fn.glUniform1ivFn) {
5678 debug_fn.glUniform1ivFn = fn.glUniform1ivFn;
5679 fn.glUniform1ivFn = Debug_glUniform1iv;
5681 if (!debug_fn.glUniform1uiFn) {
5682 debug_fn.glUniform1uiFn = fn.glUniform1uiFn;
5683 fn.glUniform1uiFn = Debug_glUniform1ui;
5685 if (!debug_fn.glUniform1uivFn) {
5686 debug_fn.glUniform1uivFn = fn.glUniform1uivFn;
5687 fn.glUniform1uivFn = Debug_glUniform1uiv;
5689 if (!debug_fn.glUniform2fFn) {
5690 debug_fn.glUniform2fFn = fn.glUniform2fFn;
5691 fn.glUniform2fFn = Debug_glUniform2f;
5693 if (!debug_fn.glUniform2fvFn) {
5694 debug_fn.glUniform2fvFn = fn.glUniform2fvFn;
5695 fn.glUniform2fvFn = Debug_glUniform2fv;
5697 if (!debug_fn.glUniform2iFn) {
5698 debug_fn.glUniform2iFn = fn.glUniform2iFn;
5699 fn.glUniform2iFn = Debug_glUniform2i;
5701 if (!debug_fn.glUniform2ivFn) {
5702 debug_fn.glUniform2ivFn = fn.glUniform2ivFn;
5703 fn.glUniform2ivFn = Debug_glUniform2iv;
5705 if (!debug_fn.glUniform2uiFn) {
5706 debug_fn.glUniform2uiFn = fn.glUniform2uiFn;
5707 fn.glUniform2uiFn = Debug_glUniform2ui;
5709 if (!debug_fn.glUniform2uivFn) {
5710 debug_fn.glUniform2uivFn = fn.glUniform2uivFn;
5711 fn.glUniform2uivFn = Debug_glUniform2uiv;
5713 if (!debug_fn.glUniform3fFn) {
5714 debug_fn.glUniform3fFn = fn.glUniform3fFn;
5715 fn.glUniform3fFn = Debug_glUniform3f;
5717 if (!debug_fn.glUniform3fvFn) {
5718 debug_fn.glUniform3fvFn = fn.glUniform3fvFn;
5719 fn.glUniform3fvFn = Debug_glUniform3fv;
5721 if (!debug_fn.glUniform3iFn) {
5722 debug_fn.glUniform3iFn = fn.glUniform3iFn;
5723 fn.glUniform3iFn = Debug_glUniform3i;
5725 if (!debug_fn.glUniform3ivFn) {
5726 debug_fn.glUniform3ivFn = fn.glUniform3ivFn;
5727 fn.glUniform3ivFn = Debug_glUniform3iv;
5729 if (!debug_fn.glUniform3uiFn) {
5730 debug_fn.glUniform3uiFn = fn.glUniform3uiFn;
5731 fn.glUniform3uiFn = Debug_glUniform3ui;
5733 if (!debug_fn.glUniform3uivFn) {
5734 debug_fn.glUniform3uivFn = fn.glUniform3uivFn;
5735 fn.glUniform3uivFn = Debug_glUniform3uiv;
5737 if (!debug_fn.glUniform4fFn) {
5738 debug_fn.glUniform4fFn = fn.glUniform4fFn;
5739 fn.glUniform4fFn = Debug_glUniform4f;
5741 if (!debug_fn.glUniform4fvFn) {
5742 debug_fn.glUniform4fvFn = fn.glUniform4fvFn;
5743 fn.glUniform4fvFn = Debug_glUniform4fv;
5745 if (!debug_fn.glUniform4iFn) {
5746 debug_fn.glUniform4iFn = fn.glUniform4iFn;
5747 fn.glUniform4iFn = Debug_glUniform4i;
5749 if (!debug_fn.glUniform4ivFn) {
5750 debug_fn.glUniform4ivFn = fn.glUniform4ivFn;
5751 fn.glUniform4ivFn = Debug_glUniform4iv;
5753 if (!debug_fn.glUniform4uiFn) {
5754 debug_fn.glUniform4uiFn = fn.glUniform4uiFn;
5755 fn.glUniform4uiFn = Debug_glUniform4ui;
5757 if (!debug_fn.glUniform4uivFn) {
5758 debug_fn.glUniform4uivFn = fn.glUniform4uivFn;
5759 fn.glUniform4uivFn = Debug_glUniform4uiv;
5761 if (!debug_fn.glUniformBlockBindingFn) {
5762 debug_fn.glUniformBlockBindingFn = fn.glUniformBlockBindingFn;
5763 fn.glUniformBlockBindingFn = Debug_glUniformBlockBinding;
5765 if (!debug_fn.glUniformMatrix2fvFn) {
5766 debug_fn.glUniformMatrix2fvFn = fn.glUniformMatrix2fvFn;
5767 fn.glUniformMatrix2fvFn = Debug_glUniformMatrix2fv;
5769 if (!debug_fn.glUniformMatrix2x3fvFn) {
5770 debug_fn.glUniformMatrix2x3fvFn = fn.glUniformMatrix2x3fvFn;
5771 fn.glUniformMatrix2x3fvFn = Debug_glUniformMatrix2x3fv;
5773 if (!debug_fn.glUniformMatrix2x4fvFn) {
5774 debug_fn.glUniformMatrix2x4fvFn = fn.glUniformMatrix2x4fvFn;
5775 fn.glUniformMatrix2x4fvFn = Debug_glUniformMatrix2x4fv;
5777 if (!debug_fn.glUniformMatrix3fvFn) {
5778 debug_fn.glUniformMatrix3fvFn = fn.glUniformMatrix3fvFn;
5779 fn.glUniformMatrix3fvFn = Debug_glUniformMatrix3fv;
5781 if (!debug_fn.glUniformMatrix3x2fvFn) {
5782 debug_fn.glUniformMatrix3x2fvFn = fn.glUniformMatrix3x2fvFn;
5783 fn.glUniformMatrix3x2fvFn = Debug_glUniformMatrix3x2fv;
5785 if (!debug_fn.glUniformMatrix3x4fvFn) {
5786 debug_fn.glUniformMatrix3x4fvFn = fn.glUniformMatrix3x4fvFn;
5787 fn.glUniformMatrix3x4fvFn = Debug_glUniformMatrix3x4fv;
5789 if (!debug_fn.glUniformMatrix4fvFn) {
5790 debug_fn.glUniformMatrix4fvFn = fn.glUniformMatrix4fvFn;
5791 fn.glUniformMatrix4fvFn = Debug_glUniformMatrix4fv;
5793 if (!debug_fn.glUniformMatrix4x2fvFn) {
5794 debug_fn.glUniformMatrix4x2fvFn = fn.glUniformMatrix4x2fvFn;
5795 fn.glUniformMatrix4x2fvFn = Debug_glUniformMatrix4x2fv;
5797 if (!debug_fn.glUniformMatrix4x3fvFn) {
5798 debug_fn.glUniformMatrix4x3fvFn = fn.glUniformMatrix4x3fvFn;
5799 fn.glUniformMatrix4x3fvFn = Debug_glUniformMatrix4x3fv;
5801 if (!debug_fn.glUnmapBufferFn) {
5802 debug_fn.glUnmapBufferFn = fn.glUnmapBufferFn;
5803 fn.glUnmapBufferFn = Debug_glUnmapBuffer;
5805 if (!debug_fn.glUseProgramFn) {
5806 debug_fn.glUseProgramFn = fn.glUseProgramFn;
5807 fn.glUseProgramFn = Debug_glUseProgram;
5809 if (!debug_fn.glValidateProgramFn) {
5810 debug_fn.glValidateProgramFn = fn.glValidateProgramFn;
5811 fn.glValidateProgramFn = Debug_glValidateProgram;
5813 if (!debug_fn.glVertexAttrib1fFn) {
5814 debug_fn.glVertexAttrib1fFn = fn.glVertexAttrib1fFn;
5815 fn.glVertexAttrib1fFn = Debug_glVertexAttrib1f;
5817 if (!debug_fn.glVertexAttrib1fvFn) {
5818 debug_fn.glVertexAttrib1fvFn = fn.glVertexAttrib1fvFn;
5819 fn.glVertexAttrib1fvFn = Debug_glVertexAttrib1fv;
5821 if (!debug_fn.glVertexAttrib2fFn) {
5822 debug_fn.glVertexAttrib2fFn = fn.glVertexAttrib2fFn;
5823 fn.glVertexAttrib2fFn = Debug_glVertexAttrib2f;
5825 if (!debug_fn.glVertexAttrib2fvFn) {
5826 debug_fn.glVertexAttrib2fvFn = fn.glVertexAttrib2fvFn;
5827 fn.glVertexAttrib2fvFn = Debug_glVertexAttrib2fv;
5829 if (!debug_fn.glVertexAttrib3fFn) {
5830 debug_fn.glVertexAttrib3fFn = fn.glVertexAttrib3fFn;
5831 fn.glVertexAttrib3fFn = Debug_glVertexAttrib3f;
5833 if (!debug_fn.glVertexAttrib3fvFn) {
5834 debug_fn.glVertexAttrib3fvFn = fn.glVertexAttrib3fvFn;
5835 fn.glVertexAttrib3fvFn = Debug_glVertexAttrib3fv;
5837 if (!debug_fn.glVertexAttrib4fFn) {
5838 debug_fn.glVertexAttrib4fFn = fn.glVertexAttrib4fFn;
5839 fn.glVertexAttrib4fFn = Debug_glVertexAttrib4f;
5841 if (!debug_fn.glVertexAttrib4fvFn) {
5842 debug_fn.glVertexAttrib4fvFn = fn.glVertexAttrib4fvFn;
5843 fn.glVertexAttrib4fvFn = Debug_glVertexAttrib4fv;
5845 if (!debug_fn.glVertexAttribDivisorANGLEFn) {
5846 debug_fn.glVertexAttribDivisorANGLEFn = fn.glVertexAttribDivisorANGLEFn;
5847 fn.glVertexAttribDivisorANGLEFn = Debug_glVertexAttribDivisorANGLE;
5849 if (!debug_fn.glVertexAttribI4iFn) {
5850 debug_fn.glVertexAttribI4iFn = fn.glVertexAttribI4iFn;
5851 fn.glVertexAttribI4iFn = Debug_glVertexAttribI4i;
5853 if (!debug_fn.glVertexAttribI4ivFn) {
5854 debug_fn.glVertexAttribI4ivFn = fn.glVertexAttribI4ivFn;
5855 fn.glVertexAttribI4ivFn = Debug_glVertexAttribI4iv;
5857 if (!debug_fn.glVertexAttribI4uiFn) {
5858 debug_fn.glVertexAttribI4uiFn = fn.glVertexAttribI4uiFn;
5859 fn.glVertexAttribI4uiFn = Debug_glVertexAttribI4ui;
5861 if (!debug_fn.glVertexAttribI4uivFn) {
5862 debug_fn.glVertexAttribI4uivFn = fn.glVertexAttribI4uivFn;
5863 fn.glVertexAttribI4uivFn = Debug_glVertexAttribI4uiv;
5865 if (!debug_fn.glVertexAttribIPointerFn) {
5866 debug_fn.glVertexAttribIPointerFn = fn.glVertexAttribIPointerFn;
5867 fn.glVertexAttribIPointerFn = Debug_glVertexAttribIPointer;
5869 if (!debug_fn.glVertexAttribPointerFn) {
5870 debug_fn.glVertexAttribPointerFn = fn.glVertexAttribPointerFn;
5871 fn.glVertexAttribPointerFn = Debug_glVertexAttribPointer;
5873 if (!debug_fn.glViewportFn) {
5874 debug_fn.glViewportFn = fn.glViewportFn;
5875 fn.glViewportFn = Debug_glViewport;
5877 if (!debug_fn.glWaitSyncFn) {
5878 debug_fn.glWaitSyncFn = fn.glWaitSyncFn;
5879 fn.glWaitSyncFn = Debug_glWaitSync;
5881 g_debugBindingsInitialized = true;
5884 void DriverGL::ClearBindings() {
5885 memset(this, 0, sizeof(*this));
5888 void GLApiBase::glActiveTextureFn(GLenum texture) {
5889 driver_->fn.glActiveTextureFn(texture);
5892 void GLApiBase::glAttachShaderFn(GLuint program, GLuint shader) {
5893 driver_->fn.glAttachShaderFn(program, shader);
5896 void GLApiBase::glBeginQueryFn(GLenum target, GLuint id) {
5897 driver_->fn.glBeginQueryFn(target, id);
5900 void GLApiBase::glBeginQueryARBFn(GLenum target, GLuint id) {
5901 driver_->fn.glBeginQueryARBFn(target, id);
5904 void GLApiBase::glBeginTransformFeedbackFn(GLenum primitiveMode) {
5905 driver_->fn.glBeginTransformFeedbackFn(primitiveMode);
5908 void GLApiBase::glBindAttribLocationFn(GLuint program,
5909 GLuint index,
5910 const char* name) {
5911 driver_->fn.glBindAttribLocationFn(program, index, name);
5914 void GLApiBase::glBindBufferFn(GLenum target, GLuint buffer) {
5915 driver_->fn.glBindBufferFn(target, buffer);
5918 void GLApiBase::glBindBufferBaseFn(GLenum target, GLuint index, GLuint buffer) {
5919 driver_->fn.glBindBufferBaseFn(target, index, buffer);
5922 void GLApiBase::glBindBufferRangeFn(GLenum target,
5923 GLuint index,
5924 GLuint buffer,
5925 GLintptr offset,
5926 GLsizeiptr size) {
5927 driver_->fn.glBindBufferRangeFn(target, index, buffer, offset, size);
5930 void GLApiBase::glBindFragDataLocationFn(GLuint program,
5931 GLuint colorNumber,
5932 const char* name) {
5933 driver_->fn.glBindFragDataLocationFn(program, colorNumber, name);
5936 void GLApiBase::glBindFragDataLocationIndexedFn(GLuint program,
5937 GLuint colorNumber,
5938 GLuint index,
5939 const char* name) {
5940 driver_->fn.glBindFragDataLocationIndexedFn(program, colorNumber, index,
5941 name);
5944 void GLApiBase::glBindFramebufferEXTFn(GLenum target, GLuint framebuffer) {
5945 driver_->fn.glBindFramebufferEXTFn(target, framebuffer);
5948 void GLApiBase::glBindRenderbufferEXTFn(GLenum target, GLuint renderbuffer) {
5949 driver_->fn.glBindRenderbufferEXTFn(target, renderbuffer);
5952 void GLApiBase::glBindSamplerFn(GLuint unit, GLuint sampler) {
5953 driver_->fn.glBindSamplerFn(unit, sampler);
5956 void GLApiBase::glBindTextureFn(GLenum target, GLuint texture) {
5957 driver_->fn.glBindTextureFn(target, texture);
5960 void GLApiBase::glBindTransformFeedbackFn(GLenum target, GLuint id) {
5961 driver_->fn.glBindTransformFeedbackFn(target, id);
5964 void GLApiBase::glBindVertexArrayOESFn(GLuint array) {
5965 driver_->fn.glBindVertexArrayOESFn(array);
5968 void GLApiBase::glBlendBarrierKHRFn(void) {
5969 driver_->fn.glBlendBarrierKHRFn();
5972 void GLApiBase::glBlendColorFn(GLclampf red,
5973 GLclampf green,
5974 GLclampf blue,
5975 GLclampf alpha) {
5976 driver_->fn.glBlendColorFn(red, green, blue, alpha);
5979 void GLApiBase::glBlendEquationFn(GLenum mode) {
5980 driver_->fn.glBlendEquationFn(mode);
5983 void GLApiBase::glBlendEquationSeparateFn(GLenum modeRGB, GLenum modeAlpha) {
5984 driver_->fn.glBlendEquationSeparateFn(modeRGB, modeAlpha);
5987 void GLApiBase::glBlendFuncFn(GLenum sfactor, GLenum dfactor) {
5988 driver_->fn.glBlendFuncFn(sfactor, dfactor);
5991 void GLApiBase::glBlendFuncSeparateFn(GLenum srcRGB,
5992 GLenum dstRGB,
5993 GLenum srcAlpha,
5994 GLenum dstAlpha) {
5995 driver_->fn.glBlendFuncSeparateFn(srcRGB, dstRGB, srcAlpha, dstAlpha);
5998 void GLApiBase::glBlitFramebufferFn(GLint srcX0,
5999 GLint srcY0,
6000 GLint srcX1,
6001 GLint srcY1,
6002 GLint dstX0,
6003 GLint dstY0,
6004 GLint dstX1,
6005 GLint dstY1,
6006 GLbitfield mask,
6007 GLenum filter) {
6008 driver_->fn.glBlitFramebufferFn(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0,
6009 dstX1, dstY1, mask, filter);
6012 void GLApiBase::glBlitFramebufferANGLEFn(GLint srcX0,
6013 GLint srcY0,
6014 GLint srcX1,
6015 GLint srcY1,
6016 GLint dstX0,
6017 GLint dstY0,
6018 GLint dstX1,
6019 GLint dstY1,
6020 GLbitfield mask,
6021 GLenum filter) {
6022 driver_->fn.glBlitFramebufferANGLEFn(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0,
6023 dstX1, dstY1, mask, filter);
6026 void GLApiBase::glBlitFramebufferEXTFn(GLint srcX0,
6027 GLint srcY0,
6028 GLint srcX1,
6029 GLint srcY1,
6030 GLint dstX0,
6031 GLint dstY0,
6032 GLint dstX1,
6033 GLint dstY1,
6034 GLbitfield mask,
6035 GLenum filter) {
6036 driver_->fn.glBlitFramebufferEXTFn(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0,
6037 dstX1, dstY1, mask, filter);
6040 void GLApiBase::glBufferDataFn(GLenum target,
6041 GLsizeiptr size,
6042 const void* data,
6043 GLenum usage) {
6044 driver_->fn.glBufferDataFn(target, size, data, usage);
6047 void GLApiBase::glBufferSubDataFn(GLenum target,
6048 GLintptr offset,
6049 GLsizeiptr size,
6050 const void* data) {
6051 driver_->fn.glBufferSubDataFn(target, offset, size, data);
6054 GLenum GLApiBase::glCheckFramebufferStatusEXTFn(GLenum target) {
6055 return driver_->fn.glCheckFramebufferStatusEXTFn(target);
6058 void GLApiBase::glClearFn(GLbitfield mask) {
6059 driver_->fn.glClearFn(mask);
6062 void GLApiBase::glClearBufferfiFn(GLenum buffer,
6063 GLint drawbuffer,
6064 const GLfloat depth,
6065 GLint stencil) {
6066 driver_->fn.glClearBufferfiFn(buffer, drawbuffer, depth, stencil);
6069 void GLApiBase::glClearBufferfvFn(GLenum buffer,
6070 GLint drawbuffer,
6071 const GLfloat* value) {
6072 driver_->fn.glClearBufferfvFn(buffer, drawbuffer, value);
6075 void GLApiBase::glClearBufferivFn(GLenum buffer,
6076 GLint drawbuffer,
6077 const GLint* value) {
6078 driver_->fn.glClearBufferivFn(buffer, drawbuffer, value);
6081 void GLApiBase::glClearBufferuivFn(GLenum buffer,
6082 GLint drawbuffer,
6083 const GLuint* value) {
6084 driver_->fn.glClearBufferuivFn(buffer, drawbuffer, value);
6087 void GLApiBase::glClearColorFn(GLclampf red,
6088 GLclampf green,
6089 GLclampf blue,
6090 GLclampf alpha) {
6091 driver_->fn.glClearColorFn(red, green, blue, alpha);
6094 void GLApiBase::glClearDepthFn(GLclampd depth) {
6095 driver_->fn.glClearDepthFn(depth);
6098 void GLApiBase::glClearDepthfFn(GLclampf depth) {
6099 driver_->fn.glClearDepthfFn(depth);
6102 void GLApiBase::glClearStencilFn(GLint s) {
6103 driver_->fn.glClearStencilFn(s);
6106 GLenum GLApiBase::glClientWaitSyncFn(GLsync sync,
6107 GLbitfield flags,
6108 GLuint64 timeout) {
6109 return driver_->fn.glClientWaitSyncFn(sync, flags, timeout);
6112 void GLApiBase::glColorMaskFn(GLboolean red,
6113 GLboolean green,
6114 GLboolean blue,
6115 GLboolean alpha) {
6116 driver_->fn.glColorMaskFn(red, green, blue, alpha);
6119 void GLApiBase::glCompileShaderFn(GLuint shader) {
6120 driver_->fn.glCompileShaderFn(shader);
6123 void GLApiBase::glCompressedTexImage2DFn(GLenum target,
6124 GLint level,
6125 GLenum internalformat,
6126 GLsizei width,
6127 GLsizei height,
6128 GLint border,
6129 GLsizei imageSize,
6130 const void* data) {
6131 driver_->fn.glCompressedTexImage2DFn(target, level, internalformat, width,
6132 height, border, imageSize, data);
6135 void GLApiBase::glCompressedTexImage3DFn(GLenum target,
6136 GLint level,
6137 GLenum internalformat,
6138 GLsizei width,
6139 GLsizei height,
6140 GLsizei depth,
6141 GLint border,
6142 GLsizei imageSize,
6143 const void* data) {
6144 driver_->fn.glCompressedTexImage3DFn(target, level, internalformat, width,
6145 height, depth, border, imageSize, data);
6148 void GLApiBase::glCompressedTexSubImage2DFn(GLenum target,
6149 GLint level,
6150 GLint xoffset,
6151 GLint yoffset,
6152 GLsizei width,
6153 GLsizei height,
6154 GLenum format,
6155 GLsizei imageSize,
6156 const void* data) {
6157 driver_->fn.glCompressedTexSubImage2DFn(
6158 target, level, xoffset, yoffset, width, height, format, imageSize, data);
6161 void GLApiBase::glCopyBufferSubDataFn(GLenum readTarget,
6162 GLenum writeTarget,
6163 GLintptr readOffset,
6164 GLintptr writeOffset,
6165 GLsizeiptr size) {
6166 driver_->fn.glCopyBufferSubDataFn(readTarget, writeTarget, readOffset,
6167 writeOffset, size);
6170 void GLApiBase::glCopyTexImage2DFn(GLenum target,
6171 GLint level,
6172 GLenum internalformat,
6173 GLint x,
6174 GLint y,
6175 GLsizei width,
6176 GLsizei height,
6177 GLint border) {
6178 driver_->fn.glCopyTexImage2DFn(target, level, internalformat, x, y, width,
6179 height, border);
6182 void GLApiBase::glCopyTexSubImage2DFn(GLenum target,
6183 GLint level,
6184 GLint xoffset,
6185 GLint yoffset,
6186 GLint x,
6187 GLint y,
6188 GLsizei width,
6189 GLsizei height) {
6190 driver_->fn.glCopyTexSubImage2DFn(target, level, xoffset, yoffset, x, y,
6191 width, height);
6194 void GLApiBase::glCopyTexSubImage3DFn(GLenum target,
6195 GLint level,
6196 GLint xoffset,
6197 GLint yoffset,
6198 GLint zoffset,
6199 GLint x,
6200 GLint y,
6201 GLsizei width,
6202 GLsizei height) {
6203 driver_->fn.glCopyTexSubImage3DFn(target, level, xoffset, yoffset, zoffset, x,
6204 y, width, height);
6207 GLuint GLApiBase::glCreateProgramFn(void) {
6208 return driver_->fn.glCreateProgramFn();
6211 GLuint GLApiBase::glCreateShaderFn(GLenum type) {
6212 return driver_->fn.glCreateShaderFn(type);
6215 void GLApiBase::glCullFaceFn(GLenum mode) {
6216 driver_->fn.glCullFaceFn(mode);
6219 void GLApiBase::glDeleteBuffersARBFn(GLsizei n, const GLuint* buffers) {
6220 driver_->fn.glDeleteBuffersARBFn(n, buffers);
6223 void GLApiBase::glDeleteFencesAPPLEFn(GLsizei n, const GLuint* fences) {
6224 driver_->fn.glDeleteFencesAPPLEFn(n, fences);
6227 void GLApiBase::glDeleteFencesNVFn(GLsizei n, const GLuint* fences) {
6228 driver_->fn.glDeleteFencesNVFn(n, fences);
6231 void GLApiBase::glDeleteFramebuffersEXTFn(GLsizei n,
6232 const GLuint* framebuffers) {
6233 driver_->fn.glDeleteFramebuffersEXTFn(n, framebuffers);
6236 void GLApiBase::glDeleteProgramFn(GLuint program) {
6237 driver_->fn.glDeleteProgramFn(program);
6240 void GLApiBase::glDeleteQueriesFn(GLsizei n, const GLuint* ids) {
6241 driver_->fn.glDeleteQueriesFn(n, ids);
6244 void GLApiBase::glDeleteQueriesARBFn(GLsizei n, const GLuint* ids) {
6245 driver_->fn.glDeleteQueriesARBFn(n, ids);
6248 void GLApiBase::glDeleteRenderbuffersEXTFn(GLsizei n,
6249 const GLuint* renderbuffers) {
6250 driver_->fn.glDeleteRenderbuffersEXTFn(n, renderbuffers);
6253 void GLApiBase::glDeleteSamplersFn(GLsizei n, const GLuint* samplers) {
6254 driver_->fn.glDeleteSamplersFn(n, samplers);
6257 void GLApiBase::glDeleteShaderFn(GLuint shader) {
6258 driver_->fn.glDeleteShaderFn(shader);
6261 void GLApiBase::glDeleteSyncFn(GLsync sync) {
6262 driver_->fn.glDeleteSyncFn(sync);
6265 void GLApiBase::glDeleteTexturesFn(GLsizei n, const GLuint* textures) {
6266 driver_->fn.glDeleteTexturesFn(n, textures);
6269 void GLApiBase::glDeleteTransformFeedbacksFn(GLsizei n, const GLuint* ids) {
6270 driver_->fn.glDeleteTransformFeedbacksFn(n, ids);
6273 void GLApiBase::glDeleteVertexArraysOESFn(GLsizei n, const GLuint* arrays) {
6274 driver_->fn.glDeleteVertexArraysOESFn(n, arrays);
6277 void GLApiBase::glDepthFuncFn(GLenum func) {
6278 driver_->fn.glDepthFuncFn(func);
6281 void GLApiBase::glDepthMaskFn(GLboolean flag) {
6282 driver_->fn.glDepthMaskFn(flag);
6285 void GLApiBase::glDepthRangeFn(GLclampd zNear, GLclampd zFar) {
6286 driver_->fn.glDepthRangeFn(zNear, zFar);
6289 void GLApiBase::glDepthRangefFn(GLclampf zNear, GLclampf zFar) {
6290 driver_->fn.glDepthRangefFn(zNear, zFar);
6293 void GLApiBase::glDetachShaderFn(GLuint program, GLuint shader) {
6294 driver_->fn.glDetachShaderFn(program, shader);
6297 void GLApiBase::glDisableFn(GLenum cap) {
6298 driver_->fn.glDisableFn(cap);
6301 void GLApiBase::glDisableVertexAttribArrayFn(GLuint index) {
6302 driver_->fn.glDisableVertexAttribArrayFn(index);
6305 void GLApiBase::glDiscardFramebufferEXTFn(GLenum target,
6306 GLsizei numAttachments,
6307 const GLenum* attachments) {
6308 driver_->fn.glDiscardFramebufferEXTFn(target, numAttachments, attachments);
6311 void GLApiBase::glDrawArraysFn(GLenum mode, GLint first, GLsizei count) {
6312 driver_->fn.glDrawArraysFn(mode, first, count);
6315 void GLApiBase::glDrawArraysInstancedANGLEFn(GLenum mode,
6316 GLint first,
6317 GLsizei count,
6318 GLsizei primcount) {
6319 driver_->fn.glDrawArraysInstancedANGLEFn(mode, first, count, primcount);
6322 void GLApiBase::glDrawBufferFn(GLenum mode) {
6323 driver_->fn.glDrawBufferFn(mode);
6326 void GLApiBase::glDrawBuffersARBFn(GLsizei n, const GLenum* bufs) {
6327 driver_->fn.glDrawBuffersARBFn(n, bufs);
6330 void GLApiBase::glDrawElementsFn(GLenum mode,
6331 GLsizei count,
6332 GLenum type,
6333 const void* indices) {
6334 driver_->fn.glDrawElementsFn(mode, count, type, indices);
6337 void GLApiBase::glDrawElementsInstancedANGLEFn(GLenum mode,
6338 GLsizei count,
6339 GLenum type,
6340 const void* indices,
6341 GLsizei primcount) {
6342 driver_->fn.glDrawElementsInstancedANGLEFn(mode, count, type, indices,
6343 primcount);
6346 void GLApiBase::glDrawRangeElementsFn(GLenum mode,
6347 GLuint start,
6348 GLuint end,
6349 GLsizei count,
6350 GLenum type,
6351 const void* indices) {
6352 driver_->fn.glDrawRangeElementsFn(mode, start, end, count, type, indices);
6355 void GLApiBase::glEGLImageTargetRenderbufferStorageOESFn(GLenum target,
6356 GLeglImageOES image) {
6357 driver_->fn.glEGLImageTargetRenderbufferStorageOESFn(target, image);
6360 void GLApiBase::glEGLImageTargetTexture2DOESFn(GLenum target,
6361 GLeglImageOES image) {
6362 driver_->fn.glEGLImageTargetTexture2DOESFn(target, image);
6365 void GLApiBase::glEnableFn(GLenum cap) {
6366 driver_->fn.glEnableFn(cap);
6369 void GLApiBase::glEnableVertexAttribArrayFn(GLuint index) {
6370 driver_->fn.glEnableVertexAttribArrayFn(index);
6373 void GLApiBase::glEndQueryFn(GLenum target) {
6374 driver_->fn.glEndQueryFn(target);
6377 void GLApiBase::glEndQueryARBFn(GLenum target) {
6378 driver_->fn.glEndQueryARBFn(target);
6381 void GLApiBase::glEndTransformFeedbackFn(void) {
6382 driver_->fn.glEndTransformFeedbackFn();
6385 GLsync GLApiBase::glFenceSyncFn(GLenum condition, GLbitfield flags) {
6386 return driver_->fn.glFenceSyncFn(condition, flags);
6389 void GLApiBase::glFinishFn(void) {
6390 driver_->fn.glFinishFn();
6393 void GLApiBase::glFinishFenceAPPLEFn(GLuint fence) {
6394 driver_->fn.glFinishFenceAPPLEFn(fence);
6397 void GLApiBase::glFinishFenceNVFn(GLuint fence) {
6398 driver_->fn.glFinishFenceNVFn(fence);
6401 void GLApiBase::glFlushFn(void) {
6402 driver_->fn.glFlushFn();
6405 void GLApiBase::glFlushMappedBufferRangeFn(GLenum target,
6406 GLintptr offset,
6407 GLsizeiptr length) {
6408 driver_->fn.glFlushMappedBufferRangeFn(target, offset, length);
6411 void GLApiBase::glFramebufferRenderbufferEXTFn(GLenum target,
6412 GLenum attachment,
6413 GLenum renderbuffertarget,
6414 GLuint renderbuffer) {
6415 driver_->fn.glFramebufferRenderbufferEXTFn(target, attachment,
6416 renderbuffertarget, renderbuffer);
6419 void GLApiBase::glFramebufferTexture2DEXTFn(GLenum target,
6420 GLenum attachment,
6421 GLenum textarget,
6422 GLuint texture,
6423 GLint level) {
6424 driver_->fn.glFramebufferTexture2DEXTFn(target, attachment, textarget,
6425 texture, level);
6428 void GLApiBase::glFramebufferTexture2DMultisampleEXTFn(GLenum target,
6429 GLenum attachment,
6430 GLenum textarget,
6431 GLuint texture,
6432 GLint level,
6433 GLsizei samples) {
6434 driver_->fn.glFramebufferTexture2DMultisampleEXTFn(
6435 target, attachment, textarget, texture, level, samples);
6438 void GLApiBase::glFramebufferTexture2DMultisampleIMGFn(GLenum target,
6439 GLenum attachment,
6440 GLenum textarget,
6441 GLuint texture,
6442 GLint level,
6443 GLsizei samples) {
6444 driver_->fn.glFramebufferTexture2DMultisampleIMGFn(
6445 target, attachment, textarget, texture, level, samples);
6448 void GLApiBase::glFramebufferTextureLayerFn(GLenum target,
6449 GLenum attachment,
6450 GLuint texture,
6451 GLint level,
6452 GLint layer) {
6453 driver_->fn.glFramebufferTextureLayerFn(target, attachment, texture, level,
6454 layer);
6457 void GLApiBase::glFrontFaceFn(GLenum mode) {
6458 driver_->fn.glFrontFaceFn(mode);
6461 void GLApiBase::glGenBuffersARBFn(GLsizei n, GLuint* buffers) {
6462 driver_->fn.glGenBuffersARBFn(n, buffers);
6465 void GLApiBase::glGenerateMipmapEXTFn(GLenum target) {
6466 driver_->fn.glGenerateMipmapEXTFn(target);
6469 void GLApiBase::glGenFencesAPPLEFn(GLsizei n, GLuint* fences) {
6470 driver_->fn.glGenFencesAPPLEFn(n, fences);
6473 void GLApiBase::glGenFencesNVFn(GLsizei n, GLuint* fences) {
6474 driver_->fn.glGenFencesNVFn(n, fences);
6477 void GLApiBase::glGenFramebuffersEXTFn(GLsizei n, GLuint* framebuffers) {
6478 driver_->fn.glGenFramebuffersEXTFn(n, framebuffers);
6481 void GLApiBase::glGenQueriesFn(GLsizei n, GLuint* ids) {
6482 driver_->fn.glGenQueriesFn(n, ids);
6485 void GLApiBase::glGenQueriesARBFn(GLsizei n, GLuint* ids) {
6486 driver_->fn.glGenQueriesARBFn(n, ids);
6489 void GLApiBase::glGenRenderbuffersEXTFn(GLsizei n, GLuint* renderbuffers) {
6490 driver_->fn.glGenRenderbuffersEXTFn(n, renderbuffers);
6493 void GLApiBase::glGenSamplersFn(GLsizei n, GLuint* samplers) {
6494 driver_->fn.glGenSamplersFn(n, samplers);
6497 void GLApiBase::glGenTexturesFn(GLsizei n, GLuint* textures) {
6498 driver_->fn.glGenTexturesFn(n, textures);
6501 void GLApiBase::glGenTransformFeedbacksFn(GLsizei n, GLuint* ids) {
6502 driver_->fn.glGenTransformFeedbacksFn(n, ids);
6505 void GLApiBase::glGenVertexArraysOESFn(GLsizei n, GLuint* arrays) {
6506 driver_->fn.glGenVertexArraysOESFn(n, arrays);
6509 void GLApiBase::glGetActiveAttribFn(GLuint program,
6510 GLuint index,
6511 GLsizei bufsize,
6512 GLsizei* length,
6513 GLint* size,
6514 GLenum* type,
6515 char* name) {
6516 driver_->fn.glGetActiveAttribFn(program, index, bufsize, length, size, type,
6517 name);
6520 void GLApiBase::glGetActiveUniformFn(GLuint program,
6521 GLuint index,
6522 GLsizei bufsize,
6523 GLsizei* length,
6524 GLint* size,
6525 GLenum* type,
6526 char* name) {
6527 driver_->fn.glGetActiveUniformFn(program, index, bufsize, length, size, type,
6528 name);
6531 void GLApiBase::glGetActiveUniformBlockivFn(GLuint program,
6532 GLuint uniformBlockIndex,
6533 GLenum pname,
6534 GLint* params) {
6535 driver_->fn.glGetActiveUniformBlockivFn(program, uniformBlockIndex, pname,
6536 params);
6539 void GLApiBase::glGetActiveUniformBlockNameFn(GLuint program,
6540 GLuint uniformBlockIndex,
6541 GLsizei bufSize,
6542 GLsizei* length,
6543 char* uniformBlockName) {
6544 driver_->fn.glGetActiveUniformBlockNameFn(program, uniformBlockIndex, bufSize,
6545 length, uniformBlockName);
6548 void GLApiBase::glGetActiveUniformsivFn(GLuint program,
6549 GLsizei uniformCount,
6550 const GLuint* uniformIndices,
6551 GLenum pname,
6552 GLint* params) {
6553 driver_->fn.glGetActiveUniformsivFn(program, uniformCount, uniformIndices,
6554 pname, params);
6557 void GLApiBase::glGetAttachedShadersFn(GLuint program,
6558 GLsizei maxcount,
6559 GLsizei* count,
6560 GLuint* shaders) {
6561 driver_->fn.glGetAttachedShadersFn(program, maxcount, count, shaders);
6564 GLint GLApiBase::glGetAttribLocationFn(GLuint program, const char* name) {
6565 return driver_->fn.glGetAttribLocationFn(program, name);
6568 void GLApiBase::glGetBooleanvFn(GLenum pname, GLboolean* params) {
6569 driver_->fn.glGetBooleanvFn(pname, params);
6572 void GLApiBase::glGetBufferParameterivFn(GLenum target,
6573 GLenum pname,
6574 GLint* params) {
6575 driver_->fn.glGetBufferParameterivFn(target, pname, params);
6578 GLenum GLApiBase::glGetErrorFn(void) {
6579 return driver_->fn.glGetErrorFn();
6582 void GLApiBase::glGetFenceivNVFn(GLuint fence, GLenum pname, GLint* params) {
6583 driver_->fn.glGetFenceivNVFn(fence, pname, params);
6586 void GLApiBase::glGetFloatvFn(GLenum pname, GLfloat* params) {
6587 driver_->fn.glGetFloatvFn(pname, params);
6590 GLint GLApiBase::glGetFragDataLocationFn(GLuint program, const char* name) {
6591 return driver_->fn.glGetFragDataLocationFn(program, name);
6594 void GLApiBase::glGetFramebufferAttachmentParameterivEXTFn(GLenum target,
6595 GLenum attachment,
6596 GLenum pname,
6597 GLint* params) {
6598 driver_->fn.glGetFramebufferAttachmentParameterivEXTFn(target, attachment,
6599 pname, params);
6602 GLenum GLApiBase::glGetGraphicsResetStatusARBFn(void) {
6603 return driver_->fn.glGetGraphicsResetStatusARBFn();
6606 void GLApiBase::glGetInteger64i_vFn(GLenum target,
6607 GLuint index,
6608 GLint64* data) {
6609 driver_->fn.glGetInteger64i_vFn(target, index, data);
6612 void GLApiBase::glGetInteger64vFn(GLenum pname, GLint64* params) {
6613 driver_->fn.glGetInteger64vFn(pname, params);
6616 void GLApiBase::glGetIntegeri_vFn(GLenum target, GLuint index, GLint* data) {
6617 driver_->fn.glGetIntegeri_vFn(target, index, data);
6620 void GLApiBase::glGetIntegervFn(GLenum pname, GLint* params) {
6621 driver_->fn.glGetIntegervFn(pname, params);
6624 void GLApiBase::glGetInternalformativFn(GLenum target,
6625 GLenum internalformat,
6626 GLenum pname,
6627 GLsizei bufSize,
6628 GLint* params) {
6629 driver_->fn.glGetInternalformativFn(target, internalformat, pname, bufSize,
6630 params);
6633 void GLApiBase::glGetProgramBinaryFn(GLuint program,
6634 GLsizei bufSize,
6635 GLsizei* length,
6636 GLenum* binaryFormat,
6637 GLvoid* binary) {
6638 driver_->fn.glGetProgramBinaryFn(program, bufSize, length, binaryFormat,
6639 binary);
6642 void GLApiBase::glGetProgramInfoLogFn(GLuint program,
6643 GLsizei bufsize,
6644 GLsizei* length,
6645 char* infolog) {
6646 driver_->fn.glGetProgramInfoLogFn(program, bufsize, length, infolog);
6649 void GLApiBase::glGetProgramivFn(GLuint program, GLenum pname, GLint* params) {
6650 driver_->fn.glGetProgramivFn(program, pname, params);
6653 void GLApiBase::glGetQueryivFn(GLenum target, GLenum pname, GLint* params) {
6654 driver_->fn.glGetQueryivFn(target, pname, params);
6657 void GLApiBase::glGetQueryivARBFn(GLenum target, GLenum pname, GLint* params) {
6658 driver_->fn.glGetQueryivARBFn(target, pname, params);
6661 void GLApiBase::glGetQueryObjecti64vFn(GLuint id,
6662 GLenum pname,
6663 GLint64* params) {
6664 driver_->fn.glGetQueryObjecti64vFn(id, pname, params);
6667 void GLApiBase::glGetQueryObjectivFn(GLuint id, GLenum pname, GLint* params) {
6668 driver_->fn.glGetQueryObjectivFn(id, pname, params);
6671 void GLApiBase::glGetQueryObjectivARBFn(GLuint id,
6672 GLenum pname,
6673 GLint* params) {
6674 driver_->fn.glGetQueryObjectivARBFn(id, pname, params);
6677 void GLApiBase::glGetQueryObjectui64vFn(GLuint id,
6678 GLenum pname,
6679 GLuint64* params) {
6680 driver_->fn.glGetQueryObjectui64vFn(id, pname, params);
6683 void GLApiBase::glGetQueryObjectuivFn(GLuint id, GLenum pname, GLuint* params) {
6684 driver_->fn.glGetQueryObjectuivFn(id, pname, params);
6687 void GLApiBase::glGetQueryObjectuivARBFn(GLuint id,
6688 GLenum pname,
6689 GLuint* params) {
6690 driver_->fn.glGetQueryObjectuivARBFn(id, pname, params);
6693 void GLApiBase::glGetRenderbufferParameterivEXTFn(GLenum target,
6694 GLenum pname,
6695 GLint* params) {
6696 driver_->fn.glGetRenderbufferParameterivEXTFn(target, pname, params);
6699 void GLApiBase::glGetSamplerParameterfvFn(GLuint sampler,
6700 GLenum pname,
6701 GLfloat* params) {
6702 driver_->fn.glGetSamplerParameterfvFn(sampler, pname, params);
6705 void GLApiBase::glGetSamplerParameterivFn(GLuint sampler,
6706 GLenum pname,
6707 GLint* params) {
6708 driver_->fn.glGetSamplerParameterivFn(sampler, pname, params);
6711 void GLApiBase::glGetShaderInfoLogFn(GLuint shader,
6712 GLsizei bufsize,
6713 GLsizei* length,
6714 char* infolog) {
6715 driver_->fn.glGetShaderInfoLogFn(shader, bufsize, length, infolog);
6718 void GLApiBase::glGetShaderivFn(GLuint shader, GLenum pname, GLint* params) {
6719 driver_->fn.glGetShaderivFn(shader, pname, params);
6722 void GLApiBase::glGetShaderPrecisionFormatFn(GLenum shadertype,
6723 GLenum precisiontype,
6724 GLint* range,
6725 GLint* precision) {
6726 driver_->fn.glGetShaderPrecisionFormatFn(shadertype, precisiontype, range,
6727 precision);
6730 void GLApiBase::glGetShaderSourceFn(GLuint shader,
6731 GLsizei bufsize,
6732 GLsizei* length,
6733 char* source) {
6734 driver_->fn.glGetShaderSourceFn(shader, bufsize, length, source);
6737 const GLubyte* GLApiBase::glGetStringFn(GLenum name) {
6738 return driver_->fn.glGetStringFn(name);
6741 void GLApiBase::glGetSyncivFn(GLsync sync,
6742 GLenum pname,
6743 GLsizei bufSize,
6744 GLsizei* length,
6745 GLint* values) {
6746 driver_->fn.glGetSyncivFn(sync, pname, bufSize, length, values);
6749 void GLApiBase::glGetTexLevelParameterfvFn(GLenum target,
6750 GLint level,
6751 GLenum pname,
6752 GLfloat* params) {
6753 driver_->fn.glGetTexLevelParameterfvFn(target, level, pname, params);
6756 void GLApiBase::glGetTexLevelParameterivFn(GLenum target,
6757 GLint level,
6758 GLenum pname,
6759 GLint* params) {
6760 driver_->fn.glGetTexLevelParameterivFn(target, level, pname, params);
6763 void GLApiBase::glGetTexParameterfvFn(GLenum target,
6764 GLenum pname,
6765 GLfloat* params) {
6766 driver_->fn.glGetTexParameterfvFn(target, pname, params);
6769 void GLApiBase::glGetTexParameterivFn(GLenum target,
6770 GLenum pname,
6771 GLint* params) {
6772 driver_->fn.glGetTexParameterivFn(target, pname, params);
6775 void GLApiBase::glGetTransformFeedbackVaryingFn(GLuint program,
6776 GLuint index,
6777 GLsizei bufSize,
6778 GLsizei* length,
6779 GLenum* type,
6780 char* name) {
6781 driver_->fn.glGetTransformFeedbackVaryingFn(program, index, bufSize, length,
6782 type, name);
6785 void GLApiBase::glGetTranslatedShaderSourceANGLEFn(GLuint shader,
6786 GLsizei bufsize,
6787 GLsizei* length,
6788 char* source) {
6789 driver_->fn.glGetTranslatedShaderSourceANGLEFn(shader, bufsize, length,
6790 source);
6793 GLuint GLApiBase::glGetUniformBlockIndexFn(GLuint program,
6794 const char* uniformBlockName) {
6795 return driver_->fn.glGetUniformBlockIndexFn(program, uniformBlockName);
6798 void GLApiBase::glGetUniformfvFn(GLuint program,
6799 GLint location,
6800 GLfloat* params) {
6801 driver_->fn.glGetUniformfvFn(program, location, params);
6804 void GLApiBase::glGetUniformIndicesFn(GLuint program,
6805 GLsizei uniformCount,
6806 const char* const* uniformNames,
6807 GLuint* uniformIndices) {
6808 driver_->fn.glGetUniformIndicesFn(program, uniformCount, uniformNames,
6809 uniformIndices);
6812 void GLApiBase::glGetUniformivFn(GLuint program,
6813 GLint location,
6814 GLint* params) {
6815 driver_->fn.glGetUniformivFn(program, location, params);
6818 GLint GLApiBase::glGetUniformLocationFn(GLuint program, const char* name) {
6819 return driver_->fn.glGetUniformLocationFn(program, name);
6822 void GLApiBase::glGetVertexAttribfvFn(GLuint index,
6823 GLenum pname,
6824 GLfloat* params) {
6825 driver_->fn.glGetVertexAttribfvFn(index, pname, params);
6828 void GLApiBase::glGetVertexAttribivFn(GLuint index,
6829 GLenum pname,
6830 GLint* params) {
6831 driver_->fn.glGetVertexAttribivFn(index, pname, params);
6834 void GLApiBase::glGetVertexAttribPointervFn(GLuint index,
6835 GLenum pname,
6836 void** pointer) {
6837 driver_->fn.glGetVertexAttribPointervFn(index, pname, pointer);
6840 void GLApiBase::glHintFn(GLenum target, GLenum mode) {
6841 driver_->fn.glHintFn(target, mode);
6844 void GLApiBase::glInsertEventMarkerEXTFn(GLsizei length, const char* marker) {
6845 driver_->fn.glInsertEventMarkerEXTFn(length, marker);
6848 void GLApiBase::glInvalidateFramebufferFn(GLenum target,
6849 GLsizei numAttachments,
6850 const GLenum* attachments) {
6851 driver_->fn.glInvalidateFramebufferFn(target, numAttachments, attachments);
6854 void GLApiBase::glInvalidateSubFramebufferFn(GLenum target,
6855 GLsizei numAttachments,
6856 const GLenum* attachments,
6857 GLint x,
6858 GLint y,
6859 GLint width,
6860 GLint height) {
6861 driver_->fn.glInvalidateSubFramebufferFn(target, numAttachments, attachments,
6862 x, y, width, height);
6865 GLboolean GLApiBase::glIsBufferFn(GLuint buffer) {
6866 return driver_->fn.glIsBufferFn(buffer);
6869 GLboolean GLApiBase::glIsEnabledFn(GLenum cap) {
6870 return driver_->fn.glIsEnabledFn(cap);
6873 GLboolean GLApiBase::glIsFenceAPPLEFn(GLuint fence) {
6874 return driver_->fn.glIsFenceAPPLEFn(fence);
6877 GLboolean GLApiBase::glIsFenceNVFn(GLuint fence) {
6878 return driver_->fn.glIsFenceNVFn(fence);
6881 GLboolean GLApiBase::glIsFramebufferEXTFn(GLuint framebuffer) {
6882 return driver_->fn.glIsFramebufferEXTFn(framebuffer);
6885 GLboolean GLApiBase::glIsProgramFn(GLuint program) {
6886 return driver_->fn.glIsProgramFn(program);
6889 GLboolean GLApiBase::glIsQueryFn(GLuint query) {
6890 return driver_->fn.glIsQueryFn(query);
6893 GLboolean GLApiBase::glIsQueryARBFn(GLuint query) {
6894 return driver_->fn.glIsQueryARBFn(query);
6897 GLboolean GLApiBase::glIsRenderbufferEXTFn(GLuint renderbuffer) {
6898 return driver_->fn.glIsRenderbufferEXTFn(renderbuffer);
6901 GLboolean GLApiBase::glIsSamplerFn(GLuint sampler) {
6902 return driver_->fn.glIsSamplerFn(sampler);
6905 GLboolean GLApiBase::glIsShaderFn(GLuint shader) {
6906 return driver_->fn.glIsShaderFn(shader);
6909 GLboolean GLApiBase::glIsSyncFn(GLsync sync) {
6910 return driver_->fn.glIsSyncFn(sync);
6913 GLboolean GLApiBase::glIsTextureFn(GLuint texture) {
6914 return driver_->fn.glIsTextureFn(texture);
6917 GLboolean GLApiBase::glIsTransformFeedbackFn(GLuint id) {
6918 return driver_->fn.glIsTransformFeedbackFn(id);
6921 GLboolean GLApiBase::glIsVertexArrayOESFn(GLuint array) {
6922 return driver_->fn.glIsVertexArrayOESFn(array);
6925 void GLApiBase::glLineWidthFn(GLfloat width) {
6926 driver_->fn.glLineWidthFn(width);
6929 void GLApiBase::glLinkProgramFn(GLuint program) {
6930 driver_->fn.glLinkProgramFn(program);
6933 void* GLApiBase::glMapBufferFn(GLenum target, GLenum access) {
6934 return driver_->fn.glMapBufferFn(target, access);
6937 void* GLApiBase::glMapBufferRangeFn(GLenum target,
6938 GLintptr offset,
6939 GLsizeiptr length,
6940 GLbitfield access) {
6941 return driver_->fn.glMapBufferRangeFn(target, offset, length, access);
6944 void GLApiBase::glMatrixLoadfEXTFn(GLenum matrixMode, const GLfloat* m) {
6945 driver_->fn.glMatrixLoadfEXTFn(matrixMode, m);
6948 void GLApiBase::glMatrixLoadIdentityEXTFn(GLenum matrixMode) {
6949 driver_->fn.glMatrixLoadIdentityEXTFn(matrixMode);
6952 void GLApiBase::glPauseTransformFeedbackFn(void) {
6953 driver_->fn.glPauseTransformFeedbackFn();
6956 void GLApiBase::glPixelStoreiFn(GLenum pname, GLint param) {
6957 driver_->fn.glPixelStoreiFn(pname, param);
6960 void GLApiBase::glPointParameteriFn(GLenum pname, GLint param) {
6961 driver_->fn.glPointParameteriFn(pname, param);
6964 void GLApiBase::glPolygonOffsetFn(GLfloat factor, GLfloat units) {
6965 driver_->fn.glPolygonOffsetFn(factor, units);
6968 void GLApiBase::glPopGroupMarkerEXTFn(void) {
6969 driver_->fn.glPopGroupMarkerEXTFn();
6972 void GLApiBase::glProgramBinaryFn(GLuint program,
6973 GLenum binaryFormat,
6974 const GLvoid* binary,
6975 GLsizei length) {
6976 driver_->fn.glProgramBinaryFn(program, binaryFormat, binary, length);
6979 void GLApiBase::glProgramParameteriFn(GLuint program,
6980 GLenum pname,
6981 GLint value) {
6982 driver_->fn.glProgramParameteriFn(program, pname, value);
6985 void GLApiBase::glPushGroupMarkerEXTFn(GLsizei length, const char* marker) {
6986 driver_->fn.glPushGroupMarkerEXTFn(length, marker);
6989 void GLApiBase::glQueryCounterFn(GLuint id, GLenum target) {
6990 driver_->fn.glQueryCounterFn(id, target);
6993 void GLApiBase::glReadBufferFn(GLenum src) {
6994 driver_->fn.glReadBufferFn(src);
6997 void GLApiBase::glReadPixelsFn(GLint x,
6998 GLint y,
6999 GLsizei width,
7000 GLsizei height,
7001 GLenum format,
7002 GLenum type,
7003 void* pixels) {
7004 driver_->fn.glReadPixelsFn(x, y, width, height, format, type, pixels);
7007 void GLApiBase::glReleaseShaderCompilerFn(void) {
7008 driver_->fn.glReleaseShaderCompilerFn();
7011 void GLApiBase::glRenderbufferStorageEXTFn(GLenum target,
7012 GLenum internalformat,
7013 GLsizei width,
7014 GLsizei height) {
7015 driver_->fn.glRenderbufferStorageEXTFn(target, internalformat, width, height);
7018 void GLApiBase::glRenderbufferStorageMultisampleFn(GLenum target,
7019 GLsizei samples,
7020 GLenum internalformat,
7021 GLsizei width,
7022 GLsizei height) {
7023 driver_->fn.glRenderbufferStorageMultisampleFn(target, samples,
7024 internalformat, width, height);
7027 void GLApiBase::glRenderbufferStorageMultisampleANGLEFn(GLenum target,
7028 GLsizei samples,
7029 GLenum internalformat,
7030 GLsizei width,
7031 GLsizei height) {
7032 driver_->fn.glRenderbufferStorageMultisampleANGLEFn(
7033 target, samples, internalformat, width, height);
7036 void GLApiBase::glRenderbufferStorageMultisampleEXTFn(GLenum target,
7037 GLsizei samples,
7038 GLenum internalformat,
7039 GLsizei width,
7040 GLsizei height) {
7041 driver_->fn.glRenderbufferStorageMultisampleEXTFn(
7042 target, samples, internalformat, width, height);
7045 void GLApiBase::glRenderbufferStorageMultisampleIMGFn(GLenum target,
7046 GLsizei samples,
7047 GLenum internalformat,
7048 GLsizei width,
7049 GLsizei height) {
7050 driver_->fn.glRenderbufferStorageMultisampleIMGFn(
7051 target, samples, internalformat, width, height);
7054 void GLApiBase::glResumeTransformFeedbackFn(void) {
7055 driver_->fn.glResumeTransformFeedbackFn();
7058 void GLApiBase::glSampleCoverageFn(GLclampf value, GLboolean invert) {
7059 driver_->fn.glSampleCoverageFn(value, invert);
7062 void GLApiBase::glSamplerParameterfFn(GLuint sampler,
7063 GLenum pname,
7064 GLfloat param) {
7065 driver_->fn.glSamplerParameterfFn(sampler, pname, param);
7068 void GLApiBase::glSamplerParameterfvFn(GLuint sampler,
7069 GLenum pname,
7070 const GLfloat* params) {
7071 driver_->fn.glSamplerParameterfvFn(sampler, pname, params);
7074 void GLApiBase::glSamplerParameteriFn(GLuint sampler,
7075 GLenum pname,
7076 GLint param) {
7077 driver_->fn.glSamplerParameteriFn(sampler, pname, param);
7080 void GLApiBase::glSamplerParameterivFn(GLuint sampler,
7081 GLenum pname,
7082 const GLint* params) {
7083 driver_->fn.glSamplerParameterivFn(sampler, pname, params);
7086 void GLApiBase::glScissorFn(GLint x, GLint y, GLsizei width, GLsizei height) {
7087 driver_->fn.glScissorFn(x, y, width, height);
7090 void GLApiBase::glSetFenceAPPLEFn(GLuint fence) {
7091 driver_->fn.glSetFenceAPPLEFn(fence);
7094 void GLApiBase::glSetFenceNVFn(GLuint fence, GLenum condition) {
7095 driver_->fn.glSetFenceNVFn(fence, condition);
7098 void GLApiBase::glShaderBinaryFn(GLsizei n,
7099 const GLuint* shaders,
7100 GLenum binaryformat,
7101 const void* binary,
7102 GLsizei length) {
7103 driver_->fn.glShaderBinaryFn(n, shaders, binaryformat, binary, length);
7106 void GLApiBase::glShaderSourceFn(GLuint shader,
7107 GLsizei count,
7108 const char* const* str,
7109 const GLint* length) {
7110 driver_->fn.glShaderSourceFn(shader, count, str, length);
7113 void GLApiBase::glStencilFuncFn(GLenum func, GLint ref, GLuint mask) {
7114 driver_->fn.glStencilFuncFn(func, ref, mask);
7117 void GLApiBase::glStencilFuncSeparateFn(GLenum face,
7118 GLenum func,
7119 GLint ref,
7120 GLuint mask) {
7121 driver_->fn.glStencilFuncSeparateFn(face, func, ref, mask);
7124 void GLApiBase::glStencilMaskFn(GLuint mask) {
7125 driver_->fn.glStencilMaskFn(mask);
7128 void GLApiBase::glStencilMaskSeparateFn(GLenum face, GLuint mask) {
7129 driver_->fn.glStencilMaskSeparateFn(face, mask);
7132 void GLApiBase::glStencilOpFn(GLenum fail, GLenum zfail, GLenum zpass) {
7133 driver_->fn.glStencilOpFn(fail, zfail, zpass);
7136 void GLApiBase::glStencilOpSeparateFn(GLenum face,
7137 GLenum fail,
7138 GLenum zfail,
7139 GLenum zpass) {
7140 driver_->fn.glStencilOpSeparateFn(face, fail, zfail, zpass);
7143 GLboolean GLApiBase::glTestFenceAPPLEFn(GLuint fence) {
7144 return driver_->fn.glTestFenceAPPLEFn(fence);
7147 GLboolean GLApiBase::glTestFenceNVFn(GLuint fence) {
7148 return driver_->fn.glTestFenceNVFn(fence);
7151 void GLApiBase::glTexImage2DFn(GLenum target,
7152 GLint level,
7153 GLint internalformat,
7154 GLsizei width,
7155 GLsizei height,
7156 GLint border,
7157 GLenum format,
7158 GLenum type,
7159 const void* pixels) {
7160 driver_->fn.glTexImage2DFn(target, level, internalformat, width, height,
7161 border, format, type, pixels);
7164 void GLApiBase::glTexImage3DFn(GLenum target,
7165 GLint level,
7166 GLint internalformat,
7167 GLsizei width,
7168 GLsizei height,
7169 GLsizei depth,
7170 GLint border,
7171 GLenum format,
7172 GLenum type,
7173 const void* pixels) {
7174 driver_->fn.glTexImage3DFn(target, level, internalformat, width, height,
7175 depth, border, format, type, pixels);
7178 void GLApiBase::glTexParameterfFn(GLenum target, GLenum pname, GLfloat param) {
7179 driver_->fn.glTexParameterfFn(target, pname, param);
7182 void GLApiBase::glTexParameterfvFn(GLenum target,
7183 GLenum pname,
7184 const GLfloat* params) {
7185 driver_->fn.glTexParameterfvFn(target, pname, params);
7188 void GLApiBase::glTexParameteriFn(GLenum target, GLenum pname, GLint param) {
7189 driver_->fn.glTexParameteriFn(target, pname, param);
7192 void GLApiBase::glTexParameterivFn(GLenum target,
7193 GLenum pname,
7194 const GLint* params) {
7195 driver_->fn.glTexParameterivFn(target, pname, params);
7198 void GLApiBase::glTexStorage2DEXTFn(GLenum target,
7199 GLsizei levels,
7200 GLenum internalformat,
7201 GLsizei width,
7202 GLsizei height) {
7203 driver_->fn.glTexStorage2DEXTFn(target, levels, internalformat, width,
7204 height);
7207 void GLApiBase::glTexStorage3DFn(GLenum target,
7208 GLsizei levels,
7209 GLenum internalformat,
7210 GLsizei width,
7211 GLsizei height,
7212 GLsizei depth) {
7213 driver_->fn.glTexStorage3DFn(target, levels, internalformat, width, height,
7214 depth);
7217 void GLApiBase::glTexSubImage2DFn(GLenum target,
7218 GLint level,
7219 GLint xoffset,
7220 GLint yoffset,
7221 GLsizei width,
7222 GLsizei height,
7223 GLenum format,
7224 GLenum type,
7225 const void* pixels) {
7226 driver_->fn.glTexSubImage2DFn(target, level, xoffset, yoffset, width, height,
7227 format, type, pixels);
7230 void GLApiBase::glTransformFeedbackVaryingsFn(GLuint program,
7231 GLsizei count,
7232 const char* const* varyings,
7233 GLenum bufferMode) {
7234 driver_->fn.glTransformFeedbackVaryingsFn(program, count, varyings,
7235 bufferMode);
7238 void GLApiBase::glUniform1fFn(GLint location, GLfloat x) {
7239 driver_->fn.glUniform1fFn(location, x);
7242 void GLApiBase::glUniform1fvFn(GLint location,
7243 GLsizei count,
7244 const GLfloat* v) {
7245 driver_->fn.glUniform1fvFn(location, count, v);
7248 void GLApiBase::glUniform1iFn(GLint location, GLint x) {
7249 driver_->fn.glUniform1iFn(location, x);
7252 void GLApiBase::glUniform1ivFn(GLint location, GLsizei count, const GLint* v) {
7253 driver_->fn.glUniform1ivFn(location, count, v);
7256 void GLApiBase::glUniform1uiFn(GLint location, GLuint v0) {
7257 driver_->fn.glUniform1uiFn(location, v0);
7260 void GLApiBase::glUniform1uivFn(GLint location,
7261 GLsizei count,
7262 const GLuint* v) {
7263 driver_->fn.glUniform1uivFn(location, count, v);
7266 void GLApiBase::glUniform2fFn(GLint location, GLfloat x, GLfloat y) {
7267 driver_->fn.glUniform2fFn(location, x, y);
7270 void GLApiBase::glUniform2fvFn(GLint location,
7271 GLsizei count,
7272 const GLfloat* v) {
7273 driver_->fn.glUniform2fvFn(location, count, v);
7276 void GLApiBase::glUniform2iFn(GLint location, GLint x, GLint y) {
7277 driver_->fn.glUniform2iFn(location, x, y);
7280 void GLApiBase::glUniform2ivFn(GLint location, GLsizei count, const GLint* v) {
7281 driver_->fn.glUniform2ivFn(location, count, v);
7284 void GLApiBase::glUniform2uiFn(GLint location, GLuint v0, GLuint v1) {
7285 driver_->fn.glUniform2uiFn(location, v0, v1);
7288 void GLApiBase::glUniform2uivFn(GLint location,
7289 GLsizei count,
7290 const GLuint* v) {
7291 driver_->fn.glUniform2uivFn(location, count, v);
7294 void GLApiBase::glUniform3fFn(GLint location, GLfloat x, GLfloat y, GLfloat z) {
7295 driver_->fn.glUniform3fFn(location, x, y, z);
7298 void GLApiBase::glUniform3fvFn(GLint location,
7299 GLsizei count,
7300 const GLfloat* v) {
7301 driver_->fn.glUniform3fvFn(location, count, v);
7304 void GLApiBase::glUniform3iFn(GLint location, GLint x, GLint y, GLint z) {
7305 driver_->fn.glUniform3iFn(location, x, y, z);
7308 void GLApiBase::glUniform3ivFn(GLint location, GLsizei count, const GLint* v) {
7309 driver_->fn.glUniform3ivFn(location, count, v);
7312 void GLApiBase::glUniform3uiFn(GLint location,
7313 GLuint v0,
7314 GLuint v1,
7315 GLuint v2) {
7316 driver_->fn.glUniform3uiFn(location, v0, v1, v2);
7319 void GLApiBase::glUniform3uivFn(GLint location,
7320 GLsizei count,
7321 const GLuint* v) {
7322 driver_->fn.glUniform3uivFn(location, count, v);
7325 void GLApiBase::glUniform4fFn(GLint location,
7326 GLfloat x,
7327 GLfloat y,
7328 GLfloat z,
7329 GLfloat w) {
7330 driver_->fn.glUniform4fFn(location, x, y, z, w);
7333 void GLApiBase::glUniform4fvFn(GLint location,
7334 GLsizei count,
7335 const GLfloat* v) {
7336 driver_->fn.glUniform4fvFn(location, count, v);
7339 void GLApiBase::glUniform4iFn(GLint location,
7340 GLint x,
7341 GLint y,
7342 GLint z,
7343 GLint w) {
7344 driver_->fn.glUniform4iFn(location, x, y, z, w);
7347 void GLApiBase::glUniform4ivFn(GLint location, GLsizei count, const GLint* v) {
7348 driver_->fn.glUniform4ivFn(location, count, v);
7351 void GLApiBase::glUniform4uiFn(GLint location,
7352 GLuint v0,
7353 GLuint v1,
7354 GLuint v2,
7355 GLuint v3) {
7356 driver_->fn.glUniform4uiFn(location, v0, v1, v2, v3);
7359 void GLApiBase::glUniform4uivFn(GLint location,
7360 GLsizei count,
7361 const GLuint* v) {
7362 driver_->fn.glUniform4uivFn(location, count, v);
7365 void GLApiBase::glUniformBlockBindingFn(GLuint program,
7366 GLuint uniformBlockIndex,
7367 GLuint uniformBlockBinding) {
7368 driver_->fn.glUniformBlockBindingFn(program, uniformBlockIndex,
7369 uniformBlockBinding);
7372 void GLApiBase::glUniformMatrix2fvFn(GLint location,
7373 GLsizei count,
7374 GLboolean transpose,
7375 const GLfloat* value) {
7376 driver_->fn.glUniformMatrix2fvFn(location, count, transpose, value);
7379 void GLApiBase::glUniformMatrix2x3fvFn(GLint location,
7380 GLsizei count,
7381 GLboolean transpose,
7382 const GLfloat* value) {
7383 driver_->fn.glUniformMatrix2x3fvFn(location, count, transpose, value);
7386 void GLApiBase::glUniformMatrix2x4fvFn(GLint location,
7387 GLsizei count,
7388 GLboolean transpose,
7389 const GLfloat* value) {
7390 driver_->fn.glUniformMatrix2x4fvFn(location, count, transpose, value);
7393 void GLApiBase::glUniformMatrix3fvFn(GLint location,
7394 GLsizei count,
7395 GLboolean transpose,
7396 const GLfloat* value) {
7397 driver_->fn.glUniformMatrix3fvFn(location, count, transpose, value);
7400 void GLApiBase::glUniformMatrix3x2fvFn(GLint location,
7401 GLsizei count,
7402 GLboolean transpose,
7403 const GLfloat* value) {
7404 driver_->fn.glUniformMatrix3x2fvFn(location, count, transpose, value);
7407 void GLApiBase::glUniformMatrix3x4fvFn(GLint location,
7408 GLsizei count,
7409 GLboolean transpose,
7410 const GLfloat* value) {
7411 driver_->fn.glUniformMatrix3x4fvFn(location, count, transpose, value);
7414 void GLApiBase::glUniformMatrix4fvFn(GLint location,
7415 GLsizei count,
7416 GLboolean transpose,
7417 const GLfloat* value) {
7418 driver_->fn.glUniformMatrix4fvFn(location, count, transpose, value);
7421 void GLApiBase::glUniformMatrix4x2fvFn(GLint location,
7422 GLsizei count,
7423 GLboolean transpose,
7424 const GLfloat* value) {
7425 driver_->fn.glUniformMatrix4x2fvFn(location, count, transpose, value);
7428 void GLApiBase::glUniformMatrix4x3fvFn(GLint location,
7429 GLsizei count,
7430 GLboolean transpose,
7431 const GLfloat* value) {
7432 driver_->fn.glUniformMatrix4x3fvFn(location, count, transpose, value);
7435 GLboolean GLApiBase::glUnmapBufferFn(GLenum target) {
7436 return driver_->fn.glUnmapBufferFn(target);
7439 void GLApiBase::glUseProgramFn(GLuint program) {
7440 driver_->fn.glUseProgramFn(program);
7443 void GLApiBase::glValidateProgramFn(GLuint program) {
7444 driver_->fn.glValidateProgramFn(program);
7447 void GLApiBase::glVertexAttrib1fFn(GLuint indx, GLfloat x) {
7448 driver_->fn.glVertexAttrib1fFn(indx, x);
7451 void GLApiBase::glVertexAttrib1fvFn(GLuint indx, const GLfloat* values) {
7452 driver_->fn.glVertexAttrib1fvFn(indx, values);
7455 void GLApiBase::glVertexAttrib2fFn(GLuint indx, GLfloat x, GLfloat y) {
7456 driver_->fn.glVertexAttrib2fFn(indx, x, y);
7459 void GLApiBase::glVertexAttrib2fvFn(GLuint indx, const GLfloat* values) {
7460 driver_->fn.glVertexAttrib2fvFn(indx, values);
7463 void GLApiBase::glVertexAttrib3fFn(GLuint indx,
7464 GLfloat x,
7465 GLfloat y,
7466 GLfloat z) {
7467 driver_->fn.glVertexAttrib3fFn(indx, x, y, z);
7470 void GLApiBase::glVertexAttrib3fvFn(GLuint indx, const GLfloat* values) {
7471 driver_->fn.glVertexAttrib3fvFn(indx, values);
7474 void GLApiBase::glVertexAttrib4fFn(GLuint indx,
7475 GLfloat x,
7476 GLfloat y,
7477 GLfloat z,
7478 GLfloat w) {
7479 driver_->fn.glVertexAttrib4fFn(indx, x, y, z, w);
7482 void GLApiBase::glVertexAttrib4fvFn(GLuint indx, const GLfloat* values) {
7483 driver_->fn.glVertexAttrib4fvFn(indx, values);
7486 void GLApiBase::glVertexAttribDivisorANGLEFn(GLuint index, GLuint divisor) {
7487 driver_->fn.glVertexAttribDivisorANGLEFn(index, divisor);
7490 void GLApiBase::glVertexAttribI4iFn(GLuint indx,
7491 GLint x,
7492 GLint y,
7493 GLint z,
7494 GLint w) {
7495 driver_->fn.glVertexAttribI4iFn(indx, x, y, z, w);
7498 void GLApiBase::glVertexAttribI4ivFn(GLuint indx, const GLint* values) {
7499 driver_->fn.glVertexAttribI4ivFn(indx, values);
7502 void GLApiBase::glVertexAttribI4uiFn(GLuint indx,
7503 GLuint x,
7504 GLuint y,
7505 GLuint z,
7506 GLuint w) {
7507 driver_->fn.glVertexAttribI4uiFn(indx, x, y, z, w);
7510 void GLApiBase::glVertexAttribI4uivFn(GLuint indx, const GLuint* values) {
7511 driver_->fn.glVertexAttribI4uivFn(indx, values);
7514 void GLApiBase::glVertexAttribIPointerFn(GLuint indx,
7515 GLint size,
7516 GLenum type,
7517 GLsizei stride,
7518 const void* ptr) {
7519 driver_->fn.glVertexAttribIPointerFn(indx, size, type, stride, ptr);
7522 void GLApiBase::glVertexAttribPointerFn(GLuint indx,
7523 GLint size,
7524 GLenum type,
7525 GLboolean normalized,
7526 GLsizei stride,
7527 const void* ptr) {
7528 driver_->fn.glVertexAttribPointerFn(indx, size, type, normalized, stride,
7529 ptr);
7532 void GLApiBase::glViewportFn(GLint x, GLint y, GLsizei width, GLsizei height) {
7533 driver_->fn.glViewportFn(x, y, width, height);
7536 GLenum GLApiBase::glWaitSyncFn(GLsync sync,
7537 GLbitfield flags,
7538 GLuint64 timeout) {
7539 return driver_->fn.glWaitSyncFn(sync, flags, timeout);
7542 void TraceGLApi::glActiveTextureFn(GLenum texture) {
7543 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glActiveTexture")
7544 gl_api_->glActiveTextureFn(texture);
7547 void TraceGLApi::glAttachShaderFn(GLuint program, GLuint shader) {
7548 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glAttachShader")
7549 gl_api_->glAttachShaderFn(program, shader);
7552 void TraceGLApi::glBeginQueryFn(GLenum target, GLuint id) {
7553 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBeginQuery")
7554 gl_api_->glBeginQueryFn(target, id);
7557 void TraceGLApi::glBeginQueryARBFn(GLenum target, GLuint id) {
7558 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBeginQueryARB")
7559 gl_api_->glBeginQueryARBFn(target, id);
7562 void TraceGLApi::glBeginTransformFeedbackFn(GLenum primitiveMode) {
7563 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBeginTransformFeedback")
7564 gl_api_->glBeginTransformFeedbackFn(primitiveMode);
7567 void TraceGLApi::glBindAttribLocationFn(GLuint program,
7568 GLuint index,
7569 const char* name) {
7570 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBindAttribLocation")
7571 gl_api_->glBindAttribLocationFn(program, index, name);
7574 void TraceGLApi::glBindBufferFn(GLenum target, GLuint buffer) {
7575 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBindBuffer")
7576 gl_api_->glBindBufferFn(target, buffer);
7579 void TraceGLApi::glBindBufferBaseFn(GLenum target,
7580 GLuint index,
7581 GLuint buffer) {
7582 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBindBufferBase")
7583 gl_api_->glBindBufferBaseFn(target, index, buffer);
7586 void TraceGLApi::glBindBufferRangeFn(GLenum target,
7587 GLuint index,
7588 GLuint buffer,
7589 GLintptr offset,
7590 GLsizeiptr size) {
7591 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBindBufferRange")
7592 gl_api_->glBindBufferRangeFn(target, index, buffer, offset, size);
7595 void TraceGLApi::glBindFragDataLocationFn(GLuint program,
7596 GLuint colorNumber,
7597 const char* name) {
7598 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBindFragDataLocation")
7599 gl_api_->glBindFragDataLocationFn(program, colorNumber, name);
7602 void TraceGLApi::glBindFragDataLocationIndexedFn(GLuint program,
7603 GLuint colorNumber,
7604 GLuint index,
7605 const char* name) {
7606 TRACE_EVENT_BINARY_EFFICIENT0("gpu",
7607 "TraceGLAPI::glBindFragDataLocationIndexed")
7608 gl_api_->glBindFragDataLocationIndexedFn(program, colorNumber, index, name);
7611 void TraceGLApi::glBindFramebufferEXTFn(GLenum target, GLuint framebuffer) {
7612 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBindFramebufferEXT")
7613 gl_api_->glBindFramebufferEXTFn(target, framebuffer);
7616 void TraceGLApi::glBindRenderbufferEXTFn(GLenum target, GLuint renderbuffer) {
7617 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBindRenderbufferEXT")
7618 gl_api_->glBindRenderbufferEXTFn(target, renderbuffer);
7621 void TraceGLApi::glBindSamplerFn(GLuint unit, GLuint sampler) {
7622 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBindSampler")
7623 gl_api_->glBindSamplerFn(unit, sampler);
7626 void TraceGLApi::glBindTextureFn(GLenum target, GLuint texture) {
7627 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBindTexture")
7628 gl_api_->glBindTextureFn(target, texture);
7631 void TraceGLApi::glBindTransformFeedbackFn(GLenum target, GLuint id) {
7632 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBindTransformFeedback")
7633 gl_api_->glBindTransformFeedbackFn(target, id);
7636 void TraceGLApi::glBindVertexArrayOESFn(GLuint array) {
7637 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBindVertexArrayOES")
7638 gl_api_->glBindVertexArrayOESFn(array);
7641 void TraceGLApi::glBlendBarrierKHRFn(void) {
7642 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBlendBarrierKHR")
7643 gl_api_->glBlendBarrierKHRFn();
7646 void TraceGLApi::glBlendColorFn(GLclampf red,
7647 GLclampf green,
7648 GLclampf blue,
7649 GLclampf alpha) {
7650 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBlendColor")
7651 gl_api_->glBlendColorFn(red, green, blue, alpha);
7654 void TraceGLApi::glBlendEquationFn(GLenum mode) {
7655 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBlendEquation")
7656 gl_api_->glBlendEquationFn(mode);
7659 void TraceGLApi::glBlendEquationSeparateFn(GLenum modeRGB, GLenum modeAlpha) {
7660 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBlendEquationSeparate")
7661 gl_api_->glBlendEquationSeparateFn(modeRGB, modeAlpha);
7664 void TraceGLApi::glBlendFuncFn(GLenum sfactor, GLenum dfactor) {
7665 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBlendFunc")
7666 gl_api_->glBlendFuncFn(sfactor, dfactor);
7669 void TraceGLApi::glBlendFuncSeparateFn(GLenum srcRGB,
7670 GLenum dstRGB,
7671 GLenum srcAlpha,
7672 GLenum dstAlpha) {
7673 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBlendFuncSeparate")
7674 gl_api_->glBlendFuncSeparateFn(srcRGB, dstRGB, srcAlpha, dstAlpha);
7677 void TraceGLApi::glBlitFramebufferFn(GLint srcX0,
7678 GLint srcY0,
7679 GLint srcX1,
7680 GLint srcY1,
7681 GLint dstX0,
7682 GLint dstY0,
7683 GLint dstX1,
7684 GLint dstY1,
7685 GLbitfield mask,
7686 GLenum filter) {
7687 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBlitFramebuffer")
7688 gl_api_->glBlitFramebufferFn(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1,
7689 dstY1, mask, filter);
7692 void TraceGLApi::glBlitFramebufferANGLEFn(GLint srcX0,
7693 GLint srcY0,
7694 GLint srcX1,
7695 GLint srcY1,
7696 GLint dstX0,
7697 GLint dstY0,
7698 GLint dstX1,
7699 GLint dstY1,
7700 GLbitfield mask,
7701 GLenum filter) {
7702 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBlitFramebufferANGLE")
7703 gl_api_->glBlitFramebufferANGLEFn(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0,
7704 dstX1, dstY1, mask, filter);
7707 void TraceGLApi::glBlitFramebufferEXTFn(GLint srcX0,
7708 GLint srcY0,
7709 GLint srcX1,
7710 GLint srcY1,
7711 GLint dstX0,
7712 GLint dstY0,
7713 GLint dstX1,
7714 GLint dstY1,
7715 GLbitfield mask,
7716 GLenum filter) {
7717 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBlitFramebufferEXT")
7718 gl_api_->glBlitFramebufferEXTFn(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0,
7719 dstX1, dstY1, mask, filter);
7722 void TraceGLApi::glBufferDataFn(GLenum target,
7723 GLsizeiptr size,
7724 const void* data,
7725 GLenum usage) {
7726 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBufferData")
7727 gl_api_->glBufferDataFn(target, size, data, usage);
7730 void TraceGLApi::glBufferSubDataFn(GLenum target,
7731 GLintptr offset,
7732 GLsizeiptr size,
7733 const void* data) {
7734 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glBufferSubData")
7735 gl_api_->glBufferSubDataFn(target, offset, size, data);
7738 GLenum TraceGLApi::glCheckFramebufferStatusEXTFn(GLenum target) {
7739 TRACE_EVENT_BINARY_EFFICIENT0("gpu",
7740 "TraceGLAPI::glCheckFramebufferStatusEXT")
7741 return gl_api_->glCheckFramebufferStatusEXTFn(target);
7744 void TraceGLApi::glClearFn(GLbitfield mask) {
7745 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glClear")
7746 gl_api_->glClearFn(mask);
7749 void TraceGLApi::glClearBufferfiFn(GLenum buffer,
7750 GLint drawbuffer,
7751 const GLfloat depth,
7752 GLint stencil) {
7753 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glClearBufferfi")
7754 gl_api_->glClearBufferfiFn(buffer, drawbuffer, depth, stencil);
7757 void TraceGLApi::glClearBufferfvFn(GLenum buffer,
7758 GLint drawbuffer,
7759 const GLfloat* value) {
7760 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glClearBufferfv")
7761 gl_api_->glClearBufferfvFn(buffer, drawbuffer, value);
7764 void TraceGLApi::glClearBufferivFn(GLenum buffer,
7765 GLint drawbuffer,
7766 const GLint* value) {
7767 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glClearBufferiv")
7768 gl_api_->glClearBufferivFn(buffer, drawbuffer, value);
7771 void TraceGLApi::glClearBufferuivFn(GLenum buffer,
7772 GLint drawbuffer,
7773 const GLuint* value) {
7774 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glClearBufferuiv")
7775 gl_api_->glClearBufferuivFn(buffer, drawbuffer, value);
7778 void TraceGLApi::glClearColorFn(GLclampf red,
7779 GLclampf green,
7780 GLclampf blue,
7781 GLclampf alpha) {
7782 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glClearColor")
7783 gl_api_->glClearColorFn(red, green, blue, alpha);
7786 void TraceGLApi::glClearDepthFn(GLclampd depth) {
7787 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glClearDepth")
7788 gl_api_->glClearDepthFn(depth);
7791 void TraceGLApi::glClearDepthfFn(GLclampf depth) {
7792 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glClearDepthf")
7793 gl_api_->glClearDepthfFn(depth);
7796 void TraceGLApi::glClearStencilFn(GLint s) {
7797 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glClearStencil")
7798 gl_api_->glClearStencilFn(s);
7801 GLenum TraceGLApi::glClientWaitSyncFn(GLsync sync,
7802 GLbitfield flags,
7803 GLuint64 timeout) {
7804 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glClientWaitSync")
7805 return gl_api_->glClientWaitSyncFn(sync, flags, timeout);
7808 void TraceGLApi::glColorMaskFn(GLboolean red,
7809 GLboolean green,
7810 GLboolean blue,
7811 GLboolean alpha) {
7812 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glColorMask")
7813 gl_api_->glColorMaskFn(red, green, blue, alpha);
7816 void TraceGLApi::glCompileShaderFn(GLuint shader) {
7817 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glCompileShader")
7818 gl_api_->glCompileShaderFn(shader);
7821 void TraceGLApi::glCompressedTexImage2DFn(GLenum target,
7822 GLint level,
7823 GLenum internalformat,
7824 GLsizei width,
7825 GLsizei height,
7826 GLint border,
7827 GLsizei imageSize,
7828 const void* data) {
7829 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glCompressedTexImage2D")
7830 gl_api_->glCompressedTexImage2DFn(target, level, internalformat, width,
7831 height, border, imageSize, data);
7834 void TraceGLApi::glCompressedTexImage3DFn(GLenum target,
7835 GLint level,
7836 GLenum internalformat,
7837 GLsizei width,
7838 GLsizei height,
7839 GLsizei depth,
7840 GLint border,
7841 GLsizei imageSize,
7842 const void* data) {
7843 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glCompressedTexImage3D")
7844 gl_api_->glCompressedTexImage3DFn(target, level, internalformat, width,
7845 height, depth, border, imageSize, data);
7848 void TraceGLApi::glCompressedTexSubImage2DFn(GLenum target,
7849 GLint level,
7850 GLint xoffset,
7851 GLint yoffset,
7852 GLsizei width,
7853 GLsizei height,
7854 GLenum format,
7855 GLsizei imageSize,
7856 const void* data) {
7857 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glCompressedTexSubImage2D")
7858 gl_api_->glCompressedTexSubImage2DFn(target, level, xoffset, yoffset, width,
7859 height, format, imageSize, data);
7862 void TraceGLApi::glCopyBufferSubDataFn(GLenum readTarget,
7863 GLenum writeTarget,
7864 GLintptr readOffset,
7865 GLintptr writeOffset,
7866 GLsizeiptr size) {
7867 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glCopyBufferSubData")
7868 gl_api_->glCopyBufferSubDataFn(readTarget, writeTarget, readOffset,
7869 writeOffset, size);
7872 void TraceGLApi::glCopyTexImage2DFn(GLenum target,
7873 GLint level,
7874 GLenum internalformat,
7875 GLint x,
7876 GLint y,
7877 GLsizei width,
7878 GLsizei height,
7879 GLint border) {
7880 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glCopyTexImage2D")
7881 gl_api_->glCopyTexImage2DFn(target, level, internalformat, x, y, width,
7882 height, border);
7885 void TraceGLApi::glCopyTexSubImage2DFn(GLenum target,
7886 GLint level,
7887 GLint xoffset,
7888 GLint yoffset,
7889 GLint x,
7890 GLint y,
7891 GLsizei width,
7892 GLsizei height) {
7893 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glCopyTexSubImage2D")
7894 gl_api_->glCopyTexSubImage2DFn(target, level, xoffset, yoffset, x, y, width,
7895 height);
7898 void TraceGLApi::glCopyTexSubImage3DFn(GLenum target,
7899 GLint level,
7900 GLint xoffset,
7901 GLint yoffset,
7902 GLint zoffset,
7903 GLint x,
7904 GLint y,
7905 GLsizei width,
7906 GLsizei height) {
7907 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glCopyTexSubImage3D")
7908 gl_api_->glCopyTexSubImage3DFn(target, level, xoffset, yoffset, zoffset, x, y,
7909 width, height);
7912 GLuint TraceGLApi::glCreateProgramFn(void) {
7913 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glCreateProgram")
7914 return gl_api_->glCreateProgramFn();
7917 GLuint TraceGLApi::glCreateShaderFn(GLenum type) {
7918 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glCreateShader")
7919 return gl_api_->glCreateShaderFn(type);
7922 void TraceGLApi::glCullFaceFn(GLenum mode) {
7923 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glCullFace")
7924 gl_api_->glCullFaceFn(mode);
7927 void TraceGLApi::glDeleteBuffersARBFn(GLsizei n, const GLuint* buffers) {
7928 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDeleteBuffersARB")
7929 gl_api_->glDeleteBuffersARBFn(n, buffers);
7932 void TraceGLApi::glDeleteFencesAPPLEFn(GLsizei n, const GLuint* fences) {
7933 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDeleteFencesAPPLE")
7934 gl_api_->glDeleteFencesAPPLEFn(n, fences);
7937 void TraceGLApi::glDeleteFencesNVFn(GLsizei n, const GLuint* fences) {
7938 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDeleteFencesNV")
7939 gl_api_->glDeleteFencesNVFn(n, fences);
7942 void TraceGLApi::glDeleteFramebuffersEXTFn(GLsizei n,
7943 const GLuint* framebuffers) {
7944 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDeleteFramebuffersEXT")
7945 gl_api_->glDeleteFramebuffersEXTFn(n, framebuffers);
7948 void TraceGLApi::glDeleteProgramFn(GLuint program) {
7949 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDeleteProgram")
7950 gl_api_->glDeleteProgramFn(program);
7953 void TraceGLApi::glDeleteQueriesFn(GLsizei n, const GLuint* ids) {
7954 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDeleteQueries")
7955 gl_api_->glDeleteQueriesFn(n, ids);
7958 void TraceGLApi::glDeleteQueriesARBFn(GLsizei n, const GLuint* ids) {
7959 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDeleteQueriesARB")
7960 gl_api_->glDeleteQueriesARBFn(n, ids);
7963 void TraceGLApi::glDeleteRenderbuffersEXTFn(GLsizei n,
7964 const GLuint* renderbuffers) {
7965 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDeleteRenderbuffersEXT")
7966 gl_api_->glDeleteRenderbuffersEXTFn(n, renderbuffers);
7969 void TraceGLApi::glDeleteSamplersFn(GLsizei n, const GLuint* samplers) {
7970 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDeleteSamplers")
7971 gl_api_->glDeleteSamplersFn(n, samplers);
7974 void TraceGLApi::glDeleteShaderFn(GLuint shader) {
7975 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDeleteShader")
7976 gl_api_->glDeleteShaderFn(shader);
7979 void TraceGLApi::glDeleteSyncFn(GLsync sync) {
7980 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDeleteSync")
7981 gl_api_->glDeleteSyncFn(sync);
7984 void TraceGLApi::glDeleteTexturesFn(GLsizei n, const GLuint* textures) {
7985 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDeleteTextures")
7986 gl_api_->glDeleteTexturesFn(n, textures);
7989 void TraceGLApi::glDeleteTransformFeedbacksFn(GLsizei n, const GLuint* ids) {
7990 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDeleteTransformFeedbacks")
7991 gl_api_->glDeleteTransformFeedbacksFn(n, ids);
7994 void TraceGLApi::glDeleteVertexArraysOESFn(GLsizei n, const GLuint* arrays) {
7995 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDeleteVertexArraysOES")
7996 gl_api_->glDeleteVertexArraysOESFn(n, arrays);
7999 void TraceGLApi::glDepthFuncFn(GLenum func) {
8000 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDepthFunc")
8001 gl_api_->glDepthFuncFn(func);
8004 void TraceGLApi::glDepthMaskFn(GLboolean flag) {
8005 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDepthMask")
8006 gl_api_->glDepthMaskFn(flag);
8009 void TraceGLApi::glDepthRangeFn(GLclampd zNear, GLclampd zFar) {
8010 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDepthRange")
8011 gl_api_->glDepthRangeFn(zNear, zFar);
8014 void TraceGLApi::glDepthRangefFn(GLclampf zNear, GLclampf zFar) {
8015 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDepthRangef")
8016 gl_api_->glDepthRangefFn(zNear, zFar);
8019 void TraceGLApi::glDetachShaderFn(GLuint program, GLuint shader) {
8020 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDetachShader")
8021 gl_api_->glDetachShaderFn(program, shader);
8024 void TraceGLApi::glDisableFn(GLenum cap) {
8025 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDisable")
8026 gl_api_->glDisableFn(cap);
8029 void TraceGLApi::glDisableVertexAttribArrayFn(GLuint index) {
8030 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDisableVertexAttribArray")
8031 gl_api_->glDisableVertexAttribArrayFn(index);
8034 void TraceGLApi::glDiscardFramebufferEXTFn(GLenum target,
8035 GLsizei numAttachments,
8036 const GLenum* attachments) {
8037 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDiscardFramebufferEXT")
8038 gl_api_->glDiscardFramebufferEXTFn(target, numAttachments, attachments);
8041 void TraceGLApi::glDrawArraysFn(GLenum mode, GLint first, GLsizei count) {
8042 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDrawArrays")
8043 gl_api_->glDrawArraysFn(mode, first, count);
8046 void TraceGLApi::glDrawArraysInstancedANGLEFn(GLenum mode,
8047 GLint first,
8048 GLsizei count,
8049 GLsizei primcount) {
8050 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDrawArraysInstancedANGLE")
8051 gl_api_->glDrawArraysInstancedANGLEFn(mode, first, count, primcount);
8054 void TraceGLApi::glDrawBufferFn(GLenum mode) {
8055 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDrawBuffer")
8056 gl_api_->glDrawBufferFn(mode);
8059 void TraceGLApi::glDrawBuffersARBFn(GLsizei n, const GLenum* bufs) {
8060 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDrawBuffersARB")
8061 gl_api_->glDrawBuffersARBFn(n, bufs);
8064 void TraceGLApi::glDrawElementsFn(GLenum mode,
8065 GLsizei count,
8066 GLenum type,
8067 const void* indices) {
8068 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDrawElements")
8069 gl_api_->glDrawElementsFn(mode, count, type, indices);
8072 void TraceGLApi::glDrawElementsInstancedANGLEFn(GLenum mode,
8073 GLsizei count,
8074 GLenum type,
8075 const void* indices,
8076 GLsizei primcount) {
8077 TRACE_EVENT_BINARY_EFFICIENT0("gpu",
8078 "TraceGLAPI::glDrawElementsInstancedANGLE")
8079 gl_api_->glDrawElementsInstancedANGLEFn(mode, count, type, indices,
8080 primcount);
8083 void TraceGLApi::glDrawRangeElementsFn(GLenum mode,
8084 GLuint start,
8085 GLuint end,
8086 GLsizei count,
8087 GLenum type,
8088 const void* indices) {
8089 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glDrawRangeElements")
8090 gl_api_->glDrawRangeElementsFn(mode, start, end, count, type, indices);
8093 void TraceGLApi::glEGLImageTargetRenderbufferStorageOESFn(GLenum target,
8094 GLeglImageOES image) {
8095 TRACE_EVENT_BINARY_EFFICIENT0(
8096 "gpu", "TraceGLAPI::glEGLImageTargetRenderbufferStorageOES")
8097 gl_api_->glEGLImageTargetRenderbufferStorageOESFn(target, image);
8100 void TraceGLApi::glEGLImageTargetTexture2DOESFn(GLenum target,
8101 GLeglImageOES image) {
8102 TRACE_EVENT_BINARY_EFFICIENT0("gpu",
8103 "TraceGLAPI::glEGLImageTargetTexture2DOES")
8104 gl_api_->glEGLImageTargetTexture2DOESFn(target, image);
8107 void TraceGLApi::glEnableFn(GLenum cap) {
8108 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glEnable")
8109 gl_api_->glEnableFn(cap);
8112 void TraceGLApi::glEnableVertexAttribArrayFn(GLuint index) {
8113 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glEnableVertexAttribArray")
8114 gl_api_->glEnableVertexAttribArrayFn(index);
8117 void TraceGLApi::glEndQueryFn(GLenum target) {
8118 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glEndQuery")
8119 gl_api_->glEndQueryFn(target);
8122 void TraceGLApi::glEndQueryARBFn(GLenum target) {
8123 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glEndQueryARB")
8124 gl_api_->glEndQueryARBFn(target);
8127 void TraceGLApi::glEndTransformFeedbackFn(void) {
8128 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glEndTransformFeedback")
8129 gl_api_->glEndTransformFeedbackFn();
8132 GLsync TraceGLApi::glFenceSyncFn(GLenum condition, GLbitfield flags) {
8133 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glFenceSync")
8134 return gl_api_->glFenceSyncFn(condition, flags);
8137 void TraceGLApi::glFinishFn(void) {
8138 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glFinish")
8139 gl_api_->glFinishFn();
8142 void TraceGLApi::glFinishFenceAPPLEFn(GLuint fence) {
8143 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glFinishFenceAPPLE")
8144 gl_api_->glFinishFenceAPPLEFn(fence);
8147 void TraceGLApi::glFinishFenceNVFn(GLuint fence) {
8148 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glFinishFenceNV")
8149 gl_api_->glFinishFenceNVFn(fence);
8152 void TraceGLApi::glFlushFn(void) {
8153 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glFlush")
8154 gl_api_->glFlushFn();
8157 void TraceGLApi::glFlushMappedBufferRangeFn(GLenum target,
8158 GLintptr offset,
8159 GLsizeiptr length) {
8160 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glFlushMappedBufferRange")
8161 gl_api_->glFlushMappedBufferRangeFn(target, offset, length);
8164 void TraceGLApi::glFramebufferRenderbufferEXTFn(GLenum target,
8165 GLenum attachment,
8166 GLenum renderbuffertarget,
8167 GLuint renderbuffer) {
8168 TRACE_EVENT_BINARY_EFFICIENT0("gpu",
8169 "TraceGLAPI::glFramebufferRenderbufferEXT")
8170 gl_api_->glFramebufferRenderbufferEXTFn(target, attachment,
8171 renderbuffertarget, renderbuffer);
8174 void TraceGLApi::glFramebufferTexture2DEXTFn(GLenum target,
8175 GLenum attachment,
8176 GLenum textarget,
8177 GLuint texture,
8178 GLint level) {
8179 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glFramebufferTexture2DEXT")
8180 gl_api_->glFramebufferTexture2DEXTFn(target, attachment, textarget, texture,
8181 level);
8184 void TraceGLApi::glFramebufferTexture2DMultisampleEXTFn(GLenum target,
8185 GLenum attachment,
8186 GLenum textarget,
8187 GLuint texture,
8188 GLint level,
8189 GLsizei samples) {
8190 TRACE_EVENT_BINARY_EFFICIENT0(
8191 "gpu", "TraceGLAPI::glFramebufferTexture2DMultisampleEXT")
8192 gl_api_->glFramebufferTexture2DMultisampleEXTFn(target, attachment, textarget,
8193 texture, level, samples);
8196 void TraceGLApi::glFramebufferTexture2DMultisampleIMGFn(GLenum target,
8197 GLenum attachment,
8198 GLenum textarget,
8199 GLuint texture,
8200 GLint level,
8201 GLsizei samples) {
8202 TRACE_EVENT_BINARY_EFFICIENT0(
8203 "gpu", "TraceGLAPI::glFramebufferTexture2DMultisampleIMG")
8204 gl_api_->glFramebufferTexture2DMultisampleIMGFn(target, attachment, textarget,
8205 texture, level, samples);
8208 void TraceGLApi::glFramebufferTextureLayerFn(GLenum target,
8209 GLenum attachment,
8210 GLuint texture,
8211 GLint level,
8212 GLint layer) {
8213 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glFramebufferTextureLayer")
8214 gl_api_->glFramebufferTextureLayerFn(target, attachment, texture, level,
8215 layer);
8218 void TraceGLApi::glFrontFaceFn(GLenum mode) {
8219 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glFrontFace")
8220 gl_api_->glFrontFaceFn(mode);
8223 void TraceGLApi::glGenBuffersARBFn(GLsizei n, GLuint* buffers) {
8224 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGenBuffersARB")
8225 gl_api_->glGenBuffersARBFn(n, buffers);
8228 void TraceGLApi::glGenerateMipmapEXTFn(GLenum target) {
8229 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGenerateMipmapEXT")
8230 gl_api_->glGenerateMipmapEXTFn(target);
8233 void TraceGLApi::glGenFencesAPPLEFn(GLsizei n, GLuint* fences) {
8234 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGenFencesAPPLE")
8235 gl_api_->glGenFencesAPPLEFn(n, fences);
8238 void TraceGLApi::glGenFencesNVFn(GLsizei n, GLuint* fences) {
8239 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGenFencesNV")
8240 gl_api_->glGenFencesNVFn(n, fences);
8243 void TraceGLApi::glGenFramebuffersEXTFn(GLsizei n, GLuint* framebuffers) {
8244 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGenFramebuffersEXT")
8245 gl_api_->glGenFramebuffersEXTFn(n, framebuffers);
8248 void TraceGLApi::glGenQueriesFn(GLsizei n, GLuint* ids) {
8249 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGenQueries")
8250 gl_api_->glGenQueriesFn(n, ids);
8253 void TraceGLApi::glGenQueriesARBFn(GLsizei n, GLuint* ids) {
8254 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGenQueriesARB")
8255 gl_api_->glGenQueriesARBFn(n, ids);
8258 void TraceGLApi::glGenRenderbuffersEXTFn(GLsizei n, GLuint* renderbuffers) {
8259 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGenRenderbuffersEXT")
8260 gl_api_->glGenRenderbuffersEXTFn(n, renderbuffers);
8263 void TraceGLApi::glGenSamplersFn(GLsizei n, GLuint* samplers) {
8264 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGenSamplers")
8265 gl_api_->glGenSamplersFn(n, samplers);
8268 void TraceGLApi::glGenTexturesFn(GLsizei n, GLuint* textures) {
8269 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGenTextures")
8270 gl_api_->glGenTexturesFn(n, textures);
8273 void TraceGLApi::glGenTransformFeedbacksFn(GLsizei n, GLuint* ids) {
8274 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGenTransformFeedbacks")
8275 gl_api_->glGenTransformFeedbacksFn(n, ids);
8278 void TraceGLApi::glGenVertexArraysOESFn(GLsizei n, GLuint* arrays) {
8279 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGenVertexArraysOES")
8280 gl_api_->glGenVertexArraysOESFn(n, arrays);
8283 void TraceGLApi::glGetActiveAttribFn(GLuint program,
8284 GLuint index,
8285 GLsizei bufsize,
8286 GLsizei* length,
8287 GLint* size,
8288 GLenum* type,
8289 char* name) {
8290 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetActiveAttrib")
8291 gl_api_->glGetActiveAttribFn(program, index, bufsize, length, size, type,
8292 name);
8295 void TraceGLApi::glGetActiveUniformFn(GLuint program,
8296 GLuint index,
8297 GLsizei bufsize,
8298 GLsizei* length,
8299 GLint* size,
8300 GLenum* type,
8301 char* name) {
8302 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetActiveUniform")
8303 gl_api_->glGetActiveUniformFn(program, index, bufsize, length, size, type,
8304 name);
8307 void TraceGLApi::glGetActiveUniformBlockivFn(GLuint program,
8308 GLuint uniformBlockIndex,
8309 GLenum pname,
8310 GLint* params) {
8311 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetActiveUniformBlockiv")
8312 gl_api_->glGetActiveUniformBlockivFn(program, uniformBlockIndex, pname,
8313 params);
8316 void TraceGLApi::glGetActiveUniformBlockNameFn(GLuint program,
8317 GLuint uniformBlockIndex,
8318 GLsizei bufSize,
8319 GLsizei* length,
8320 char* uniformBlockName) {
8321 TRACE_EVENT_BINARY_EFFICIENT0("gpu",
8322 "TraceGLAPI::glGetActiveUniformBlockName")
8323 gl_api_->glGetActiveUniformBlockNameFn(program, uniformBlockIndex, bufSize,
8324 length, uniformBlockName);
8327 void TraceGLApi::glGetActiveUniformsivFn(GLuint program,
8328 GLsizei uniformCount,
8329 const GLuint* uniformIndices,
8330 GLenum pname,
8331 GLint* params) {
8332 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetActiveUniformsiv")
8333 gl_api_->glGetActiveUniformsivFn(program, uniformCount, uniformIndices, pname,
8334 params);
8337 void TraceGLApi::glGetAttachedShadersFn(GLuint program,
8338 GLsizei maxcount,
8339 GLsizei* count,
8340 GLuint* shaders) {
8341 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetAttachedShaders")
8342 gl_api_->glGetAttachedShadersFn(program, maxcount, count, shaders);
8345 GLint TraceGLApi::glGetAttribLocationFn(GLuint program, const char* name) {
8346 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetAttribLocation")
8347 return gl_api_->glGetAttribLocationFn(program, name);
8350 void TraceGLApi::glGetBooleanvFn(GLenum pname, GLboolean* params) {
8351 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetBooleanv")
8352 gl_api_->glGetBooleanvFn(pname, params);
8355 void TraceGLApi::glGetBufferParameterivFn(GLenum target,
8356 GLenum pname,
8357 GLint* params) {
8358 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetBufferParameteriv")
8359 gl_api_->glGetBufferParameterivFn(target, pname, params);
8362 GLenum TraceGLApi::glGetErrorFn(void) {
8363 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetError")
8364 return gl_api_->glGetErrorFn();
8367 void TraceGLApi::glGetFenceivNVFn(GLuint fence, GLenum pname, GLint* params) {
8368 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetFenceivNV")
8369 gl_api_->glGetFenceivNVFn(fence, pname, params);
8372 void TraceGLApi::glGetFloatvFn(GLenum pname, GLfloat* params) {
8373 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetFloatv")
8374 gl_api_->glGetFloatvFn(pname, params);
8377 GLint TraceGLApi::glGetFragDataLocationFn(GLuint program, const char* name) {
8378 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetFragDataLocation")
8379 return gl_api_->glGetFragDataLocationFn(program, name);
8382 void TraceGLApi::glGetFramebufferAttachmentParameterivEXTFn(GLenum target,
8383 GLenum attachment,
8384 GLenum pname,
8385 GLint* params) {
8386 TRACE_EVENT_BINARY_EFFICIENT0(
8387 "gpu", "TraceGLAPI::glGetFramebufferAttachmentParameterivEXT")
8388 gl_api_->glGetFramebufferAttachmentParameterivEXTFn(target, attachment, pname,
8389 params);
8392 GLenum TraceGLApi::glGetGraphicsResetStatusARBFn(void) {
8393 TRACE_EVENT_BINARY_EFFICIENT0("gpu",
8394 "TraceGLAPI::glGetGraphicsResetStatusARB")
8395 return gl_api_->glGetGraphicsResetStatusARBFn();
8398 void TraceGLApi::glGetInteger64i_vFn(GLenum target,
8399 GLuint index,
8400 GLint64* data) {
8401 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetInteger64i_v")
8402 gl_api_->glGetInteger64i_vFn(target, index, data);
8405 void TraceGLApi::glGetInteger64vFn(GLenum pname, GLint64* params) {
8406 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetInteger64v")
8407 gl_api_->glGetInteger64vFn(pname, params);
8410 void TraceGLApi::glGetIntegeri_vFn(GLenum target, GLuint index, GLint* data) {
8411 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetIntegeri_v")
8412 gl_api_->glGetIntegeri_vFn(target, index, data);
8415 void TraceGLApi::glGetIntegervFn(GLenum pname, GLint* params) {
8416 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetIntegerv")
8417 gl_api_->glGetIntegervFn(pname, params);
8420 void TraceGLApi::glGetInternalformativFn(GLenum target,
8421 GLenum internalformat,
8422 GLenum pname,
8423 GLsizei bufSize,
8424 GLint* params) {
8425 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetInternalformativ")
8426 gl_api_->glGetInternalformativFn(target, internalformat, pname, bufSize,
8427 params);
8430 void TraceGLApi::glGetProgramBinaryFn(GLuint program,
8431 GLsizei bufSize,
8432 GLsizei* length,
8433 GLenum* binaryFormat,
8434 GLvoid* binary) {
8435 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetProgramBinary")
8436 gl_api_->glGetProgramBinaryFn(program, bufSize, length, binaryFormat, binary);
8439 void TraceGLApi::glGetProgramInfoLogFn(GLuint program,
8440 GLsizei bufsize,
8441 GLsizei* length,
8442 char* infolog) {
8443 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetProgramInfoLog")
8444 gl_api_->glGetProgramInfoLogFn(program, bufsize, length, infolog);
8447 void TraceGLApi::glGetProgramivFn(GLuint program, GLenum pname, GLint* params) {
8448 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetProgramiv")
8449 gl_api_->glGetProgramivFn(program, pname, params);
8452 void TraceGLApi::glGetQueryivFn(GLenum target, GLenum pname, GLint* params) {
8453 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetQueryiv")
8454 gl_api_->glGetQueryivFn(target, pname, params);
8457 void TraceGLApi::glGetQueryivARBFn(GLenum target, GLenum pname, GLint* params) {
8458 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetQueryivARB")
8459 gl_api_->glGetQueryivARBFn(target, pname, params);
8462 void TraceGLApi::glGetQueryObjecti64vFn(GLuint id,
8463 GLenum pname,
8464 GLint64* params) {
8465 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetQueryObjecti64v")
8466 gl_api_->glGetQueryObjecti64vFn(id, pname, params);
8469 void TraceGLApi::glGetQueryObjectivFn(GLuint id, GLenum pname, GLint* params) {
8470 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetQueryObjectiv")
8471 gl_api_->glGetQueryObjectivFn(id, pname, params);
8474 void TraceGLApi::glGetQueryObjectivARBFn(GLuint id,
8475 GLenum pname,
8476 GLint* params) {
8477 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetQueryObjectivARB")
8478 gl_api_->glGetQueryObjectivARBFn(id, pname, params);
8481 void TraceGLApi::glGetQueryObjectui64vFn(GLuint id,
8482 GLenum pname,
8483 GLuint64* params) {
8484 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetQueryObjectui64v")
8485 gl_api_->glGetQueryObjectui64vFn(id, pname, params);
8488 void TraceGLApi::glGetQueryObjectuivFn(GLuint id,
8489 GLenum pname,
8490 GLuint* params) {
8491 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetQueryObjectuiv")
8492 gl_api_->glGetQueryObjectuivFn(id, pname, params);
8495 void TraceGLApi::glGetQueryObjectuivARBFn(GLuint id,
8496 GLenum pname,
8497 GLuint* params) {
8498 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetQueryObjectuivARB")
8499 gl_api_->glGetQueryObjectuivARBFn(id, pname, params);
8502 void TraceGLApi::glGetRenderbufferParameterivEXTFn(GLenum target,
8503 GLenum pname,
8504 GLint* params) {
8505 TRACE_EVENT_BINARY_EFFICIENT0("gpu",
8506 "TraceGLAPI::glGetRenderbufferParameterivEXT")
8507 gl_api_->glGetRenderbufferParameterivEXTFn(target, pname, params);
8510 void TraceGLApi::glGetSamplerParameterfvFn(GLuint sampler,
8511 GLenum pname,
8512 GLfloat* params) {
8513 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetSamplerParameterfv")
8514 gl_api_->glGetSamplerParameterfvFn(sampler, pname, params);
8517 void TraceGLApi::glGetSamplerParameterivFn(GLuint sampler,
8518 GLenum pname,
8519 GLint* params) {
8520 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetSamplerParameteriv")
8521 gl_api_->glGetSamplerParameterivFn(sampler, pname, params);
8524 void TraceGLApi::glGetShaderInfoLogFn(GLuint shader,
8525 GLsizei bufsize,
8526 GLsizei* length,
8527 char* infolog) {
8528 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetShaderInfoLog")
8529 gl_api_->glGetShaderInfoLogFn(shader, bufsize, length, infolog);
8532 void TraceGLApi::glGetShaderivFn(GLuint shader, GLenum pname, GLint* params) {
8533 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetShaderiv")
8534 gl_api_->glGetShaderivFn(shader, pname, params);
8537 void TraceGLApi::glGetShaderPrecisionFormatFn(GLenum shadertype,
8538 GLenum precisiontype,
8539 GLint* range,
8540 GLint* precision) {
8541 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetShaderPrecisionFormat")
8542 gl_api_->glGetShaderPrecisionFormatFn(shadertype, precisiontype, range,
8543 precision);
8546 void TraceGLApi::glGetShaderSourceFn(GLuint shader,
8547 GLsizei bufsize,
8548 GLsizei* length,
8549 char* source) {
8550 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetShaderSource")
8551 gl_api_->glGetShaderSourceFn(shader, bufsize, length, source);
8554 const GLubyte* TraceGLApi::glGetStringFn(GLenum name) {
8555 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetString")
8556 return gl_api_->glGetStringFn(name);
8559 void TraceGLApi::glGetSyncivFn(GLsync sync,
8560 GLenum pname,
8561 GLsizei bufSize,
8562 GLsizei* length,
8563 GLint* values) {
8564 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetSynciv")
8565 gl_api_->glGetSyncivFn(sync, pname, bufSize, length, values);
8568 void TraceGLApi::glGetTexLevelParameterfvFn(GLenum target,
8569 GLint level,
8570 GLenum pname,
8571 GLfloat* params) {
8572 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetTexLevelParameterfv")
8573 gl_api_->glGetTexLevelParameterfvFn(target, level, pname, params);
8576 void TraceGLApi::glGetTexLevelParameterivFn(GLenum target,
8577 GLint level,
8578 GLenum pname,
8579 GLint* params) {
8580 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetTexLevelParameteriv")
8581 gl_api_->glGetTexLevelParameterivFn(target, level, pname, params);
8584 void TraceGLApi::glGetTexParameterfvFn(GLenum target,
8585 GLenum pname,
8586 GLfloat* params) {
8587 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetTexParameterfv")
8588 gl_api_->glGetTexParameterfvFn(target, pname, params);
8591 void TraceGLApi::glGetTexParameterivFn(GLenum target,
8592 GLenum pname,
8593 GLint* params) {
8594 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetTexParameteriv")
8595 gl_api_->glGetTexParameterivFn(target, pname, params);
8598 void TraceGLApi::glGetTransformFeedbackVaryingFn(GLuint program,
8599 GLuint index,
8600 GLsizei bufSize,
8601 GLsizei* length,
8602 GLenum* type,
8603 char* name) {
8604 TRACE_EVENT_BINARY_EFFICIENT0("gpu",
8605 "TraceGLAPI::glGetTransformFeedbackVarying")
8606 gl_api_->glGetTransformFeedbackVaryingFn(program, index, bufSize, length,
8607 type, name);
8610 void TraceGLApi::glGetTranslatedShaderSourceANGLEFn(GLuint shader,
8611 GLsizei bufsize,
8612 GLsizei* length,
8613 char* source) {
8614 TRACE_EVENT_BINARY_EFFICIENT0("gpu",
8615 "TraceGLAPI::glGetTranslatedShaderSourceANGLE")
8616 gl_api_->glGetTranslatedShaderSourceANGLEFn(shader, bufsize, length, source);
8619 GLuint TraceGLApi::glGetUniformBlockIndexFn(GLuint program,
8620 const char* uniformBlockName) {
8621 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetUniformBlockIndex")
8622 return gl_api_->glGetUniformBlockIndexFn(program, uniformBlockName);
8625 void TraceGLApi::glGetUniformfvFn(GLuint program,
8626 GLint location,
8627 GLfloat* params) {
8628 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetUniformfv")
8629 gl_api_->glGetUniformfvFn(program, location, params);
8632 void TraceGLApi::glGetUniformIndicesFn(GLuint program,
8633 GLsizei uniformCount,
8634 const char* const* uniformNames,
8635 GLuint* uniformIndices) {
8636 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetUniformIndices")
8637 gl_api_->glGetUniformIndicesFn(program, uniformCount, uniformNames,
8638 uniformIndices);
8641 void TraceGLApi::glGetUniformivFn(GLuint program,
8642 GLint location,
8643 GLint* params) {
8644 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetUniformiv")
8645 gl_api_->glGetUniformivFn(program, location, params);
8648 GLint TraceGLApi::glGetUniformLocationFn(GLuint program, const char* name) {
8649 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetUniformLocation")
8650 return gl_api_->glGetUniformLocationFn(program, name);
8653 void TraceGLApi::glGetVertexAttribfvFn(GLuint index,
8654 GLenum pname,
8655 GLfloat* params) {
8656 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetVertexAttribfv")
8657 gl_api_->glGetVertexAttribfvFn(index, pname, params);
8660 void TraceGLApi::glGetVertexAttribivFn(GLuint index,
8661 GLenum pname,
8662 GLint* params) {
8663 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetVertexAttribiv")
8664 gl_api_->glGetVertexAttribivFn(index, pname, params);
8667 void TraceGLApi::glGetVertexAttribPointervFn(GLuint index,
8668 GLenum pname,
8669 void** pointer) {
8670 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glGetVertexAttribPointerv")
8671 gl_api_->glGetVertexAttribPointervFn(index, pname, pointer);
8674 void TraceGLApi::glHintFn(GLenum target, GLenum mode) {
8675 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glHint")
8676 gl_api_->glHintFn(target, mode);
8679 void TraceGLApi::glInsertEventMarkerEXTFn(GLsizei length, const char* marker) {
8680 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glInsertEventMarkerEXT")
8681 gl_api_->glInsertEventMarkerEXTFn(length, marker);
8684 void TraceGLApi::glInvalidateFramebufferFn(GLenum target,
8685 GLsizei numAttachments,
8686 const GLenum* attachments) {
8687 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glInvalidateFramebuffer")
8688 gl_api_->glInvalidateFramebufferFn(target, numAttachments, attachments);
8691 void TraceGLApi::glInvalidateSubFramebufferFn(GLenum target,
8692 GLsizei numAttachments,
8693 const GLenum* attachments,
8694 GLint x,
8695 GLint y,
8696 GLint width,
8697 GLint height) {
8698 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glInvalidateSubFramebuffer")
8699 gl_api_->glInvalidateSubFramebufferFn(target, numAttachments, attachments, x,
8700 y, width, height);
8703 GLboolean TraceGLApi::glIsBufferFn(GLuint buffer) {
8704 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glIsBuffer")
8705 return gl_api_->glIsBufferFn(buffer);
8708 GLboolean TraceGLApi::glIsEnabledFn(GLenum cap) {
8709 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glIsEnabled")
8710 return gl_api_->glIsEnabledFn(cap);
8713 GLboolean TraceGLApi::glIsFenceAPPLEFn(GLuint fence) {
8714 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glIsFenceAPPLE")
8715 return gl_api_->glIsFenceAPPLEFn(fence);
8718 GLboolean TraceGLApi::glIsFenceNVFn(GLuint fence) {
8719 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glIsFenceNV")
8720 return gl_api_->glIsFenceNVFn(fence);
8723 GLboolean TraceGLApi::glIsFramebufferEXTFn(GLuint framebuffer) {
8724 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glIsFramebufferEXT")
8725 return gl_api_->glIsFramebufferEXTFn(framebuffer);
8728 GLboolean TraceGLApi::glIsProgramFn(GLuint program) {
8729 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glIsProgram")
8730 return gl_api_->glIsProgramFn(program);
8733 GLboolean TraceGLApi::glIsQueryFn(GLuint query) {
8734 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glIsQuery")
8735 return gl_api_->glIsQueryFn(query);
8738 GLboolean TraceGLApi::glIsQueryARBFn(GLuint query) {
8739 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glIsQueryARB")
8740 return gl_api_->glIsQueryARBFn(query);
8743 GLboolean TraceGLApi::glIsRenderbufferEXTFn(GLuint renderbuffer) {
8744 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glIsRenderbufferEXT")
8745 return gl_api_->glIsRenderbufferEXTFn(renderbuffer);
8748 GLboolean TraceGLApi::glIsSamplerFn(GLuint sampler) {
8749 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glIsSampler")
8750 return gl_api_->glIsSamplerFn(sampler);
8753 GLboolean TraceGLApi::glIsShaderFn(GLuint shader) {
8754 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glIsShader")
8755 return gl_api_->glIsShaderFn(shader);
8758 GLboolean TraceGLApi::glIsSyncFn(GLsync sync) {
8759 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glIsSync")
8760 return gl_api_->glIsSyncFn(sync);
8763 GLboolean TraceGLApi::glIsTextureFn(GLuint texture) {
8764 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glIsTexture")
8765 return gl_api_->glIsTextureFn(texture);
8768 GLboolean TraceGLApi::glIsTransformFeedbackFn(GLuint id) {
8769 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glIsTransformFeedback")
8770 return gl_api_->glIsTransformFeedbackFn(id);
8773 GLboolean TraceGLApi::glIsVertexArrayOESFn(GLuint array) {
8774 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glIsVertexArrayOES")
8775 return gl_api_->glIsVertexArrayOESFn(array);
8778 void TraceGLApi::glLineWidthFn(GLfloat width) {
8779 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glLineWidth")
8780 gl_api_->glLineWidthFn(width);
8783 void TraceGLApi::glLinkProgramFn(GLuint program) {
8784 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glLinkProgram")
8785 gl_api_->glLinkProgramFn(program);
8788 void* TraceGLApi::glMapBufferFn(GLenum target, GLenum access) {
8789 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glMapBuffer")
8790 return gl_api_->glMapBufferFn(target, access);
8793 void* TraceGLApi::glMapBufferRangeFn(GLenum target,
8794 GLintptr offset,
8795 GLsizeiptr length,
8796 GLbitfield access) {
8797 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glMapBufferRange")
8798 return gl_api_->glMapBufferRangeFn(target, offset, length, access);
8801 void TraceGLApi::glMatrixLoadfEXTFn(GLenum matrixMode, const GLfloat* m) {
8802 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glMatrixLoadfEXT")
8803 gl_api_->glMatrixLoadfEXTFn(matrixMode, m);
8806 void TraceGLApi::glMatrixLoadIdentityEXTFn(GLenum matrixMode) {
8807 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glMatrixLoadIdentityEXT")
8808 gl_api_->glMatrixLoadIdentityEXTFn(matrixMode);
8811 void TraceGLApi::glPauseTransformFeedbackFn(void) {
8812 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glPauseTransformFeedback")
8813 gl_api_->glPauseTransformFeedbackFn();
8816 void TraceGLApi::glPixelStoreiFn(GLenum pname, GLint param) {
8817 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glPixelStorei")
8818 gl_api_->glPixelStoreiFn(pname, param);
8821 void TraceGLApi::glPointParameteriFn(GLenum pname, GLint param) {
8822 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glPointParameteri")
8823 gl_api_->glPointParameteriFn(pname, param);
8826 void TraceGLApi::glPolygonOffsetFn(GLfloat factor, GLfloat units) {
8827 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glPolygonOffset")
8828 gl_api_->glPolygonOffsetFn(factor, units);
8831 void TraceGLApi::glPopGroupMarkerEXTFn(void) {
8832 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glPopGroupMarkerEXT")
8833 gl_api_->glPopGroupMarkerEXTFn();
8836 void TraceGLApi::glProgramBinaryFn(GLuint program,
8837 GLenum binaryFormat,
8838 const GLvoid* binary,
8839 GLsizei length) {
8840 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glProgramBinary")
8841 gl_api_->glProgramBinaryFn(program, binaryFormat, binary, length);
8844 void TraceGLApi::glProgramParameteriFn(GLuint program,
8845 GLenum pname,
8846 GLint value) {
8847 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glProgramParameteri")
8848 gl_api_->glProgramParameteriFn(program, pname, value);
8851 void TraceGLApi::glPushGroupMarkerEXTFn(GLsizei length, const char* marker) {
8852 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glPushGroupMarkerEXT")
8853 gl_api_->glPushGroupMarkerEXTFn(length, marker);
8856 void TraceGLApi::glQueryCounterFn(GLuint id, GLenum target) {
8857 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glQueryCounter")
8858 gl_api_->glQueryCounterFn(id, target);
8861 void TraceGLApi::glReadBufferFn(GLenum src) {
8862 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glReadBuffer")
8863 gl_api_->glReadBufferFn(src);
8866 void TraceGLApi::glReadPixelsFn(GLint x,
8867 GLint y,
8868 GLsizei width,
8869 GLsizei height,
8870 GLenum format,
8871 GLenum type,
8872 void* pixels) {
8873 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glReadPixels")
8874 gl_api_->glReadPixelsFn(x, y, width, height, format, type, pixels);
8877 void TraceGLApi::glReleaseShaderCompilerFn(void) {
8878 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glReleaseShaderCompiler")
8879 gl_api_->glReleaseShaderCompilerFn();
8882 void TraceGLApi::glRenderbufferStorageEXTFn(GLenum target,
8883 GLenum internalformat,
8884 GLsizei width,
8885 GLsizei height) {
8886 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glRenderbufferStorageEXT")
8887 gl_api_->glRenderbufferStorageEXTFn(target, internalformat, width, height);
8890 void TraceGLApi::glRenderbufferStorageMultisampleFn(GLenum target,
8891 GLsizei samples,
8892 GLenum internalformat,
8893 GLsizei width,
8894 GLsizei height) {
8895 TRACE_EVENT_BINARY_EFFICIENT0("gpu",
8896 "TraceGLAPI::glRenderbufferStorageMultisample")
8897 gl_api_->glRenderbufferStorageMultisampleFn(target, samples, internalformat,
8898 width, height);
8901 void TraceGLApi::glRenderbufferStorageMultisampleANGLEFn(GLenum target,
8902 GLsizei samples,
8903 GLenum internalformat,
8904 GLsizei width,
8905 GLsizei height) {
8906 TRACE_EVENT_BINARY_EFFICIENT0(
8907 "gpu", "TraceGLAPI::glRenderbufferStorageMultisampleANGLE")
8908 gl_api_->glRenderbufferStorageMultisampleANGLEFn(
8909 target, samples, internalformat, width, height);
8912 void TraceGLApi::glRenderbufferStorageMultisampleEXTFn(GLenum target,
8913 GLsizei samples,
8914 GLenum internalformat,
8915 GLsizei width,
8916 GLsizei height) {
8917 TRACE_EVENT_BINARY_EFFICIENT0(
8918 "gpu", "TraceGLAPI::glRenderbufferStorageMultisampleEXT")
8919 gl_api_->glRenderbufferStorageMultisampleEXTFn(target, samples,
8920 internalformat, width, height);
8923 void TraceGLApi::glRenderbufferStorageMultisampleIMGFn(GLenum target,
8924 GLsizei samples,
8925 GLenum internalformat,
8926 GLsizei width,
8927 GLsizei height) {
8928 TRACE_EVENT_BINARY_EFFICIENT0(
8929 "gpu", "TraceGLAPI::glRenderbufferStorageMultisampleIMG")
8930 gl_api_->glRenderbufferStorageMultisampleIMGFn(target, samples,
8931 internalformat, width, height);
8934 void TraceGLApi::glResumeTransformFeedbackFn(void) {
8935 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glResumeTransformFeedback")
8936 gl_api_->glResumeTransformFeedbackFn();
8939 void TraceGLApi::glSampleCoverageFn(GLclampf value, GLboolean invert) {
8940 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glSampleCoverage")
8941 gl_api_->glSampleCoverageFn(value, invert);
8944 void TraceGLApi::glSamplerParameterfFn(GLuint sampler,
8945 GLenum pname,
8946 GLfloat param) {
8947 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glSamplerParameterf")
8948 gl_api_->glSamplerParameterfFn(sampler, pname, param);
8951 void TraceGLApi::glSamplerParameterfvFn(GLuint sampler,
8952 GLenum pname,
8953 const GLfloat* params) {
8954 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glSamplerParameterfv")
8955 gl_api_->glSamplerParameterfvFn(sampler, pname, params);
8958 void TraceGLApi::glSamplerParameteriFn(GLuint sampler,
8959 GLenum pname,
8960 GLint param) {
8961 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glSamplerParameteri")
8962 gl_api_->glSamplerParameteriFn(sampler, pname, param);
8965 void TraceGLApi::glSamplerParameterivFn(GLuint sampler,
8966 GLenum pname,
8967 const GLint* params) {
8968 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glSamplerParameteriv")
8969 gl_api_->glSamplerParameterivFn(sampler, pname, params);
8972 void TraceGLApi::glScissorFn(GLint x, GLint y, GLsizei width, GLsizei height) {
8973 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glScissor")
8974 gl_api_->glScissorFn(x, y, width, height);
8977 void TraceGLApi::glSetFenceAPPLEFn(GLuint fence) {
8978 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glSetFenceAPPLE")
8979 gl_api_->glSetFenceAPPLEFn(fence);
8982 void TraceGLApi::glSetFenceNVFn(GLuint fence, GLenum condition) {
8983 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glSetFenceNV")
8984 gl_api_->glSetFenceNVFn(fence, condition);
8987 void TraceGLApi::glShaderBinaryFn(GLsizei n,
8988 const GLuint* shaders,
8989 GLenum binaryformat,
8990 const void* binary,
8991 GLsizei length) {
8992 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glShaderBinary")
8993 gl_api_->glShaderBinaryFn(n, shaders, binaryformat, binary, length);
8996 void TraceGLApi::glShaderSourceFn(GLuint shader,
8997 GLsizei count,
8998 const char* const* str,
8999 const GLint* length) {
9000 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glShaderSource")
9001 gl_api_->glShaderSourceFn(shader, count, str, length);
9004 void TraceGLApi::glStencilFuncFn(GLenum func, GLint ref, GLuint mask) {
9005 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glStencilFunc")
9006 gl_api_->glStencilFuncFn(func, ref, mask);
9009 void TraceGLApi::glStencilFuncSeparateFn(GLenum face,
9010 GLenum func,
9011 GLint ref,
9012 GLuint mask) {
9013 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glStencilFuncSeparate")
9014 gl_api_->glStencilFuncSeparateFn(face, func, ref, mask);
9017 void TraceGLApi::glStencilMaskFn(GLuint mask) {
9018 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glStencilMask")
9019 gl_api_->glStencilMaskFn(mask);
9022 void TraceGLApi::glStencilMaskSeparateFn(GLenum face, GLuint mask) {
9023 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glStencilMaskSeparate")
9024 gl_api_->glStencilMaskSeparateFn(face, mask);
9027 void TraceGLApi::glStencilOpFn(GLenum fail, GLenum zfail, GLenum zpass) {
9028 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glStencilOp")
9029 gl_api_->glStencilOpFn(fail, zfail, zpass);
9032 void TraceGLApi::glStencilOpSeparateFn(GLenum face,
9033 GLenum fail,
9034 GLenum zfail,
9035 GLenum zpass) {
9036 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glStencilOpSeparate")
9037 gl_api_->glStencilOpSeparateFn(face, fail, zfail, zpass);
9040 GLboolean TraceGLApi::glTestFenceAPPLEFn(GLuint fence) {
9041 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glTestFenceAPPLE")
9042 return gl_api_->glTestFenceAPPLEFn(fence);
9045 GLboolean TraceGLApi::glTestFenceNVFn(GLuint fence) {
9046 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glTestFenceNV")
9047 return gl_api_->glTestFenceNVFn(fence);
9050 void TraceGLApi::glTexImage2DFn(GLenum target,
9051 GLint level,
9052 GLint internalformat,
9053 GLsizei width,
9054 GLsizei height,
9055 GLint border,
9056 GLenum format,
9057 GLenum type,
9058 const void* pixels) {
9059 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glTexImage2D")
9060 gl_api_->glTexImage2DFn(target, level, internalformat, width, height, border,
9061 format, type, pixels);
9064 void TraceGLApi::glTexImage3DFn(GLenum target,
9065 GLint level,
9066 GLint internalformat,
9067 GLsizei width,
9068 GLsizei height,
9069 GLsizei depth,
9070 GLint border,
9071 GLenum format,
9072 GLenum type,
9073 const void* pixels) {
9074 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glTexImage3D")
9075 gl_api_->glTexImage3DFn(target, level, internalformat, width, height, depth,
9076 border, format, type, pixels);
9079 void TraceGLApi::glTexParameterfFn(GLenum target, GLenum pname, GLfloat param) {
9080 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glTexParameterf")
9081 gl_api_->glTexParameterfFn(target, pname, param);
9084 void TraceGLApi::glTexParameterfvFn(GLenum target,
9085 GLenum pname,
9086 const GLfloat* params) {
9087 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glTexParameterfv")
9088 gl_api_->glTexParameterfvFn(target, pname, params);
9091 void TraceGLApi::glTexParameteriFn(GLenum target, GLenum pname, GLint param) {
9092 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glTexParameteri")
9093 gl_api_->glTexParameteriFn(target, pname, param);
9096 void TraceGLApi::glTexParameterivFn(GLenum target,
9097 GLenum pname,
9098 const GLint* params) {
9099 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glTexParameteriv")
9100 gl_api_->glTexParameterivFn(target, pname, params);
9103 void TraceGLApi::glTexStorage2DEXTFn(GLenum target,
9104 GLsizei levels,
9105 GLenum internalformat,
9106 GLsizei width,
9107 GLsizei height) {
9108 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glTexStorage2DEXT")
9109 gl_api_->glTexStorage2DEXTFn(target, levels, internalformat, width, height);
9112 void TraceGLApi::glTexStorage3DFn(GLenum target,
9113 GLsizei levels,
9114 GLenum internalformat,
9115 GLsizei width,
9116 GLsizei height,
9117 GLsizei depth) {
9118 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glTexStorage3D")
9119 gl_api_->glTexStorage3DFn(target, levels, internalformat, width, height,
9120 depth);
9123 void TraceGLApi::glTexSubImage2DFn(GLenum target,
9124 GLint level,
9125 GLint xoffset,
9126 GLint yoffset,
9127 GLsizei width,
9128 GLsizei height,
9129 GLenum format,
9130 GLenum type,
9131 const void* pixels) {
9132 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glTexSubImage2D")
9133 gl_api_->glTexSubImage2DFn(target, level, xoffset, yoffset, width, height,
9134 format, type, pixels);
9137 void TraceGLApi::glTransformFeedbackVaryingsFn(GLuint program,
9138 GLsizei count,
9139 const char* const* varyings,
9140 GLenum bufferMode) {
9141 TRACE_EVENT_BINARY_EFFICIENT0("gpu",
9142 "TraceGLAPI::glTransformFeedbackVaryings")
9143 gl_api_->glTransformFeedbackVaryingsFn(program, count, varyings, bufferMode);
9146 void TraceGLApi::glUniform1fFn(GLint location, GLfloat x) {
9147 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform1f")
9148 gl_api_->glUniform1fFn(location, x);
9151 void TraceGLApi::glUniform1fvFn(GLint location,
9152 GLsizei count,
9153 const GLfloat* v) {
9154 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform1fv")
9155 gl_api_->glUniform1fvFn(location, count, v);
9158 void TraceGLApi::glUniform1iFn(GLint location, GLint x) {
9159 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform1i")
9160 gl_api_->glUniform1iFn(location, x);
9163 void TraceGLApi::glUniform1ivFn(GLint location, GLsizei count, const GLint* v) {
9164 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform1iv")
9165 gl_api_->glUniform1ivFn(location, count, v);
9168 void TraceGLApi::glUniform1uiFn(GLint location, GLuint v0) {
9169 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform1ui")
9170 gl_api_->glUniform1uiFn(location, v0);
9173 void TraceGLApi::glUniform1uivFn(GLint location,
9174 GLsizei count,
9175 const GLuint* v) {
9176 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform1uiv")
9177 gl_api_->glUniform1uivFn(location, count, v);
9180 void TraceGLApi::glUniform2fFn(GLint location, GLfloat x, GLfloat y) {
9181 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform2f")
9182 gl_api_->glUniform2fFn(location, x, y);
9185 void TraceGLApi::glUniform2fvFn(GLint location,
9186 GLsizei count,
9187 const GLfloat* v) {
9188 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform2fv")
9189 gl_api_->glUniform2fvFn(location, count, v);
9192 void TraceGLApi::glUniform2iFn(GLint location, GLint x, GLint y) {
9193 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform2i")
9194 gl_api_->glUniform2iFn(location, x, y);
9197 void TraceGLApi::glUniform2ivFn(GLint location, GLsizei count, const GLint* v) {
9198 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform2iv")
9199 gl_api_->glUniform2ivFn(location, count, v);
9202 void TraceGLApi::glUniform2uiFn(GLint location, GLuint v0, GLuint v1) {
9203 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform2ui")
9204 gl_api_->glUniform2uiFn(location, v0, v1);
9207 void TraceGLApi::glUniform2uivFn(GLint location,
9208 GLsizei count,
9209 const GLuint* v) {
9210 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform2uiv")
9211 gl_api_->glUniform2uivFn(location, count, v);
9214 void TraceGLApi::glUniform3fFn(GLint location,
9215 GLfloat x,
9216 GLfloat y,
9217 GLfloat z) {
9218 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform3f")
9219 gl_api_->glUniform3fFn(location, x, y, z);
9222 void TraceGLApi::glUniform3fvFn(GLint location,
9223 GLsizei count,
9224 const GLfloat* v) {
9225 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform3fv")
9226 gl_api_->glUniform3fvFn(location, count, v);
9229 void TraceGLApi::glUniform3iFn(GLint location, GLint x, GLint y, GLint z) {
9230 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform3i")
9231 gl_api_->glUniform3iFn(location, x, y, z);
9234 void TraceGLApi::glUniform3ivFn(GLint location, GLsizei count, const GLint* v) {
9235 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform3iv")
9236 gl_api_->glUniform3ivFn(location, count, v);
9239 void TraceGLApi::glUniform3uiFn(GLint location,
9240 GLuint v0,
9241 GLuint v1,
9242 GLuint v2) {
9243 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform3ui")
9244 gl_api_->glUniform3uiFn(location, v0, v1, v2);
9247 void TraceGLApi::glUniform3uivFn(GLint location,
9248 GLsizei count,
9249 const GLuint* v) {
9250 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform3uiv")
9251 gl_api_->glUniform3uivFn(location, count, v);
9254 void TraceGLApi::glUniform4fFn(GLint location,
9255 GLfloat x,
9256 GLfloat y,
9257 GLfloat z,
9258 GLfloat w) {
9259 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform4f")
9260 gl_api_->glUniform4fFn(location, x, y, z, w);
9263 void TraceGLApi::glUniform4fvFn(GLint location,
9264 GLsizei count,
9265 const GLfloat* v) {
9266 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform4fv")
9267 gl_api_->glUniform4fvFn(location, count, v);
9270 void TraceGLApi::glUniform4iFn(GLint location,
9271 GLint x,
9272 GLint y,
9273 GLint z,
9274 GLint w) {
9275 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform4i")
9276 gl_api_->glUniform4iFn(location, x, y, z, w);
9279 void TraceGLApi::glUniform4ivFn(GLint location, GLsizei count, const GLint* v) {
9280 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform4iv")
9281 gl_api_->glUniform4ivFn(location, count, v);
9284 void TraceGLApi::glUniform4uiFn(GLint location,
9285 GLuint v0,
9286 GLuint v1,
9287 GLuint v2,
9288 GLuint v3) {
9289 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform4ui")
9290 gl_api_->glUniform4uiFn(location, v0, v1, v2, v3);
9293 void TraceGLApi::glUniform4uivFn(GLint location,
9294 GLsizei count,
9295 const GLuint* v) {
9296 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniform4uiv")
9297 gl_api_->glUniform4uivFn(location, count, v);
9300 void TraceGLApi::glUniformBlockBindingFn(GLuint program,
9301 GLuint uniformBlockIndex,
9302 GLuint uniformBlockBinding) {
9303 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniformBlockBinding")
9304 gl_api_->glUniformBlockBindingFn(program, uniformBlockIndex,
9305 uniformBlockBinding);
9308 void TraceGLApi::glUniformMatrix2fvFn(GLint location,
9309 GLsizei count,
9310 GLboolean transpose,
9311 const GLfloat* value) {
9312 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniformMatrix2fv")
9313 gl_api_->glUniformMatrix2fvFn(location, count, transpose, value);
9316 void TraceGLApi::glUniformMatrix2x3fvFn(GLint location,
9317 GLsizei count,
9318 GLboolean transpose,
9319 const GLfloat* value) {
9320 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniformMatrix2x3fv")
9321 gl_api_->glUniformMatrix2x3fvFn(location, count, transpose, value);
9324 void TraceGLApi::glUniformMatrix2x4fvFn(GLint location,
9325 GLsizei count,
9326 GLboolean transpose,
9327 const GLfloat* value) {
9328 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniformMatrix2x4fv")
9329 gl_api_->glUniformMatrix2x4fvFn(location, count, transpose, value);
9332 void TraceGLApi::glUniformMatrix3fvFn(GLint location,
9333 GLsizei count,
9334 GLboolean transpose,
9335 const GLfloat* value) {
9336 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniformMatrix3fv")
9337 gl_api_->glUniformMatrix3fvFn(location, count, transpose, value);
9340 void TraceGLApi::glUniformMatrix3x2fvFn(GLint location,
9341 GLsizei count,
9342 GLboolean transpose,
9343 const GLfloat* value) {
9344 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniformMatrix3x2fv")
9345 gl_api_->glUniformMatrix3x2fvFn(location, count, transpose, value);
9348 void TraceGLApi::glUniformMatrix3x4fvFn(GLint location,
9349 GLsizei count,
9350 GLboolean transpose,
9351 const GLfloat* value) {
9352 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniformMatrix3x4fv")
9353 gl_api_->glUniformMatrix3x4fvFn(location, count, transpose, value);
9356 void TraceGLApi::glUniformMatrix4fvFn(GLint location,
9357 GLsizei count,
9358 GLboolean transpose,
9359 const GLfloat* value) {
9360 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniformMatrix4fv")
9361 gl_api_->glUniformMatrix4fvFn(location, count, transpose, value);
9364 void TraceGLApi::glUniformMatrix4x2fvFn(GLint location,
9365 GLsizei count,
9366 GLboolean transpose,
9367 const GLfloat* value) {
9368 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniformMatrix4x2fv")
9369 gl_api_->glUniformMatrix4x2fvFn(location, count, transpose, value);
9372 void TraceGLApi::glUniformMatrix4x3fvFn(GLint location,
9373 GLsizei count,
9374 GLboolean transpose,
9375 const GLfloat* value) {
9376 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUniformMatrix4x3fv")
9377 gl_api_->glUniformMatrix4x3fvFn(location, count, transpose, value);
9380 GLboolean TraceGLApi::glUnmapBufferFn(GLenum target) {
9381 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUnmapBuffer")
9382 return gl_api_->glUnmapBufferFn(target);
9385 void TraceGLApi::glUseProgramFn(GLuint program) {
9386 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glUseProgram")
9387 gl_api_->glUseProgramFn(program);
9390 void TraceGLApi::glValidateProgramFn(GLuint program) {
9391 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glValidateProgram")
9392 gl_api_->glValidateProgramFn(program);
9395 void TraceGLApi::glVertexAttrib1fFn(GLuint indx, GLfloat x) {
9396 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glVertexAttrib1f")
9397 gl_api_->glVertexAttrib1fFn(indx, x);
9400 void TraceGLApi::glVertexAttrib1fvFn(GLuint indx, const GLfloat* values) {
9401 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glVertexAttrib1fv")
9402 gl_api_->glVertexAttrib1fvFn(indx, values);
9405 void TraceGLApi::glVertexAttrib2fFn(GLuint indx, GLfloat x, GLfloat y) {
9406 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glVertexAttrib2f")
9407 gl_api_->glVertexAttrib2fFn(indx, x, y);
9410 void TraceGLApi::glVertexAttrib2fvFn(GLuint indx, const GLfloat* values) {
9411 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glVertexAttrib2fv")
9412 gl_api_->glVertexAttrib2fvFn(indx, values);
9415 void TraceGLApi::glVertexAttrib3fFn(GLuint indx,
9416 GLfloat x,
9417 GLfloat y,
9418 GLfloat z) {
9419 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glVertexAttrib3f")
9420 gl_api_->glVertexAttrib3fFn(indx, x, y, z);
9423 void TraceGLApi::glVertexAttrib3fvFn(GLuint indx, const GLfloat* values) {
9424 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glVertexAttrib3fv")
9425 gl_api_->glVertexAttrib3fvFn(indx, values);
9428 void TraceGLApi::glVertexAttrib4fFn(GLuint indx,
9429 GLfloat x,
9430 GLfloat y,
9431 GLfloat z,
9432 GLfloat w) {
9433 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glVertexAttrib4f")
9434 gl_api_->glVertexAttrib4fFn(indx, x, y, z, w);
9437 void TraceGLApi::glVertexAttrib4fvFn(GLuint indx, const GLfloat* values) {
9438 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glVertexAttrib4fv")
9439 gl_api_->glVertexAttrib4fvFn(indx, values);
9442 void TraceGLApi::glVertexAttribDivisorANGLEFn(GLuint index, GLuint divisor) {
9443 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glVertexAttribDivisorANGLE")
9444 gl_api_->glVertexAttribDivisorANGLEFn(index, divisor);
9447 void TraceGLApi::glVertexAttribI4iFn(GLuint indx,
9448 GLint x,
9449 GLint y,
9450 GLint z,
9451 GLint w) {
9452 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glVertexAttribI4i")
9453 gl_api_->glVertexAttribI4iFn(indx, x, y, z, w);
9456 void TraceGLApi::glVertexAttribI4ivFn(GLuint indx, const GLint* values) {
9457 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glVertexAttribI4iv")
9458 gl_api_->glVertexAttribI4ivFn(indx, values);
9461 void TraceGLApi::glVertexAttribI4uiFn(GLuint indx,
9462 GLuint x,
9463 GLuint y,
9464 GLuint z,
9465 GLuint w) {
9466 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glVertexAttribI4ui")
9467 gl_api_->glVertexAttribI4uiFn(indx, x, y, z, w);
9470 void TraceGLApi::glVertexAttribI4uivFn(GLuint indx, const GLuint* values) {
9471 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glVertexAttribI4uiv")
9472 gl_api_->glVertexAttribI4uivFn(indx, values);
9475 void TraceGLApi::glVertexAttribIPointerFn(GLuint indx,
9476 GLint size,
9477 GLenum type,
9478 GLsizei stride,
9479 const void* ptr) {
9480 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glVertexAttribIPointer")
9481 gl_api_->glVertexAttribIPointerFn(indx, size, type, stride, ptr);
9484 void TraceGLApi::glVertexAttribPointerFn(GLuint indx,
9485 GLint size,
9486 GLenum type,
9487 GLboolean normalized,
9488 GLsizei stride,
9489 const void* ptr) {
9490 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glVertexAttribPointer")
9491 gl_api_->glVertexAttribPointerFn(indx, size, type, normalized, stride, ptr);
9494 void TraceGLApi::glViewportFn(GLint x, GLint y, GLsizei width, GLsizei height) {
9495 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glViewport")
9496 gl_api_->glViewportFn(x, y, width, height);
9499 GLenum TraceGLApi::glWaitSyncFn(GLsync sync,
9500 GLbitfield flags,
9501 GLuint64 timeout) {
9502 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glWaitSync")
9503 return gl_api_->glWaitSyncFn(sync, flags, timeout);
9506 void NoContextGLApi::glActiveTextureFn(GLenum texture) {
9507 NOTREACHED() << "Trying to call glActiveTexture() without current GL context";
9508 LOG(ERROR) << "Trying to call glActiveTexture() without current GL context";
9511 void NoContextGLApi::glAttachShaderFn(GLuint program, GLuint shader) {
9512 NOTREACHED() << "Trying to call glAttachShader() without current GL context";
9513 LOG(ERROR) << "Trying to call glAttachShader() without current GL context";
9516 void NoContextGLApi::glBeginQueryFn(GLenum target, GLuint id) {
9517 NOTREACHED() << "Trying to call glBeginQuery() without current GL context";
9518 LOG(ERROR) << "Trying to call glBeginQuery() without current GL context";
9521 void NoContextGLApi::glBeginQueryARBFn(GLenum target, GLuint id) {
9522 NOTREACHED() << "Trying to call glBeginQueryARB() without current GL context";
9523 LOG(ERROR) << "Trying to call glBeginQueryARB() without current GL context";
9526 void NoContextGLApi::glBeginTransformFeedbackFn(GLenum primitiveMode) {
9527 NOTREACHED()
9528 << "Trying to call glBeginTransformFeedback() without current GL context";
9529 LOG(ERROR)
9530 << "Trying to call glBeginTransformFeedback() without current GL context";
9533 void NoContextGLApi::glBindAttribLocationFn(GLuint program,
9534 GLuint index,
9535 const char* name) {
9536 NOTREACHED()
9537 << "Trying to call glBindAttribLocation() without current GL context";
9538 LOG(ERROR)
9539 << "Trying to call glBindAttribLocation() without current GL context";
9542 void NoContextGLApi::glBindBufferFn(GLenum target, GLuint buffer) {
9543 NOTREACHED() << "Trying to call glBindBuffer() without current GL context";
9544 LOG(ERROR) << "Trying to call glBindBuffer() without current GL context";
9547 void NoContextGLApi::glBindBufferBaseFn(GLenum target,
9548 GLuint index,
9549 GLuint buffer) {
9550 NOTREACHED()
9551 << "Trying to call glBindBufferBase() without current GL context";
9552 LOG(ERROR) << "Trying to call glBindBufferBase() without current GL context";
9555 void NoContextGLApi::glBindBufferRangeFn(GLenum target,
9556 GLuint index,
9557 GLuint buffer,
9558 GLintptr offset,
9559 GLsizeiptr size) {
9560 NOTREACHED()
9561 << "Trying to call glBindBufferRange() without current GL context";
9562 LOG(ERROR) << "Trying to call glBindBufferRange() without current GL context";
9565 void NoContextGLApi::glBindFragDataLocationFn(GLuint program,
9566 GLuint colorNumber,
9567 const char* name) {
9568 NOTREACHED()
9569 << "Trying to call glBindFragDataLocation() without current GL context";
9570 LOG(ERROR)
9571 << "Trying to call glBindFragDataLocation() without current GL context";
9574 void NoContextGLApi::glBindFragDataLocationIndexedFn(GLuint program,
9575 GLuint colorNumber,
9576 GLuint index,
9577 const char* name) {
9578 NOTREACHED() << "Trying to call glBindFragDataLocationIndexed() without "
9579 "current GL context";
9580 LOG(ERROR) << "Trying to call glBindFragDataLocationIndexed() without "
9581 "current GL context";
9584 void NoContextGLApi::glBindFramebufferEXTFn(GLenum target, GLuint framebuffer) {
9585 NOTREACHED()
9586 << "Trying to call glBindFramebufferEXT() without current GL context";
9587 LOG(ERROR)
9588 << "Trying to call glBindFramebufferEXT() without current GL context";
9591 void NoContextGLApi::glBindRenderbufferEXTFn(GLenum target,
9592 GLuint renderbuffer) {
9593 NOTREACHED()
9594 << "Trying to call glBindRenderbufferEXT() without current GL context";
9595 LOG(ERROR)
9596 << "Trying to call glBindRenderbufferEXT() without current GL context";
9599 void NoContextGLApi::glBindSamplerFn(GLuint unit, GLuint sampler) {
9600 NOTREACHED() << "Trying to call glBindSampler() without current GL context";
9601 LOG(ERROR) << "Trying to call glBindSampler() without current GL context";
9604 void NoContextGLApi::glBindTextureFn(GLenum target, GLuint texture) {
9605 NOTREACHED() << "Trying to call glBindTexture() without current GL context";
9606 LOG(ERROR) << "Trying to call glBindTexture() without current GL context";
9609 void NoContextGLApi::glBindTransformFeedbackFn(GLenum target, GLuint id) {
9610 NOTREACHED()
9611 << "Trying to call glBindTransformFeedback() without current GL context";
9612 LOG(ERROR)
9613 << "Trying to call glBindTransformFeedback() without current GL context";
9616 void NoContextGLApi::glBindVertexArrayOESFn(GLuint array) {
9617 NOTREACHED()
9618 << "Trying to call glBindVertexArrayOES() without current GL context";
9619 LOG(ERROR)
9620 << "Trying to call glBindVertexArrayOES() without current GL context";
9623 void NoContextGLApi::glBlendBarrierKHRFn(void) {
9624 NOTREACHED()
9625 << "Trying to call glBlendBarrierKHR() without current GL context";
9626 LOG(ERROR) << "Trying to call glBlendBarrierKHR() without current GL context";
9629 void NoContextGLApi::glBlendColorFn(GLclampf red,
9630 GLclampf green,
9631 GLclampf blue,
9632 GLclampf alpha) {
9633 NOTREACHED() << "Trying to call glBlendColor() without current GL context";
9634 LOG(ERROR) << "Trying to call glBlendColor() without current GL context";
9637 void NoContextGLApi::glBlendEquationFn(GLenum mode) {
9638 NOTREACHED() << "Trying to call glBlendEquation() without current GL context";
9639 LOG(ERROR) << "Trying to call glBlendEquation() without current GL context";
9642 void NoContextGLApi::glBlendEquationSeparateFn(GLenum modeRGB,
9643 GLenum modeAlpha) {
9644 NOTREACHED()
9645 << "Trying to call glBlendEquationSeparate() without current GL context";
9646 LOG(ERROR)
9647 << "Trying to call glBlendEquationSeparate() without current GL context";
9650 void NoContextGLApi::glBlendFuncFn(GLenum sfactor, GLenum dfactor) {
9651 NOTREACHED() << "Trying to call glBlendFunc() without current GL context";
9652 LOG(ERROR) << "Trying to call glBlendFunc() without current GL context";
9655 void NoContextGLApi::glBlendFuncSeparateFn(GLenum srcRGB,
9656 GLenum dstRGB,
9657 GLenum srcAlpha,
9658 GLenum dstAlpha) {
9659 NOTREACHED()
9660 << "Trying to call glBlendFuncSeparate() without current GL context";
9661 LOG(ERROR)
9662 << "Trying to call glBlendFuncSeparate() without current GL context";
9665 void NoContextGLApi::glBlitFramebufferFn(GLint srcX0,
9666 GLint srcY0,
9667 GLint srcX1,
9668 GLint srcY1,
9669 GLint dstX0,
9670 GLint dstY0,
9671 GLint dstX1,
9672 GLint dstY1,
9673 GLbitfield mask,
9674 GLenum filter) {
9675 NOTREACHED()
9676 << "Trying to call glBlitFramebuffer() without current GL context";
9677 LOG(ERROR) << "Trying to call glBlitFramebuffer() without current GL context";
9680 void NoContextGLApi::glBlitFramebufferANGLEFn(GLint srcX0,
9681 GLint srcY0,
9682 GLint srcX1,
9683 GLint srcY1,
9684 GLint dstX0,
9685 GLint dstY0,
9686 GLint dstX1,
9687 GLint dstY1,
9688 GLbitfield mask,
9689 GLenum filter) {
9690 NOTREACHED()
9691 << "Trying to call glBlitFramebufferANGLE() without current GL context";
9692 LOG(ERROR)
9693 << "Trying to call glBlitFramebufferANGLE() without current GL context";
9696 void NoContextGLApi::glBlitFramebufferEXTFn(GLint srcX0,
9697 GLint srcY0,
9698 GLint srcX1,
9699 GLint srcY1,
9700 GLint dstX0,
9701 GLint dstY0,
9702 GLint dstX1,
9703 GLint dstY1,
9704 GLbitfield mask,
9705 GLenum filter) {
9706 NOTREACHED()
9707 << "Trying to call glBlitFramebufferEXT() without current GL context";
9708 LOG(ERROR)
9709 << "Trying to call glBlitFramebufferEXT() without current GL context";
9712 void NoContextGLApi::glBufferDataFn(GLenum target,
9713 GLsizeiptr size,
9714 const void* data,
9715 GLenum usage) {
9716 NOTREACHED() << "Trying to call glBufferData() without current GL context";
9717 LOG(ERROR) << "Trying to call glBufferData() without current GL context";
9720 void NoContextGLApi::glBufferSubDataFn(GLenum target,
9721 GLintptr offset,
9722 GLsizeiptr size,
9723 const void* data) {
9724 NOTREACHED() << "Trying to call glBufferSubData() without current GL context";
9725 LOG(ERROR) << "Trying to call glBufferSubData() without current GL context";
9728 GLenum NoContextGLApi::glCheckFramebufferStatusEXTFn(GLenum target) {
9729 NOTREACHED() << "Trying to call glCheckFramebufferStatusEXT() without "
9730 "current GL context";
9731 LOG(ERROR) << "Trying to call glCheckFramebufferStatusEXT() without current "
9732 "GL context";
9733 return static_cast<GLenum>(0);
9736 void NoContextGLApi::glClearFn(GLbitfield mask) {
9737 NOTREACHED() << "Trying to call glClear() without current GL context";
9738 LOG(ERROR) << "Trying to call glClear() without current GL context";
9741 void NoContextGLApi::glClearBufferfiFn(GLenum buffer,
9742 GLint drawbuffer,
9743 const GLfloat depth,
9744 GLint stencil) {
9745 NOTREACHED() << "Trying to call glClearBufferfi() without current GL context";
9746 LOG(ERROR) << "Trying to call glClearBufferfi() without current GL context";
9749 void NoContextGLApi::glClearBufferfvFn(GLenum buffer,
9750 GLint drawbuffer,
9751 const GLfloat* value) {
9752 NOTREACHED() << "Trying to call glClearBufferfv() without current GL context";
9753 LOG(ERROR) << "Trying to call glClearBufferfv() without current GL context";
9756 void NoContextGLApi::glClearBufferivFn(GLenum buffer,
9757 GLint drawbuffer,
9758 const GLint* value) {
9759 NOTREACHED() << "Trying to call glClearBufferiv() without current GL context";
9760 LOG(ERROR) << "Trying to call glClearBufferiv() without current GL context";
9763 void NoContextGLApi::glClearBufferuivFn(GLenum buffer,
9764 GLint drawbuffer,
9765 const GLuint* value) {
9766 NOTREACHED()
9767 << "Trying to call glClearBufferuiv() without current GL context";
9768 LOG(ERROR) << "Trying to call glClearBufferuiv() without current GL context";
9771 void NoContextGLApi::glClearColorFn(GLclampf red,
9772 GLclampf green,
9773 GLclampf blue,
9774 GLclampf alpha) {
9775 NOTREACHED() << "Trying to call glClearColor() without current GL context";
9776 LOG(ERROR) << "Trying to call glClearColor() without current GL context";
9779 void NoContextGLApi::glClearDepthFn(GLclampd depth) {
9780 NOTREACHED() << "Trying to call glClearDepth() without current GL context";
9781 LOG(ERROR) << "Trying to call glClearDepth() without current GL context";
9784 void NoContextGLApi::glClearDepthfFn(GLclampf depth) {
9785 NOTREACHED() << "Trying to call glClearDepthf() without current GL context";
9786 LOG(ERROR) << "Trying to call glClearDepthf() without current GL context";
9789 void NoContextGLApi::glClearStencilFn(GLint s) {
9790 NOTREACHED() << "Trying to call glClearStencil() without current GL context";
9791 LOG(ERROR) << "Trying to call glClearStencil() without current GL context";
9794 GLenum NoContextGLApi::glClientWaitSyncFn(GLsync sync,
9795 GLbitfield flags,
9796 GLuint64 timeout) {
9797 NOTREACHED()
9798 << "Trying to call glClientWaitSync() without current GL context";
9799 LOG(ERROR) << "Trying to call glClientWaitSync() without current GL context";
9800 return static_cast<GLenum>(0);
9803 void NoContextGLApi::glColorMaskFn(GLboolean red,
9804 GLboolean green,
9805 GLboolean blue,
9806 GLboolean alpha) {
9807 NOTREACHED() << "Trying to call glColorMask() without current GL context";
9808 LOG(ERROR) << "Trying to call glColorMask() without current GL context";
9811 void NoContextGLApi::glCompileShaderFn(GLuint shader) {
9812 NOTREACHED() << "Trying to call glCompileShader() without current GL context";
9813 LOG(ERROR) << "Trying to call glCompileShader() without current GL context";
9816 void NoContextGLApi::glCompressedTexImage2DFn(GLenum target,
9817 GLint level,
9818 GLenum internalformat,
9819 GLsizei width,
9820 GLsizei height,
9821 GLint border,
9822 GLsizei imageSize,
9823 const void* data) {
9824 NOTREACHED()
9825 << "Trying to call glCompressedTexImage2D() without current GL context";
9826 LOG(ERROR)
9827 << "Trying to call glCompressedTexImage2D() without current GL context";
9830 void NoContextGLApi::glCompressedTexImage3DFn(GLenum target,
9831 GLint level,
9832 GLenum internalformat,
9833 GLsizei width,
9834 GLsizei height,
9835 GLsizei depth,
9836 GLint border,
9837 GLsizei imageSize,
9838 const void* data) {
9839 NOTREACHED()
9840 << "Trying to call glCompressedTexImage3D() without current GL context";
9841 LOG(ERROR)
9842 << "Trying to call glCompressedTexImage3D() without current GL context";
9845 void NoContextGLApi::glCompressedTexSubImage2DFn(GLenum target,
9846 GLint level,
9847 GLint xoffset,
9848 GLint yoffset,
9849 GLsizei width,
9850 GLsizei height,
9851 GLenum format,
9852 GLsizei imageSize,
9853 const void* data) {
9854 NOTREACHED() << "Trying to call glCompressedTexSubImage2D() without current "
9855 "GL context";
9856 LOG(ERROR) << "Trying to call glCompressedTexSubImage2D() without current GL "
9857 "context";
9860 void NoContextGLApi::glCopyBufferSubDataFn(GLenum readTarget,
9861 GLenum writeTarget,
9862 GLintptr readOffset,
9863 GLintptr writeOffset,
9864 GLsizeiptr size) {
9865 NOTREACHED()
9866 << "Trying to call glCopyBufferSubData() without current GL context";
9867 LOG(ERROR)
9868 << "Trying to call glCopyBufferSubData() without current GL context";
9871 void NoContextGLApi::glCopyTexImage2DFn(GLenum target,
9872 GLint level,
9873 GLenum internalformat,
9874 GLint x,
9875 GLint y,
9876 GLsizei width,
9877 GLsizei height,
9878 GLint border) {
9879 NOTREACHED()
9880 << "Trying to call glCopyTexImage2D() without current GL context";
9881 LOG(ERROR) << "Trying to call glCopyTexImage2D() without current GL context";
9884 void NoContextGLApi::glCopyTexSubImage2DFn(GLenum target,
9885 GLint level,
9886 GLint xoffset,
9887 GLint yoffset,
9888 GLint x,
9889 GLint y,
9890 GLsizei width,
9891 GLsizei height) {
9892 NOTREACHED()
9893 << "Trying to call glCopyTexSubImage2D() without current GL context";
9894 LOG(ERROR)
9895 << "Trying to call glCopyTexSubImage2D() without current GL context";
9898 void NoContextGLApi::glCopyTexSubImage3DFn(GLenum target,
9899 GLint level,
9900 GLint xoffset,
9901 GLint yoffset,
9902 GLint zoffset,
9903 GLint x,
9904 GLint y,
9905 GLsizei width,
9906 GLsizei height) {
9907 NOTREACHED()
9908 << "Trying to call glCopyTexSubImage3D() without current GL context";
9909 LOG(ERROR)
9910 << "Trying to call glCopyTexSubImage3D() without current GL context";
9913 GLuint NoContextGLApi::glCreateProgramFn(void) {
9914 NOTREACHED() << "Trying to call glCreateProgram() without current GL context";
9915 LOG(ERROR) << "Trying to call glCreateProgram() without current GL context";
9916 return 0U;
9919 GLuint NoContextGLApi::glCreateShaderFn(GLenum type) {
9920 NOTREACHED() << "Trying to call glCreateShader() without current GL context";
9921 LOG(ERROR) << "Trying to call glCreateShader() without current GL context";
9922 return 0U;
9925 void NoContextGLApi::glCullFaceFn(GLenum mode) {
9926 NOTREACHED() << "Trying to call glCullFace() without current GL context";
9927 LOG(ERROR) << "Trying to call glCullFace() without current GL context";
9930 void NoContextGLApi::glDeleteBuffersARBFn(GLsizei n, const GLuint* buffers) {
9931 NOTREACHED()
9932 << "Trying to call glDeleteBuffersARB() without current GL context";
9933 LOG(ERROR)
9934 << "Trying to call glDeleteBuffersARB() without current GL context";
9937 void NoContextGLApi::glDeleteFencesAPPLEFn(GLsizei n, const GLuint* fences) {
9938 NOTREACHED()
9939 << "Trying to call glDeleteFencesAPPLE() without current GL context";
9940 LOG(ERROR)
9941 << "Trying to call glDeleteFencesAPPLE() without current GL context";
9944 void NoContextGLApi::glDeleteFencesNVFn(GLsizei n, const GLuint* fences) {
9945 NOTREACHED()
9946 << "Trying to call glDeleteFencesNV() without current GL context";
9947 LOG(ERROR) << "Trying to call glDeleteFencesNV() without current GL context";
9950 void NoContextGLApi::glDeleteFramebuffersEXTFn(GLsizei n,
9951 const GLuint* framebuffers) {
9952 NOTREACHED()
9953 << "Trying to call glDeleteFramebuffersEXT() without current GL context";
9954 LOG(ERROR)
9955 << "Trying to call glDeleteFramebuffersEXT() without current GL context";
9958 void NoContextGLApi::glDeleteProgramFn(GLuint program) {
9959 NOTREACHED() << "Trying to call glDeleteProgram() without current GL context";
9960 LOG(ERROR) << "Trying to call glDeleteProgram() without current GL context";
9963 void NoContextGLApi::glDeleteQueriesFn(GLsizei n, const GLuint* ids) {
9964 NOTREACHED() << "Trying to call glDeleteQueries() without current GL context";
9965 LOG(ERROR) << "Trying to call glDeleteQueries() without current GL context";
9968 void NoContextGLApi::glDeleteQueriesARBFn(GLsizei n, const GLuint* ids) {
9969 NOTREACHED()
9970 << "Trying to call glDeleteQueriesARB() without current GL context";
9971 LOG(ERROR)
9972 << "Trying to call glDeleteQueriesARB() without current GL context";
9975 void NoContextGLApi::glDeleteRenderbuffersEXTFn(GLsizei n,
9976 const GLuint* renderbuffers) {
9977 NOTREACHED()
9978 << "Trying to call glDeleteRenderbuffersEXT() without current GL context";
9979 LOG(ERROR)
9980 << "Trying to call glDeleteRenderbuffersEXT() without current GL context";
9983 void NoContextGLApi::glDeleteSamplersFn(GLsizei n, const GLuint* samplers) {
9984 NOTREACHED()
9985 << "Trying to call glDeleteSamplers() without current GL context";
9986 LOG(ERROR) << "Trying to call glDeleteSamplers() without current GL context";
9989 void NoContextGLApi::glDeleteShaderFn(GLuint shader) {
9990 NOTREACHED() << "Trying to call glDeleteShader() without current GL context";
9991 LOG(ERROR) << "Trying to call glDeleteShader() without current GL context";
9994 void NoContextGLApi::glDeleteSyncFn(GLsync sync) {
9995 NOTREACHED() << "Trying to call glDeleteSync() without current GL context";
9996 LOG(ERROR) << "Trying to call glDeleteSync() without current GL context";
9999 void NoContextGLApi::glDeleteTexturesFn(GLsizei n, const GLuint* textures) {
10000 NOTREACHED()
10001 << "Trying to call glDeleteTextures() without current GL context";
10002 LOG(ERROR) << "Trying to call glDeleteTextures() without current GL context";
10005 void NoContextGLApi::glDeleteTransformFeedbacksFn(GLsizei n,
10006 const GLuint* ids) {
10007 NOTREACHED() << "Trying to call glDeleteTransformFeedbacks() without current "
10008 "GL context";
10009 LOG(ERROR) << "Trying to call glDeleteTransformFeedbacks() without current "
10010 "GL context";
10013 void NoContextGLApi::glDeleteVertexArraysOESFn(GLsizei n,
10014 const GLuint* arrays) {
10015 NOTREACHED()
10016 << "Trying to call glDeleteVertexArraysOES() without current GL context";
10017 LOG(ERROR)
10018 << "Trying to call glDeleteVertexArraysOES() without current GL context";
10021 void NoContextGLApi::glDepthFuncFn(GLenum func) {
10022 NOTREACHED() << "Trying to call glDepthFunc() without current GL context";
10023 LOG(ERROR) << "Trying to call glDepthFunc() without current GL context";
10026 void NoContextGLApi::glDepthMaskFn(GLboolean flag) {
10027 NOTREACHED() << "Trying to call glDepthMask() without current GL context";
10028 LOG(ERROR) << "Trying to call glDepthMask() without current GL context";
10031 void NoContextGLApi::glDepthRangeFn(GLclampd zNear, GLclampd zFar) {
10032 NOTREACHED() << "Trying to call glDepthRange() without current GL context";
10033 LOG(ERROR) << "Trying to call glDepthRange() without current GL context";
10036 void NoContextGLApi::glDepthRangefFn(GLclampf zNear, GLclampf zFar) {
10037 NOTREACHED() << "Trying to call glDepthRangef() without current GL context";
10038 LOG(ERROR) << "Trying to call glDepthRangef() without current GL context";
10041 void NoContextGLApi::glDetachShaderFn(GLuint program, GLuint shader) {
10042 NOTREACHED() << "Trying to call glDetachShader() without current GL context";
10043 LOG(ERROR) << "Trying to call glDetachShader() without current GL context";
10046 void NoContextGLApi::glDisableFn(GLenum cap) {
10047 NOTREACHED() << "Trying to call glDisable() without current GL context";
10048 LOG(ERROR) << "Trying to call glDisable() without current GL context";
10051 void NoContextGLApi::glDisableVertexAttribArrayFn(GLuint index) {
10052 NOTREACHED() << "Trying to call glDisableVertexAttribArray() without current "
10053 "GL context";
10054 LOG(ERROR) << "Trying to call glDisableVertexAttribArray() without current "
10055 "GL context";
10058 void NoContextGLApi::glDiscardFramebufferEXTFn(GLenum target,
10059 GLsizei numAttachments,
10060 const GLenum* attachments) {
10061 NOTREACHED()
10062 << "Trying to call glDiscardFramebufferEXT() without current GL context";
10063 LOG(ERROR)
10064 << "Trying to call glDiscardFramebufferEXT() without current GL context";
10067 void NoContextGLApi::glDrawArraysFn(GLenum mode, GLint first, GLsizei count) {
10068 NOTREACHED() << "Trying to call glDrawArrays() without current GL context";
10069 LOG(ERROR) << "Trying to call glDrawArrays() without current GL context";
10072 void NoContextGLApi::glDrawArraysInstancedANGLEFn(GLenum mode,
10073 GLint first,
10074 GLsizei count,
10075 GLsizei primcount) {
10076 NOTREACHED() << "Trying to call glDrawArraysInstancedANGLE() without current "
10077 "GL context";
10078 LOG(ERROR) << "Trying to call glDrawArraysInstancedANGLE() without current "
10079 "GL context";
10082 void NoContextGLApi::glDrawBufferFn(GLenum mode) {
10083 NOTREACHED() << "Trying to call glDrawBuffer() without current GL context";
10084 LOG(ERROR) << "Trying to call glDrawBuffer() without current GL context";
10087 void NoContextGLApi::glDrawBuffersARBFn(GLsizei n, const GLenum* bufs) {
10088 NOTREACHED()
10089 << "Trying to call glDrawBuffersARB() without current GL context";
10090 LOG(ERROR) << "Trying to call glDrawBuffersARB() without current GL context";
10093 void NoContextGLApi::glDrawElementsFn(GLenum mode,
10094 GLsizei count,
10095 GLenum type,
10096 const void* indices) {
10097 NOTREACHED() << "Trying to call glDrawElements() without current GL context";
10098 LOG(ERROR) << "Trying to call glDrawElements() without current GL context";
10101 void NoContextGLApi::glDrawElementsInstancedANGLEFn(GLenum mode,
10102 GLsizei count,
10103 GLenum type,
10104 const void* indices,
10105 GLsizei primcount) {
10106 NOTREACHED() << "Trying to call glDrawElementsInstancedANGLE() without "
10107 "current GL context";
10108 LOG(ERROR) << "Trying to call glDrawElementsInstancedANGLE() without current "
10109 "GL context";
10112 void NoContextGLApi::glDrawRangeElementsFn(GLenum mode,
10113 GLuint start,
10114 GLuint end,
10115 GLsizei count,
10116 GLenum type,
10117 const void* indices) {
10118 NOTREACHED()
10119 << "Trying to call glDrawRangeElements() without current GL context";
10120 LOG(ERROR)
10121 << "Trying to call glDrawRangeElements() without current GL context";
10124 void NoContextGLApi::glEGLImageTargetRenderbufferStorageOESFn(
10125 GLenum target,
10126 GLeglImageOES image) {
10127 NOTREACHED() << "Trying to call glEGLImageTargetRenderbufferStorageOES() "
10128 "without current GL context";
10129 LOG(ERROR) << "Trying to call glEGLImageTargetRenderbufferStorageOES() "
10130 "without current GL context";
10133 void NoContextGLApi::glEGLImageTargetTexture2DOESFn(GLenum target,
10134 GLeglImageOES image) {
10135 NOTREACHED() << "Trying to call glEGLImageTargetTexture2DOES() without "
10136 "current GL context";
10137 LOG(ERROR) << "Trying to call glEGLImageTargetTexture2DOES() without current "
10138 "GL context";
10141 void NoContextGLApi::glEnableFn(GLenum cap) {
10142 NOTREACHED() << "Trying to call glEnable() without current GL context";
10143 LOG(ERROR) << "Trying to call glEnable() without current GL context";
10146 void NoContextGLApi::glEnableVertexAttribArrayFn(GLuint index) {
10147 NOTREACHED() << "Trying to call glEnableVertexAttribArray() without current "
10148 "GL context";
10149 LOG(ERROR) << "Trying to call glEnableVertexAttribArray() without current GL "
10150 "context";
10153 void NoContextGLApi::glEndQueryFn(GLenum target) {
10154 NOTREACHED() << "Trying to call glEndQuery() without current GL context";
10155 LOG(ERROR) << "Trying to call glEndQuery() without current GL context";
10158 void NoContextGLApi::glEndQueryARBFn(GLenum target) {
10159 NOTREACHED() << "Trying to call glEndQueryARB() without current GL context";
10160 LOG(ERROR) << "Trying to call glEndQueryARB() without current GL context";
10163 void NoContextGLApi::glEndTransformFeedbackFn(void) {
10164 NOTREACHED()
10165 << "Trying to call glEndTransformFeedback() without current GL context";
10166 LOG(ERROR)
10167 << "Trying to call glEndTransformFeedback() without current GL context";
10170 GLsync NoContextGLApi::glFenceSyncFn(GLenum condition, GLbitfield flags) {
10171 NOTREACHED() << "Trying to call glFenceSync() without current GL context";
10172 LOG(ERROR) << "Trying to call glFenceSync() without current GL context";
10173 return NULL;
10176 void NoContextGLApi::glFinishFn(void) {
10177 NOTREACHED() << "Trying to call glFinish() without current GL context";
10178 LOG(ERROR) << "Trying to call glFinish() without current GL context";
10181 void NoContextGLApi::glFinishFenceAPPLEFn(GLuint fence) {
10182 NOTREACHED()
10183 << "Trying to call glFinishFenceAPPLE() without current GL context";
10184 LOG(ERROR)
10185 << "Trying to call glFinishFenceAPPLE() without current GL context";
10188 void NoContextGLApi::glFinishFenceNVFn(GLuint fence) {
10189 NOTREACHED() << "Trying to call glFinishFenceNV() without current GL context";
10190 LOG(ERROR) << "Trying to call glFinishFenceNV() without current GL context";
10193 void NoContextGLApi::glFlushFn(void) {
10194 NOTREACHED() << "Trying to call glFlush() without current GL context";
10195 LOG(ERROR) << "Trying to call glFlush() without current GL context";
10198 void NoContextGLApi::glFlushMappedBufferRangeFn(GLenum target,
10199 GLintptr offset,
10200 GLsizeiptr length) {
10201 NOTREACHED()
10202 << "Trying to call glFlushMappedBufferRange() without current GL context";
10203 LOG(ERROR)
10204 << "Trying to call glFlushMappedBufferRange() without current GL context";
10207 void NoContextGLApi::glFramebufferRenderbufferEXTFn(GLenum target,
10208 GLenum attachment,
10209 GLenum renderbuffertarget,
10210 GLuint renderbuffer) {
10211 NOTREACHED() << "Trying to call glFramebufferRenderbufferEXT() without "
10212 "current GL context";
10213 LOG(ERROR) << "Trying to call glFramebufferRenderbufferEXT() without current "
10214 "GL context";
10217 void NoContextGLApi::glFramebufferTexture2DEXTFn(GLenum target,
10218 GLenum attachment,
10219 GLenum textarget,
10220 GLuint texture,
10221 GLint level) {
10222 NOTREACHED() << "Trying to call glFramebufferTexture2DEXT() without current "
10223 "GL context";
10224 LOG(ERROR) << "Trying to call glFramebufferTexture2DEXT() without current GL "
10225 "context";
10228 void NoContextGLApi::glFramebufferTexture2DMultisampleEXTFn(GLenum target,
10229 GLenum attachment,
10230 GLenum textarget,
10231 GLuint texture,
10232 GLint level,
10233 GLsizei samples) {
10234 NOTREACHED() << "Trying to call glFramebufferTexture2DMultisampleEXT() "
10235 "without current GL context";
10236 LOG(ERROR) << "Trying to call glFramebufferTexture2DMultisampleEXT() without "
10237 "current GL context";
10240 void NoContextGLApi::glFramebufferTexture2DMultisampleIMGFn(GLenum target,
10241 GLenum attachment,
10242 GLenum textarget,
10243 GLuint texture,
10244 GLint level,
10245 GLsizei samples) {
10246 NOTREACHED() << "Trying to call glFramebufferTexture2DMultisampleIMG() "
10247 "without current GL context";
10248 LOG(ERROR) << "Trying to call glFramebufferTexture2DMultisampleIMG() without "
10249 "current GL context";
10252 void NoContextGLApi::glFramebufferTextureLayerFn(GLenum target,
10253 GLenum attachment,
10254 GLuint texture,
10255 GLint level,
10256 GLint layer) {
10257 NOTREACHED() << "Trying to call glFramebufferTextureLayer() without current "
10258 "GL context";
10259 LOG(ERROR) << "Trying to call glFramebufferTextureLayer() without current GL "
10260 "context";
10263 void NoContextGLApi::glFrontFaceFn(GLenum mode) {
10264 NOTREACHED() << "Trying to call glFrontFace() without current GL context";
10265 LOG(ERROR) << "Trying to call glFrontFace() without current GL context";
10268 void NoContextGLApi::glGenBuffersARBFn(GLsizei n, GLuint* buffers) {
10269 NOTREACHED() << "Trying to call glGenBuffersARB() without current GL context";
10270 LOG(ERROR) << "Trying to call glGenBuffersARB() without current GL context";
10273 void NoContextGLApi::glGenerateMipmapEXTFn(GLenum target) {
10274 NOTREACHED()
10275 << "Trying to call glGenerateMipmapEXT() without current GL context";
10276 LOG(ERROR)
10277 << "Trying to call glGenerateMipmapEXT() without current GL context";
10280 void NoContextGLApi::glGenFencesAPPLEFn(GLsizei n, GLuint* fences) {
10281 NOTREACHED()
10282 << "Trying to call glGenFencesAPPLE() without current GL context";
10283 LOG(ERROR) << "Trying to call glGenFencesAPPLE() without current GL context";
10286 void NoContextGLApi::glGenFencesNVFn(GLsizei n, GLuint* fences) {
10287 NOTREACHED() << "Trying to call glGenFencesNV() without current GL context";
10288 LOG(ERROR) << "Trying to call glGenFencesNV() without current GL context";
10291 void NoContextGLApi::glGenFramebuffersEXTFn(GLsizei n, GLuint* framebuffers) {
10292 NOTREACHED()
10293 << "Trying to call glGenFramebuffersEXT() without current GL context";
10294 LOG(ERROR)
10295 << "Trying to call glGenFramebuffersEXT() without current GL context";
10298 void NoContextGLApi::glGenQueriesFn(GLsizei n, GLuint* ids) {
10299 NOTREACHED() << "Trying to call glGenQueries() without current GL context";
10300 LOG(ERROR) << "Trying to call glGenQueries() without current GL context";
10303 void NoContextGLApi::glGenQueriesARBFn(GLsizei n, GLuint* ids) {
10304 NOTREACHED() << "Trying to call glGenQueriesARB() without current GL context";
10305 LOG(ERROR) << "Trying to call glGenQueriesARB() without current GL context";
10308 void NoContextGLApi::glGenRenderbuffersEXTFn(GLsizei n, GLuint* renderbuffers) {
10309 NOTREACHED()
10310 << "Trying to call glGenRenderbuffersEXT() without current GL context";
10311 LOG(ERROR)
10312 << "Trying to call glGenRenderbuffersEXT() without current GL context";
10315 void NoContextGLApi::glGenSamplersFn(GLsizei n, GLuint* samplers) {
10316 NOTREACHED() << "Trying to call glGenSamplers() without current GL context";
10317 LOG(ERROR) << "Trying to call glGenSamplers() without current GL context";
10320 void NoContextGLApi::glGenTexturesFn(GLsizei n, GLuint* textures) {
10321 NOTREACHED() << "Trying to call glGenTextures() without current GL context";
10322 LOG(ERROR) << "Trying to call glGenTextures() without current GL context";
10325 void NoContextGLApi::glGenTransformFeedbacksFn(GLsizei n, GLuint* ids) {
10326 NOTREACHED()
10327 << "Trying to call glGenTransformFeedbacks() without current GL context";
10328 LOG(ERROR)
10329 << "Trying to call glGenTransformFeedbacks() without current GL context";
10332 void NoContextGLApi::glGenVertexArraysOESFn(GLsizei n, GLuint* arrays) {
10333 NOTREACHED()
10334 << "Trying to call glGenVertexArraysOES() without current GL context";
10335 LOG(ERROR)
10336 << "Trying to call glGenVertexArraysOES() without current GL context";
10339 void NoContextGLApi::glGetActiveAttribFn(GLuint program,
10340 GLuint index,
10341 GLsizei bufsize,
10342 GLsizei* length,
10343 GLint* size,
10344 GLenum* type,
10345 char* name) {
10346 NOTREACHED()
10347 << "Trying to call glGetActiveAttrib() without current GL context";
10348 LOG(ERROR) << "Trying to call glGetActiveAttrib() without current GL context";
10351 void NoContextGLApi::glGetActiveUniformFn(GLuint program,
10352 GLuint index,
10353 GLsizei bufsize,
10354 GLsizei* length,
10355 GLint* size,
10356 GLenum* type,
10357 char* name) {
10358 NOTREACHED()
10359 << "Trying to call glGetActiveUniform() without current GL context";
10360 LOG(ERROR)
10361 << "Trying to call glGetActiveUniform() without current GL context";
10364 void NoContextGLApi::glGetActiveUniformBlockivFn(GLuint program,
10365 GLuint uniformBlockIndex,
10366 GLenum pname,
10367 GLint* params) {
10368 NOTREACHED() << "Trying to call glGetActiveUniformBlockiv() without current "
10369 "GL context";
10370 LOG(ERROR) << "Trying to call glGetActiveUniformBlockiv() without current GL "
10371 "context";
10374 void NoContextGLApi::glGetActiveUniformBlockNameFn(GLuint program,
10375 GLuint uniformBlockIndex,
10376 GLsizei bufSize,
10377 GLsizei* length,
10378 char* uniformBlockName) {
10379 NOTREACHED() << "Trying to call glGetActiveUniformBlockName() without "
10380 "current GL context";
10381 LOG(ERROR) << "Trying to call glGetActiveUniformBlockName() without current "
10382 "GL context";
10385 void NoContextGLApi::glGetActiveUniformsivFn(GLuint program,
10386 GLsizei uniformCount,
10387 const GLuint* uniformIndices,
10388 GLenum pname,
10389 GLint* params) {
10390 NOTREACHED()
10391 << "Trying to call glGetActiveUniformsiv() without current GL context";
10392 LOG(ERROR)
10393 << "Trying to call glGetActiveUniformsiv() without current GL context";
10396 void NoContextGLApi::glGetAttachedShadersFn(GLuint program,
10397 GLsizei maxcount,
10398 GLsizei* count,
10399 GLuint* shaders) {
10400 NOTREACHED()
10401 << "Trying to call glGetAttachedShaders() without current GL context";
10402 LOG(ERROR)
10403 << "Trying to call glGetAttachedShaders() without current GL context";
10406 GLint NoContextGLApi::glGetAttribLocationFn(GLuint program, const char* name) {
10407 NOTREACHED()
10408 << "Trying to call glGetAttribLocation() without current GL context";
10409 LOG(ERROR)
10410 << "Trying to call glGetAttribLocation() without current GL context";
10411 return 0;
10414 void NoContextGLApi::glGetBooleanvFn(GLenum pname, GLboolean* params) {
10415 NOTREACHED() << "Trying to call glGetBooleanv() without current GL context";
10416 LOG(ERROR) << "Trying to call glGetBooleanv() without current GL context";
10419 void NoContextGLApi::glGetBufferParameterivFn(GLenum target,
10420 GLenum pname,
10421 GLint* params) {
10422 NOTREACHED()
10423 << "Trying to call glGetBufferParameteriv() without current GL context";
10424 LOG(ERROR)
10425 << "Trying to call glGetBufferParameteriv() without current GL context";
10428 GLenum NoContextGLApi::glGetErrorFn(void) {
10429 NOTREACHED() << "Trying to call glGetError() without current GL context";
10430 LOG(ERROR) << "Trying to call glGetError() without current GL context";
10431 return static_cast<GLenum>(0);
10434 void NoContextGLApi::glGetFenceivNVFn(GLuint fence,
10435 GLenum pname,
10436 GLint* params) {
10437 NOTREACHED() << "Trying to call glGetFenceivNV() without current GL context";
10438 LOG(ERROR) << "Trying to call glGetFenceivNV() without current GL context";
10441 void NoContextGLApi::glGetFloatvFn(GLenum pname, GLfloat* params) {
10442 NOTREACHED() << "Trying to call glGetFloatv() without current GL context";
10443 LOG(ERROR) << "Trying to call glGetFloatv() without current GL context";
10446 GLint NoContextGLApi::glGetFragDataLocationFn(GLuint program,
10447 const char* name) {
10448 NOTREACHED()
10449 << "Trying to call glGetFragDataLocation() without current GL context";
10450 LOG(ERROR)
10451 << "Trying to call glGetFragDataLocation() without current GL context";
10452 return 0;
10455 void NoContextGLApi::glGetFramebufferAttachmentParameterivEXTFn(
10456 GLenum target,
10457 GLenum attachment,
10458 GLenum pname,
10459 GLint* params) {
10460 NOTREACHED() << "Trying to call glGetFramebufferAttachmentParameterivEXT() "
10461 "without current GL context";
10462 LOG(ERROR) << "Trying to call glGetFramebufferAttachmentParameterivEXT() "
10463 "without current GL context";
10466 GLenum NoContextGLApi::glGetGraphicsResetStatusARBFn(void) {
10467 NOTREACHED() << "Trying to call glGetGraphicsResetStatusARB() without "
10468 "current GL context";
10469 LOG(ERROR) << "Trying to call glGetGraphicsResetStatusARB() without current "
10470 "GL context";
10471 return static_cast<GLenum>(0);
10474 void NoContextGLApi::glGetInteger64i_vFn(GLenum target,
10475 GLuint index,
10476 GLint64* data) {
10477 NOTREACHED()
10478 << "Trying to call glGetInteger64i_v() without current GL context";
10479 LOG(ERROR) << "Trying to call glGetInteger64i_v() without current GL context";
10482 void NoContextGLApi::glGetInteger64vFn(GLenum pname, GLint64* params) {
10483 NOTREACHED() << "Trying to call glGetInteger64v() without current GL context";
10484 LOG(ERROR) << "Trying to call glGetInteger64v() without current GL context";
10487 void NoContextGLApi::glGetIntegeri_vFn(GLenum target,
10488 GLuint index,
10489 GLint* data) {
10490 NOTREACHED() << "Trying to call glGetIntegeri_v() without current GL context";
10491 LOG(ERROR) << "Trying to call glGetIntegeri_v() without current GL context";
10494 void NoContextGLApi::glGetIntegervFn(GLenum pname, GLint* params) {
10495 NOTREACHED() << "Trying to call glGetIntegerv() without current GL context";
10496 LOG(ERROR) << "Trying to call glGetIntegerv() without current GL context";
10499 void NoContextGLApi::glGetInternalformativFn(GLenum target,
10500 GLenum internalformat,
10501 GLenum pname,
10502 GLsizei bufSize,
10503 GLint* params) {
10504 NOTREACHED()
10505 << "Trying to call glGetInternalformativ() without current GL context";
10506 LOG(ERROR)
10507 << "Trying to call glGetInternalformativ() without current GL context";
10510 void NoContextGLApi::glGetProgramBinaryFn(GLuint program,
10511 GLsizei bufSize,
10512 GLsizei* length,
10513 GLenum* binaryFormat,
10514 GLvoid* binary) {
10515 NOTREACHED()
10516 << "Trying to call glGetProgramBinary() without current GL context";
10517 LOG(ERROR)
10518 << "Trying to call glGetProgramBinary() without current GL context";
10521 void NoContextGLApi::glGetProgramInfoLogFn(GLuint program,
10522 GLsizei bufsize,
10523 GLsizei* length,
10524 char* infolog) {
10525 NOTREACHED()
10526 << "Trying to call glGetProgramInfoLog() without current GL context";
10527 LOG(ERROR)
10528 << "Trying to call glGetProgramInfoLog() without current GL context";
10531 void NoContextGLApi::glGetProgramivFn(GLuint program,
10532 GLenum pname,
10533 GLint* params) {
10534 NOTREACHED() << "Trying to call glGetProgramiv() without current GL context";
10535 LOG(ERROR) << "Trying to call glGetProgramiv() without current GL context";
10538 void NoContextGLApi::glGetQueryivFn(GLenum target,
10539 GLenum pname,
10540 GLint* params) {
10541 NOTREACHED() << "Trying to call glGetQueryiv() without current GL context";
10542 LOG(ERROR) << "Trying to call glGetQueryiv() without current GL context";
10545 void NoContextGLApi::glGetQueryivARBFn(GLenum target,
10546 GLenum pname,
10547 GLint* params) {
10548 NOTREACHED() << "Trying to call glGetQueryivARB() without current GL context";
10549 LOG(ERROR) << "Trying to call glGetQueryivARB() without current GL context";
10552 void NoContextGLApi::glGetQueryObjecti64vFn(GLuint id,
10553 GLenum pname,
10554 GLint64* params) {
10555 NOTREACHED()
10556 << "Trying to call glGetQueryObjecti64v() without current GL context";
10557 LOG(ERROR)
10558 << "Trying to call glGetQueryObjecti64v() without current GL context";
10561 void NoContextGLApi::glGetQueryObjectivFn(GLuint id,
10562 GLenum pname,
10563 GLint* params) {
10564 NOTREACHED()
10565 << "Trying to call glGetQueryObjectiv() without current GL context";
10566 LOG(ERROR)
10567 << "Trying to call glGetQueryObjectiv() without current GL context";
10570 void NoContextGLApi::glGetQueryObjectivARBFn(GLuint id,
10571 GLenum pname,
10572 GLint* params) {
10573 NOTREACHED()
10574 << "Trying to call glGetQueryObjectivARB() without current GL context";
10575 LOG(ERROR)
10576 << "Trying to call glGetQueryObjectivARB() without current GL context";
10579 void NoContextGLApi::glGetQueryObjectui64vFn(GLuint id,
10580 GLenum pname,
10581 GLuint64* params) {
10582 NOTREACHED()
10583 << "Trying to call glGetQueryObjectui64v() without current GL context";
10584 LOG(ERROR)
10585 << "Trying to call glGetQueryObjectui64v() without current GL context";
10588 void NoContextGLApi::glGetQueryObjectuivFn(GLuint id,
10589 GLenum pname,
10590 GLuint* params) {
10591 NOTREACHED()
10592 << "Trying to call glGetQueryObjectuiv() without current GL context";
10593 LOG(ERROR)
10594 << "Trying to call glGetQueryObjectuiv() without current GL context";
10597 void NoContextGLApi::glGetQueryObjectuivARBFn(GLuint id,
10598 GLenum pname,
10599 GLuint* params) {
10600 NOTREACHED()
10601 << "Trying to call glGetQueryObjectuivARB() without current GL context";
10602 LOG(ERROR)
10603 << "Trying to call glGetQueryObjectuivARB() without current GL context";
10606 void NoContextGLApi::glGetRenderbufferParameterivEXTFn(GLenum target,
10607 GLenum pname,
10608 GLint* params) {
10609 NOTREACHED() << "Trying to call glGetRenderbufferParameterivEXT() without "
10610 "current GL context";
10611 LOG(ERROR) << "Trying to call glGetRenderbufferParameterivEXT() without "
10612 "current GL context";
10615 void NoContextGLApi::glGetSamplerParameterfvFn(GLuint sampler,
10616 GLenum pname,
10617 GLfloat* params) {
10618 NOTREACHED()
10619 << "Trying to call glGetSamplerParameterfv() without current GL context";
10620 LOG(ERROR)
10621 << "Trying to call glGetSamplerParameterfv() without current GL context";
10624 void NoContextGLApi::glGetSamplerParameterivFn(GLuint sampler,
10625 GLenum pname,
10626 GLint* params) {
10627 NOTREACHED()
10628 << "Trying to call glGetSamplerParameteriv() without current GL context";
10629 LOG(ERROR)
10630 << "Trying to call glGetSamplerParameteriv() without current GL context";
10633 void NoContextGLApi::glGetShaderInfoLogFn(GLuint shader,
10634 GLsizei bufsize,
10635 GLsizei* length,
10636 char* infolog) {
10637 NOTREACHED()
10638 << "Trying to call glGetShaderInfoLog() without current GL context";
10639 LOG(ERROR)
10640 << "Trying to call glGetShaderInfoLog() without current GL context";
10643 void NoContextGLApi::glGetShaderivFn(GLuint shader,
10644 GLenum pname,
10645 GLint* params) {
10646 NOTREACHED() << "Trying to call glGetShaderiv() without current GL context";
10647 LOG(ERROR) << "Trying to call glGetShaderiv() without current GL context";
10650 void NoContextGLApi::glGetShaderPrecisionFormatFn(GLenum shadertype,
10651 GLenum precisiontype,
10652 GLint* range,
10653 GLint* precision) {
10654 NOTREACHED() << "Trying to call glGetShaderPrecisionFormat() without current "
10655 "GL context";
10656 LOG(ERROR) << "Trying to call glGetShaderPrecisionFormat() without current "
10657 "GL context";
10660 void NoContextGLApi::glGetShaderSourceFn(GLuint shader,
10661 GLsizei bufsize,
10662 GLsizei* length,
10663 char* source) {
10664 NOTREACHED()
10665 << "Trying to call glGetShaderSource() without current GL context";
10666 LOG(ERROR) << "Trying to call glGetShaderSource() without current GL context";
10669 const GLubyte* NoContextGLApi::glGetStringFn(GLenum name) {
10670 NOTREACHED() << "Trying to call glGetString() without current GL context";
10671 LOG(ERROR) << "Trying to call glGetString() without current GL context";
10672 return NULL;
10675 void NoContextGLApi::glGetSyncivFn(GLsync sync,
10676 GLenum pname,
10677 GLsizei bufSize,
10678 GLsizei* length,
10679 GLint* values) {
10680 NOTREACHED() << "Trying to call glGetSynciv() without current GL context";
10681 LOG(ERROR) << "Trying to call glGetSynciv() without current GL context";
10684 void NoContextGLApi::glGetTexLevelParameterfvFn(GLenum target,
10685 GLint level,
10686 GLenum pname,
10687 GLfloat* params) {
10688 NOTREACHED()
10689 << "Trying to call glGetTexLevelParameterfv() without current GL context";
10690 LOG(ERROR)
10691 << "Trying to call glGetTexLevelParameterfv() without current GL context";
10694 void NoContextGLApi::glGetTexLevelParameterivFn(GLenum target,
10695 GLint level,
10696 GLenum pname,
10697 GLint* params) {
10698 NOTREACHED()
10699 << "Trying to call glGetTexLevelParameteriv() without current GL context";
10700 LOG(ERROR)
10701 << "Trying to call glGetTexLevelParameteriv() without current GL context";
10704 void NoContextGLApi::glGetTexParameterfvFn(GLenum target,
10705 GLenum pname,
10706 GLfloat* params) {
10707 NOTREACHED()
10708 << "Trying to call glGetTexParameterfv() without current GL context";
10709 LOG(ERROR)
10710 << "Trying to call glGetTexParameterfv() without current GL context";
10713 void NoContextGLApi::glGetTexParameterivFn(GLenum target,
10714 GLenum pname,
10715 GLint* params) {
10716 NOTREACHED()
10717 << "Trying to call glGetTexParameteriv() without current GL context";
10718 LOG(ERROR)
10719 << "Trying to call glGetTexParameteriv() without current GL context";
10722 void NoContextGLApi::glGetTransformFeedbackVaryingFn(GLuint program,
10723 GLuint index,
10724 GLsizei bufSize,
10725 GLsizei* length,
10726 GLenum* type,
10727 char* name) {
10728 NOTREACHED() << "Trying to call glGetTransformFeedbackVarying() without "
10729 "current GL context";
10730 LOG(ERROR) << "Trying to call glGetTransformFeedbackVarying() without "
10731 "current GL context";
10734 void NoContextGLApi::glGetTranslatedShaderSourceANGLEFn(GLuint shader,
10735 GLsizei bufsize,
10736 GLsizei* length,
10737 char* source) {
10738 NOTREACHED() << "Trying to call glGetTranslatedShaderSourceANGLE() without "
10739 "current GL context";
10740 LOG(ERROR) << "Trying to call glGetTranslatedShaderSourceANGLE() without "
10741 "current GL context";
10744 GLuint NoContextGLApi::glGetUniformBlockIndexFn(GLuint program,
10745 const char* uniformBlockName) {
10746 NOTREACHED()
10747 << "Trying to call glGetUniformBlockIndex() without current GL context";
10748 LOG(ERROR)
10749 << "Trying to call glGetUniformBlockIndex() without current GL context";
10750 return 0U;
10753 void NoContextGLApi::glGetUniformfvFn(GLuint program,
10754 GLint location,
10755 GLfloat* params) {
10756 NOTREACHED() << "Trying to call glGetUniformfv() without current GL context";
10757 LOG(ERROR) << "Trying to call glGetUniformfv() without current GL context";
10760 void NoContextGLApi::glGetUniformIndicesFn(GLuint program,
10761 GLsizei uniformCount,
10762 const char* const* uniformNames,
10763 GLuint* uniformIndices) {
10764 NOTREACHED()
10765 << "Trying to call glGetUniformIndices() without current GL context";
10766 LOG(ERROR)
10767 << "Trying to call glGetUniformIndices() without current GL context";
10770 void NoContextGLApi::glGetUniformivFn(GLuint program,
10771 GLint location,
10772 GLint* params) {
10773 NOTREACHED() << "Trying to call glGetUniformiv() without current GL context";
10774 LOG(ERROR) << "Trying to call glGetUniformiv() without current GL context";
10777 GLint NoContextGLApi::glGetUniformLocationFn(GLuint program, const char* name) {
10778 NOTREACHED()
10779 << "Trying to call glGetUniformLocation() without current GL context";
10780 LOG(ERROR)
10781 << "Trying to call glGetUniformLocation() without current GL context";
10782 return 0;
10785 void NoContextGLApi::glGetVertexAttribfvFn(GLuint index,
10786 GLenum pname,
10787 GLfloat* params) {
10788 NOTREACHED()
10789 << "Trying to call glGetVertexAttribfv() without current GL context";
10790 LOG(ERROR)
10791 << "Trying to call glGetVertexAttribfv() without current GL context";
10794 void NoContextGLApi::glGetVertexAttribivFn(GLuint index,
10795 GLenum pname,
10796 GLint* params) {
10797 NOTREACHED()
10798 << "Trying to call glGetVertexAttribiv() without current GL context";
10799 LOG(ERROR)
10800 << "Trying to call glGetVertexAttribiv() without current GL context";
10803 void NoContextGLApi::glGetVertexAttribPointervFn(GLuint index,
10804 GLenum pname,
10805 void** pointer) {
10806 NOTREACHED() << "Trying to call glGetVertexAttribPointerv() without current "
10807 "GL context";
10808 LOG(ERROR) << "Trying to call glGetVertexAttribPointerv() without current GL "
10809 "context";
10812 void NoContextGLApi::glHintFn(GLenum target, GLenum mode) {
10813 NOTREACHED() << "Trying to call glHint() without current GL context";
10814 LOG(ERROR) << "Trying to call glHint() without current GL context";
10817 void NoContextGLApi::glInsertEventMarkerEXTFn(GLsizei length,
10818 const char* marker) {
10819 NOTREACHED()
10820 << "Trying to call glInsertEventMarkerEXT() without current GL context";
10821 LOG(ERROR)
10822 << "Trying to call glInsertEventMarkerEXT() without current GL context";
10825 void NoContextGLApi::glInvalidateFramebufferFn(GLenum target,
10826 GLsizei numAttachments,
10827 const GLenum* attachments) {
10828 NOTREACHED()
10829 << "Trying to call glInvalidateFramebuffer() without current GL context";
10830 LOG(ERROR)
10831 << "Trying to call glInvalidateFramebuffer() without current GL context";
10834 void NoContextGLApi::glInvalidateSubFramebufferFn(GLenum target,
10835 GLsizei numAttachments,
10836 const GLenum* attachments,
10837 GLint x,
10838 GLint y,
10839 GLint width,
10840 GLint height) {
10841 NOTREACHED() << "Trying to call glInvalidateSubFramebuffer() without current "
10842 "GL context";
10843 LOG(ERROR) << "Trying to call glInvalidateSubFramebuffer() without current "
10844 "GL context";
10847 GLboolean NoContextGLApi::glIsBufferFn(GLuint buffer) {
10848 NOTREACHED() << "Trying to call glIsBuffer() without current GL context";
10849 LOG(ERROR) << "Trying to call glIsBuffer() without current GL context";
10850 return GL_FALSE;
10853 GLboolean NoContextGLApi::glIsEnabledFn(GLenum cap) {
10854 NOTREACHED() << "Trying to call glIsEnabled() without current GL context";
10855 LOG(ERROR) << "Trying to call glIsEnabled() without current GL context";
10856 return GL_FALSE;
10859 GLboolean NoContextGLApi::glIsFenceAPPLEFn(GLuint fence) {
10860 NOTREACHED() << "Trying to call glIsFenceAPPLE() without current GL context";
10861 LOG(ERROR) << "Trying to call glIsFenceAPPLE() without current GL context";
10862 return GL_FALSE;
10865 GLboolean NoContextGLApi::glIsFenceNVFn(GLuint fence) {
10866 NOTREACHED() << "Trying to call glIsFenceNV() without current GL context";
10867 LOG(ERROR) << "Trying to call glIsFenceNV() without current GL context";
10868 return GL_FALSE;
10871 GLboolean NoContextGLApi::glIsFramebufferEXTFn(GLuint framebuffer) {
10872 NOTREACHED()
10873 << "Trying to call glIsFramebufferEXT() without current GL context";
10874 LOG(ERROR)
10875 << "Trying to call glIsFramebufferEXT() without current GL context";
10876 return GL_FALSE;
10879 GLboolean NoContextGLApi::glIsProgramFn(GLuint program) {
10880 NOTREACHED() << "Trying to call glIsProgram() without current GL context";
10881 LOG(ERROR) << "Trying to call glIsProgram() without current GL context";
10882 return GL_FALSE;
10885 GLboolean NoContextGLApi::glIsQueryFn(GLuint query) {
10886 NOTREACHED() << "Trying to call glIsQuery() without current GL context";
10887 LOG(ERROR) << "Trying to call glIsQuery() without current GL context";
10888 return GL_FALSE;
10891 GLboolean NoContextGLApi::glIsQueryARBFn(GLuint query) {
10892 NOTREACHED() << "Trying to call glIsQueryARB() without current GL context";
10893 LOG(ERROR) << "Trying to call glIsQueryARB() without current GL context";
10894 return GL_FALSE;
10897 GLboolean NoContextGLApi::glIsRenderbufferEXTFn(GLuint renderbuffer) {
10898 NOTREACHED()
10899 << "Trying to call glIsRenderbufferEXT() without current GL context";
10900 LOG(ERROR)
10901 << "Trying to call glIsRenderbufferEXT() without current GL context";
10902 return GL_FALSE;
10905 GLboolean NoContextGLApi::glIsSamplerFn(GLuint sampler) {
10906 NOTREACHED() << "Trying to call glIsSampler() without current GL context";
10907 LOG(ERROR) << "Trying to call glIsSampler() without current GL context";
10908 return GL_FALSE;
10911 GLboolean NoContextGLApi::glIsShaderFn(GLuint shader) {
10912 NOTREACHED() << "Trying to call glIsShader() without current GL context";
10913 LOG(ERROR) << "Trying to call glIsShader() without current GL context";
10914 return GL_FALSE;
10917 GLboolean NoContextGLApi::glIsSyncFn(GLsync sync) {
10918 NOTREACHED() << "Trying to call glIsSync() without current GL context";
10919 LOG(ERROR) << "Trying to call glIsSync() without current GL context";
10920 return GL_FALSE;
10923 GLboolean NoContextGLApi::glIsTextureFn(GLuint texture) {
10924 NOTREACHED() << "Trying to call glIsTexture() without current GL context";
10925 LOG(ERROR) << "Trying to call glIsTexture() without current GL context";
10926 return GL_FALSE;
10929 GLboolean NoContextGLApi::glIsTransformFeedbackFn(GLuint id) {
10930 NOTREACHED()
10931 << "Trying to call glIsTransformFeedback() without current GL context";
10932 LOG(ERROR)
10933 << "Trying to call glIsTransformFeedback() without current GL context";
10934 return GL_FALSE;
10937 GLboolean NoContextGLApi::glIsVertexArrayOESFn(GLuint array) {
10938 NOTREACHED()
10939 << "Trying to call glIsVertexArrayOES() without current GL context";
10940 LOG(ERROR)
10941 << "Trying to call glIsVertexArrayOES() without current GL context";
10942 return GL_FALSE;
10945 void NoContextGLApi::glLineWidthFn(GLfloat width) {
10946 NOTREACHED() << "Trying to call glLineWidth() without current GL context";
10947 LOG(ERROR) << "Trying to call glLineWidth() without current GL context";
10950 void NoContextGLApi::glLinkProgramFn(GLuint program) {
10951 NOTREACHED() << "Trying to call glLinkProgram() without current GL context";
10952 LOG(ERROR) << "Trying to call glLinkProgram() without current GL context";
10955 void* NoContextGLApi::glMapBufferFn(GLenum target, GLenum access) {
10956 NOTREACHED() << "Trying to call glMapBuffer() without current GL context";
10957 LOG(ERROR) << "Trying to call glMapBuffer() without current GL context";
10958 return NULL;
10961 void* NoContextGLApi::glMapBufferRangeFn(GLenum target,
10962 GLintptr offset,
10963 GLsizeiptr length,
10964 GLbitfield access) {
10965 NOTREACHED()
10966 << "Trying to call glMapBufferRange() without current GL context";
10967 LOG(ERROR) << "Trying to call glMapBufferRange() without current GL context";
10968 return NULL;
10971 void NoContextGLApi::glMatrixLoadfEXTFn(GLenum matrixMode, const GLfloat* m) {
10972 NOTREACHED()
10973 << "Trying to call glMatrixLoadfEXT() without current GL context";
10974 LOG(ERROR) << "Trying to call glMatrixLoadfEXT() without current GL context";
10977 void NoContextGLApi::glMatrixLoadIdentityEXTFn(GLenum matrixMode) {
10978 NOTREACHED()
10979 << "Trying to call glMatrixLoadIdentityEXT() without current GL context";
10980 LOG(ERROR)
10981 << "Trying to call glMatrixLoadIdentityEXT() without current GL context";
10984 void NoContextGLApi::glPauseTransformFeedbackFn(void) {
10985 NOTREACHED()
10986 << "Trying to call glPauseTransformFeedback() without current GL context";
10987 LOG(ERROR)
10988 << "Trying to call glPauseTransformFeedback() without current GL context";
10991 void NoContextGLApi::glPixelStoreiFn(GLenum pname, GLint param) {
10992 NOTREACHED() << "Trying to call glPixelStorei() without current GL context";
10993 LOG(ERROR) << "Trying to call glPixelStorei() without current GL context";
10996 void NoContextGLApi::glPointParameteriFn(GLenum pname, GLint param) {
10997 NOTREACHED()
10998 << "Trying to call glPointParameteri() without current GL context";
10999 LOG(ERROR) << "Trying to call glPointParameteri() without current GL context";
11002 void NoContextGLApi::glPolygonOffsetFn(GLfloat factor, GLfloat units) {
11003 NOTREACHED() << "Trying to call glPolygonOffset() without current GL context";
11004 LOG(ERROR) << "Trying to call glPolygonOffset() without current GL context";
11007 void NoContextGLApi::glPopGroupMarkerEXTFn(void) {
11008 NOTREACHED()
11009 << "Trying to call glPopGroupMarkerEXT() without current GL context";
11010 LOG(ERROR)
11011 << "Trying to call glPopGroupMarkerEXT() without current GL context";
11014 void NoContextGLApi::glProgramBinaryFn(GLuint program,
11015 GLenum binaryFormat,
11016 const GLvoid* binary,
11017 GLsizei length) {
11018 NOTREACHED() << "Trying to call glProgramBinary() without current GL context";
11019 LOG(ERROR) << "Trying to call glProgramBinary() without current GL context";
11022 void NoContextGLApi::glProgramParameteriFn(GLuint program,
11023 GLenum pname,
11024 GLint value) {
11025 NOTREACHED()
11026 << "Trying to call glProgramParameteri() without current GL context";
11027 LOG(ERROR)
11028 << "Trying to call glProgramParameteri() without current GL context";
11031 void NoContextGLApi::glPushGroupMarkerEXTFn(GLsizei length,
11032 const char* marker) {
11033 NOTREACHED()
11034 << "Trying to call glPushGroupMarkerEXT() without current GL context";
11035 LOG(ERROR)
11036 << "Trying to call glPushGroupMarkerEXT() without current GL context";
11039 void NoContextGLApi::glQueryCounterFn(GLuint id, GLenum target) {
11040 NOTREACHED() << "Trying to call glQueryCounter() without current GL context";
11041 LOG(ERROR) << "Trying to call glQueryCounter() without current GL context";
11044 void NoContextGLApi::glReadBufferFn(GLenum src) {
11045 NOTREACHED() << "Trying to call glReadBuffer() without current GL context";
11046 LOG(ERROR) << "Trying to call glReadBuffer() without current GL context";
11049 void NoContextGLApi::glReadPixelsFn(GLint x,
11050 GLint y,
11051 GLsizei width,
11052 GLsizei height,
11053 GLenum format,
11054 GLenum type,
11055 void* pixels) {
11056 NOTREACHED() << "Trying to call glReadPixels() without current GL context";
11057 LOG(ERROR) << "Trying to call glReadPixels() without current GL context";
11060 void NoContextGLApi::glReleaseShaderCompilerFn(void) {
11061 NOTREACHED()
11062 << "Trying to call glReleaseShaderCompiler() without current GL context";
11063 LOG(ERROR)
11064 << "Trying to call glReleaseShaderCompiler() without current GL context";
11067 void NoContextGLApi::glRenderbufferStorageEXTFn(GLenum target,
11068 GLenum internalformat,
11069 GLsizei width,
11070 GLsizei height) {
11071 NOTREACHED()
11072 << "Trying to call glRenderbufferStorageEXT() without current GL context";
11073 LOG(ERROR)
11074 << "Trying to call glRenderbufferStorageEXT() without current GL context";
11077 void NoContextGLApi::glRenderbufferStorageMultisampleFn(GLenum target,
11078 GLsizei samples,
11079 GLenum internalformat,
11080 GLsizei width,
11081 GLsizei height) {
11082 NOTREACHED() << "Trying to call glRenderbufferStorageMultisample() without "
11083 "current GL context";
11084 LOG(ERROR) << "Trying to call glRenderbufferStorageMultisample() without "
11085 "current GL context";
11088 void NoContextGLApi::glRenderbufferStorageMultisampleANGLEFn(
11089 GLenum target,
11090 GLsizei samples,
11091 GLenum internalformat,
11092 GLsizei width,
11093 GLsizei height) {
11094 NOTREACHED() << "Trying to call glRenderbufferStorageMultisampleANGLE() "
11095 "without current GL context";
11096 LOG(ERROR) << "Trying to call glRenderbufferStorageMultisampleANGLE() "
11097 "without current GL context";
11100 void NoContextGLApi::glRenderbufferStorageMultisampleEXTFn(
11101 GLenum target,
11102 GLsizei samples,
11103 GLenum internalformat,
11104 GLsizei width,
11105 GLsizei height) {
11106 NOTREACHED() << "Trying to call glRenderbufferStorageMultisampleEXT() "
11107 "without current GL context";
11108 LOG(ERROR) << "Trying to call glRenderbufferStorageMultisampleEXT() without "
11109 "current GL context";
11112 void NoContextGLApi::glRenderbufferStorageMultisampleIMGFn(
11113 GLenum target,
11114 GLsizei samples,
11115 GLenum internalformat,
11116 GLsizei width,
11117 GLsizei height) {
11118 NOTREACHED() << "Trying to call glRenderbufferStorageMultisampleIMG() "
11119 "without current GL context";
11120 LOG(ERROR) << "Trying to call glRenderbufferStorageMultisampleIMG() without "
11121 "current GL context";
11124 void NoContextGLApi::glResumeTransformFeedbackFn(void) {
11125 NOTREACHED() << "Trying to call glResumeTransformFeedback() without current "
11126 "GL context";
11127 LOG(ERROR) << "Trying to call glResumeTransformFeedback() without current GL "
11128 "context";
11131 void NoContextGLApi::glSampleCoverageFn(GLclampf value, GLboolean invert) {
11132 NOTREACHED()
11133 << "Trying to call glSampleCoverage() without current GL context";
11134 LOG(ERROR) << "Trying to call glSampleCoverage() without current GL context";
11137 void NoContextGLApi::glSamplerParameterfFn(GLuint sampler,
11138 GLenum pname,
11139 GLfloat param) {
11140 NOTREACHED()
11141 << "Trying to call glSamplerParameterf() without current GL context";
11142 LOG(ERROR)
11143 << "Trying to call glSamplerParameterf() without current GL context";
11146 void NoContextGLApi::glSamplerParameterfvFn(GLuint sampler,
11147 GLenum pname,
11148 const GLfloat* params) {
11149 NOTREACHED()
11150 << "Trying to call glSamplerParameterfv() without current GL context";
11151 LOG(ERROR)
11152 << "Trying to call glSamplerParameterfv() without current GL context";
11155 void NoContextGLApi::glSamplerParameteriFn(GLuint sampler,
11156 GLenum pname,
11157 GLint param) {
11158 NOTREACHED()
11159 << "Trying to call glSamplerParameteri() without current GL context";
11160 LOG(ERROR)
11161 << "Trying to call glSamplerParameteri() without current GL context";
11164 void NoContextGLApi::glSamplerParameterivFn(GLuint sampler,
11165 GLenum pname,
11166 const GLint* params) {
11167 NOTREACHED()
11168 << "Trying to call glSamplerParameteriv() without current GL context";
11169 LOG(ERROR)
11170 << "Trying to call glSamplerParameteriv() without current GL context";
11173 void NoContextGLApi::glScissorFn(GLint x,
11174 GLint y,
11175 GLsizei width,
11176 GLsizei height) {
11177 NOTREACHED() << "Trying to call glScissor() without current GL context";
11178 LOG(ERROR) << "Trying to call glScissor() without current GL context";
11181 void NoContextGLApi::glSetFenceAPPLEFn(GLuint fence) {
11182 NOTREACHED() << "Trying to call glSetFenceAPPLE() without current GL context";
11183 LOG(ERROR) << "Trying to call glSetFenceAPPLE() without current GL context";
11186 void NoContextGLApi::glSetFenceNVFn(GLuint fence, GLenum condition) {
11187 NOTREACHED() << "Trying to call glSetFenceNV() without current GL context";
11188 LOG(ERROR) << "Trying to call glSetFenceNV() without current GL context";
11191 void NoContextGLApi::glShaderBinaryFn(GLsizei n,
11192 const GLuint* shaders,
11193 GLenum binaryformat,
11194 const void* binary,
11195 GLsizei length) {
11196 NOTREACHED() << "Trying to call glShaderBinary() without current GL context";
11197 LOG(ERROR) << "Trying to call glShaderBinary() without current GL context";
11200 void NoContextGLApi::glShaderSourceFn(GLuint shader,
11201 GLsizei count,
11202 const char* const* str,
11203 const GLint* length) {
11204 NOTREACHED() << "Trying to call glShaderSource() without current GL context";
11205 LOG(ERROR) << "Trying to call glShaderSource() without current GL context";
11208 void NoContextGLApi::glStencilFuncFn(GLenum func, GLint ref, GLuint mask) {
11209 NOTREACHED() << "Trying to call glStencilFunc() without current GL context";
11210 LOG(ERROR) << "Trying to call glStencilFunc() without current GL context";
11213 void NoContextGLApi::glStencilFuncSeparateFn(GLenum face,
11214 GLenum func,
11215 GLint ref,
11216 GLuint mask) {
11217 NOTREACHED()
11218 << "Trying to call glStencilFuncSeparate() without current GL context";
11219 LOG(ERROR)
11220 << "Trying to call glStencilFuncSeparate() without current GL context";
11223 void NoContextGLApi::glStencilMaskFn(GLuint mask) {
11224 NOTREACHED() << "Trying to call glStencilMask() without current GL context";
11225 LOG(ERROR) << "Trying to call glStencilMask() without current GL context";
11228 void NoContextGLApi::glStencilMaskSeparateFn(GLenum face, GLuint mask) {
11229 NOTREACHED()
11230 << "Trying to call glStencilMaskSeparate() without current GL context";
11231 LOG(ERROR)
11232 << "Trying to call glStencilMaskSeparate() without current GL context";
11235 void NoContextGLApi::glStencilOpFn(GLenum fail, GLenum zfail, GLenum zpass) {
11236 NOTREACHED() << "Trying to call glStencilOp() without current GL context";
11237 LOG(ERROR) << "Trying to call glStencilOp() without current GL context";
11240 void NoContextGLApi::glStencilOpSeparateFn(GLenum face,
11241 GLenum fail,
11242 GLenum zfail,
11243 GLenum zpass) {
11244 NOTREACHED()
11245 << "Trying to call glStencilOpSeparate() without current GL context";
11246 LOG(ERROR)
11247 << "Trying to call glStencilOpSeparate() without current GL context";
11250 GLboolean NoContextGLApi::glTestFenceAPPLEFn(GLuint fence) {
11251 NOTREACHED()
11252 << "Trying to call glTestFenceAPPLE() without current GL context";
11253 LOG(ERROR) << "Trying to call glTestFenceAPPLE() without current GL context";
11254 return GL_FALSE;
11257 GLboolean NoContextGLApi::glTestFenceNVFn(GLuint fence) {
11258 NOTREACHED() << "Trying to call glTestFenceNV() without current GL context";
11259 LOG(ERROR) << "Trying to call glTestFenceNV() without current GL context";
11260 return GL_FALSE;
11263 void NoContextGLApi::glTexImage2DFn(GLenum target,
11264 GLint level,
11265 GLint internalformat,
11266 GLsizei width,
11267 GLsizei height,
11268 GLint border,
11269 GLenum format,
11270 GLenum type,
11271 const void* pixels) {
11272 NOTREACHED() << "Trying to call glTexImage2D() without current GL context";
11273 LOG(ERROR) << "Trying to call glTexImage2D() without current GL context";
11276 void NoContextGLApi::glTexImage3DFn(GLenum target,
11277 GLint level,
11278 GLint internalformat,
11279 GLsizei width,
11280 GLsizei height,
11281 GLsizei depth,
11282 GLint border,
11283 GLenum format,
11284 GLenum type,
11285 const void* pixels) {
11286 NOTREACHED() << "Trying to call glTexImage3D() without current GL context";
11287 LOG(ERROR) << "Trying to call glTexImage3D() without current GL context";
11290 void NoContextGLApi::glTexParameterfFn(GLenum target,
11291 GLenum pname,
11292 GLfloat param) {
11293 NOTREACHED() << "Trying to call glTexParameterf() without current GL context";
11294 LOG(ERROR) << "Trying to call glTexParameterf() without current GL context";
11297 void NoContextGLApi::glTexParameterfvFn(GLenum target,
11298 GLenum pname,
11299 const GLfloat* params) {
11300 NOTREACHED()
11301 << "Trying to call glTexParameterfv() without current GL context";
11302 LOG(ERROR) << "Trying to call glTexParameterfv() without current GL context";
11305 void NoContextGLApi::glTexParameteriFn(GLenum target,
11306 GLenum pname,
11307 GLint param) {
11308 NOTREACHED() << "Trying to call glTexParameteri() without current GL context";
11309 LOG(ERROR) << "Trying to call glTexParameteri() without current GL context";
11312 void NoContextGLApi::glTexParameterivFn(GLenum target,
11313 GLenum pname,
11314 const GLint* params) {
11315 NOTREACHED()
11316 << "Trying to call glTexParameteriv() without current GL context";
11317 LOG(ERROR) << "Trying to call glTexParameteriv() without current GL context";
11320 void NoContextGLApi::glTexStorage2DEXTFn(GLenum target,
11321 GLsizei levels,
11322 GLenum internalformat,
11323 GLsizei width,
11324 GLsizei height) {
11325 NOTREACHED()
11326 << "Trying to call glTexStorage2DEXT() without current GL context";
11327 LOG(ERROR) << "Trying to call glTexStorage2DEXT() without current GL context";
11330 void NoContextGLApi::glTexStorage3DFn(GLenum target,
11331 GLsizei levels,
11332 GLenum internalformat,
11333 GLsizei width,
11334 GLsizei height,
11335 GLsizei depth) {
11336 NOTREACHED() << "Trying to call glTexStorage3D() without current GL context";
11337 LOG(ERROR) << "Trying to call glTexStorage3D() without current GL context";
11340 void NoContextGLApi::glTexSubImage2DFn(GLenum target,
11341 GLint level,
11342 GLint xoffset,
11343 GLint yoffset,
11344 GLsizei width,
11345 GLsizei height,
11346 GLenum format,
11347 GLenum type,
11348 const void* pixels) {
11349 NOTREACHED() << "Trying to call glTexSubImage2D() without current GL context";
11350 LOG(ERROR) << "Trying to call glTexSubImage2D() without current GL context";
11353 void NoContextGLApi::glTransformFeedbackVaryingsFn(GLuint program,
11354 GLsizei count,
11355 const char* const* varyings,
11356 GLenum bufferMode) {
11357 NOTREACHED() << "Trying to call glTransformFeedbackVaryings() without "
11358 "current GL context";
11359 LOG(ERROR) << "Trying to call glTransformFeedbackVaryings() without current "
11360 "GL context";
11363 void NoContextGLApi::glUniform1fFn(GLint location, GLfloat x) {
11364 NOTREACHED() << "Trying to call glUniform1f() without current GL context";
11365 LOG(ERROR) << "Trying to call glUniform1f() without current GL context";
11368 void NoContextGLApi::glUniform1fvFn(GLint location,
11369 GLsizei count,
11370 const GLfloat* v) {
11371 NOTREACHED() << "Trying to call glUniform1fv() without current GL context";
11372 LOG(ERROR) << "Trying to call glUniform1fv() without current GL context";
11375 void NoContextGLApi::glUniform1iFn(GLint location, GLint x) {
11376 NOTREACHED() << "Trying to call glUniform1i() without current GL context";
11377 LOG(ERROR) << "Trying to call glUniform1i() without current GL context";
11380 void NoContextGLApi::glUniform1ivFn(GLint location,
11381 GLsizei count,
11382 const GLint* v) {
11383 NOTREACHED() << "Trying to call glUniform1iv() without current GL context";
11384 LOG(ERROR) << "Trying to call glUniform1iv() without current GL context";
11387 void NoContextGLApi::glUniform1uiFn(GLint location, GLuint v0) {
11388 NOTREACHED() << "Trying to call glUniform1ui() without current GL context";
11389 LOG(ERROR) << "Trying to call glUniform1ui() without current GL context";
11392 void NoContextGLApi::glUniform1uivFn(GLint location,
11393 GLsizei count,
11394 const GLuint* v) {
11395 NOTREACHED() << "Trying to call glUniform1uiv() without current GL context";
11396 LOG(ERROR) << "Trying to call glUniform1uiv() without current GL context";
11399 void NoContextGLApi::glUniform2fFn(GLint location, GLfloat x, GLfloat y) {
11400 NOTREACHED() << "Trying to call glUniform2f() without current GL context";
11401 LOG(ERROR) << "Trying to call glUniform2f() without current GL context";
11404 void NoContextGLApi::glUniform2fvFn(GLint location,
11405 GLsizei count,
11406 const GLfloat* v) {
11407 NOTREACHED() << "Trying to call glUniform2fv() without current GL context";
11408 LOG(ERROR) << "Trying to call glUniform2fv() without current GL context";
11411 void NoContextGLApi::glUniform2iFn(GLint location, GLint x, GLint y) {
11412 NOTREACHED() << "Trying to call glUniform2i() without current GL context";
11413 LOG(ERROR) << "Trying to call glUniform2i() without current GL context";
11416 void NoContextGLApi::glUniform2ivFn(GLint location,
11417 GLsizei count,
11418 const GLint* v) {
11419 NOTREACHED() << "Trying to call glUniform2iv() without current GL context";
11420 LOG(ERROR) << "Trying to call glUniform2iv() without current GL context";
11423 void NoContextGLApi::glUniform2uiFn(GLint location, GLuint v0, GLuint v1) {
11424 NOTREACHED() << "Trying to call glUniform2ui() without current GL context";
11425 LOG(ERROR) << "Trying to call glUniform2ui() without current GL context";
11428 void NoContextGLApi::glUniform2uivFn(GLint location,
11429 GLsizei count,
11430 const GLuint* v) {
11431 NOTREACHED() << "Trying to call glUniform2uiv() without current GL context";
11432 LOG(ERROR) << "Trying to call glUniform2uiv() without current GL context";
11435 void NoContextGLApi::glUniform3fFn(GLint location,
11436 GLfloat x,
11437 GLfloat y,
11438 GLfloat z) {
11439 NOTREACHED() << "Trying to call glUniform3f() without current GL context";
11440 LOG(ERROR) << "Trying to call glUniform3f() without current GL context";
11443 void NoContextGLApi::glUniform3fvFn(GLint location,
11444 GLsizei count,
11445 const GLfloat* v) {
11446 NOTREACHED() << "Trying to call glUniform3fv() without current GL context";
11447 LOG(ERROR) << "Trying to call glUniform3fv() without current GL context";
11450 void NoContextGLApi::glUniform3iFn(GLint location, GLint x, GLint y, GLint z) {
11451 NOTREACHED() << "Trying to call glUniform3i() without current GL context";
11452 LOG(ERROR) << "Trying to call glUniform3i() without current GL context";
11455 void NoContextGLApi::glUniform3ivFn(GLint location,
11456 GLsizei count,
11457 const GLint* v) {
11458 NOTREACHED() << "Trying to call glUniform3iv() without current GL context";
11459 LOG(ERROR) << "Trying to call glUniform3iv() without current GL context";
11462 void NoContextGLApi::glUniform3uiFn(GLint location,
11463 GLuint v0,
11464 GLuint v1,
11465 GLuint v2) {
11466 NOTREACHED() << "Trying to call glUniform3ui() without current GL context";
11467 LOG(ERROR) << "Trying to call glUniform3ui() without current GL context";
11470 void NoContextGLApi::glUniform3uivFn(GLint location,
11471 GLsizei count,
11472 const GLuint* v) {
11473 NOTREACHED() << "Trying to call glUniform3uiv() without current GL context";
11474 LOG(ERROR) << "Trying to call glUniform3uiv() without current GL context";
11477 void NoContextGLApi::glUniform4fFn(GLint location,
11478 GLfloat x,
11479 GLfloat y,
11480 GLfloat z,
11481 GLfloat w) {
11482 NOTREACHED() << "Trying to call glUniform4f() without current GL context";
11483 LOG(ERROR) << "Trying to call glUniform4f() without current GL context";
11486 void NoContextGLApi::glUniform4fvFn(GLint location,
11487 GLsizei count,
11488 const GLfloat* v) {
11489 NOTREACHED() << "Trying to call glUniform4fv() without current GL context";
11490 LOG(ERROR) << "Trying to call glUniform4fv() without current GL context";
11493 void NoContextGLApi::glUniform4iFn(GLint location,
11494 GLint x,
11495 GLint y,
11496 GLint z,
11497 GLint w) {
11498 NOTREACHED() << "Trying to call glUniform4i() without current GL context";
11499 LOG(ERROR) << "Trying to call glUniform4i() without current GL context";
11502 void NoContextGLApi::glUniform4ivFn(GLint location,
11503 GLsizei count,
11504 const GLint* v) {
11505 NOTREACHED() << "Trying to call glUniform4iv() without current GL context";
11506 LOG(ERROR) << "Trying to call glUniform4iv() without current GL context";
11509 void NoContextGLApi::glUniform4uiFn(GLint location,
11510 GLuint v0,
11511 GLuint v1,
11512 GLuint v2,
11513 GLuint v3) {
11514 NOTREACHED() << "Trying to call glUniform4ui() without current GL context";
11515 LOG(ERROR) << "Trying to call glUniform4ui() without current GL context";
11518 void NoContextGLApi::glUniform4uivFn(GLint location,
11519 GLsizei count,
11520 const GLuint* v) {
11521 NOTREACHED() << "Trying to call glUniform4uiv() without current GL context";
11522 LOG(ERROR) << "Trying to call glUniform4uiv() without current GL context";
11525 void NoContextGLApi::glUniformBlockBindingFn(GLuint program,
11526 GLuint uniformBlockIndex,
11527 GLuint uniformBlockBinding) {
11528 NOTREACHED()
11529 << "Trying to call glUniformBlockBinding() without current GL context";
11530 LOG(ERROR)
11531 << "Trying to call glUniformBlockBinding() without current GL context";
11534 void NoContextGLApi::glUniformMatrix2fvFn(GLint location,
11535 GLsizei count,
11536 GLboolean transpose,
11537 const GLfloat* value) {
11538 NOTREACHED()
11539 << "Trying to call glUniformMatrix2fv() without current GL context";
11540 LOG(ERROR)
11541 << "Trying to call glUniformMatrix2fv() without current GL context";
11544 void NoContextGLApi::glUniformMatrix2x3fvFn(GLint location,
11545 GLsizei count,
11546 GLboolean transpose,
11547 const GLfloat* value) {
11548 NOTREACHED()
11549 << "Trying to call glUniformMatrix2x3fv() without current GL context";
11550 LOG(ERROR)
11551 << "Trying to call glUniformMatrix2x3fv() without current GL context";
11554 void NoContextGLApi::glUniformMatrix2x4fvFn(GLint location,
11555 GLsizei count,
11556 GLboolean transpose,
11557 const GLfloat* value) {
11558 NOTREACHED()
11559 << "Trying to call glUniformMatrix2x4fv() without current GL context";
11560 LOG(ERROR)
11561 << "Trying to call glUniformMatrix2x4fv() without current GL context";
11564 void NoContextGLApi::glUniformMatrix3fvFn(GLint location,
11565 GLsizei count,
11566 GLboolean transpose,
11567 const GLfloat* value) {
11568 NOTREACHED()
11569 << "Trying to call glUniformMatrix3fv() without current GL context";
11570 LOG(ERROR)
11571 << "Trying to call glUniformMatrix3fv() without current GL context";
11574 void NoContextGLApi::glUniformMatrix3x2fvFn(GLint location,
11575 GLsizei count,
11576 GLboolean transpose,
11577 const GLfloat* value) {
11578 NOTREACHED()
11579 << "Trying to call glUniformMatrix3x2fv() without current GL context";
11580 LOG(ERROR)
11581 << "Trying to call glUniformMatrix3x2fv() without current GL context";
11584 void NoContextGLApi::glUniformMatrix3x4fvFn(GLint location,
11585 GLsizei count,
11586 GLboolean transpose,
11587 const GLfloat* value) {
11588 NOTREACHED()
11589 << "Trying to call glUniformMatrix3x4fv() without current GL context";
11590 LOG(ERROR)
11591 << "Trying to call glUniformMatrix3x4fv() without current GL context";
11594 void NoContextGLApi::glUniformMatrix4fvFn(GLint location,
11595 GLsizei count,
11596 GLboolean transpose,
11597 const GLfloat* value) {
11598 NOTREACHED()
11599 << "Trying to call glUniformMatrix4fv() without current GL context";
11600 LOG(ERROR)
11601 << "Trying to call glUniformMatrix4fv() without current GL context";
11604 void NoContextGLApi::glUniformMatrix4x2fvFn(GLint location,
11605 GLsizei count,
11606 GLboolean transpose,
11607 const GLfloat* value) {
11608 NOTREACHED()
11609 << "Trying to call glUniformMatrix4x2fv() without current GL context";
11610 LOG(ERROR)
11611 << "Trying to call glUniformMatrix4x2fv() without current GL context";
11614 void NoContextGLApi::glUniformMatrix4x3fvFn(GLint location,
11615 GLsizei count,
11616 GLboolean transpose,
11617 const GLfloat* value) {
11618 NOTREACHED()
11619 << "Trying to call glUniformMatrix4x3fv() without current GL context";
11620 LOG(ERROR)
11621 << "Trying to call glUniformMatrix4x3fv() without current GL context";
11624 GLboolean NoContextGLApi::glUnmapBufferFn(GLenum target) {
11625 NOTREACHED() << "Trying to call glUnmapBuffer() without current GL context";
11626 LOG(ERROR) << "Trying to call glUnmapBuffer() without current GL context";
11627 return GL_FALSE;
11630 void NoContextGLApi::glUseProgramFn(GLuint program) {
11631 NOTREACHED() << "Trying to call glUseProgram() without current GL context";
11632 LOG(ERROR) << "Trying to call glUseProgram() without current GL context";
11635 void NoContextGLApi::glValidateProgramFn(GLuint program) {
11636 NOTREACHED()
11637 << "Trying to call glValidateProgram() without current GL context";
11638 LOG(ERROR) << "Trying to call glValidateProgram() without current GL context";
11641 void NoContextGLApi::glVertexAttrib1fFn(GLuint indx, GLfloat x) {
11642 NOTREACHED()
11643 << "Trying to call glVertexAttrib1f() without current GL context";
11644 LOG(ERROR) << "Trying to call glVertexAttrib1f() without current GL context";
11647 void NoContextGLApi::glVertexAttrib1fvFn(GLuint indx, const GLfloat* values) {
11648 NOTREACHED()
11649 << "Trying to call glVertexAttrib1fv() without current GL context";
11650 LOG(ERROR) << "Trying to call glVertexAttrib1fv() without current GL context";
11653 void NoContextGLApi::glVertexAttrib2fFn(GLuint indx, GLfloat x, GLfloat y) {
11654 NOTREACHED()
11655 << "Trying to call glVertexAttrib2f() without current GL context";
11656 LOG(ERROR) << "Trying to call glVertexAttrib2f() without current GL context";
11659 void NoContextGLApi::glVertexAttrib2fvFn(GLuint indx, const GLfloat* values) {
11660 NOTREACHED()
11661 << "Trying to call glVertexAttrib2fv() without current GL context";
11662 LOG(ERROR) << "Trying to call glVertexAttrib2fv() without current GL context";
11665 void NoContextGLApi::glVertexAttrib3fFn(GLuint indx,
11666 GLfloat x,
11667 GLfloat y,
11668 GLfloat z) {
11669 NOTREACHED()
11670 << "Trying to call glVertexAttrib3f() without current GL context";
11671 LOG(ERROR) << "Trying to call glVertexAttrib3f() without current GL context";
11674 void NoContextGLApi::glVertexAttrib3fvFn(GLuint indx, const GLfloat* values) {
11675 NOTREACHED()
11676 << "Trying to call glVertexAttrib3fv() without current GL context";
11677 LOG(ERROR) << "Trying to call glVertexAttrib3fv() without current GL context";
11680 void NoContextGLApi::glVertexAttrib4fFn(GLuint indx,
11681 GLfloat x,
11682 GLfloat y,
11683 GLfloat z,
11684 GLfloat w) {
11685 NOTREACHED()
11686 << "Trying to call glVertexAttrib4f() without current GL context";
11687 LOG(ERROR) << "Trying to call glVertexAttrib4f() without current GL context";
11690 void NoContextGLApi::glVertexAttrib4fvFn(GLuint indx, const GLfloat* values) {
11691 NOTREACHED()
11692 << "Trying to call glVertexAttrib4fv() without current GL context";
11693 LOG(ERROR) << "Trying to call glVertexAttrib4fv() without current GL context";
11696 void NoContextGLApi::glVertexAttribDivisorANGLEFn(GLuint index,
11697 GLuint divisor) {
11698 NOTREACHED() << "Trying to call glVertexAttribDivisorANGLE() without current "
11699 "GL context";
11700 LOG(ERROR) << "Trying to call glVertexAttribDivisorANGLE() without current "
11701 "GL context";
11704 void NoContextGLApi::glVertexAttribI4iFn(GLuint indx,
11705 GLint x,
11706 GLint y,
11707 GLint z,
11708 GLint w) {
11709 NOTREACHED()
11710 << "Trying to call glVertexAttribI4i() without current GL context";
11711 LOG(ERROR) << "Trying to call glVertexAttribI4i() without current GL context";
11714 void NoContextGLApi::glVertexAttribI4ivFn(GLuint indx, const GLint* values) {
11715 NOTREACHED()
11716 << "Trying to call glVertexAttribI4iv() without current GL context";
11717 LOG(ERROR)
11718 << "Trying to call glVertexAttribI4iv() without current GL context";
11721 void NoContextGLApi::glVertexAttribI4uiFn(GLuint indx,
11722 GLuint x,
11723 GLuint y,
11724 GLuint z,
11725 GLuint w) {
11726 NOTREACHED()
11727 << "Trying to call glVertexAttribI4ui() without current GL context";
11728 LOG(ERROR)
11729 << "Trying to call glVertexAttribI4ui() without current GL context";
11732 void NoContextGLApi::glVertexAttribI4uivFn(GLuint indx, const GLuint* values) {
11733 NOTREACHED()
11734 << "Trying to call glVertexAttribI4uiv() without current GL context";
11735 LOG(ERROR)
11736 << "Trying to call glVertexAttribI4uiv() without current GL context";
11739 void NoContextGLApi::glVertexAttribIPointerFn(GLuint indx,
11740 GLint size,
11741 GLenum type,
11742 GLsizei stride,
11743 const void* ptr) {
11744 NOTREACHED()
11745 << "Trying to call glVertexAttribIPointer() without current GL context";
11746 LOG(ERROR)
11747 << "Trying to call glVertexAttribIPointer() without current GL context";
11750 void NoContextGLApi::glVertexAttribPointerFn(GLuint indx,
11751 GLint size,
11752 GLenum type,
11753 GLboolean normalized,
11754 GLsizei stride,
11755 const void* ptr) {
11756 NOTREACHED()
11757 << "Trying to call glVertexAttribPointer() without current GL context";
11758 LOG(ERROR)
11759 << "Trying to call glVertexAttribPointer() without current GL context";
11762 void NoContextGLApi::glViewportFn(GLint x,
11763 GLint y,
11764 GLsizei width,
11765 GLsizei height) {
11766 NOTREACHED() << "Trying to call glViewport() without current GL context";
11767 LOG(ERROR) << "Trying to call glViewport() without current GL context";
11770 GLenum NoContextGLApi::glWaitSyncFn(GLsync sync,
11771 GLbitfield flags,
11772 GLuint64 timeout) {
11773 NOTREACHED() << "Trying to call glWaitSync() without current GL context";
11774 LOG(ERROR) << "Trying to call glWaitSync() without current GL context";
11775 return static_cast<GLenum>(0);
11778 } // namespace gfx