00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028 #ifndef PRE_LOOPBACK
00029 #define PRE_LOOPBACK( FUNC )
00030 #endif
00031
00032 #include "glapi/dispatch.h"
00033 #include "glapi/glapioffsets.h"
00034
00035 static void GLAPIENTRY TAG(ArrayElement)( GLint i )
00036 {
00037 PRE_LOOPBACK( ArrayElement );
00038 CALL_ArrayElement(GET_DISPATCH(), ( i ));
00039 }
00040
00041 static void GLAPIENTRY TAG(Color3f)( GLfloat r, GLfloat g, GLfloat b )
00042 {
00043 PRE_LOOPBACK( Color3f );
00044 CALL_Color3f(GET_DISPATCH(), ( r, g, b ));
00045 }
00046
00047 static void GLAPIENTRY TAG(Color3fv)( const GLfloat *v )
00048 {
00049 PRE_LOOPBACK( Color3fv );
00050 CALL_Color3fv(GET_DISPATCH(), ( v ));
00051 }
00052
00053 static void GLAPIENTRY TAG(Color4f)( GLfloat r, GLfloat g, GLfloat b, GLfloat a )
00054 {
00055 PRE_LOOPBACK( Color4f );
00056 CALL_Color4f(GET_DISPATCH(), ( r, g, b, a ));
00057 }
00058
00059 static void GLAPIENTRY TAG(Color4fv)( const GLfloat *v )
00060 {
00061 PRE_LOOPBACK( Color4fv );
00062 CALL_Color4fv(GET_DISPATCH(), ( v ));
00063 }
00064
00065 static void GLAPIENTRY TAG(EdgeFlag)( GLboolean e )
00066 {
00067 PRE_LOOPBACK( EdgeFlag );
00068 CALL_EdgeFlag(GET_DISPATCH(), ( e ));
00069 }
00070
00071 static void GLAPIENTRY TAG(EvalCoord1f)( GLfloat s )
00072 {
00073 PRE_LOOPBACK( EvalCoord1f );
00074 CALL_EvalCoord1f(GET_DISPATCH(), ( s ));
00075 }
00076
00077 static void GLAPIENTRY TAG(EvalCoord1fv)( const GLfloat *v )
00078 {
00079 PRE_LOOPBACK( EvalCoord1fv );
00080 CALL_EvalCoord1fv(GET_DISPATCH(), ( v ));
00081 }
00082
00083 static void GLAPIENTRY TAG(EvalCoord2f)( GLfloat s, GLfloat t )
00084 {
00085 PRE_LOOPBACK( EvalCoord2f );
00086 CALL_EvalCoord2f(GET_DISPATCH(), ( s, t ));
00087 }
00088
00089 static void GLAPIENTRY TAG(EvalCoord2fv)( const GLfloat *v )
00090 {
00091 PRE_LOOPBACK( EvalCoord2fv );
00092 CALL_EvalCoord2fv(GET_DISPATCH(), ( v ));
00093 }
00094
00095 static void GLAPIENTRY TAG(EvalPoint1)( GLint i )
00096 {
00097 PRE_LOOPBACK( EvalPoint1 );
00098 CALL_EvalPoint1(GET_DISPATCH(), ( i ));
00099 }
00100
00101 static void GLAPIENTRY TAG(EvalPoint2)( GLint i, GLint j )
00102 {
00103 PRE_LOOPBACK( EvalPoint2 );
00104 CALL_EvalPoint2(GET_DISPATCH(), ( i, j ));
00105 }
00106
00107 static void GLAPIENTRY TAG(FogCoordfEXT)( GLfloat f )
00108 {
00109 PRE_LOOPBACK( FogCoordfEXT );
00110 CALL_FogCoordfEXT(GET_DISPATCH(), ( f ));
00111 }
00112
00113 static void GLAPIENTRY TAG(FogCoordfvEXT)( const GLfloat *v )
00114 {
00115 PRE_LOOPBACK( FogCoordfvEXT );
00116 CALL_FogCoordfvEXT(GET_DISPATCH(), ( v ));
00117 }
00118
00119 static void GLAPIENTRY TAG(Indexf)( GLfloat f )
00120 {
00121 PRE_LOOPBACK( Indexf );
00122 CALL_Indexf(GET_DISPATCH(), ( f ));
00123 }
00124
00125 static void GLAPIENTRY TAG(Indexfv)( const GLfloat *v )
00126 {
00127 PRE_LOOPBACK( Indexfv );
00128 CALL_Indexfv(GET_DISPATCH(), ( v ));
00129 }
00130
00131 static void GLAPIENTRY TAG(Materialfv)( GLenum face, GLenum pname, const GLfloat *v )
00132 {
00133 PRE_LOOPBACK( Materialfv );
00134 CALL_Materialfv(GET_DISPATCH(), ( face, pname, v ));
00135 }
00136
00137 static void GLAPIENTRY TAG(MultiTexCoord1fARB)( GLenum target, GLfloat a )
00138 {
00139 PRE_LOOPBACK( MultiTexCoord1fARB );
00140 CALL_MultiTexCoord1fARB(GET_DISPATCH(), ( target, a ));
00141 }
00142
00143 static void GLAPIENTRY TAG(MultiTexCoord1fvARB)( GLenum target, const GLfloat *tc )
00144 {
00145 PRE_LOOPBACK( MultiTexCoord1fvARB );
00146 CALL_MultiTexCoord1fvARB(GET_DISPATCH(), ( target, tc ));
00147 }
00148
00149 static void GLAPIENTRY TAG(MultiTexCoord2fARB)( GLenum target, GLfloat s, GLfloat t )
00150 {
00151 PRE_LOOPBACK( MultiTexCoord2fARB );
00152 CALL_MultiTexCoord2fARB(GET_DISPATCH(), ( target, s, t ));
00153 }
00154
00155 static void GLAPIENTRY TAG(MultiTexCoord2fvARB)( GLenum target, const GLfloat *tc )
00156 {
00157 PRE_LOOPBACK( MultiTexCoord2fvARB );
00158 CALL_MultiTexCoord2fvARB(GET_DISPATCH(), ( target, tc ));
00159 }
00160
00161 static void GLAPIENTRY TAG(MultiTexCoord3fARB)( GLenum target, GLfloat s,
00162 GLfloat t, GLfloat r )
00163 {
00164 PRE_LOOPBACK( MultiTexCoord3fARB );
00165 CALL_MultiTexCoord3fARB(GET_DISPATCH(), ( target, s, t, r ));
00166 }
00167
00168 static void GLAPIENTRY TAG(MultiTexCoord3fvARB)( GLenum target, const GLfloat *tc )
00169 {
00170 PRE_LOOPBACK( MultiTexCoord3fvARB );
00171 CALL_MultiTexCoord3fvARB(GET_DISPATCH(), ( target, tc ));
00172 }
00173
00174 static void GLAPIENTRY TAG(MultiTexCoord4fARB)( GLenum target, GLfloat s,
00175 GLfloat t, GLfloat r, GLfloat q )
00176 {
00177 PRE_LOOPBACK( MultiTexCoord4fARB );
00178 CALL_MultiTexCoord4fARB(GET_DISPATCH(), ( target, s, t, r, q ));
00179 }
00180
00181 static void GLAPIENTRY TAG(MultiTexCoord4fvARB)( GLenum target, const GLfloat *tc )
00182 {
00183 PRE_LOOPBACK( MultiTexCoord4fvARB );
00184 CALL_MultiTexCoord4fvARB(GET_DISPATCH(), ( target, tc ));
00185 }
00186
00187 static void GLAPIENTRY TAG(Normal3f)( GLfloat x, GLfloat y, GLfloat z )
00188 {
00189 PRE_LOOPBACK( Normal3f );
00190 CALL_Normal3f(GET_DISPATCH(), ( x, y, z ));
00191 }
00192
00193 static void GLAPIENTRY TAG(Normal3fv)( const GLfloat *v )
00194 {
00195 PRE_LOOPBACK( Normal3fv );
00196 CALL_Normal3fv(GET_DISPATCH(), ( v ));
00197 }
00198
00199 static void GLAPIENTRY TAG(SecondaryColor3fEXT)( GLfloat r, GLfloat g, GLfloat b )
00200 {
00201 PRE_LOOPBACK( SecondaryColor3fEXT );
00202 CALL_SecondaryColor3fEXT(GET_DISPATCH(), ( r, g, b ));
00203 }
00204
00205 static void GLAPIENTRY TAG(SecondaryColor3fvEXT)( const GLfloat *v )
00206 {
00207 PRE_LOOPBACK( SecondaryColor3fvEXT );
00208 CALL_SecondaryColor3fvEXT(GET_DISPATCH(), ( v ));
00209 }
00210
00211 static void GLAPIENTRY TAG(TexCoord1f)( GLfloat s )
00212 {
00213 PRE_LOOPBACK( TexCoord1f );
00214 CALL_TexCoord1f(GET_DISPATCH(), ( s ));
00215 }
00216
00217 static void GLAPIENTRY TAG(TexCoord1fv)( const GLfloat *tc )
00218 {
00219 PRE_LOOPBACK( TexCoord1fv );
00220 CALL_TexCoord1fv(GET_DISPATCH(), ( tc ));
00221 }
00222
00223 static void GLAPIENTRY TAG(TexCoord2f)( GLfloat s, GLfloat t )
00224 {
00225 PRE_LOOPBACK( TexCoord2f );
00226 CALL_TexCoord2f(GET_DISPATCH(), ( s, t ));
00227 }
00228
00229 static void GLAPIENTRY TAG(TexCoord2fv)( const GLfloat *tc )
00230 {
00231 PRE_LOOPBACK( TexCoord2fv );
00232 CALL_TexCoord2fv(GET_DISPATCH(), ( tc ));
00233 }
00234
00235 static void GLAPIENTRY TAG(TexCoord3f)( GLfloat s, GLfloat t, GLfloat r )
00236 {
00237 PRE_LOOPBACK( TexCoord3f );
00238 CALL_TexCoord3f(GET_DISPATCH(), ( s, t, r ));
00239 }
00240
00241 static void GLAPIENTRY TAG(TexCoord3fv)( const GLfloat *tc )
00242 {
00243 PRE_LOOPBACK( TexCoord3fv );
00244 CALL_TexCoord3fv(GET_DISPATCH(), ( tc ));
00245 }
00246
00247 static void GLAPIENTRY TAG(TexCoord4f)( GLfloat s, GLfloat t, GLfloat r, GLfloat q )
00248 {
00249 PRE_LOOPBACK( TexCoord4f );
00250 CALL_TexCoord4f(GET_DISPATCH(), ( s, t, r, q ));
00251 }
00252
00253 static void GLAPIENTRY TAG(TexCoord4fv)( const GLfloat *tc )
00254 {
00255 PRE_LOOPBACK( TexCoord4fv );
00256 CALL_TexCoord4fv(GET_DISPATCH(), ( tc ));
00257 }
00258
00259 static void GLAPIENTRY TAG(Vertex2f)( GLfloat x, GLfloat y )
00260 {
00261 PRE_LOOPBACK( Vertex2f );
00262 CALL_Vertex2f(GET_DISPATCH(), ( x, y ));
00263 }
00264
00265 static void GLAPIENTRY TAG(Vertex2fv)( const GLfloat *v )
00266 {
00267 PRE_LOOPBACK( Vertex2fv );
00268 CALL_Vertex2fv(GET_DISPATCH(), ( v ));
00269 }
00270
00271 static void GLAPIENTRY TAG(Vertex3f)( GLfloat x, GLfloat y, GLfloat z )
00272 {
00273 PRE_LOOPBACK( Vertex3f );
00274 CALL_Vertex3f(GET_DISPATCH(), ( x, y, z ));
00275 }
00276
00277 static void GLAPIENTRY TAG(Vertex3fv)( const GLfloat *v )
00278 {
00279 PRE_LOOPBACK( Vertex3fv );
00280 CALL_Vertex3fv(GET_DISPATCH(), ( v ));
00281 }
00282
00283 static void GLAPIENTRY TAG(Vertex4f)( GLfloat x, GLfloat y, GLfloat z, GLfloat w )
00284 {
00285 PRE_LOOPBACK( Vertex4f );
00286 CALL_Vertex4f(GET_DISPATCH(), ( x, y, z, w ));
00287 }
00288
00289 static void GLAPIENTRY TAG(Vertex4fv)( const GLfloat *v )
00290 {
00291 PRE_LOOPBACK( Vertex4fv );
00292 CALL_Vertex4fv(GET_DISPATCH(), ( v ));
00293 }
00294
00295 static void GLAPIENTRY TAG(CallList)( GLuint i )
00296 {
00297 PRE_LOOPBACK( CallList );
00298 CALL_CallList(GET_DISPATCH(), ( i ));
00299 }
00300
00301 static void GLAPIENTRY TAG(CallLists)( GLsizei sz, GLenum type, const GLvoid *v )
00302 {
00303 PRE_LOOPBACK( CallLists );
00304 CALL_CallLists(GET_DISPATCH(), ( sz, type, v ));
00305 }
00306
00307 static void GLAPIENTRY TAG(Begin)( GLenum mode )
00308 {
00309 PRE_LOOPBACK( Begin );
00310 CALL_Begin(GET_DISPATCH(), ( mode ));
00311 }
00312
00313 static void GLAPIENTRY TAG(End)( void )
00314 {
00315 PRE_LOOPBACK( End );
00316 CALL_End(GET_DISPATCH(), ());
00317 }
00318
00319 static void GLAPIENTRY TAG(Rectf)( GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2 )
00320 {
00321 PRE_LOOPBACK( Rectf );
00322 CALL_Rectf(GET_DISPATCH(), ( x1, y1, x2, y2 ));
00323 }
00324
00325 static void GLAPIENTRY TAG(DrawArrays)( GLenum mode, GLint start, GLsizei count )
00326 {
00327 PRE_LOOPBACK( DrawArrays );
00328 CALL_DrawArrays(GET_DISPATCH(), ( mode, start, count ));
00329 }
00330
00331 static void GLAPIENTRY TAG(DrawElements)( GLenum mode, GLsizei count, GLenum type,
00332 const GLvoid *indices )
00333 {
00334 PRE_LOOPBACK( DrawElements );
00335 CALL_DrawElements(GET_DISPATCH(), ( mode, count, type, indices ));
00336 }
00337
00338 static void GLAPIENTRY TAG(DrawRangeElements)( GLenum mode, GLuint start,
00339 GLuint end, GLsizei count,
00340 GLenum type, const GLvoid *indices )
00341 {
00342 PRE_LOOPBACK( DrawRangeElements );
00343 CALL_DrawRangeElements(GET_DISPATCH(), ( mode, start, end, count, type, indices ));
00344 }
00345
00346 static void GLAPIENTRY TAG(EvalMesh1)( GLenum mode, GLint i1, GLint i2 )
00347 {
00348 PRE_LOOPBACK( EvalMesh1 );
00349 CALL_EvalMesh1(GET_DISPATCH(), ( mode, i1, i2 ));
00350 }
00351
00352 static void GLAPIENTRY TAG(EvalMesh2)( GLenum mode, GLint i1, GLint i2,
00353 GLint j1, GLint j2 )
00354 {
00355 PRE_LOOPBACK( EvalMesh2 );
00356 CALL_EvalMesh2(GET_DISPATCH(), ( mode, i1, i2, j1, j2 ));
00357 }
00358
00359 static void GLAPIENTRY TAG(VertexAttrib1fNV)( GLuint index, GLfloat x )
00360 {
00361 PRE_LOOPBACK( VertexAttrib1fNV );
00362 CALL_VertexAttrib1fNV(GET_DISPATCH(), ( index, x ));
00363 }
00364
00365 static void GLAPIENTRY TAG(VertexAttrib1fvNV)( GLuint index, const GLfloat *v )
00366 {
00367 PRE_LOOPBACK( VertexAttrib1fvNV );
00368 CALL_VertexAttrib1fvNV(GET_DISPATCH(), ( index, v ));
00369 }
00370
00371 static void GLAPIENTRY TAG(VertexAttrib2fNV)( GLuint index, GLfloat x, GLfloat y )
00372 {
00373 PRE_LOOPBACK( VertexAttrib2fNV );
00374 CALL_VertexAttrib2fNV(GET_DISPATCH(), ( index, x, y ));
00375 }
00376
00377 static void GLAPIENTRY TAG(VertexAttrib2fvNV)( GLuint index, const GLfloat *v )
00378 {
00379 PRE_LOOPBACK( VertexAttrib2fvNV );
00380 CALL_VertexAttrib2fvNV(GET_DISPATCH(), ( index, v ));
00381 }
00382
00383 static void GLAPIENTRY TAG(VertexAttrib3fNV)( GLuint index, GLfloat x, GLfloat y, GLfloat z )
00384 {
00385 PRE_LOOPBACK( VertexAttrib3fNV );
00386 CALL_VertexAttrib3fNV(GET_DISPATCH(), ( index, x, y, z ));
00387 }
00388
00389 static void GLAPIENTRY TAG(VertexAttrib3fvNV)( GLuint index, const GLfloat *v )
00390 {
00391 PRE_LOOPBACK( VertexAttrib3fvNV );
00392 CALL_VertexAttrib3fvNV(GET_DISPATCH(), ( index, v ));
00393 }
00394
00395 static void GLAPIENTRY TAG(VertexAttrib4fNV)( GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w )
00396 {
00397 PRE_LOOPBACK( VertexAttrib4fNV );
00398 CALL_VertexAttrib4fNV(GET_DISPATCH(), ( index, x, y, z, w ));
00399 }
00400
00401 static void GLAPIENTRY TAG(VertexAttrib4fvNV)( GLuint index, const GLfloat *v )
00402 {
00403 PRE_LOOPBACK( VertexAttrib4fvNV );
00404 CALL_VertexAttrib4fvNV(GET_DISPATCH(), ( index, v ));
00405 }
00406
00407
00408 static void GLAPIENTRY TAG(VertexAttrib1fARB)( GLuint index, GLfloat x )
00409 {
00410 PRE_LOOPBACK( VertexAttrib1fARB );
00411 CALL_VertexAttrib1fARB(GET_DISPATCH(), ( index, x ));
00412 }
00413
00414 static void GLAPIENTRY TAG(VertexAttrib1fvARB)( GLuint index, const GLfloat *v )
00415 {
00416 PRE_LOOPBACK( VertexAttrib1fvARB );
00417 CALL_VertexAttrib1fvARB(GET_DISPATCH(), ( index, v ));
00418 }
00419
00420 static void GLAPIENTRY TAG(VertexAttrib2fARB)( GLuint index, GLfloat x, GLfloat y )
00421 {
00422 PRE_LOOPBACK( VertexAttrib2fARB );
00423 CALL_VertexAttrib2fARB(GET_DISPATCH(), ( index, x, y ));
00424 }
00425
00426 static void GLAPIENTRY TAG(VertexAttrib2fvARB)( GLuint index, const GLfloat *v )
00427 {
00428 PRE_LOOPBACK( VertexAttrib2fvARB );
00429 CALL_VertexAttrib2fvARB(GET_DISPATCH(), ( index, v ));
00430 }
00431
00432 static void GLAPIENTRY TAG(VertexAttrib3fARB)( GLuint index, GLfloat x, GLfloat y, GLfloat z )
00433 {
00434 PRE_LOOPBACK( VertexAttrib3fARB );
00435 CALL_VertexAttrib3fARB(GET_DISPATCH(), ( index, x, y, z ));
00436 }
00437
00438 static void GLAPIENTRY TAG(VertexAttrib3fvARB)( GLuint index, const GLfloat *v )
00439 {
00440 PRE_LOOPBACK( VertexAttrib3fvARB );
00441 CALL_VertexAttrib3fvARB(GET_DISPATCH(), ( index, v ));
00442 }
00443
00444 static void GLAPIENTRY TAG(VertexAttrib4fARB)( GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w )
00445 {
00446 PRE_LOOPBACK( VertexAttrib4fARB );
00447 CALL_VertexAttrib4fARB(GET_DISPATCH(), ( index, x, y, z, w ));
00448 }
00449
00450 static void GLAPIENTRY TAG(VertexAttrib4fvARB)( GLuint index, const GLfloat *v )
00451 {
00452 PRE_LOOPBACK( VertexAttrib4fvARB );
00453 CALL_VertexAttrib4fvARB(GET_DISPATCH(), ( index, v ));
00454 }
00455
00456
00457 static GLvertexformat TAG(vtxfmt) = {
00458 TAG(ArrayElement),
00459 TAG(Color3f),
00460 TAG(Color3fv),
00461 TAG(Color4f),
00462 TAG(Color4fv),
00463 TAG(EdgeFlag),
00464 TAG(EvalCoord1f),
00465 TAG(EvalCoord1fv),
00466 TAG(EvalCoord2f),
00467 TAG(EvalCoord2fv),
00468 TAG(EvalPoint1),
00469 TAG(EvalPoint2),
00470 TAG(FogCoordfEXT),
00471 TAG(FogCoordfvEXT),
00472 TAG(Indexf),
00473 TAG(Indexfv),
00474 TAG(Materialfv),
00475 TAG(MultiTexCoord1fARB),
00476 TAG(MultiTexCoord1fvARB),
00477 TAG(MultiTexCoord2fARB),
00478 TAG(MultiTexCoord2fvARB),
00479 TAG(MultiTexCoord3fARB),
00480 TAG(MultiTexCoord3fvARB),
00481 TAG(MultiTexCoord4fARB),
00482 TAG(MultiTexCoord4fvARB),
00483 TAG(Normal3f),
00484 TAG(Normal3fv),
00485 TAG(SecondaryColor3fEXT),
00486 TAG(SecondaryColor3fvEXT),
00487 TAG(TexCoord1f),
00488 TAG(TexCoord1fv),
00489 TAG(TexCoord2f),
00490 TAG(TexCoord2fv),
00491 TAG(TexCoord3f),
00492 TAG(TexCoord3fv),
00493 TAG(TexCoord4f),
00494 TAG(TexCoord4fv),
00495 TAG(Vertex2f),
00496 TAG(Vertex2fv),
00497 TAG(Vertex3f),
00498 TAG(Vertex3fv),
00499 TAG(Vertex4f),
00500 TAG(Vertex4fv),
00501 TAG(CallList),
00502 TAG(CallLists),
00503 TAG(Begin),
00504 TAG(End),
00505 TAG(VertexAttrib1fNV),
00506 TAG(VertexAttrib1fvNV),
00507 TAG(VertexAttrib2fNV),
00508 TAG(VertexAttrib2fvNV),
00509 TAG(VertexAttrib3fNV),
00510 TAG(VertexAttrib3fvNV),
00511 TAG(VertexAttrib4fNV),
00512 TAG(VertexAttrib4fvNV),
00513 TAG(VertexAttrib1fARB),
00514 TAG(VertexAttrib1fvARB),
00515 TAG(VertexAttrib2fARB),
00516 TAG(VertexAttrib2fvARB),
00517 TAG(VertexAttrib3fARB),
00518 TAG(VertexAttrib3fvARB),
00519 TAG(VertexAttrib4fARB),
00520 TAG(VertexAttrib4fvARB),
00521 TAG(Rectf),
00522 TAG(DrawArrays),
00523 TAG(DrawElements),
00524 TAG(DrawRangeElements),
00525 TAG(EvalMesh1),
00526 TAG(EvalMesh2)
00527 };
00528
00529 #undef TAG
00530 #undef PRE_LOOPBACK