2 * Copyright (C) 2011 The Android Open Source Project
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
19 #include "gles_dispatch.h"
20 #include "gles_ftable.h"
22 #include <cutils/log.h>
24 static struct gles_dispatch *s_dispatch = NULL;
26 void init_gles(void *gles_android)
28 s_dispatch = create_gles_dispatch(gles_android);
29 if (s_dispatch == NULL) {
30 ALOGE("failed to create gles dispatch\n");
34 static struct gles_dispatch *getDispatch()
37 fprintf(stderr,"FATAL ERROR: GLES has not been initialized\n");
44 __eglMustCastToProperFunctionPointerType gles_getProcAddress(const char *procname)
46 for (int i=0; i<gles_num_funcs; i++) {
47 if (!strcmp(gles_funcs_by_name[i].name, procname)) {
48 return (__eglMustCastToProperFunctionPointerType)gles_funcs_by_name[i].proc;
55 ///////////// Path-through functions ///////////////
56 void glAlphaFunc(GLenum func, GLclampf ref)
58 getDispatch()->glAlphaFunc(func, ref);
61 void glClearColor(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha)
63 getDispatch()->glClearColor(red, green, blue, alpha);
66 void glClearDepthf(GLclampf depth)
68 getDispatch()->glClearDepthf(depth);
71 void glClipPlanef(GLenum plane, const GLfloat *equation)
73 getDispatch()->glClipPlanef(plane, equation);
76 void glColor4f(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
78 getDispatch()->glColor4f(red, green, blue, alpha);
81 void glDepthRangef(GLclampf zNear, GLclampf zFar)
83 getDispatch()->glDepthRangef(zNear, zFar);
86 void glFogf(GLenum pname, GLfloat param)
88 getDispatch()->glFogf(pname, param);
91 void glFogfv(GLenum pname, const GLfloat *params)
93 getDispatch()->glFogfv(pname, params);
96 void glFrustumf(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar)
98 getDispatch()->glFrustumf(left, right, bottom, top, zNear, zFar);
101 void glGetClipPlanef(GLenum pname, GLfloat eqn[4])
103 getDispatch()->glGetClipPlanef(pname, eqn);
106 void glGetFloatv(GLenum pname, GLfloat *params)
108 getDispatch()->glGetFloatv(pname, params);
111 void glGetLightfv(GLenum light, GLenum pname, GLfloat *params)
113 getDispatch()->glGetLightfv(light, pname, params);
116 void glGetMaterialfv(GLenum face, GLenum pname, GLfloat *params)
118 getDispatch()->glGetMaterialfv(face, pname, params);
121 void glGetTexEnvfv(GLenum env, GLenum pname, GLfloat *params)
123 getDispatch()->glGetTexEnvfv(env, pname, params);
126 void glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params)
128 getDispatch()->glGetTexParameterfv(target, pname, params);
131 void glLightModelf(GLenum pname, GLfloat param)
133 getDispatch()->glLightModelf(pname, param);
136 void glLightModelfv(GLenum pname, const GLfloat *params)
138 getDispatch()->glLightModelfv(pname, params);
141 void glLightf(GLenum light, GLenum pname, GLfloat param)
143 getDispatch()->glLightf(light, pname, param);
146 void glLightfv(GLenum light, GLenum pname, const GLfloat *params)
148 getDispatch()->glLightfv(light, pname, params);
151 void glLineWidth(GLfloat width)
153 getDispatch()->glLineWidth(width);
156 void glLoadMatrixf(const GLfloat *m)
158 getDispatch()->glLoadMatrixf(m);
161 void glMaterialf(GLenum face, GLenum pname, GLfloat param)
163 getDispatch()->glMaterialf(face, pname, param);
166 void glMaterialfv(GLenum face, GLenum pname, const GLfloat *params)
168 getDispatch()->glMaterialfv(face, pname, params);
171 void glMultMatrixf(const GLfloat *m)
173 getDispatch()->glMultMatrixf(m);
176 void glMultiTexCoord4f(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q)
178 getDispatch()->glMultiTexCoord4f(target, s, t, r, q);
181 void glNormal3f(GLfloat nx, GLfloat ny, GLfloat nz)
183 getDispatch()->glNormal3f(nx, ny, nz);
186 void glOrthof(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar)
188 getDispatch()->glOrthof(left, right, bottom, top, zNear, zFar);
191 void glPointParameterf(GLenum pname, GLfloat param)
193 getDispatch()->glPointParameterf(pname, param);
196 void glPointParameterfv(GLenum pname, const GLfloat *params)
198 getDispatch()->glPointParameterfv(pname, params);
201 void glPointSize(GLfloat size)
203 getDispatch()->glPointSize(size);
206 void glPolygonOffset(GLfloat factor, GLfloat units)
208 getDispatch()->glPolygonOffset(factor, units);
211 void glRotatef(GLfloat angle, GLfloat x, GLfloat y, GLfloat z)
213 getDispatch()->glRotatef(angle, x, y, z);
216 void glScalef(GLfloat x, GLfloat y, GLfloat z)
218 getDispatch()->glScalef(x, y, z);
221 void glTexEnvf(GLenum target, GLenum pname, GLfloat param)
223 getDispatch()->glTexEnvf(target, pname, param);
226 void glTexEnvfv(GLenum target, GLenum pname, const GLfloat *params)
228 getDispatch()->glTexEnvfv(target, pname, params);
231 void glTexParameterf(GLenum target, GLenum pname, GLfloat param)
233 getDispatch()->glTexParameterf(target, pname, param);
236 void glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params)
238 getDispatch()->glTexParameterfv(target, pname, params);
241 void glTranslatef(GLfloat x, GLfloat y, GLfloat z)
243 getDispatch()->glTranslatef(x, y, z);
246 void glActiveTexture(GLenum texture)
248 getDispatch()->glActiveTexture(texture);
251 void glAlphaFuncx(GLenum func, GLclampx ref)
253 getDispatch()->glAlphaFuncx(func, ref);
256 void glBindBuffer(GLenum target, GLuint buffer)
258 getDispatch()->glBindBuffer(target, buffer);
261 void glBindTexture(GLenum target, GLuint texture)
263 getDispatch()->glBindTexture(target, texture);
266 void glBlendFunc(GLenum sfactor, GLenum dfactor)
268 getDispatch()->glBlendFunc(sfactor, dfactor);
271 void glBufferData(GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage)
273 getDispatch()->glBufferData(target, size, data, usage);
276 void glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data)
278 getDispatch()->glBufferSubData(target, offset, size, data);
281 void glClear(GLbitfield mask)
283 getDispatch()->glClear(mask);
286 void glClearColorx(GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha)
288 getDispatch()->glClearColorx(red, green, blue, alpha);
291 void glClearDepthx(GLclampx depth)
293 getDispatch()->glClearDepthx(depth);
296 void glClearStencil(GLint s)
298 getDispatch()->glClearStencil(s);
301 void glClientActiveTexture(GLenum texture)
303 getDispatch()->glClientActiveTexture(texture);
306 void glClipPlanex(GLenum plane, const GLfixed *equation)
308 getDispatch()->glClipPlanex(plane, equation);
311 void glColor4ub(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha)
313 getDispatch()->glColor4ub(red, green, blue, alpha);
316 void glColor4x(GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha)
318 getDispatch()->glColor4x(red, green, blue, alpha);
321 void glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha)
323 getDispatch()->glColorMask(red, green, blue, alpha);
326 void glColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
328 getDispatch()->glColorPointer(size, type, stride, pointer);
331 void glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data)
333 getDispatch()->glCompressedTexImage2D(target, level, internalformat, width, height, border, imageSize, data);
336 void glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data)
338 getDispatch()->glCompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imageSize, data);
341 void glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border)
343 getDispatch()->glCopyTexImage2D(target, level, internalformat, x, y, width, height, border);
346 void glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height)
348 getDispatch()->glCopyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height);
351 void glCullFace(GLenum mode)
353 getDispatch()->glCullFace(mode);
356 void glDeleteBuffers(GLsizei n, const GLuint *buffers)
358 getDispatch()->glDeleteBuffers(n, buffers);
361 void glDeleteTextures(GLsizei n, const GLuint *textures)
363 getDispatch()->glDeleteTextures(n, textures);
366 void glDepthFunc(GLenum func)
368 getDispatch()->glDepthFunc(func);
371 void glDepthMask(GLboolean flag)
373 getDispatch()->glDepthMask(flag);
376 void glDepthRangex(GLclampx zNear, GLclampx zFar)
378 getDispatch()->glDepthRangex(zNear, zFar);
381 void glDisable(GLenum cap)
383 getDispatch()->glDisable(cap);
386 void glDisableClientState(GLenum array)
388 getDispatch()->glDisableClientState(array);
391 void glDrawArrays(GLenum mode, GLint first, GLsizei count)
393 getDispatch()->glDrawArrays(mode, first, count);
396 void glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices)
398 getDispatch()->glDrawElements(mode, count, type, indices);
401 void glEnable(GLenum cap)
403 getDispatch()->glEnable(cap);
406 void glEnableClientState(GLenum array)
408 getDispatch()->glEnableClientState(array);
413 getDispatch()->glFinish();
418 getDispatch()->glFlush();
421 void glFogx(GLenum pname, GLfixed param)
423 getDispatch()->glFogx(pname, param);
426 void glFogxv(GLenum pname, const GLfixed *params)
428 getDispatch()->glFogxv(pname, params);
431 void glFrontFace(GLenum mode)
433 getDispatch()->glFrontFace(mode);
436 void glFrustumx(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar)
438 getDispatch()->glFrustumx(left, right, bottom, top, zNear, zFar);
441 void glGetBooleanv(GLenum pname, GLboolean *params)
443 getDispatch()->glGetBooleanv(pname, params);
446 void glGetBufferParameteriv(GLenum target, GLenum pname, GLint *params)
448 getDispatch()->glGetBufferParameteriv(target, pname, params);
451 void glGetClipPlanex(GLenum pname, GLfixed eqn[4])
453 getDispatch()->glGetClipPlanex(pname, eqn);
456 void glGenBuffers(GLsizei n, GLuint *buffers)
458 getDispatch()->glGenBuffers(n, buffers);
461 void glGenTextures(GLsizei n, GLuint *textures)
463 getDispatch()->glGenTextures(n, textures);
468 return getDispatch()->glGetError();
471 void glGetFixedv(GLenum pname, GLfixed *params)
473 getDispatch()->glGetFixedv(pname, params);
476 void glGetIntegerv(GLenum pname, GLint *params)
478 getDispatch()->glGetIntegerv(pname, params);
481 void glGetLightxv(GLenum light, GLenum pname, GLfixed *params)
483 getDispatch()->glGetLightxv(light, pname, params);
486 void glGetMaterialxv(GLenum face, GLenum pname, GLfixed *params)
488 getDispatch()->glGetMaterialxv(face, pname, params);
491 void glGetPointerv(GLenum pname, GLvoid **params)
493 getDispatch()->glGetPointerv(pname, params);
496 const GLubyte* glGetString(GLenum name)
498 return getDispatch()->glGetString(name);
501 void glGetTexEnviv(GLenum env, GLenum pname, GLint *params)
503 getDispatch()->glGetTexEnviv(env, pname, params);
506 void glGetTexEnvxv(GLenum env, GLenum pname, GLfixed *params)
508 getDispatch()->glGetTexEnvxv(env, pname, params);
511 void glGetTexParameteriv(GLenum target, GLenum pname, GLint *params)
513 getDispatch()->glGetTexParameteriv(target, pname, params);
516 void glGetTexParameterxv(GLenum target, GLenum pname, GLfixed *params)
518 getDispatch()->glGetTexParameterxv(target, pname, params);
521 void glHint(GLenum target, GLenum mode)
523 getDispatch()->glHint(target, mode);
526 GLboolean glIsBuffer(GLuint buffer)
528 return getDispatch()->glIsBuffer(buffer);
531 GLboolean glIsEnabled(GLenum cap)
533 return getDispatch()->glIsEnabled(cap);
536 GLboolean glIsTexture(GLuint texture)
538 return getDispatch()->glIsTexture(texture);
541 void glLightModelx(GLenum pname, GLfixed param)
543 getDispatch()->glLightModelx(pname, param);
546 void glLightModelxv(GLenum pname, const GLfixed *params)
548 getDispatch()->glLightModelxv(pname, params);
551 void glLightx(GLenum light, GLenum pname, GLfixed param)
553 getDispatch()->glLightx(light, pname, param);
556 void glLightxv(GLenum light, GLenum pname, const GLfixed *params)
558 getDispatch()->glLightxv(light, pname, params);
561 void glLineWidthx(GLfixed width)
563 getDispatch()->glLineWidthx(width);
566 void glLoadIdentity()
568 getDispatch()->glLoadIdentity();
571 void glLoadMatrixx(const GLfixed *m)
573 getDispatch()->glLoadMatrixx(m);
576 void glLogicOp(GLenum opcode)
578 getDispatch()->glLogicOp(opcode);
581 void glMaterialx(GLenum face, GLenum pname, GLfixed param)
583 getDispatch()->glMaterialx(face, pname, param);
586 void glMaterialxv(GLenum face, GLenum pname, const GLfixed *params)
588 getDispatch()->glMaterialxv(face, pname, params);
591 void glMatrixMode(GLenum mode)
593 getDispatch()->glMatrixMode(mode);
596 void glMultMatrixx(const GLfixed *m)
598 getDispatch()->glMultMatrixx(m);
601 void glMultiTexCoord4x(GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q)
603 getDispatch()->glMultiTexCoord4x(target, s, t, r, q);
606 void glNormal3x(GLfixed nx, GLfixed ny, GLfixed nz)
608 getDispatch()->glNormal3x(nx, ny, nz);
611 void glNormalPointer(GLenum type, GLsizei stride, const GLvoid *pointer)
613 getDispatch()->glNormalPointer(type, stride, pointer);
616 void glOrthox(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar)
618 getDispatch()->glOrthox(left, right, bottom, top, zNear, zFar);
621 void glPixelStorei(GLenum pname, GLint param)
623 getDispatch()->glPixelStorei(pname, param);
626 void glPointParameterx(GLenum pname, GLfixed param)
628 getDispatch()->glPointParameterx(pname, param);
631 void glPointParameterxv(GLenum pname, const GLfixed *params)
633 getDispatch()->glPointParameterxv(pname, params);
636 void glPointSizex(GLfixed size)
638 getDispatch()->glPointSizex(size);
641 void glPolygonOffsetx(GLfixed factor, GLfixed units)
643 getDispatch()->glPolygonOffsetx(factor, units);
648 getDispatch()->glPopMatrix();
653 getDispatch()->glPushMatrix();
656 void glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels)
658 getDispatch()->glReadPixels(x, y, width, height, format, type, pixels);
661 void glRotatex(GLfixed angle, GLfixed x, GLfixed y, GLfixed z)
663 getDispatch()->glRotatex(angle, x, y, z);
666 void glSampleCoverage(GLclampf value, GLboolean invert)
668 getDispatch()->glSampleCoverage(value, invert);
671 void glSampleCoveragex(GLclampx value, GLboolean invert)
673 getDispatch()->glSampleCoveragex(value, invert);
676 void glScalex(GLfixed x, GLfixed y, GLfixed z)
678 getDispatch()->glScalex(x, y, z);
681 void glScissor(GLint x, GLint y, GLsizei width, GLsizei height)
683 getDispatch()->glScissor(x, y, width, height);
686 void glShadeModel(GLenum mode)
688 getDispatch()->glShadeModel(mode);
691 void glStencilFunc(GLenum func, GLint ref, GLuint mask)
693 getDispatch()->glStencilFunc(func, ref, mask);
696 void glStencilMask(GLuint mask)
698 getDispatch()->glStencilMask(mask);
701 void glStencilOp(GLenum fail, GLenum zfail, GLenum zpass)
703 getDispatch()->glStencilOp(fail, zfail, zpass);
706 void glTexCoordPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
708 getDispatch()->glTexCoordPointer(size, type, stride, pointer);
711 void glTexEnvi(GLenum target, GLenum pname, GLint param)
713 getDispatch()->glTexEnvi(target, pname, param);
716 void glTexEnvx(GLenum target, GLenum pname, GLfixed param)
718 getDispatch()->glTexEnvx(target, pname, param);
721 void glTexEnviv(GLenum target, GLenum pname, const GLint *params)
723 getDispatch()->glTexEnviv(target, pname, params);
726 void glTexEnvxv(GLenum target, GLenum pname, const GLfixed *params)
728 getDispatch()->glTexEnvxv(target, pname, params);
731 void glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
733 getDispatch()->glTexImage2D(target, level, internalformat, width, height, border, format, type, pixels);
736 void glTexParameteri(GLenum target, GLenum pname, GLint param)
738 getDispatch()->glTexParameteri(target, pname, param);
741 void glTexParameterx(GLenum target, GLenum pname, GLfixed param)
743 getDispatch()->glTexParameterx(target, pname, param);
746 void glTexParameteriv(GLenum target, GLenum pname, const GLint *params)
748 getDispatch()->glTexParameteriv(target, pname, params);
751 void glTexParameterxv(GLenum target, GLenum pname, const GLfixed *params)
753 getDispatch()->glTexParameterxv(target, pname, params);
756 void glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels)
758 getDispatch()->glTexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels);
761 void glTranslatex(GLfixed x, GLfixed y, GLfixed z)
763 getDispatch()->glTranslatex(x, y, z);
766 void glVertexPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
768 getDispatch()->glVertexPointer(size, type, stride, pointer);
771 void glViewport(GLint x, GLint y, GLsizei width, GLsizei height)
773 getDispatch()->glViewport(x, y, width, height);
776 void glPointSizePointerOES(GLenum type, GLsizei stride, const GLvoid *pointer)
778 getDispatch()->glPointSizePointerOES(type, stride, pointer);
781 void glBlendEquationSeparateOES(GLenum modeRGB, GLenum modeAlpha)
783 getDispatch()->glBlendEquationSeparateOES(modeRGB, modeAlpha);
786 void glBlendFuncSeparateOES(GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha)
788 getDispatch()->glBlendFuncSeparateOES(srcRGB, dstRGB, srcAlpha, dstAlpha);
791 void glBlendEquationOES(GLenum mode)
793 getDispatch()->glBlendEquationOES(mode);
796 void glDrawTexsOES(GLshort x, GLshort y, GLshort z, GLshort width, GLshort height)
798 getDispatch()->glDrawTexsOES(x, y, z, width, height);
801 void glDrawTexiOES(GLint x, GLint y, GLint z, GLint width, GLint height)
803 getDispatch()->glDrawTexiOES(x, y, z, width, height);
806 void glDrawTexxOES(GLfixed x, GLfixed y, GLfixed z, GLfixed width, GLfixed height)
808 getDispatch()->glDrawTexxOES(x, y, z, width, height);
811 void glDrawTexsvOES(const GLshort *coords)
813 getDispatch()->glDrawTexsvOES(coords);
816 void glDrawTexivOES(const GLint *coords)
818 getDispatch()->glDrawTexivOES(coords);
821 void glDrawTexxvOES(const GLfixed *coords)
823 getDispatch()->glDrawTexxvOES(coords);
826 void glDrawTexfOES(GLfloat x, GLfloat y, GLfloat z, GLfloat width, GLfloat height)
828 getDispatch()->glDrawTexfOES(x, y, z, width, height);
831 void glDrawTexfvOES(const GLfloat *coords)
833 getDispatch()->glDrawTexfvOES(coords);
836 void glEGLImageTargetTexture2DOES(GLenum target, GLeglImageOES image)
838 getDispatch()->glEGLImageTargetTexture2DOES(target, image);
841 void glEGLImageTargetRenderbufferStorageOES(GLenum target, GLeglImageOES image)
843 getDispatch()->glEGLImageTargetRenderbufferStorageOES(target, image);
846 void glAlphaFuncxOES(GLenum func, GLclampx ref)
848 getDispatch()->glAlphaFuncxOES(func, ref);
851 void glClearColorxOES(GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha)
853 getDispatch()->glClearColorxOES(red, green, blue, alpha);
856 void glClearDepthxOES(GLclampx depth)
858 getDispatch()->glClearDepthxOES(depth);
861 void glClipPlanexOES(GLenum plane, const GLfixed *equation)
863 getDispatch()->glClipPlanexOES(plane, equation);
866 void glColor4xOES(GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha)
868 getDispatch()->glColor4xOES(red, green, blue, alpha);
871 void glDepthRangexOES(GLclampx zNear, GLclampx zFar)
873 getDispatch()->glDepthRangexOES(zNear, zFar);
876 void glFogxOES(GLenum pname, GLfixed param)
878 getDispatch()->glFogxOES(pname, param);
881 void glFogxvOES(GLenum pname, const GLfixed *params)
883 getDispatch()->glFogxvOES(pname, params);
886 void glFrustumxOES(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar)
888 getDispatch()->glFrustumxOES(left, right, bottom, top, zNear, zFar);
891 void glGetClipPlanexOES(GLenum pname, GLfixed eqn[4])
893 getDispatch()->glGetClipPlanexOES(pname, eqn);
896 void glGetFixedvOES(GLenum pname, GLfixed *params)
898 getDispatch()->glGetFixedvOES(pname, params);
901 void glGetLightxvOES(GLenum light, GLenum pname, GLfixed *params)
903 getDispatch()->glGetLightxvOES(light, pname, params);
906 void glGetMaterialxvOES(GLenum face, GLenum pname, GLfixed *params)
908 getDispatch()->glGetMaterialxvOES(face, pname, params);
911 void glGetTexEnvxvOES(GLenum env, GLenum pname, GLfixed *params)
913 getDispatch()->glGetTexEnvxvOES(env, pname, params);
916 void glGetTexParameterxvOES(GLenum target, GLenum pname, GLfixed *params)
918 getDispatch()->glGetTexParameterxvOES(target, pname, params);
921 void glLightModelxOES(GLenum pname, GLfixed param)
923 getDispatch()->glLightModelxOES(pname, param);
926 void glLightModelxvOES(GLenum pname, const GLfixed *params)
928 getDispatch()->glLightModelxvOES(pname, params);
931 void glLightxOES(GLenum light, GLenum pname, GLfixed param)
933 getDispatch()->glLightxOES(light, pname, param);
936 void glLightxvOES(GLenum light, GLenum pname, const GLfixed *params)
938 getDispatch()->glLightxvOES(light, pname, params);
941 void glLineWidthxOES(GLfixed width)
943 getDispatch()->glLineWidthxOES(width);
946 void glLoadMatrixxOES(const GLfixed *m)
948 getDispatch()->glLoadMatrixxOES(m);
951 void glMaterialxOES(GLenum face, GLenum pname, GLfixed param)
953 getDispatch()->glMaterialxOES(face, pname, param);
956 void glMaterialxvOES(GLenum face, GLenum pname, const GLfixed *params)
958 getDispatch()->glMaterialxvOES(face, pname, params);
961 void glMultMatrixxOES(const GLfixed *m)
963 getDispatch()->glMultMatrixxOES(m);
966 void glMultiTexCoord4xOES(GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q)
968 getDispatch()->glMultiTexCoord4xOES(target, s, t, r, q);
971 void glNormal3xOES(GLfixed nx, GLfixed ny, GLfixed nz)
973 getDispatch()->glNormal3xOES(nx, ny, nz);
976 void glOrthoxOES(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar)
978 getDispatch()->glOrthoxOES(left, right, bottom, top, zNear, zFar);
981 void glPointParameterxOES(GLenum pname, GLfixed param)
983 getDispatch()->glPointParameterxOES(pname, param);
986 void glPointParameterxvOES(GLenum pname, const GLfixed *params)
988 getDispatch()->glPointParameterxvOES(pname, params);
991 void glPointSizexOES(GLfixed size)
993 getDispatch()->glPointSizexOES(size);
996 void glPolygonOffsetxOES(GLfixed factor, GLfixed units)
998 getDispatch()->glPolygonOffsetxOES(factor, units);
1001 void glRotatexOES(GLfixed angle, GLfixed x, GLfixed y, GLfixed z)
1003 getDispatch()->glRotatexOES(angle, x, y, z);
1006 void glSampleCoveragexOES(GLclampx value, GLboolean invert)
1008 getDispatch()->glSampleCoveragexOES(value, invert);
1011 void glScalexOES(GLfixed x, GLfixed y, GLfixed z)
1013 getDispatch()->glScalexOES(x, y, z);
1016 void glTexEnvxOES(GLenum target, GLenum pname, GLfixed param)
1018 getDispatch()->glTexEnvxOES(target, pname, param);
1021 void glTexEnvxvOES(GLenum target, GLenum pname, const GLfixed *params)
1023 getDispatch()->glTexEnvxvOES(target, pname, params);
1026 void glTexParameterxOES(GLenum target, GLenum pname, GLfixed param)
1028 getDispatch()->glTexParameterxOES(target, pname, param);
1031 void glTexParameterxvOES(GLenum target, GLenum pname, const GLfixed *params)
1033 getDispatch()->glTexParameterxvOES(target, pname, params);
1036 void glTranslatexOES(GLfixed x, GLfixed y, GLfixed z)
1038 getDispatch()->glTranslatexOES(x, y, z);
1041 GLboolean glIsRenderbufferOES(GLuint renderbuffer)
1043 return getDispatch()->glIsRenderbufferOES(renderbuffer);
1046 void glBindRenderbufferOES(GLenum target, GLuint renderbuffer)
1048 getDispatch()->glBindRenderbufferOES(target, renderbuffer);
1051 void glDeleteRenderbuffersOES(GLsizei n, const GLuint *renderbuffers)
1053 getDispatch()->glDeleteRenderbuffersOES(n, renderbuffers);
1056 void glGenRenderbuffersOES(GLsizei n, GLuint *renderbuffers)
1058 getDispatch()->glGenRenderbuffersOES(n, renderbuffers);
1061 void glRenderbufferStorageOES(GLenum target, GLenum internalformat, GLsizei width, GLsizei height)
1063 getDispatch()->glRenderbufferStorageOES(target, internalformat, width, height);
1066 void glGetRenderbufferParameterivOES(GLenum target, GLenum pname, GLint *params)
1068 getDispatch()->glGetRenderbufferParameterivOES(target, pname, params);
1071 GLboolean glIsFramebufferOES(GLuint framebuffer)
1073 return getDispatch()->glIsFramebufferOES(framebuffer);
1076 void glBindFramebufferOES(GLenum target, GLuint framebuffer)
1078 getDispatch()->glBindFramebufferOES(target, framebuffer);
1081 void glDeleteFramebuffersOES(GLsizei n, const GLuint *framebuffers)
1083 getDispatch()->glDeleteFramebuffersOES(n, framebuffers);
1086 void glGenFramebuffersOES(GLsizei n, GLuint *framebuffers)
1088 getDispatch()->glGenFramebuffersOES(n, framebuffers);
1091 GLenum glCheckFramebufferStatusOES(GLenum target)
1093 return getDispatch()->glCheckFramebufferStatusOES(target);
1096 void glFramebufferRenderbufferOES(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer)
1098 getDispatch()->glFramebufferRenderbufferOES(target, attachment, renderbuffertarget, renderbuffer);
1101 void glFramebufferTexture2DOES(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
1103 getDispatch()->glFramebufferTexture2DOES(target, attachment, textarget, texture, level);
1106 void glGetFramebufferAttachmentParameterivOES(GLenum target, GLenum attachment, GLenum pname, GLint *params)
1108 getDispatch()->glGetFramebufferAttachmentParameterivOES(target, attachment, pname, params);
1111 void glGenerateMipmapOES(GLenum target)
1113 getDispatch()->glGenerateMipmapOES(target);
1116 void* glMapBufferOES(GLenum target, GLenum access)
1118 return getDispatch()->glMapBufferOES(target, access);
1121 GLboolean glUnmapBufferOES(GLenum target)
1123 return getDispatch()->glUnmapBufferOES(target);
1126 void glGetBufferPointervOES(GLenum target, GLenum pname, GLvoid **ptr)
1128 getDispatch()->glGetBufferPointervOES(target, pname, ptr);
1131 void glCurrentPaletteMatrixOES(GLuint matrixpaletteindex)
1133 getDispatch()->glCurrentPaletteMatrixOES(matrixpaletteindex);
1136 void glLoadPaletteFromModelViewMatrixOES()
1138 getDispatch()->glLoadPaletteFromModelViewMatrixOES();
1141 void glMatrixIndexPointerOES(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
1143 getDispatch()->glMatrixIndexPointerOES(size, type, stride, pointer);
1146 void glWeightPointerOES(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
1148 getDispatch()->glWeightPointerOES(size, type, stride, pointer);
1151 GLbitfield glQueryMatrixxOES(GLfixed mantissa[16], GLint exponent[16])
1153 return getDispatch()->glQueryMatrixxOES(mantissa, exponent);
1156 void glDepthRangefOES(GLclampf zNear, GLclampf zFar)
1158 getDispatch()->glDepthRangefOES(zNear, zFar);
1161 void glFrustumfOES(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar)
1163 getDispatch()->glFrustumfOES(left, right, bottom, top, zNear, zFar);
1166 void glOrthofOES(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar)
1168 getDispatch()->glOrthofOES(left, right, bottom, top, zNear, zFar);
1171 void glClipPlanefOES(GLenum plane, const GLfloat *equation)
1173 getDispatch()->glClipPlanefOES(plane, equation);
1176 void glGetClipPlanefOES(GLenum pname, GLfloat eqn[4])
1178 getDispatch()->glGetClipPlanefOES(pname, eqn);
1181 void glClearDepthfOES(GLclampf depth)
1183 getDispatch()->glClearDepthfOES(depth);
1186 void glTexGenfOES(GLenum coord, GLenum pname, GLfloat param)
1188 getDispatch()->glTexGenfOES(coord, pname, param);
1191 void glTexGenfvOES(GLenum coord, GLenum pname, const GLfloat *params)
1193 getDispatch()->glTexGenfvOES(coord, pname, params);
1196 void glTexGeniOES(GLenum coord, GLenum pname, GLint param)
1198 getDispatch()->glTexGeniOES(coord, pname, param);
1201 void glTexGenivOES(GLenum coord, GLenum pname, const GLint *params)
1203 getDispatch()->glTexGenivOES(coord, pname, params);
1206 void glTexGenxOES(GLenum coord, GLenum pname, GLfixed param)
1208 getDispatch()->glTexGenxOES(coord, pname, param);
1211 void glTexGenxvOES(GLenum coord, GLenum pname, const GLfixed *params)
1213 getDispatch()->glTexGenxvOES(coord, pname, params);
1216 void glGetTexGenfvOES(GLenum coord, GLenum pname, GLfloat *params)
1218 getDispatch()->glGetTexGenfvOES(coord, pname, params);
1221 void glGetTexGenivOES(GLenum coord, GLenum pname, GLint *params)
1223 getDispatch()->glGetTexGenivOES(coord, pname, params);
1226 void glGetTexGenxvOES(GLenum coord, GLenum pname, GLfixed *params)
1228 getDispatch()->glGetTexGenxvOES(coord, pname, params);
1231 void glBindVertexArrayOES(GLuint array)
1233 getDispatch()->glBindVertexArrayOES(array);
1236 void glDeleteVertexArraysOES(GLsizei n, const GLuint *arrays)
1238 getDispatch()->glDeleteVertexArraysOES(n, arrays);
1241 void glGenVertexArraysOES(GLsizei n, GLuint *arrays)
1243 getDispatch()->glGenVertexArraysOES(n, arrays);
1246 GLboolean glIsVertexArrayOES(GLuint array)
1248 return getDispatch()->glIsVertexArrayOES(array);
1251 void glDiscardFramebufferEXT(GLenum target, GLsizei numAttachments, const GLenum *attachments)
1253 getDispatch()->glDiscardFramebufferEXT(target, numAttachments, attachments);
1256 void glMultiDrawArraysEXT(GLenum mode, GLint *first, GLsizei *count, GLsizei primcount)
1258 getDispatch()->glMultiDrawArraysEXT(mode, first, count, primcount);
1261 void glMultiDrawElementsEXT(GLenum mode, const GLsizei *count, GLenum type, const GLvoid **indices, GLsizei primcount)
1263 getDispatch()->glMultiDrawElementsEXT(mode, count, type, indices, primcount);
1266 void glClipPlanefIMG(GLenum p, const GLfloat *eqn)
1268 getDispatch()->glClipPlanefIMG(p, eqn);
1271 void glClipPlanexIMG(GLenum p, const GLfixed *eqn)
1273 getDispatch()->glClipPlanexIMG(p, eqn);
1276 void glRenderbufferStorageMultisampleIMG(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height)
1278 getDispatch()->glRenderbufferStorageMultisampleIMG(target, samples, internalformat, width, height);
1281 void glFramebufferTexture2DMultisampleIMG(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLsizei samples)
1283 getDispatch()->glFramebufferTexture2DMultisampleIMG(target, attachment, textarget, texture, level, samples);
1286 void glDeleteFencesNV(GLsizei n, const GLuint *fences)
1288 getDispatch()->glDeleteFencesNV(n, fences);
1291 void glGenFencesNV(GLsizei n, GLuint *fences)
1293 getDispatch()->glGenFencesNV(n, fences);
1296 GLboolean glIsFenceNV(GLuint fence)
1298 return getDispatch()->glIsFenceNV(fence);
1301 GLboolean glTestFenceNV(GLuint fence)
1303 return getDispatch()->glTestFenceNV(fence);
1306 void glGetFenceivNV(GLuint fence, GLenum pname, GLint *params)
1308 getDispatch()->glGetFenceivNV(fence, pname, params);
1311 void glFinishFenceNV(GLuint fence)
1313 getDispatch()->glFinishFenceNV(fence);
1316 void glSetFenceNV(GLuint fence, GLenum condition)
1318 getDispatch()->glSetFenceNV(fence, condition);
1321 void glGetDriverControlsQCOM(GLint *num, GLsizei size, GLuint *driverControls)
1323 getDispatch()->glGetDriverControlsQCOM(num, size, driverControls);
1326 void glGetDriverControlStringQCOM(GLuint driverControl, GLsizei bufSize, GLsizei *length, GLchar *driverControlString)
1328 getDispatch()->glGetDriverControlStringQCOM(driverControl, bufSize, length, driverControlString);
1331 void glEnableDriverControlQCOM(GLuint driverControl)
1333 getDispatch()->glEnableDriverControlQCOM(driverControl);
1336 void glDisableDriverControlQCOM(GLuint driverControl)
1338 getDispatch()->glDisableDriverControlQCOM(driverControl);
1341 void glExtGetTexturesQCOM(GLuint *textures, GLint maxTextures, GLint *numTextures)
1343 getDispatch()->glExtGetTexturesQCOM(textures, maxTextures, numTextures);
1346 void glExtGetBuffersQCOM(GLuint *buffers, GLint maxBuffers, GLint *numBuffers)
1348 getDispatch()->glExtGetBuffersQCOM(buffers, maxBuffers, numBuffers);
1351 void glExtGetRenderbuffersQCOM(GLuint *renderbuffers, GLint maxRenderbuffers, GLint *numRenderbuffers)
1353 getDispatch()->glExtGetRenderbuffersQCOM(renderbuffers, maxRenderbuffers, numRenderbuffers);
1356 void glExtGetFramebuffersQCOM(GLuint *framebuffers, GLint maxFramebuffers, GLint *numFramebuffers)
1358 getDispatch()->glExtGetFramebuffersQCOM(framebuffers, maxFramebuffers, numFramebuffers);
1361 void glExtGetTexLevelParameterivQCOM(GLuint texture, GLenum face, GLint level, GLenum pname, GLint *params)
1363 getDispatch()->glExtGetTexLevelParameterivQCOM(texture, face, level, pname, params);
1366 void glExtTexObjectStateOverrideiQCOM(GLenum target, GLenum pname, GLint param)
1368 getDispatch()->glExtTexObjectStateOverrideiQCOM(target, pname, param);
1371 void glExtGetTexSubImageQCOM(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLvoid *texels)
1373 getDispatch()->glExtGetTexSubImageQCOM(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, texels);
1376 void glExtGetBufferPointervQCOM(GLenum target, GLvoid **params)
1378 getDispatch()->glExtGetBufferPointervQCOM(target, params);
1381 void glExtGetShadersQCOM(GLuint *shaders, GLint maxShaders, GLint *numShaders)
1383 getDispatch()->glExtGetShadersQCOM(shaders, maxShaders, numShaders);
1386 void glExtGetProgramsQCOM(GLuint *programs, GLint maxPrograms, GLint *numPrograms)
1388 getDispatch()->glExtGetProgramsQCOM(programs, maxPrograms, numPrograms);
1391 GLboolean glExtIsProgramBinaryQCOM(GLuint program)
1393 return getDispatch()->glExtIsProgramBinaryQCOM(program);
1396 void glExtGetProgramBinarySourceQCOM(GLuint program, GLenum shadertype, GLchar *source, GLint *length)
1398 getDispatch()->glExtGetProgramBinarySourceQCOM(program, shadertype, source, length);
1401 void glStartTilingQCOM(GLuint x, GLuint y, GLuint width, GLuint height, GLbitfield preserveMask)
1403 getDispatch()->glStartTilingQCOM(x, y, width, height, preserveMask);
1406 void glEndTilingQCOM(GLbitfield preserveMask)
1408 getDispatch()->glEndTilingQCOM(preserveMask);