Home | History | Annotate | Download | only in GLcommon
      1 /*
      2 * Copyright 2011 The Android Open Source Project
      3 *
      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
      7 *
      8 * http://www.apache.org/licenses/LICENSE-2.0
      9 *
     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.
     15 */
     16 
     17 #ifndef DUMMY_GL_FUNCS_H
     18 #define DUMMY_GL_FUNCS_H
     19 
     20 #include <GLES/gl.h>
     21 #include <GLES2/gl2.h>
     22 
     23 #include <GLcommon/gldefs.h>
     24 #define GLAPIENTRY GL_APIENTRY
     25 
     26     void GLAPIENTRY dummy_glActiveTexture ( GLenum texture );
     27     void GLAPIENTRY dummy_glBindBuffer (GLenum target, GLuint buffer);
     28     void GLAPIENTRY dummy_glBindTexture (GLenum target, GLuint texture);
     29     void GLAPIENTRY dummy_glBlendFunc (GLenum sfactor, GLenum dfactor);
     30     void GLAPIENTRY dummy_glBlendEquation( GLenum mode );
     31     void GLAPIENTRY dummy_glBlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha);
     32     void GLAPIENTRY dummy_glBlendFuncSeparate(GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
     33     void GLAPIENTRY dummy_glBufferData(GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage);
     34     void GLAPIENTRY dummy_glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data);
     35     void GLAPIENTRY dummy_glClear(GLbitfield mask);
     36     void GLAPIENTRY dummy_glClearColor(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);
     37     void GLAPIENTRY dummy_glClearStencil(GLint s);
     38     void GLAPIENTRY dummy_glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
     39     void GLAPIENTRY dummy_glCompressedTexImage2D( GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data );
     40     void GLAPIENTRY dummy_glCompressedTexSubImage2D( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data );
     41     void GLAPIENTRY dummy_glCopyTexImage2D(GLenum target, GLint level, GLenum internalFormat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
     42     void GLAPIENTRY dummy_glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
     43     void GLAPIENTRY dummy_glCullFace(GLenum mode);
     44     void GLAPIENTRY dummy_glDeleteBuffers(GLsizei n, const GLuint *buffers);
     45     void GLAPIENTRY dummy_glDeleteTextures(GLsizei n, const GLuint *textures);
     46     void GLAPIENTRY dummy_glDepthFunc(GLenum func);
     47     void GLAPIENTRY dummy_glDepthMask(GLboolean flag);
     48     void GLAPIENTRY dummy_glDepthRange(GLclampd zNear, GLclampd zFar);
     49     void GLAPIENTRY dummy_glDisable(GLenum cap);
     50     void GLAPIENTRY dummy_glDrawArrays(GLenum mode, GLint first, GLsizei count);
     51     void GLAPIENTRY dummy_glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices);
     52     void GLAPIENTRY dummy_glEnable(GLenum cap);
     53     void GLAPIENTRY dummy_glFinish(void);
     54     void GLAPIENTRY dummy_glFlush(void);
     55     void GLAPIENTRY dummy_glFrontFace(GLenum mode);
     56     void GLAPIENTRY dummy_glGenBuffers(GLsizei n, GLuint *buffers);
     57     void GLAPIENTRY dummy_glGenTextures(GLsizei n, GLuint *textures);
     58     void GLAPIENTRY dummy_glGetBooleanv(GLenum pname, GLboolean *params);
     59     void GLAPIENTRY dummy_glGetBufferParameteriv(GLenum, GLenum, GLint *);
     60     GLenum GLAPIENTRY dummy_glGetError(void);
     61     void GLAPIENTRY dummy_glGetFloatv(GLenum pname, GLfloat *params);
     62     void GLAPIENTRY dummy_glGetIntegerv(GLenum pname, GLint *params);
     63     const GLubyte * GLAPIENTRY dummy_glGetString(GLenum name);
     64     void GLAPIENTRY dummy_glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params);
     65     void GLAPIENTRY dummy_glGetTexParameteriv(GLenum target, GLenum pname, GLint *params);
     66     void GLAPIENTRY dummy_glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params);
     67     void GLAPIENTRY dummy_glHint(GLenum target, GLenum mode);
     68     GLboolean GLAPIENTRY dummy_glIsBuffer(GLuint);
     69     GLboolean GLAPIENTRY dummy_glIsEnabled(GLenum cap);
     70     GLboolean GLAPIENTRY dummy_glIsTexture(GLuint texture);
     71     void GLAPIENTRY dummy_glLineWidth(GLfloat width);
     72     void GLAPIENTRY dummy_glPolygonOffset(GLfloat factor, GLfloat units);
     73     void GLAPIENTRY dummy_glPixelStorei(GLenum pname, GLint param);
     74     void GLAPIENTRY dummy_glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels);
     75     void GLAPIENTRY dummy_glSampleCoverage(GLclampf value, GLboolean invert );
     76     void GLAPIENTRY dummy_glScissor(GLint x, GLint y, GLsizei width, GLsizei height);
     77     void GLAPIENTRY dummy_glStencilFunc(GLenum func, GLint ref, GLuint mask);
     78     void GLAPIENTRY dummy_glStencilMask(GLuint mask);
     79     void GLAPIENTRY dummy_glStencilOp(GLenum fail, GLenum zfail, GLenum zpass);
     80     void GLAPIENTRY dummy_glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
     81     void GLAPIENTRY dummy_glTexParameteri(GLenum target, GLenum pname, GLint param);
     82     void GLAPIENTRY dummy_glTexParameteriv(GLenum target, GLenum pname, const GLint *params);
     83     void GLAPIENTRY dummy_glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
     84     void GLAPIENTRY dummy_glViewport(GLint x, GLint y, GLsizei width, GLsizei height);
     85     void GLAPIENTRY dummy_glPushAttrib( GLbitfield mask );
     86     void GLAPIENTRY dummy_glPopAttrib( void );
     87     void GLAPIENTRY dummy_glPushClientAttrib( GLbitfield mask );
     88     void GLAPIENTRY dummy_glPopClientAttrib( void );
     89 
     90     /* OpenGL functions which are needed ONLY for implementing GLES 1.1*/
     91     void GLAPIENTRY dummy_glAlphaFunc(GLenum func, GLclampf ref);
     92     void GLAPIENTRY dummy_glBegin( GLenum mode );
     93     void GLAPIENTRY dummy_glClearDepth(GLclampd depth);
     94     void GLAPIENTRY dummy_glClientActiveTexture( GLenum texture );
     95     void GLAPIENTRY dummy_glClipPlane(GLenum plane, const GLdouble *equation);
     96     void GLAPIENTRY dummy_glColor4d(GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha);
     97     void GLAPIENTRY dummy_glColor4f(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
     98     void GLAPIENTRY dummy_glColor4fv( const GLfloat *v );
     99     void GLAPIENTRY dummy_glColor4ub(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha);
    100     void GLAPIENTRY dummy_glColor4ubv( const GLubyte *v );
    101     void GLAPIENTRY dummy_glColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
    102     void GLAPIENTRY dummy_glDisableClientState(GLenum array);
    103     void GLAPIENTRY dummy_glEnableClientState(GLenum array);
    104     void GLAPIENTRY dummy_glEnd(void);
    105     void GLAPIENTRY dummy_glFogf(GLenum pname, GLfloat param);
    106     void GLAPIENTRY dummy_glFogfv(GLenum pname, const GLfloat *params);
    107     void GLAPIENTRY dummy_glFrustum(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
    108     void GLAPIENTRY dummy_glGetClipPlane(GLenum plane, GLdouble *equation);
    109     void GLAPIENTRY dummy_glGetDoublev( GLenum pname, GLdouble *params );
    110     void GLAPIENTRY dummy_glGetLightfv(GLenum light, GLenum pname, GLfloat *params);
    111     void GLAPIENTRY dummy_glGetMaterialfv(GLenum face, GLenum pname, GLfloat *params);
    112     void GLAPIENTRY dummy_glGetPointerv(GLenum pname, GLvoid* *params);
    113     void GLAPIENTRY dummy_glGetTexEnvfv(GLenum target, GLenum pname, GLfloat *params);
    114     void GLAPIENTRY dummy_glGetTexEnviv(GLenum target, GLenum pname, GLint *params);
    115     void GLAPIENTRY dummy_glLightf(GLenum light, GLenum pname, GLfloat param);
    116     void GLAPIENTRY dummy_glLightfv(GLenum light, GLenum pname, const GLfloat *params);
    117     void GLAPIENTRY dummy_glLightModelf(GLenum pname, GLfloat param);
    118     void GLAPIENTRY dummy_glLightModelfv(GLenum pname, const GLfloat *params);
    119     void GLAPIENTRY dummy_glLoadIdentity(void);
    120     void GLAPIENTRY dummy_glLoadMatrixf(const GLfloat *m);
    121     void GLAPIENTRY dummy_glLogicOp(GLenum opcode);
    122     void GLAPIENTRY dummy_glMaterialf(GLenum face, GLenum pname, GLfloat param);
    123     void GLAPIENTRY dummy_glMaterialfv(GLenum face, GLenum pname, const GLfloat *params);
    124     void GLAPIENTRY dummy_glMultiTexCoord2fv( GLenum target, const GLfloat *v );
    125     void GLAPIENTRY dummy_glMultiTexCoord2sv( GLenum target, const GLshort *v );
    126     void GLAPIENTRY dummy_glMultiTexCoord3fv( GLenum target, const GLfloat *v );
    127     void GLAPIENTRY dummy_glMultiTexCoord3sv( GLenum target, const GLshort *v );
    128     void GLAPIENTRY dummy_glMultiTexCoord4f( GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q );
    129     void GLAPIENTRY dummy_glMultiTexCoord4fv( GLenum target, const GLfloat *v );
    130     void GLAPIENTRY dummy_glMultiTexCoord4sv( GLenum target, const GLshort *v );
    131     void GLAPIENTRY dummy_glMultMatrixf(const GLfloat *m);
    132     void GLAPIENTRY dummy_glNormal3f(GLfloat nx, GLfloat ny, GLfloat nz);
    133     void GLAPIENTRY dummy_glNormal3fv( const GLfloat *v );
    134     void GLAPIENTRY dummy_glNormal3sv(const GLshort *v );
    135     void GLAPIENTRY dummy_glOrtho(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
    136     void GLAPIENTRY dummy_glPointParameterf(GLenum, GLfloat);
    137     void GLAPIENTRY dummy_glPointParameterfv(GLenum, const GLfloat *);
    138     void GLAPIENTRY dummy_glPointSize(GLfloat size);
    139     void GLAPIENTRY dummy_glRotatef(GLfloat angle, GLfloat x, GLfloat y, GLfloat z);
    140     void GLAPIENTRY dummy_glScalef(GLfloat x, GLfloat y, GLfloat z);
    141     void GLAPIENTRY dummy_glTexEnvf(GLenum target, GLenum pname, GLfloat param);
    142     void GLAPIENTRY dummy_glTexEnvfv(GLenum target, GLenum pname, const GLfloat *params);
    143     void GLAPIENTRY dummy_glTexParameterf(GLenum target, GLenum pname, GLfloat param);
    144     void GLAPIENTRY dummy_glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params);
    145     void GLAPIENTRY dummy_glMatrixMode(GLenum mode);
    146     void GLAPIENTRY dummy_glNormalPointer(GLenum type, GLsizei stride, const GLvoid *pointer);
    147     void GLAPIENTRY dummy_glPopMatrix(void);
    148     void GLAPIENTRY dummy_glPushMatrix(void);
    149     void GLAPIENTRY dummy_glShadeModel(GLenum mode);
    150     void GLAPIENTRY dummy_glTexCoordPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
    151     void GLAPIENTRY dummy_glTexEnvi(GLenum target, GLenum pname, GLint param);
    152     void GLAPIENTRY dummy_glTexEnviv(GLenum target, GLenum pname, const GLint *params);
    153     void GLAPIENTRY dummy_glTranslatef(GLfloat x, GLfloat y, GLfloat z);
    154     void GLAPIENTRY dummy_glVertexPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
    155 
    156     /* OpenGL functions which are needed ONLY for implementing GLES 1.1 EXTENSIONS*/
    157     GLboolean GLAPIENTRY dummy_glIsRenderbufferEXT(GLuint renderbuffer);
    158     void GLAPIENTRY dummy_glBindRenderbufferEXT(GLenum target, GLuint renderbuffer);
    159     void GLAPIENTRY dummy_glDeleteRenderbuffersEXT(GLsizei n, const GLuint *renderbuffers);
    160     void GLAPIENTRY dummy_glGenRenderbuffersEXT(GLsizei n, GLuint *renderbuffers);
    161     void GLAPIENTRY dummy_glRenderbufferStorageEXT(GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
    162     void GLAPIENTRY dummy_glGetRenderbufferParameterivEXT(GLenum target, GLenum pname, GLint *params);
    163     GLboolean GLAPIENTRY dummy_glIsFramebufferEXT(GLuint framebuffer);
    164     void GLAPIENTRY dummy_glBindFramebufferEXT(GLenum target, GLuint framebuffer);
    165     void GLAPIENTRY dummy_glDeleteFramebuffersEXT(GLsizei n, const GLuint *framebuffers);
    166     void GLAPIENTRY dummy_glGenFramebuffersEXT(GLsizei n, GLuint *framebuffers);
    167     GLenum GLAPIENTRY dummy_glCheckFramebufferStatusEXT(GLenum target);
    168     void GLAPIENTRY dummy_glFramebufferTexture1DEXT(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
    169     void GLAPIENTRY dummy_glFramebufferTexture2DEXT(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
    170     void GLAPIENTRY dummy_glFramebufferTexture3DEXT(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
    171     void GLAPIENTRY dummy_glFramebufferRenderbufferEXT(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
    172     void GLAPIENTRY dummy_glGetFramebufferAttachmentParameterivEXT(GLenum target, GLenum attachment, GLenum pname, GLint *params);
    173     void GLAPIENTRY dummy_glGenerateMipmapEXT(GLenum target);
    174     void GLAPIENTRY dummy_glCurrentPaletteMatrixARB(GLint index);
    175     void GLAPIENTRY dummy_glMatrixIndexuivARB(GLint size, GLuint * indices);
    176     void GLAPIENTRY dummy_glMatrixIndexPointerARB(GLint size, GLenum type, GLsizei stride, const GLvoid* pointer);
    177     void GLAPIENTRY dummy_glWeightPointerARB(GLint size, GLenum type, GLsizei stride, const GLvoid* pointer);
    178     void GLAPIENTRY dummy_glTexGenf(GLenum coord, GLenum pname, GLfloat param );
    179     void GLAPIENTRY dummy_glTexGeni(GLenum coord, GLenum pname, GLint param );
    180     void GLAPIENTRY dummy_glTexGenf(GLenum coord, GLenum pname, const GLfloat *params );
    181     void GLAPIENTRY dummy_glTexGeniv(GLenum coord, GLenum pname, const GLint *params );
    182     void GLAPIENTRY dummy_glGetTexGenfv(GLenum coord, GLenum pname, GLfloat *params );
    183     void GLAPIENTRY dummy_glGetTexGeniv(GLenum coord, GLenum pname, GLint *params );
    184 
    185     /* Loading OpenGL functions which are needed ONLY for implementing GLES 2.0*/
    186     void GL_APIENTRY dummy_glBlendColor(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);
    187     void GL_APIENTRY dummy_glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask);
    188     void GL_APIENTRY dummy_glStencilMaskSeparate(GLenum face, GLuint mask);
    189     void GL_APIENTRY dummy_glGenerateMipmap(GLenum target);
    190     void GL_APIENTRY dummy_glBindFramebuffer(GLenum target, GLuint framebuffer);
    191     void GL_APIENTRY dummy_glBindRenderbuffer(GLenum target, GLuint renderbuffer);
    192     void GL_APIENTRY dummy_glDeleteFramebuffers(GLsizei n, const GLuint* framebuffers);
    193     void GL_APIENTRY dummy_glDeleteRenderbuffers(GLsizei n, const GLuint* renderbuffers);
    194     GLboolean GL_APIENTRY dummy_glIsProgram(GLuint program);
    195     GLboolean GL_APIENTRY dummy_glIsShader(GLuint shader);
    196     void GL_APIENTRY dummy_glVertexAttrib1f(GLuint indx, GLfloat x);
    197     void GL_APIENTRY dummy_glVertexAttrib1fv(GLuint indx, const GLfloat* values);
    198     void GL_APIENTRY dummy_glVertexAttrib2f(GLuint indx, GLfloat x, GLfloat y);
    199     void GL_APIENTRY dummy_glVertexAttrib2fv(GLuint indx, const GLfloat* values);
    200     void GL_APIENTRY dummy_glVertexAttrib3f(GLuint indx, GLfloat x, GLfloat y, GLfloat z);
    201     void GL_APIENTRY dummy_glVertexAttrib3fv(GLuint indx, const GLfloat* values);
    202     void GL_APIENTRY dummy_glVertexAttrib4f(GLuint indx, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
    203     void GL_APIENTRY dummy_glVertexAttrib4fv(GLuint indx, const GLfloat* values);
    204     void GL_APIENTRY dummy_glVertexAttribPointer(GLuint indx, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid* ptr);
    205     void GL_APIENTRY dummy_glDisableVertexAttribArray(GLuint index);
    206     void GL_APIENTRY dummy_glEnableVertexAttribArray(GLuint index);
    207     void GL_APIENTRY dummy_glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat* params);
    208     void GL_APIENTRY dummy_glGetVertexAttribiv(GLuint index, GLenum pname, GLint* params);
    209     void GL_APIENTRY dummy_glGetVertexAttribPointerv(GLuint index, GLenum pname, GLvoid** pointer);
    210     void GL_APIENTRY dummy_glUniform1f(GLint location, GLfloat x);
    211     void GL_APIENTRY dummy_glUniform1fv(GLint location, GLsizei count, const GLfloat* v);
    212     void GL_APIENTRY dummy_glUniform1i(GLint location, GLint x);
    213     void GL_APIENTRY dummy_glUniform1iv(GLint location, GLsizei count, const GLint* v);
    214     void GL_APIENTRY dummy_glUniform2f(GLint location, GLfloat x, GLfloat y);
    215     void GL_APIENTRY dummy_glUniform2fv(GLint location, GLsizei count, const GLfloat* v);
    216     void GL_APIENTRY dummy_glUniform2i(GLint location, GLint x, GLint y);
    217     void GL_APIENTRY dummy_glUniform2iv(GLint location, GLsizei count, const GLint* v);
    218     void GL_APIENTRY dummy_glUniform3f(GLint location, GLfloat x, GLfloat y, GLfloat z);
    219     void GL_APIENTRY dummy_glUniform3fv(GLint location, GLsizei count, const GLfloat* v);
    220     void GL_APIENTRY dummy_glUniform3i(GLint location, GLint x, GLint y, GLint z);
    221     void GL_APIENTRY dummy_glUniform3iv(GLint location, GLsizei count, const GLint* v);
    222     void GL_APIENTRY dummy_glUniform4f(GLint location, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
    223     void GL_APIENTRY dummy_glUniform4fv(GLint location, GLsizei count, const GLfloat* v);
    224     void GL_APIENTRY dummy_glUniform4i(GLint location, GLint x, GLint y, GLint z, GLint w);
    225     void GL_APIENTRY dummy_glUniform4iv(GLint location, GLsizei count, const GLint* v);
    226     void GL_APIENTRY dummy_glUniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
    227     void GL_APIENTRY dummy_glUniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
    228     void GL_APIENTRY dummy_glUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
    229     void GL_APIENTRY dummy_glGetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint* params);
    230     void GL_APIENTRY dummy_glGetRenderbufferParameteriv(GLenum target, GLenum pname, GLint* params);
    231     GLboolean GL_APIENTRY dummy_glIsFramebuffer(GLuint framebuffer);
    232     GLboolean GL_APIENTRY dummy_glIsRenderbuffer(GLuint renderbuffer);
    233     GLenum GL_APIENTRY dummy_glCheckFramebufferStatus(GLenum target);
    234     void GL_APIENTRY dummy_glAttachShader(GLuint program, GLuint shader);
    235     void GL_APIENTRY dummy_glBindAttribLocation(GLuint program, GLuint index, const GLchar* name);
    236     void GL_APIENTRY dummy_glCompileShader(GLuint shader);
    237     GLuint GL_APIENTRY dummy_glCreateProgram(void);
    238     GLuint GL_APIENTRY dummy_glCreateShader(GLenum type);
    239     void GL_APIENTRY dummy_glDeleteProgram(GLuint program);
    240     void GL_APIENTRY dummy_glDeleteShader(GLuint shader);
    241     void GL_APIENTRY dummy_glDetachShader(GLuint program, GLuint shader);
    242     void GL_APIENTRY dummy_glLinkProgram(GLuint program);
    243     void GL_APIENTRY dummy_glUseProgram(GLuint program);
    244     void GL_APIENTRY dummy_glValidateProgram(GLuint program);
    245     void GL_APIENTRY dummy_glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufsize, GLsizei* length, GLint* size, GLenum* type, GLchar* name);
    246     void GL_APIENTRY dummy_glGetActiveUniform(GLuint program, GLuint index, GLsizei bufsize, GLsizei* length, GLint* size, GLenum* type, GLchar* name);
    247     void GL_APIENTRY dummy_glGetAttachedShaders(GLuint program, GLsizei maxcount, GLsizei* count, GLuint* shaders);
    248     int  GL_APIENTRY dummy_glGetAttribLocation(GLuint program, const GLchar* name);
    249     void GL_APIENTRY dummy_glGetProgramiv(GLuint program, GLenum pname, GLint* params);
    250     void GL_APIENTRY dummy_glGetProgramInfoLog(GLuint program, GLsizei bufsize, GLsizei* length, GLchar* infolog);
    251     void GL_APIENTRY dummy_glGetShaderiv(GLuint shader, GLenum pname, GLint* params);
    252     void GL_APIENTRY dummy_glGetShaderInfoLog(GLuint shader, GLsizei bufsize, GLsizei* length, GLchar* infolog);
    253     void GL_APIENTRY dummy_glGetShaderPrecisionFormat(GLenum shadertype, GLenum precisiontype, GLint* range, GLint* precision);
    254     void GL_APIENTRY dummy_glGetShaderSource(GLuint shader, GLsizei bufsize, GLsizei* length, GLchar* source);
    255     void GL_APIENTRY dummy_glGetUniformfv(GLuint program, GLint location, GLfloat* params);
    256     void GL_APIENTRY dummy_glGetUniformiv(GLuint program, GLint location, GLint* params);
    257     int  GL_APIENTRY dummy_glGetUniformLocation(GLuint program, const GLchar* name);
    258     void GL_APIENTRY dummy_glReleaseShaderCompiler(void);
    259     void GL_APIENTRY dummy_glRenderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
    260     void GL_APIENTRY dummy_glShaderBinary(GLsizei n, const GLuint* shaders, GLenum binaryformat, const GLvoid* binary, GLsizei length);
    261     void GL_APIENTRY dummy_glShaderSource(GLuint shader, GLsizei count, const GLchar** string, const GLint* length);
    262     void GL_APIENTRY dummy_glFramebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
    263     void GL_APIENTRY dummy_glFramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
    264 
    265 #endif
    266