1*61046927SAndroid Build Coastguard Worker /* 2*61046927SAndroid Build Coastguard Worker * Copyright © Microsoft Corporation 3*61046927SAndroid Build Coastguard Worker * 4*61046927SAndroid Build Coastguard Worker * Permission is hereby granted, free of charge, to any person obtaining a 5*61046927SAndroid Build Coastguard Worker * copy of this software and associated documentation files (the "Software"), 6*61046927SAndroid Build Coastguard Worker * to deal in the Software without restriction, including without limitation 7*61046927SAndroid Build Coastguard Worker * the rights to use, copy, modify, merge, publish, distribute, sublicense, 8*61046927SAndroid Build Coastguard Worker * and/or sell copies of the Software, and to permit persons to whom the 9*61046927SAndroid Build Coastguard Worker * Software is furnished to do so, subject to the following conditions: 10*61046927SAndroid Build Coastguard Worker * 11*61046927SAndroid Build Coastguard Worker * The above copyright notice and this permission notice (including the next 12*61046927SAndroid Build Coastguard Worker * paragraph) shall be included in all copies or substantial portions of the 13*61046927SAndroid Build Coastguard Worker * Software. 14*61046927SAndroid Build Coastguard Worker * 15*61046927SAndroid Build Coastguard Worker * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16*61046927SAndroid Build Coastguard Worker * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17*61046927SAndroid Build Coastguard Worker * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL 18*61046927SAndroid Build Coastguard Worker * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19*61046927SAndroid Build Coastguard Worker * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 20*61046927SAndroid Build Coastguard Worker * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS 21*61046927SAndroid Build Coastguard Worker * IN THE SOFTWARE. 22*61046927SAndroid Build Coastguard Worker */ 23*61046927SAndroid Build Coastguard Worker 24*61046927SAndroid Build Coastguard Worker #ifndef _GLDRV_ 25*61046927SAndroid Build Coastguard Worker #define _GLDRV_ 26*61046927SAndroid Build Coastguard Worker 27*61046927SAndroid Build Coastguard Worker #include <specstrings.h> 28*61046927SAndroid Build Coastguard Worker 29*61046927SAndroid Build Coastguard Worker // Number of entries expected for various versions of OpenGL 30*61046927SAndroid Build Coastguard Worker #define OPENGL_VERSION_100_ENTRIES 306 31*61046927SAndroid Build Coastguard Worker #define OPENGL_VERSION_110_ENTRIES 336 32*61046927SAndroid Build Coastguard Worker 33*61046927SAndroid Build Coastguard Worker typedef struct _GLDISPATCHTABLE { 34*61046927SAndroid Build Coastguard Worker void (APIENTRY *glNewList )( GLuint list, GLenum mode ); 35*61046927SAndroid Build Coastguard Worker void (APIENTRY *glEndList )( void ); 36*61046927SAndroid Build Coastguard Worker void (APIENTRY *glCallList )( GLuint list ); 37*61046927SAndroid Build Coastguard Worker void (APIENTRY *glCallLists )( GLsizei n, GLenum type, const GLvoid *lists ); 38*61046927SAndroid Build Coastguard Worker void (APIENTRY *glDeleteLists )( GLuint list, GLsizei range ); 39*61046927SAndroid Build Coastguard Worker GLuint (APIENTRY *glGenLists )( GLsizei range ); 40*61046927SAndroid Build Coastguard Worker void (APIENTRY *glListBase )( GLuint base ); 41*61046927SAndroid Build Coastguard Worker void (APIENTRY *glBegin )( GLenum mode ); 42*61046927SAndroid Build Coastguard Worker void (APIENTRY *glBitmap )( GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte *bitmap ); 43*61046927SAndroid Build Coastguard Worker void (APIENTRY *glColor3b )( GLbyte red, GLbyte green, GLbyte blue ); 44*61046927SAndroid Build Coastguard Worker void (APIENTRY *glColor3bv )( const GLbyte *v ); 45*61046927SAndroid Build Coastguard Worker void (APIENTRY *glColor3d )( GLdouble red, GLdouble green, GLdouble blue ); 46*61046927SAndroid Build Coastguard Worker void (APIENTRY *glColor3dv )( const GLdouble *v ); 47*61046927SAndroid Build Coastguard Worker void (APIENTRY *glColor3f )( GLfloat red, GLfloat green, GLfloat blue ); 48*61046927SAndroid Build Coastguard Worker void (APIENTRY *glColor3fv )( const GLfloat *v ); 49*61046927SAndroid Build Coastguard Worker void (APIENTRY *glColor3i )( GLint red, GLint green, GLint blue ); 50*61046927SAndroid Build Coastguard Worker void (APIENTRY *glColor3iv )( const GLint *v ); 51*61046927SAndroid Build Coastguard Worker void (APIENTRY *glColor3s )( GLshort red, GLshort green, GLshort blue ); 52*61046927SAndroid Build Coastguard Worker void (APIENTRY *glColor3sv )( const GLshort *v ); 53*61046927SAndroid Build Coastguard Worker void (APIENTRY *glColor3ub )( GLubyte red, GLubyte green, GLubyte blue ); 54*61046927SAndroid Build Coastguard Worker void (APIENTRY *glColor3ubv )( const GLubyte *v ); 55*61046927SAndroid Build Coastguard Worker void (APIENTRY *glColor3ui )( GLuint red, GLuint green, GLuint blue ); 56*61046927SAndroid Build Coastguard Worker void (APIENTRY *glColor3uiv )( const GLuint *v ); 57*61046927SAndroid Build Coastguard Worker void (APIENTRY *glColor3us )( GLushort red, GLushort green, GLushort blue ); 58*61046927SAndroid Build Coastguard Worker void (APIENTRY *glColor3usv )( const GLushort *v ); 59*61046927SAndroid Build Coastguard Worker void (APIENTRY *glColor4b )( GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha ); 60*61046927SAndroid Build Coastguard Worker void (APIENTRY *glColor4bv )( const GLbyte *v ); 61*61046927SAndroid Build Coastguard Worker void (APIENTRY *glColor4d )( GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha ); 62*61046927SAndroid Build Coastguard Worker void (APIENTRY *glColor4dv )( const GLdouble *v ); 63*61046927SAndroid Build Coastguard Worker void (APIENTRY *glColor4f )( GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha ); 64*61046927SAndroid Build Coastguard Worker void (APIENTRY *glColor4fv )( const GLfloat *v ); 65*61046927SAndroid Build Coastguard Worker void (APIENTRY *glColor4i )( GLint red, GLint green, GLint blue, GLint alpha ); 66*61046927SAndroid Build Coastguard Worker void (APIENTRY *glColor4iv )( const GLint *v ); 67*61046927SAndroid Build Coastguard Worker void (APIENTRY *glColor4s )( GLshort red, GLshort green, GLshort blue, GLshort alpha ); 68*61046927SAndroid Build Coastguard Worker void (APIENTRY *glColor4sv )( const GLshort *v ); 69*61046927SAndroid Build Coastguard Worker void (APIENTRY *glColor4ub )( GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha ); 70*61046927SAndroid Build Coastguard Worker void (APIENTRY *glColor4ubv )( const GLubyte *v ); 71*61046927SAndroid Build Coastguard Worker void (APIENTRY *glColor4ui )( GLuint red, GLuint green, GLuint blue, GLuint alpha ); 72*61046927SAndroid Build Coastguard Worker void (APIENTRY *glColor4uiv )( const GLuint *v ); 73*61046927SAndroid Build Coastguard Worker void (APIENTRY *glColor4us )( GLushort red, GLushort green, GLushort blue, GLushort alpha ); 74*61046927SAndroid Build Coastguard Worker void (APIENTRY *glColor4usv )( const GLushort *v ); 75*61046927SAndroid Build Coastguard Worker void (APIENTRY *glEdgeFlag )( GLboolean flag ); 76*61046927SAndroid Build Coastguard Worker void (APIENTRY *glEdgeFlagv )( const GLboolean *flag ); 77*61046927SAndroid Build Coastguard Worker void (APIENTRY *glEnd )( void ); 78*61046927SAndroid Build Coastguard Worker void (APIENTRY *glIndexd )( GLdouble c ); 79*61046927SAndroid Build Coastguard Worker void (APIENTRY *glIndexdv )( const GLdouble *c ); 80*61046927SAndroid Build Coastguard Worker void (APIENTRY *glIndexf )( GLfloat c ); 81*61046927SAndroid Build Coastguard Worker void (APIENTRY *glIndexfv )( const GLfloat *c ); 82*61046927SAndroid Build Coastguard Worker void (APIENTRY *glIndexi )( GLint c ); 83*61046927SAndroid Build Coastguard Worker void (APIENTRY *glIndexiv )( const GLint *c ); 84*61046927SAndroid Build Coastguard Worker void (APIENTRY *glIndexs )( GLshort c ); 85*61046927SAndroid Build Coastguard Worker void (APIENTRY *glIndexsv )( const GLshort *c ); 86*61046927SAndroid Build Coastguard Worker void (APIENTRY *glNormal3b )( GLbyte nx, GLbyte ny, GLbyte nz ); 87*61046927SAndroid Build Coastguard Worker void (APIENTRY *glNormal3bv )( const GLbyte *v ); 88*61046927SAndroid Build Coastguard Worker void (APIENTRY *glNormal3d )( GLdouble nx, GLdouble ny, GLdouble nz ); 89*61046927SAndroid Build Coastguard Worker void (APIENTRY *glNormal3dv )( const GLdouble *v ); 90*61046927SAndroid Build Coastguard Worker void (APIENTRY *glNormal3f )( GLfloat nx, GLfloat ny, GLfloat nz ); 91*61046927SAndroid Build Coastguard Worker void (APIENTRY *glNormal3fv )( const GLfloat *v ); 92*61046927SAndroid Build Coastguard Worker void (APIENTRY *glNormal3i )( GLint nx, GLint ny, GLint nz ); 93*61046927SAndroid Build Coastguard Worker void (APIENTRY *glNormal3iv )( const GLint *v ); 94*61046927SAndroid Build Coastguard Worker void (APIENTRY *glNormal3s )( GLshort nx, GLshort ny, GLshort nz ); 95*61046927SAndroid Build Coastguard Worker void (APIENTRY *glNormal3sv )( const GLshort *v ); 96*61046927SAndroid Build Coastguard Worker void (APIENTRY *glRasterPos2d )( GLdouble x, GLdouble y ); 97*61046927SAndroid Build Coastguard Worker void (APIENTRY *glRasterPos2dv )( const GLdouble *v ); 98*61046927SAndroid Build Coastguard Worker void (APIENTRY *glRasterPos2f )( GLfloat x, GLfloat y ); 99*61046927SAndroid Build Coastguard Worker void (APIENTRY *glRasterPos2fv )( const GLfloat *v ); 100*61046927SAndroid Build Coastguard Worker void (APIENTRY *glRasterPos2i )( GLint x, GLint y ); 101*61046927SAndroid Build Coastguard Worker void (APIENTRY *glRasterPos2iv )( const GLint *v ); 102*61046927SAndroid Build Coastguard Worker void (APIENTRY *glRasterPos2s )( GLshort x, GLshort y ); 103*61046927SAndroid Build Coastguard Worker void (APIENTRY *glRasterPos2sv )( const GLshort *v ); 104*61046927SAndroid Build Coastguard Worker void (APIENTRY *glRasterPos3d )( GLdouble x, GLdouble y, GLdouble z ); 105*61046927SAndroid Build Coastguard Worker void (APIENTRY *glRasterPos3dv )( const GLdouble *v ); 106*61046927SAndroid Build Coastguard Worker void (APIENTRY *glRasterPos3f )( GLfloat x, GLfloat y, GLfloat z ); 107*61046927SAndroid Build Coastguard Worker void (APIENTRY *glRasterPos3fv )( const GLfloat *v ); 108*61046927SAndroid Build Coastguard Worker void (APIENTRY *glRasterPos3i )( GLint x, GLint y, GLint z ); 109*61046927SAndroid Build Coastguard Worker void (APIENTRY *glRasterPos3iv )( const GLint *v ); 110*61046927SAndroid Build Coastguard Worker void (APIENTRY *glRasterPos3s )( GLshort x, GLshort y, GLshort z ); 111*61046927SAndroid Build Coastguard Worker void (APIENTRY *glRasterPos3sv )( const GLshort *v ); 112*61046927SAndroid Build Coastguard Worker void (APIENTRY *glRasterPos4d )( GLdouble x, GLdouble y, GLdouble z, GLdouble w ); 113*61046927SAndroid Build Coastguard Worker void (APIENTRY *glRasterPos4dv )( const GLdouble *v ); 114*61046927SAndroid Build Coastguard Worker void (APIENTRY *glRasterPos4f )( GLfloat x, GLfloat y, GLfloat z, GLfloat w ); 115*61046927SAndroid Build Coastguard Worker void (APIENTRY *glRasterPos4fv )( const GLfloat *v ); 116*61046927SAndroid Build Coastguard Worker void (APIENTRY *glRasterPos4i )( GLint x, GLint y, GLint z, GLint w ); 117*61046927SAndroid Build Coastguard Worker void (APIENTRY *glRasterPos4iv )( const GLint *v ); 118*61046927SAndroid Build Coastguard Worker void (APIENTRY *glRasterPos4s )( GLshort x, GLshort y, GLshort z, GLshort w ); 119*61046927SAndroid Build Coastguard Worker void (APIENTRY *glRasterPos4sv )( const GLshort *v ); 120*61046927SAndroid Build Coastguard Worker void (APIENTRY *glRectd )( GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2 ); 121*61046927SAndroid Build Coastguard Worker void (APIENTRY *glRectdv )( const GLdouble *v1, const GLdouble *v2 ); 122*61046927SAndroid Build Coastguard Worker void (APIENTRY *glRectf )( GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2 ); 123*61046927SAndroid Build Coastguard Worker void (APIENTRY *glRectfv )( const GLfloat *v1, const GLfloat *v2 ); 124*61046927SAndroid Build Coastguard Worker void (APIENTRY *glRecti )( GLint x1, GLint y1, GLint x2, GLint y2 ); 125*61046927SAndroid Build Coastguard Worker void (APIENTRY *glRectiv )( const GLint *v1, const GLint *v2 ); 126*61046927SAndroid Build Coastguard Worker void (APIENTRY *glRects )( GLshort x1, GLshort y1, GLshort x2, GLshort y2 ); 127*61046927SAndroid Build Coastguard Worker void (APIENTRY *glRectsv )( const GLshort *v1, const GLshort *v2 ); 128*61046927SAndroid Build Coastguard Worker void (APIENTRY *glTexCoord1d )( GLdouble s ); 129*61046927SAndroid Build Coastguard Worker void (APIENTRY *glTexCoord1dv )( const GLdouble *v ); 130*61046927SAndroid Build Coastguard Worker void (APIENTRY *glTexCoord1f )( GLfloat s ); 131*61046927SAndroid Build Coastguard Worker void (APIENTRY *glTexCoord1fv )( const GLfloat *v ); 132*61046927SAndroid Build Coastguard Worker void (APIENTRY *glTexCoord1i )( GLint s ); 133*61046927SAndroid Build Coastguard Worker void (APIENTRY *glTexCoord1iv )( const GLint *v ); 134*61046927SAndroid Build Coastguard Worker void (APIENTRY *glTexCoord1s )( GLshort s ); 135*61046927SAndroid Build Coastguard Worker void (APIENTRY *glTexCoord1sv )( const GLshort *v ); 136*61046927SAndroid Build Coastguard Worker void (APIENTRY *glTexCoord2d )( GLdouble s, GLdouble t ); 137*61046927SAndroid Build Coastguard Worker void (APIENTRY *glTexCoord2dv )( const GLdouble *v ); 138*61046927SAndroid Build Coastguard Worker void (APIENTRY *glTexCoord2f )( GLfloat s, GLfloat t ); 139*61046927SAndroid Build Coastguard Worker void (APIENTRY *glTexCoord2fv )( const GLfloat *v ); 140*61046927SAndroid Build Coastguard Worker void (APIENTRY *glTexCoord2i )( GLint s, GLint t ); 141*61046927SAndroid Build Coastguard Worker void (APIENTRY *glTexCoord2iv )( const GLint *v ); 142*61046927SAndroid Build Coastguard Worker void (APIENTRY *glTexCoord2s )( GLshort s, GLshort t ); 143*61046927SAndroid Build Coastguard Worker void (APIENTRY *glTexCoord2sv )( const GLshort *v ); 144*61046927SAndroid Build Coastguard Worker void (APIENTRY *glTexCoord3d )( GLdouble s, GLdouble t, GLdouble r ); 145*61046927SAndroid Build Coastguard Worker void (APIENTRY *glTexCoord3dv )( const GLdouble *v ); 146*61046927SAndroid Build Coastguard Worker void (APIENTRY *glTexCoord3f )( GLfloat s, GLfloat t, GLfloat r ); 147*61046927SAndroid Build Coastguard Worker void (APIENTRY *glTexCoord3fv )( const GLfloat *v ); 148*61046927SAndroid Build Coastguard Worker void (APIENTRY *glTexCoord3i )( GLint s, GLint t, GLint r ); 149*61046927SAndroid Build Coastguard Worker void (APIENTRY *glTexCoord3iv )( const GLint *v ); 150*61046927SAndroid Build Coastguard Worker void (APIENTRY *glTexCoord3s )( GLshort s, GLshort t, GLshort r ); 151*61046927SAndroid Build Coastguard Worker void (APIENTRY *glTexCoord3sv )( const GLshort *v ); 152*61046927SAndroid Build Coastguard Worker void (APIENTRY *glTexCoord4d )( GLdouble s, GLdouble t, GLdouble r, GLdouble q ); 153*61046927SAndroid Build Coastguard Worker void (APIENTRY *glTexCoord4dv )( const GLdouble *v ); 154*61046927SAndroid Build Coastguard Worker void (APIENTRY *glTexCoord4f )( GLfloat s, GLfloat t, GLfloat r, GLfloat q ); 155*61046927SAndroid Build Coastguard Worker void (APIENTRY *glTexCoord4fv )( const GLfloat *v ); 156*61046927SAndroid Build Coastguard Worker void (APIENTRY *glTexCoord4i )( GLint s, GLint t, GLint r, GLint q ); 157*61046927SAndroid Build Coastguard Worker void (APIENTRY *glTexCoord4iv )( const GLint *v ); 158*61046927SAndroid Build Coastguard Worker void (APIENTRY *glTexCoord4s )( GLshort s, GLshort t, GLshort r, GLshort q ); 159*61046927SAndroid Build Coastguard Worker void (APIENTRY *glTexCoord4sv )( const GLshort *v ); 160*61046927SAndroid Build Coastguard Worker void (APIENTRY *glVertex2d )( GLdouble x, GLdouble y ); 161*61046927SAndroid Build Coastguard Worker void (APIENTRY *glVertex2dv )( const GLdouble *v ); 162*61046927SAndroid Build Coastguard Worker void (APIENTRY *glVertex2f )( GLfloat x, GLfloat y ); 163*61046927SAndroid Build Coastguard Worker void (APIENTRY *glVertex2fv )( const GLfloat *v ); 164*61046927SAndroid Build Coastguard Worker void (APIENTRY *glVertex2i )( GLint x, GLint y ); 165*61046927SAndroid Build Coastguard Worker void (APIENTRY *glVertex2iv )( const GLint *v ); 166*61046927SAndroid Build Coastguard Worker void (APIENTRY *glVertex2s )( GLshort x, GLshort y ); 167*61046927SAndroid Build Coastguard Worker void (APIENTRY *glVertex2sv )( const GLshort *v ); 168*61046927SAndroid Build Coastguard Worker void (APIENTRY *glVertex3d )( GLdouble x, GLdouble y, GLdouble z ); 169*61046927SAndroid Build Coastguard Worker void (APIENTRY *glVertex3dv )( const GLdouble *v ); 170*61046927SAndroid Build Coastguard Worker void (APIENTRY *glVertex3f )( GLfloat x, GLfloat y, GLfloat z ); 171*61046927SAndroid Build Coastguard Worker void (APIENTRY *glVertex3fv )( const GLfloat *v ); 172*61046927SAndroid Build Coastguard Worker void (APIENTRY *glVertex3i )( GLint x, GLint y, GLint z ); 173*61046927SAndroid Build Coastguard Worker void (APIENTRY *glVertex3iv )( const GLint *v ); 174*61046927SAndroid Build Coastguard Worker void (APIENTRY *glVertex3s )( GLshort x, GLshort y, GLshort z ); 175*61046927SAndroid Build Coastguard Worker void (APIENTRY *glVertex3sv )( const GLshort *v ); 176*61046927SAndroid Build Coastguard Worker void (APIENTRY *glVertex4d )( GLdouble x, GLdouble y, GLdouble z, GLdouble w ); 177*61046927SAndroid Build Coastguard Worker void (APIENTRY *glVertex4dv )( const GLdouble *v ); 178*61046927SAndroid Build Coastguard Worker void (APIENTRY *glVertex4f )( GLfloat x, GLfloat y, GLfloat z, GLfloat w ); 179*61046927SAndroid Build Coastguard Worker void (APIENTRY *glVertex4fv )( const GLfloat *v ); 180*61046927SAndroid Build Coastguard Worker void (APIENTRY *glVertex4i )( GLint x, GLint y, GLint z, GLint w ); 181*61046927SAndroid Build Coastguard Worker void (APIENTRY *glVertex4iv )( const GLint *v ); 182*61046927SAndroid Build Coastguard Worker void (APIENTRY *glVertex4s )( GLshort x, GLshort y, GLshort z, GLshort w ); 183*61046927SAndroid Build Coastguard Worker void (APIENTRY *glVertex4sv )( const GLshort *v ); 184*61046927SAndroid Build Coastguard Worker void (APIENTRY *glClipPlane )( GLenum plane, const GLdouble *equation ); 185*61046927SAndroid Build Coastguard Worker void (APIENTRY *glColorMaterial )( GLenum face, GLenum mode ); 186*61046927SAndroid Build Coastguard Worker void (APIENTRY *glCullFace )( GLenum mode ); 187*61046927SAndroid Build Coastguard Worker void (APIENTRY *glFogf )( GLenum pname, GLfloat param ); 188*61046927SAndroid Build Coastguard Worker void (APIENTRY *glFogfv )( GLenum pname, const GLfloat *params ); 189*61046927SAndroid Build Coastguard Worker void (APIENTRY *glFogi )( GLenum pname, GLint param ); 190*61046927SAndroid Build Coastguard Worker void (APIENTRY *glFogiv )( GLenum pname, const GLint *params ); 191*61046927SAndroid Build Coastguard Worker void (APIENTRY *glFrontFace )( GLenum mode ); 192*61046927SAndroid Build Coastguard Worker void (APIENTRY *glHint )( GLenum target, GLenum mode ); 193*61046927SAndroid Build Coastguard Worker void (APIENTRY *glLightf )( GLenum light, GLenum pname, GLfloat param ); 194*61046927SAndroid Build Coastguard Worker void (APIENTRY *glLightfv )( GLenum light, GLenum pname, const GLfloat *params ); 195*61046927SAndroid Build Coastguard Worker void (APIENTRY *glLighti )( GLenum light, GLenum pname, GLint param ); 196*61046927SAndroid Build Coastguard Worker void (APIENTRY *glLightiv )( GLenum light, GLenum pname, const GLint *params ); 197*61046927SAndroid Build Coastguard Worker void (APIENTRY *glLightModelf )( GLenum pname, GLfloat param ); 198*61046927SAndroid Build Coastguard Worker void (APIENTRY *glLightModelfv )( GLenum pname, const GLfloat *params ); 199*61046927SAndroid Build Coastguard Worker void (APIENTRY *glLightModeli )( GLenum pname, GLint param ); 200*61046927SAndroid Build Coastguard Worker void (APIENTRY *glLightModeliv )( GLenum pname, const GLint *params ); 201*61046927SAndroid Build Coastguard Worker void (APIENTRY *glLineStipple )( GLint factor, GLushort pattern ); 202*61046927SAndroid Build Coastguard Worker void (APIENTRY *glLineWidth )( GLfloat width ); 203*61046927SAndroid Build Coastguard Worker void (APIENTRY *glMaterialf )( GLenum face, GLenum pname, GLfloat param ); 204*61046927SAndroid Build Coastguard Worker void (APIENTRY *glMaterialfv )( GLenum face, GLenum pname, const GLfloat *params ); 205*61046927SAndroid Build Coastguard Worker void (APIENTRY *glMateriali )( GLenum face, GLenum pname, GLint param ); 206*61046927SAndroid Build Coastguard Worker void (APIENTRY *glMaterialiv )( GLenum face, GLenum pname, const GLint *params ); 207*61046927SAndroid Build Coastguard Worker void (APIENTRY *glPointSize )( GLfloat size ); 208*61046927SAndroid Build Coastguard Worker void (APIENTRY *glPolygonMode )( GLenum face, GLenum mode ); 209*61046927SAndroid Build Coastguard Worker void (APIENTRY *glPolygonStipple )( const GLubyte *mask ); 210*61046927SAndroid Build Coastguard Worker void (APIENTRY *glScissor )( GLint x, GLint y, GLsizei width, GLsizei height ); 211*61046927SAndroid Build Coastguard Worker void (APIENTRY *glShadeModel )( GLenum mode ); 212*61046927SAndroid Build Coastguard Worker void (APIENTRY *glTexParameterf )( GLenum target, GLenum pname, GLfloat param ); 213*61046927SAndroid Build Coastguard Worker void (APIENTRY *glTexParameterfv )( GLenum target, GLenum pname, const GLfloat *params ); 214*61046927SAndroid Build Coastguard Worker void (APIENTRY *glTexParameteri )( GLenum target, GLenum pname, GLint param ); 215*61046927SAndroid Build Coastguard Worker void (APIENTRY *glTexParameteriv )( GLenum target, GLenum pname, const GLint *params ); 216*61046927SAndroid Build Coastguard Worker void (APIENTRY *glTexImage1D )( GLenum target, GLint level, GLint components, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels ); 217*61046927SAndroid Build Coastguard Worker void (APIENTRY *glTexImage2D )( GLenum target, GLint level, GLint components, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels ); 218*61046927SAndroid Build Coastguard Worker void (APIENTRY *glTexEnvf )( GLenum target, GLenum pname, GLfloat param ); 219*61046927SAndroid Build Coastguard Worker void (APIENTRY *glTexEnvfv )( GLenum target, GLenum pname, const GLfloat *params ); 220*61046927SAndroid Build Coastguard Worker void (APIENTRY *glTexEnvi )( GLenum target, GLenum pname, GLint param ); 221*61046927SAndroid Build Coastguard Worker void (APIENTRY *glTexEnviv )( GLenum target, GLenum pname, const GLint *params ); 222*61046927SAndroid Build Coastguard Worker void (APIENTRY *glTexGend )( GLenum coord, GLenum pname, GLdouble param ); 223*61046927SAndroid Build Coastguard Worker void (APIENTRY *glTexGendv )( GLenum coord, GLenum pname, const GLdouble *params ); 224*61046927SAndroid Build Coastguard Worker void (APIENTRY *glTexGenf )( GLenum coord, GLenum pname, GLfloat param ); 225*61046927SAndroid Build Coastguard Worker void (APIENTRY *glTexGenfv )( GLenum coord, GLenum pname, const GLfloat *params ); 226*61046927SAndroid Build Coastguard Worker void (APIENTRY *glTexGeni )( GLenum coord, GLenum pname, GLint param ); 227*61046927SAndroid Build Coastguard Worker void (APIENTRY *glTexGeniv )( GLenum coord, GLenum pname, const GLint *params ); 228*61046927SAndroid Build Coastguard Worker void (APIENTRY *glFeedbackBuffer )( GLsizei size, GLenum type, GLfloat *buffer ); 229*61046927SAndroid Build Coastguard Worker void (APIENTRY *glSelectBuffer )( GLsizei size, GLuint *buffer ); 230*61046927SAndroid Build Coastguard Worker GLint (APIENTRY *glRenderMode )( GLenum mode ); 231*61046927SAndroid Build Coastguard Worker void (APIENTRY *glInitNames )( void ); 232*61046927SAndroid Build Coastguard Worker void (APIENTRY *glLoadName )( GLuint name ); 233*61046927SAndroid Build Coastguard Worker void (APIENTRY *glPassThrough )( GLfloat token ); 234*61046927SAndroid Build Coastguard Worker void (APIENTRY *glPopName )( void ); 235*61046927SAndroid Build Coastguard Worker void (APIENTRY *glPushName )( GLuint name ); 236*61046927SAndroid Build Coastguard Worker void (APIENTRY *glDrawBuffer )( GLenum mode ); 237*61046927SAndroid Build Coastguard Worker void (APIENTRY *glClear )( GLbitfield mask ); 238*61046927SAndroid Build Coastguard Worker void (APIENTRY *glClearAccum )( GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha ); 239*61046927SAndroid Build Coastguard Worker void (APIENTRY *glClearIndex )( GLfloat c ); 240*61046927SAndroid Build Coastguard Worker void (APIENTRY *glClearColor )( GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha ); 241*61046927SAndroid Build Coastguard Worker void (APIENTRY *glClearStencil )( GLint s ); 242*61046927SAndroid Build Coastguard Worker void (APIENTRY *glClearDepth )( GLclampd depth ); 243*61046927SAndroid Build Coastguard Worker void (APIENTRY *glStencilMask )( GLuint mask ); 244*61046927SAndroid Build Coastguard Worker void (APIENTRY *glColorMask )( GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha ); 245*61046927SAndroid Build Coastguard Worker void (APIENTRY *glDepthMask )( GLboolean flag ); 246*61046927SAndroid Build Coastguard Worker void (APIENTRY *glIndexMask )( GLuint mask ); 247*61046927SAndroid Build Coastguard Worker void (APIENTRY *glAccum )( GLenum op, GLfloat value ); 248*61046927SAndroid Build Coastguard Worker void (APIENTRY *glDisable )( GLenum cap ); 249*61046927SAndroid Build Coastguard Worker void (APIENTRY *glEnable )( GLenum cap ); 250*61046927SAndroid Build Coastguard Worker void (APIENTRY *glFinish )( void ); 251*61046927SAndroid Build Coastguard Worker void (APIENTRY *glFlush )( void ); 252*61046927SAndroid Build Coastguard Worker void (APIENTRY *glPopAttrib )( void ); 253*61046927SAndroid Build Coastguard Worker void (APIENTRY *glPushAttrib )( GLbitfield mask ); 254*61046927SAndroid Build Coastguard Worker void (APIENTRY *glMap1d )( GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble *points ); 255*61046927SAndroid Build Coastguard Worker void (APIENTRY *glMap1f )( GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points ); 256*61046927SAndroid Build Coastguard Worker void (APIENTRY *glMap2d )( GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble *points ); 257*61046927SAndroid Build Coastguard Worker void (APIENTRY *glMap2f )( GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat *points ); 258*61046927SAndroid Build Coastguard Worker void (APIENTRY *glMapGrid1d )( GLint un, GLdouble u1, GLdouble u2 ); 259*61046927SAndroid Build Coastguard Worker void (APIENTRY *glMapGrid1f )( GLint un, GLfloat u1, GLfloat u2 ); 260*61046927SAndroid Build Coastguard Worker void (APIENTRY *glMapGrid2d )( GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2 ); 261*61046927SAndroid Build Coastguard Worker void (APIENTRY *glMapGrid2f )( GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2 ); 262*61046927SAndroid Build Coastguard Worker void (APIENTRY *glEvalCoord1d )( GLdouble u ); 263*61046927SAndroid Build Coastguard Worker void (APIENTRY *glEvalCoord1dv )( const GLdouble *u ); 264*61046927SAndroid Build Coastguard Worker void (APIENTRY *glEvalCoord1f )( GLfloat u ); 265*61046927SAndroid Build Coastguard Worker void (APIENTRY *glEvalCoord1fv )( const GLfloat *u ); 266*61046927SAndroid Build Coastguard Worker void (APIENTRY *glEvalCoord2d )( GLdouble u, GLdouble v ); 267*61046927SAndroid Build Coastguard Worker void (APIENTRY *glEvalCoord2dv )( const GLdouble *u ); 268*61046927SAndroid Build Coastguard Worker void (APIENTRY *glEvalCoord2f )( GLfloat u, GLfloat v ); 269*61046927SAndroid Build Coastguard Worker void (APIENTRY *glEvalCoord2fv )( const GLfloat *u ); 270*61046927SAndroid Build Coastguard Worker void (APIENTRY *glEvalMesh1 )( GLenum mode, GLint i1, GLint i2 ); 271*61046927SAndroid Build Coastguard Worker void (APIENTRY *glEvalPoint1 )( GLint i ); 272*61046927SAndroid Build Coastguard Worker void (APIENTRY *glEvalMesh2 )( GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2 ); 273*61046927SAndroid Build Coastguard Worker void (APIENTRY *glEvalPoint2 )( GLint i, GLint j ); 274*61046927SAndroid Build Coastguard Worker void (APIENTRY *glAlphaFunc )( GLenum func, GLclampf ref ); 275*61046927SAndroid Build Coastguard Worker void (APIENTRY *glBlendFunc )( GLenum sfactor, GLenum dfactor ); 276*61046927SAndroid Build Coastguard Worker void (APIENTRY *glLogicOp )( GLenum opcode ); 277*61046927SAndroid Build Coastguard Worker void (APIENTRY *glStencilFunc )( GLenum func, GLint ref, GLuint mask ); 278*61046927SAndroid Build Coastguard Worker void (APIENTRY *glStencilOp )( GLenum fail, GLenum zfail, GLenum zpass ); 279*61046927SAndroid Build Coastguard Worker void (APIENTRY *glDepthFunc )( GLenum func ); 280*61046927SAndroid Build Coastguard Worker void (APIENTRY *glPixelZoom )( GLfloat xfactor, GLfloat yfactor ); 281*61046927SAndroid Build Coastguard Worker void (APIENTRY *glPixelTransferf )( GLenum pname, GLfloat param ); 282*61046927SAndroid Build Coastguard Worker void (APIENTRY *glPixelTransferi )( GLenum pname, GLint param ); 283*61046927SAndroid Build Coastguard Worker void (APIENTRY *glPixelStoref )( GLenum pname, GLfloat param ); 284*61046927SAndroid Build Coastguard Worker void (APIENTRY *glPixelStorei )( GLenum pname, GLint param ); 285*61046927SAndroid Build Coastguard Worker void (APIENTRY *glPixelMapfv )( GLenum map, GLint mapsize, const GLfloat *values ); 286*61046927SAndroid Build Coastguard Worker void (APIENTRY *glPixelMapuiv )( GLenum map, GLint mapsize, const GLuint *values ); 287*61046927SAndroid Build Coastguard Worker void (APIENTRY *glPixelMapusv )( GLenum map, GLint mapsize, const GLushort *values ); 288*61046927SAndroid Build Coastguard Worker void (APIENTRY *glReadBuffer )( GLenum mode ); 289*61046927SAndroid Build Coastguard Worker void (APIENTRY *glCopyPixels )( GLint x, GLint y, GLsizei width, GLsizei height, GLenum type ); 290*61046927SAndroid Build Coastguard Worker void (APIENTRY *glReadPixels )( GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels ); 291*61046927SAndroid Build Coastguard Worker void (APIENTRY *glDrawPixels )( GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels ); 292*61046927SAndroid Build Coastguard Worker void (APIENTRY *glGetBooleanv )( GLenum pname, GLboolean *params ); 293*61046927SAndroid Build Coastguard Worker void (APIENTRY *glGetClipPlane )( GLenum plane, GLdouble *equation ); 294*61046927SAndroid Build Coastguard Worker void (APIENTRY *glGetDoublev )( GLenum pname, GLdouble *params ); 295*61046927SAndroid Build Coastguard Worker GLenum (APIENTRY *glGetError )( void ); 296*61046927SAndroid Build Coastguard Worker void (APIENTRY *glGetFloatv )( GLenum pname, GLfloat *params ); 297*61046927SAndroid Build Coastguard Worker void (APIENTRY *glGetIntegerv )( GLenum pname, GLint *params ); 298*61046927SAndroid Build Coastguard Worker void (APIENTRY *glGetLightfv )( GLenum light, GLenum pname, GLfloat *params ); 299*61046927SAndroid Build Coastguard Worker void (APIENTRY *glGetLightiv )( GLenum light, GLenum pname, GLint *params ); 300*61046927SAndroid Build Coastguard Worker void (APIENTRY *glGetMapdv )( GLenum target, GLenum query, GLdouble *v ); 301*61046927SAndroid Build Coastguard Worker void (APIENTRY *glGetMapfv )( GLenum target, GLenum query, GLfloat *v ); 302*61046927SAndroid Build Coastguard Worker void (APIENTRY *glGetMapiv )( GLenum target, GLenum query, GLint *v ); 303*61046927SAndroid Build Coastguard Worker void (APIENTRY *glGetMaterialfv )( GLenum face, GLenum pname, GLfloat *params ); 304*61046927SAndroid Build Coastguard Worker void (APIENTRY *glGetMaterialiv )( GLenum face, GLenum pname, GLint *params ); 305*61046927SAndroid Build Coastguard Worker void (APIENTRY *glGetPixelMapfv )( GLenum map, GLfloat *values ); 306*61046927SAndroid Build Coastguard Worker void (APIENTRY *glGetPixelMapuiv )( GLenum map, GLuint *values ); 307*61046927SAndroid Build Coastguard Worker void (APIENTRY *glGetPixelMapusv )( GLenum map, GLushort *values ); 308*61046927SAndroid Build Coastguard Worker void (APIENTRY *glGetPolygonStipple )( GLubyte *mask ); 309*61046927SAndroid Build Coastguard Worker const GLubyte * (APIENTRY *glGetString )( GLenum name ); 310*61046927SAndroid Build Coastguard Worker void (APIENTRY *glGetTexEnvfv )( GLenum target, GLenum pname, GLfloat *params ); 311*61046927SAndroid Build Coastguard Worker void (APIENTRY *glGetTexEnviv )( GLenum target, GLenum pname, GLint *params ); 312*61046927SAndroid Build Coastguard Worker void (APIENTRY *glGetTexGendv )( GLenum coord, GLenum pname, GLdouble *params ); 313*61046927SAndroid Build Coastguard Worker void (APIENTRY *glGetTexGenfv )( GLenum coord, GLenum pname, GLfloat *params ); 314*61046927SAndroid Build Coastguard Worker void (APIENTRY *glGetTexGeniv )( GLenum coord, GLenum pname, GLint *params ); 315*61046927SAndroid Build Coastguard Worker void (APIENTRY *glGetTexImage )( GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels ); 316*61046927SAndroid Build Coastguard Worker void (APIENTRY *glGetTexParameterfv )( GLenum target, GLenum pname, GLfloat *params ); 317*61046927SAndroid Build Coastguard Worker void (APIENTRY *glGetTexParameteriv )( GLenum target, GLenum pname, GLint *params ); 318*61046927SAndroid Build Coastguard Worker void (APIENTRY *glGetTexLevelParameterfv )( GLenum target, GLint level, GLenum pname, GLfloat *params ); 319*61046927SAndroid Build Coastguard Worker void (APIENTRY *glGetTexLevelParameteriv )( GLenum target, GLint level, GLenum pname, GLint *params ); 320*61046927SAndroid Build Coastguard Worker GLboolean (APIENTRY *glIsEnabled )( GLenum cap ); 321*61046927SAndroid Build Coastguard Worker GLboolean (APIENTRY *glIsList )( GLuint list ); 322*61046927SAndroid Build Coastguard Worker void (APIENTRY *glDepthRange )( GLclampd zNear, GLclampd zFar ); 323*61046927SAndroid Build Coastguard Worker void (APIENTRY *glFrustum )( GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar ); 324*61046927SAndroid Build Coastguard Worker void (APIENTRY *glLoadIdentity )( void ); 325*61046927SAndroid Build Coastguard Worker void (APIENTRY *glLoadMatrixf )( const GLfloat *m ); 326*61046927SAndroid Build Coastguard Worker void (APIENTRY *glLoadMatrixd )( const GLdouble *m ); 327*61046927SAndroid Build Coastguard Worker void (APIENTRY *glMatrixMode )( GLenum mode ); 328*61046927SAndroid Build Coastguard Worker void (APIENTRY *glMultMatrixf )( const GLfloat *m ); 329*61046927SAndroid Build Coastguard Worker void (APIENTRY *glMultMatrixd )( const GLdouble *m ); 330*61046927SAndroid Build Coastguard Worker void (APIENTRY *glOrtho )( GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar ); 331*61046927SAndroid Build Coastguard Worker void (APIENTRY *glPopMatrix )( void ); 332*61046927SAndroid Build Coastguard Worker void (APIENTRY *glPushMatrix )( void ); 333*61046927SAndroid Build Coastguard Worker void (APIENTRY *glRotated )( GLdouble angle, GLdouble x, GLdouble y, GLdouble z ); 334*61046927SAndroid Build Coastguard Worker void (APIENTRY *glRotatef )( GLfloat angle, GLfloat x, GLfloat y, GLfloat z ); 335*61046927SAndroid Build Coastguard Worker void (APIENTRY *glScaled )( GLdouble x, GLdouble y, GLdouble z ); 336*61046927SAndroid Build Coastguard Worker void (APIENTRY *glScalef )( GLfloat x, GLfloat y, GLfloat z ); 337*61046927SAndroid Build Coastguard Worker void (APIENTRY *glTranslated )( GLdouble x, GLdouble y, GLdouble z ); 338*61046927SAndroid Build Coastguard Worker void (APIENTRY *glTranslatef )( GLfloat x, GLfloat y, GLfloat z ); 339*61046927SAndroid Build Coastguard Worker void (APIENTRY *glViewport )( GLint x, GLint y, GLsizei width, GLsizei height ); 340*61046927SAndroid Build Coastguard Worker // OpenGL version 1.0 entries end here 341*61046927SAndroid Build Coastguard Worker 342*61046927SAndroid Build Coastguard Worker // OpenGL version 1.1 entries begin here 343*61046927SAndroid Build Coastguard Worker void (APIENTRY *glArrayElement )(GLint i); 344*61046927SAndroid Build Coastguard Worker void (APIENTRY *glBindTexture )(GLenum target, GLuint texture); 345*61046927SAndroid Build Coastguard Worker void (APIENTRY *glColorPointer )(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer); 346*61046927SAndroid Build Coastguard Worker void (APIENTRY *glDisableClientState )(GLenum array); 347*61046927SAndroid Build Coastguard Worker void (APIENTRY *glDrawArrays )(GLenum mode, GLint first, GLsizei count); 348*61046927SAndroid Build Coastguard Worker void (APIENTRY *glDrawElements )(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices); 349*61046927SAndroid Build Coastguard Worker void (APIENTRY *glEdgeFlagPointer )(GLsizei stride, const GLvoid *pointer); 350*61046927SAndroid Build Coastguard Worker void (APIENTRY *glEnableClientState )(GLenum array); 351*61046927SAndroid Build Coastguard Worker void (APIENTRY *glIndexPointer )(GLenum type, GLsizei stride, const GLvoid *pointer); 352*61046927SAndroid Build Coastguard Worker void (APIENTRY *glIndexub )(GLubyte c); 353*61046927SAndroid Build Coastguard Worker void (APIENTRY *glIndexubv )(const GLubyte *c); 354*61046927SAndroid Build Coastguard Worker void (APIENTRY *glInterleavedArrays )(GLenum format, GLsizei stride, const GLvoid *pointer); 355*61046927SAndroid Build Coastguard Worker void (APIENTRY *glNormalPointer )(GLenum type, GLsizei stride, const GLvoid *pointer); 356*61046927SAndroid Build Coastguard Worker void (APIENTRY *glPolygonOffset )(GLfloat factor, GLfloat units); 357*61046927SAndroid Build Coastguard Worker void (APIENTRY *glTexCoordPointer )(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer); 358*61046927SAndroid Build Coastguard Worker void (APIENTRY *glVertexPointer )(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer); 359*61046927SAndroid Build Coastguard Worker GLboolean (APIENTRY *glAreTexturesResident )(GLsizei n, const GLuint *textures, GLboolean *residences); 360*61046927SAndroid Build Coastguard Worker void (APIENTRY *glCopyTexImage1D )(GLenum target, GLint level, GLenum internalFormat, GLint x, GLint y, GLsizei width, GLint border); 361*61046927SAndroid Build Coastguard Worker void (APIENTRY *glCopyTexImage2D )(GLenum target, GLint level, GLenum internalFormat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border); 362*61046927SAndroid Build Coastguard Worker void (APIENTRY *glCopyTexSubImage1D )(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width); 363*61046927SAndroid Build Coastguard Worker void (APIENTRY *glCopyTexSubImage2D )(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height); 364*61046927SAndroid Build Coastguard Worker void (APIENTRY *glDeleteTextures )(GLsizei n, const GLuint *textures); 365*61046927SAndroid Build Coastguard Worker void (APIENTRY *glGenTextures )(GLsizei n, GLuint *textures); 366*61046927SAndroid Build Coastguard Worker void (APIENTRY *glGetPointerv )(GLenum pname, GLvoid* *params); 367*61046927SAndroid Build Coastguard Worker GLboolean (APIENTRY *glIsTexture )(GLuint texture); 368*61046927SAndroid Build Coastguard Worker void (APIENTRY *glPrioritizeTextures )(GLsizei n, const GLuint *textures, const GLclampf *priorities); 369*61046927SAndroid Build Coastguard Worker void (APIENTRY *glTexSubImage1D )(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels); 370*61046927SAndroid Build Coastguard Worker void (APIENTRY *glTexSubImage2D )(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels); 371*61046927SAndroid Build Coastguard Worker void (APIENTRY *glPopClientAttrib )(void); 372*61046927SAndroid Build Coastguard Worker void (APIENTRY *glPushClientAttrib )(GLbitfield mask); 373*61046927SAndroid Build Coastguard Worker } GLDISPATCHTABLE, *PGLDISPATCHTABLE; 374*61046927SAndroid Build Coastguard Worker 375*61046927SAndroid Build Coastguard Worker // OpenGL Client/Driver Procedure Table. 376*61046927SAndroid Build Coastguard Worker 377*61046927SAndroid Build Coastguard Worker typedef struct _GLCLTPROCTABLE { 378*61046927SAndroid Build Coastguard Worker _In_range_(0,OPENGL_VERSION_110_ENTRIES) int cEntries; // Number of function entries in table 379*61046927SAndroid Build Coastguard Worker GLDISPATCHTABLE glDispatchTable; // OpenGL function dispatch table 380*61046927SAndroid Build Coastguard Worker } GLCLTPROCTABLE, *PGLCLTPROCTABLE; 381*61046927SAndroid Build Coastguard Worker 382*61046927SAndroid Build Coastguard Worker // Driver GLRC handle. 383*61046927SAndroid Build Coastguard Worker 384*61046927SAndroid Build Coastguard Worker typedef ULONG DHGLRC; 385*61046927SAndroid Build Coastguard Worker 386*61046927SAndroid Build Coastguard Worker // SetProcTable function prototype for DrvSetContext. 387*61046927SAndroid Build Coastguard Worker 388*61046927SAndroid Build Coastguard Worker typedef VOID (APIENTRY *PFN_SETPROCTABLE)(PGLCLTPROCTABLE); 389*61046927SAndroid Build Coastguard Worker 390*61046927SAndroid Build Coastguard Worker // DrvSetCallbackProcs prototypes 391*61046927SAndroid Build Coastguard Worker typedef VOID (APIENTRY *PFN_SETCURRENTVALUE)(VOID *pv); 392*61046927SAndroid Build Coastguard Worker typedef VOID *(APIENTRY *PFN_GETCURRENTVALUE)(VOID); 393*61046927SAndroid Build Coastguard Worker typedef DHGLRC (APIENTRY *PFN_GETDHGLRC)(HGLRC hrc); 394*61046927SAndroid Build Coastguard Worker #if WINVER >= 0x600 395*61046927SAndroid Build Coastguard Worker typedef struct _PRESENTBUFFERSCB { 396*61046927SAndroid Build Coastguard Worker IN UINT nVersion; 397*61046927SAndroid Build Coastguard Worker IN UINT syncType; // See PRESCB_SYNCTYPE_NONE and PRESCB_SYNCTYPE_VSYNC 398*61046927SAndroid Build Coastguard Worker IN LUID luidAdapter; 399*61046927SAndroid Build Coastguard Worker IN LPVOID pPrivData; 400*61046927SAndroid Build Coastguard Worker IN RECT updateRect; // Update rectangle in the coordinate system of the window, whose HDC is passed to PFN_PRESENTBUFFERS 401*61046927SAndroid Build Coastguard Worker } PRESENTBUFFERSCB, *LPPRESENTBUFFERSCB; 402*61046927SAndroid Build Coastguard Worker typedef BOOL (APIENTRY *PFN_PRESENTBUFFERS)(HDC hdc, LPPRESENTBUFFERSCB pprsbcbData); 403*61046927SAndroid Build Coastguard Worker #endif 404*61046927SAndroid Build Coastguard Worker #if WINVER >= 0xA00 405*61046927SAndroid Build Coastguard Worker typedef VOID (APIENTRY *PFN_GETADAPTERLUID)(HDC hdc, OUT LUID* pLuid); 406*61046927SAndroid Build Coastguard Worker typedef struct _CHECKFULLSCREENSUPPORTCB { 407*61046927SAndroid Build Coastguard Worker IN UINT nVersion; 408*61046927SAndroid Build Coastguard Worker IN LUID luidAdapter; 409*61046927SAndroid Build Coastguard Worker IN UINT hDevice; 410*61046927SAndroid Build Coastguard Worker IN HMONITOR hMonitor; 411*61046927SAndroid Build Coastguard Worker OUT UINT VidPnSourceId; 412*61046927SAndroid Build Coastguard Worker } CHECKFULLSCREENSUPPORTCB, *LPCHECKFULLSCREENSUPPORTCB; 413*61046927SAndroid Build Coastguard Worker typedef BOOL (APIENTRY *PFN_CHECKFULLSCREENSUPPORT)(HDC hdc, LPCHECKFULLSCREENSUPPORTCB pArgs); 414*61046927SAndroid Build Coastguard Worker typedef struct _PRESENTTOREDIRECTIONSURFACECB { 415*61046927SAndroid Build Coastguard Worker IN UINT nVersion; 416*61046927SAndroid Build Coastguard Worker IN UINT hContext; 417*61046927SAndroid Build Coastguard Worker IN UINT hSource; 418*61046927SAndroid Build Coastguard Worker IN UINT hDestination; 419*61046927SAndroid Build Coastguard Worker IN HANDLE hSharedHandle; 420*61046927SAndroid Build Coastguard Worker IN UINT64 updateId; 421*61046927SAndroid Build Coastguard Worker IN RECT updateRect; 422*61046927SAndroid Build Coastguard Worker IN UINT broadcastContextCount; 423*61046927SAndroid Build Coastguard Worker IN UINT broadcastContext[64]; 424*61046927SAndroid Build Coastguard Worker IN UINT broadcastSrcAllocation[64]; 425*61046927SAndroid Build Coastguard Worker IN UINT broadcastDstAllocation[64]; 426*61046927SAndroid Build Coastguard Worker IN UINT cbPrivateDriverDataSize; 427*61046927SAndroid Build Coastguard Worker IN VOID *pPrivateDriverData; 428*61046927SAndroid Build Coastguard Worker } PRESENTTOREDIRECTIONSURFACECB, *LPPRESENTTOREDIRECTIONSURFACECB; 429*61046927SAndroid Build Coastguard Worker typedef BOOL (APIENTRY *PFN_PRESENTTOREDIRECTIONSURFACE)(HDC hdc, LPPRESENTTOREDIRECTIONSURFACECB pArgs); 430*61046927SAndroid Build Coastguard Worker typedef struct _SUBMITPRESENTTOREDIRECTIONSURFACECB { 431*61046927SAndroid Build Coastguard Worker IN UINT nVersion; 432*61046927SAndroid Build Coastguard Worker IN HANDLE hSharedHandle; 433*61046927SAndroid Build Coastguard Worker IN UINT64 updateId; 434*61046927SAndroid Build Coastguard Worker IN RECT updateRect; 435*61046927SAndroid Build Coastguard Worker IN UINT broadcastHwQueueCount; 436*61046927SAndroid Build Coastguard Worker 437*61046927SAndroid Build Coastguard Worker _Field_size_(broadcastHwQueueCount) 438*61046927SAndroid Build Coastguard Worker IN UINT *broadcastHwQueue; 439*61046927SAndroid Build Coastguard Worker 440*61046927SAndroid Build Coastguard Worker _Field_size_(broadcastHwQueueCount) 441*61046927SAndroid Build Coastguard Worker IN UINT *broadcastSrcAllocation; 442*61046927SAndroid Build Coastguard Worker 443*61046927SAndroid Build Coastguard Worker _Field_size_opt_(broadcastHwQueueCount) 444*61046927SAndroid Build Coastguard Worker IN UINT *broadcastDstAllocation; 445*61046927SAndroid Build Coastguard Worker 446*61046927SAndroid Build Coastguard Worker IN UINT cbPrivateDriverDataSize; 447*61046927SAndroid Build Coastguard Worker IN VOID *pPrivateDriverData; 448*61046927SAndroid Build Coastguard Worker } SUBMITPRESENTTOREDIRECTIONSURFACECB, *LPSUBMITPRESENTTOREDIRECTIONSURFACECB; 449*61046927SAndroid Build Coastguard Worker typedef BOOL (APIENTRY *PFN_SUBMITPRESENTTOREDIRECTIONSURFACE)(HDC hdc, LPSUBMITPRESENTTOREDIRECTIONSURFACECB pArgs); 450*61046927SAndroid Build Coastguard Worker #endif 451*61046927SAndroid Build Coastguard Worker 452*61046927SAndroid Build Coastguard Worker // Note: Structure not referenced directly, simply present to document the expected order/count of 453*61046927SAndroid Build Coastguard Worker // callbacks received through DrvSetCallbackProcs. 454*61046927SAndroid Build Coastguard Worker struct WGLCALLBACKS 455*61046927SAndroid Build Coastguard Worker { 456*61046927SAndroid Build Coastguard Worker PFN_SETCURRENTVALUE pfnSetCurrentValue; 457*61046927SAndroid Build Coastguard Worker PFN_GETCURRENTVALUE pfnGetCurrentValue; 458*61046927SAndroid Build Coastguard Worker PFN_GETDHGLRC pfnGetDhglrc; 459*61046927SAndroid Build Coastguard Worker PROC pfnUnused; 460*61046927SAndroid Build Coastguard Worker #if WINVER >= 0x600 461*61046927SAndroid Build Coastguard Worker PFN_PRESENTBUFFERS pfnPresentBuffers; 462*61046927SAndroid Build Coastguard Worker #endif 463*61046927SAndroid Build Coastguard Worker #if WINVER >= 0xA00 464*61046927SAndroid Build Coastguard Worker PFN_GETADAPTERLUID pfnGetAdapterLuid; 465*61046927SAndroid Build Coastguard Worker PFN_CHECKFULLSCREENSUPPORT pfnCheckFullscreenSupport; 466*61046927SAndroid Build Coastguard Worker PFN_PRESENTTOREDIRECTIONSURFACE pfnPresentToRedirectionSurface; 467*61046927SAndroid Build Coastguard Worker PFN_SUBMITPRESENTTOREDIRECTIONSURFACE pfnSubmitPresentToRedirectionSurface; 468*61046927SAndroid Build Coastguard Worker #endif 469*61046927SAndroid Build Coastguard Worker }; 470*61046927SAndroid Build Coastguard Worker 471*61046927SAndroid Build Coastguard Worker // Driver context function prototypes. 472*61046927SAndroid Build Coastguard Worker 473*61046927SAndroid Build Coastguard Worker BOOL APIENTRY DrvCopyContext(DHGLRC, DHGLRC, UINT); 474*61046927SAndroid Build Coastguard Worker DHGLRC APIENTRY DrvCreateContext(HDC); 475*61046927SAndroid Build Coastguard Worker DHGLRC APIENTRY DrvCreateLayerContext(HDC, int); 476*61046927SAndroid Build Coastguard Worker BOOL APIENTRY DrvDeleteContext(DHGLRC); 477*61046927SAndroid Build Coastguard Worker PGLCLTPROCTABLE APIENTRY DrvSetContext(HDC,DHGLRC,PFN_SETPROCTABLE); 478*61046927SAndroid Build Coastguard Worker BOOL APIENTRY DrvReleaseContext(DHGLRC); 479*61046927SAndroid Build Coastguard Worker BOOL APIENTRY DrvValidateVersion(ULONG); 480*61046927SAndroid Build Coastguard Worker BOOL APIENTRY DrvShareLists(DHGLRC, DHGLRC); 481*61046927SAndroid Build Coastguard Worker PROC APIENTRY DrvGetProcAddress(LPCSTR); 482*61046927SAndroid Build Coastguard Worker VOID APIENTRY DrvSetCallbackProcs(INT, PROC *); // See WGLCALLBACKS for expected order/count per OS. 483*61046927SAndroid Build Coastguard Worker BOOL APIENTRY DrvDescribeLayerPlane(HDC, INT, INT, UINT, 484*61046927SAndroid Build Coastguard Worker LPLAYERPLANEDESCRIPTOR); 485*61046927SAndroid Build Coastguard Worker INT APIENTRY DrvSetLayerPaletteEntries(HDC, INT, INT, INT, 486*61046927SAndroid Build Coastguard Worker CONST COLORREF *); 487*61046927SAndroid Build Coastguard Worker INT APIENTRY DrvGetLayerPaletteEntries(HDC, INT, INT, INT, 488*61046927SAndroid Build Coastguard Worker COLORREF *); 489*61046927SAndroid Build Coastguard Worker BOOL APIENTRY DrvRealizeLayerPalette(HDC, INT, BOOL); 490*61046927SAndroid Build Coastguard Worker BOOL APIENTRY DrvSwapLayerBuffers(HDC, UINT); 491*61046927SAndroid Build Coastguard Worker 492*61046927SAndroid Build Coastguard Worker #if WINVER >= 0x500 493*61046927SAndroid Build Coastguard Worker 494*61046927SAndroid Build Coastguard Worker typedef struct IDirectDrawSurface *LPDIRECTDRAWSURFACE; 495*61046927SAndroid Build Coastguard Worker typedef struct _DDSURFACEDESC *LPDDSURFACEDESC; 496*61046927SAndroid Build Coastguard Worker 497*61046927SAndroid Build Coastguard Worker DHGLRC APIENTRY DrvCreateDirectDrawContext(HDC, LPDIRECTDRAWSURFACE, 498*61046927SAndroid Build Coastguard Worker int); 499*61046927SAndroid Build Coastguard Worker int APIENTRY DrvEnumTextureFormats(int, LPDDSURFACEDESC); 500*61046927SAndroid Build Coastguard Worker BOOL APIENTRY DrvBindDirectDrawTexture(LPDIRECTDRAWSURFACE); 501*61046927SAndroid Build Coastguard Worker DWORD APIENTRY DrvSwapMultipleBuffers(UINT cBuffers, 502*61046927SAndroid Build Coastguard Worker CONST WGLSWAP *pgswap); 503*61046927SAndroid Build Coastguard Worker 504*61046927SAndroid Build Coastguard Worker LONG APIENTRY DrvDescribePixelFormat(HDC, INT, ULONG, PIXELFORMATDESCRIPTOR*); 505*61046927SAndroid Build Coastguard Worker BOOL APIENTRY DrvSetPixelFormat(HDC, LONG); 506*61046927SAndroid Build Coastguard Worker BOOL APIENTRY DrvSwapBuffers(HDC); 507*61046927SAndroid Build Coastguard Worker 508*61046927SAndroid Build Coastguard Worker #endif // WINVER >= 0x500 509*61046927SAndroid Build Coastguard Worker 510*61046927SAndroid Build Coastguard Worker #if WINVER >= 0x600 511*61046927SAndroid Build Coastguard Worker typedef struct _PRESENTBUFFERS { 512*61046927SAndroid Build Coastguard Worker IN HANDLE hSurface; 513*61046927SAndroid Build Coastguard Worker IN LUID luidAdapter; 514*61046927SAndroid Build Coastguard Worker IN ULONGLONG ullPresentToken; 515*61046927SAndroid Build Coastguard Worker IN LPVOID pPrivData; 516*61046927SAndroid Build Coastguard Worker } PRESENTBUFFERS, *LPPRESENTBUFFERS; 517*61046927SAndroid Build Coastguard Worker typedef BOOL (APIENTRY *PFN_PRESENTBUFFERS)(HDC hdc, LPPRESENTBUFFERSCB pprsbcbData); 518*61046927SAndroid Build Coastguard Worker 519*61046927SAndroid Build Coastguard Worker #define PRESCB_SYNCTYPE_NONE 0 520*61046927SAndroid Build Coastguard Worker #define PRESCB_SYNCTYPE_VSYNC 1 521*61046927SAndroid Build Coastguard Worker 522*61046927SAndroid Build Coastguard Worker BOOL APIENTRY DrvPresentBuffers(HDC hdc, LPPRESENTBUFFERS pprsbData); 523*61046927SAndroid Build Coastguard Worker 524*61046927SAndroid Build Coastguard Worker #endif 525*61046927SAndroid Build Coastguard Worker 526*61046927SAndroid Build Coastguard Worker // Input structure for OPENGL_CMD ExtEscape. 527*61046927SAndroid Build Coastguard Worker 528*61046927SAndroid Build Coastguard Worker typedef struct _WNDOBJ WNDOBJ; 529*61046927SAndroid Build Coastguard Worker typedef struct _XLATEOBJ XLATEOBJ; 530*61046927SAndroid Build Coastguard Worker 531*61046927SAndroid Build Coastguard Worker typedef struct _OPENGLCMD 532*61046927SAndroid Build Coastguard Worker { 533*61046927SAndroid Build Coastguard Worker ULONG ulSubEsc; 534*61046927SAndroid Build Coastguard Worker FLONG fl; 535*61046927SAndroid Build Coastguard Worker WNDOBJ *pwo; 536*61046927SAndroid Build Coastguard Worker XLATEOBJ *pxo; 537*61046927SAndroid Build Coastguard Worker } OPENGLCMD, *POPENGLCMD; 538*61046927SAndroid Build Coastguard Worker 539*61046927SAndroid Build Coastguard Worker #if WINVER >= 0x500 540*61046927SAndroid Build Coastguard Worker 541*61046927SAndroid Build Coastguard Worker #define OPENGLCMD_MAXMULTI WGL_SWAPMULTIPLE_MAX 542*61046927SAndroid Build Coastguard Worker 543*61046927SAndroid Build Coastguard Worker typedef struct _OPENGLCMDMULTI 544*61046927SAndroid Build Coastguard Worker { 545*61046927SAndroid Build Coastguard Worker ULONG ulSubEsc; 546*61046927SAndroid Build Coastguard Worker FLONG fl; 547*61046927SAndroid Build Coastguard Worker ULONG cMulti; 548*61046927SAndroid Build Coastguard Worker XLATEOBJ *pxo; 549*61046927SAndroid Build Coastguard Worker } OPENGLCMDMULTI, *POPENGLCMDMULTI; 550*61046927SAndroid Build Coastguard Worker 551*61046927SAndroid Build Coastguard Worker #endif // WINVER >= 0x500 552*61046927SAndroid Build Coastguard Worker 553*61046927SAndroid Build Coastguard Worker // Flags for OPENGL_CMD ExtEscape. 554*61046927SAndroid Build Coastguard Worker 555*61046927SAndroid Build Coastguard Worker #define OGLCMD_NEEDWNDOBJ 0x01 556*61046927SAndroid Build Coastguard Worker #define OGLCMD_NEEDXLATEOBJ 0x02 557*61046927SAndroid Build Coastguard Worker 558*61046927SAndroid Build Coastguard Worker #if WINVER >= 0x500 559*61046927SAndroid Build Coastguard Worker #define OGLCMD_MULTIWNDOBJ 0x04 560*61046927SAndroid Build Coastguard Worker #endif // WINVER >= 0x500 561*61046927SAndroid Build Coastguard Worker 562*61046927SAndroid Build Coastguard Worker // OPENGL_GETINFO ExtEscape sub-escape numbers. They are defined by Microsoft. 563*61046927SAndroid Build Coastguard Worker 564*61046927SAndroid Build Coastguard Worker #define OPENGL_GETINFO_DRVNAME 0 565*61046927SAndroid Build Coastguard Worker 566*61046927SAndroid Build Coastguard Worker // Input structure for OPENGL_GETINFO ExtEscape. 567*61046927SAndroid Build Coastguard Worker 568*61046927SAndroid Build Coastguard Worker typedef struct _OPENGLGETINFO 569*61046927SAndroid Build Coastguard Worker { 570*61046927SAndroid Build Coastguard Worker ULONG ulSubEsc; 571*61046927SAndroid Build Coastguard Worker } OPENGLGETINFO, *POPENGLGETINFO; 572*61046927SAndroid Build Coastguard Worker 573*61046927SAndroid Build Coastguard Worker // Input structure for OPENGL_GETINFO_DRVNAME ExtEscape. 574*61046927SAndroid Build Coastguard Worker 575*61046927SAndroid Build Coastguard Worker typedef struct _GLDRVNAME 576*61046927SAndroid Build Coastguard Worker { 577*61046927SAndroid Build Coastguard Worker OPENGLGETINFO oglget; 578*61046927SAndroid Build Coastguard Worker } GLDRVNAME, *PGLDRVNAME; 579*61046927SAndroid Build Coastguard Worker 580*61046927SAndroid Build Coastguard Worker // Output structure for OPENGL_GETINFO_DRVNAME ExtEscape. 581*61046927SAndroid Build Coastguard Worker 582*61046927SAndroid Build Coastguard Worker typedef struct _GLDRVNAMERET 583*61046927SAndroid Build Coastguard Worker { 584*61046927SAndroid Build Coastguard Worker ULONG ulVersion; // must be 1 for this version 585*61046927SAndroid Build Coastguard Worker ULONG ulDriverVersion; // driver specific version number 586*61046927SAndroid Build Coastguard Worker WCHAR awch[MAX_PATH+1]; 587*61046927SAndroid Build Coastguard Worker } GLDRVNAMERET, *PGLDRVNAMERET; 588*61046927SAndroid Build Coastguard Worker 589*61046927SAndroid Build Coastguard Worker #endif /* _GLDRV_ */ 590