ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

api_loopback.c
Go to the documentation of this file.
00001 
00007 /*
00008  * Mesa 3-D graphics library
00009  * Version:  6.3
00010  *
00011  * Copyright (C) 1999-2004  Brian Paul   All Rights Reserved.
00012  *
00013  * Permission is hereby granted, free of charge, to any person obtaining a
00014  * copy of this software and associated documentation files (the "Software"),
00015  * to deal in the Software without restriction, including without limitation
00016  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
00017  * and/or sell copies of the Software, and to permit persons to whom the
00018  * Software is furnished to do so, subject to the following conditions:
00019  *
00020  * The above copyright notice and this permission notice shall be included
00021  * in all copies or substantial portions of the Software.
00022  *
00023  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
00024  * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
00025  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
00026  * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
00027  * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
00028  * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
00029  */
00030 
00031 
00032 #include "glheader.h"
00033 #include "macros.h"
00034 #include "api_loopback.h"
00035 #include "mtypes.h"
00036 #include "glapi/glapi.h"
00037 #include "glapi/glapitable.h"
00038 #include "glapi/glthread.h"
00039 #include "glapi/dispatch.h"
00040 
00041 /* KW: A set of functions to convert unusual Color/Normal/Vertex/etc
00042  * calls to a smaller set of driver-provided formats.  Currently just
00043  * go back to dispatch to find these (eg. call glNormal3f directly),
00044  * hence 'loopback'.
00045  *
00046  * The driver must supply all of the remaining entry points, which are
00047  * listed in dd.h.  The easiest way for a driver to do this is to
00048  * install the supplied software t&l module.
00049  */
00050 #define COLORF(r,g,b,a)             CALL_Color4f(GET_DISPATCH(), (r,g,b,a))
00051 #define VERTEX2(x,y)                CALL_Vertex2f(GET_DISPATCH(), (x,y))
00052 #define VERTEX3(x,y,z)              CALL_Vertex3f(GET_DISPATCH(), (x,y,z))
00053 #define VERTEX4(x,y,z,w)            CALL_Vertex4f(GET_DISPATCH(), (x,y,z,w))
00054 #define NORMAL(x,y,z)               CALL_Normal3f(GET_DISPATCH(), (x,y,z))
00055 #define TEXCOORD1(s)                CALL_TexCoord1f(GET_DISPATCH(), (s))
00056 #define TEXCOORD2(s,t)              CALL_TexCoord2f(GET_DISPATCH(), (s,t))
00057 #define TEXCOORD3(s,t,u)            CALL_TexCoord3f(GET_DISPATCH(), (s,t,u))
00058 #define TEXCOORD4(s,t,u,v)          CALL_TexCoord4f(GET_DISPATCH(), (s,t,u,v))
00059 #define INDEX(c)            CALL_Indexf(GET_DISPATCH(), (c))
00060 #define MULTI_TEXCOORD1(z,s)        CALL_MultiTexCoord1fARB(GET_DISPATCH(), (z,s))
00061 #define MULTI_TEXCOORD2(z,s,t)      CALL_MultiTexCoord2fARB(GET_DISPATCH(), (z,s,t))
00062 #define MULTI_TEXCOORD3(z,s,t,u)    CALL_MultiTexCoord3fARB(GET_DISPATCH(), (z,s,t,u))
00063 #define MULTI_TEXCOORD4(z,s,t,u,v)  CALL_MultiTexCoord4fARB(GET_DISPATCH(), (z,s,t,u,v))
00064 #define EVALCOORD1(x)               CALL_EvalCoord1f(GET_DISPATCH(), (x))
00065 #define EVALCOORD2(x,y)             CALL_EvalCoord2f(GET_DISPATCH(), (x,y))
00066 #define MATERIALFV(a,b,c)           CALL_Materialfv(GET_DISPATCH(), (a,b,c))
00067 #define RECTF(a,b,c,d)              CALL_Rectf(GET_DISPATCH(), (a,b,c,d))
00068 
00069 #define ATTRIB1NV(index,x)          CALL_VertexAttrib1fNV(GET_DISPATCH(), (index,x))
00070 #define ATTRIB2NV(index,x,y)        CALL_VertexAttrib2fNV(GET_DISPATCH(), (index,x,y))
00071 #define ATTRIB3NV(index,x,y,z)      CALL_VertexAttrib3fNV(GET_DISPATCH(), (index,x,y,z))
00072 #define ATTRIB4NV(index,x,y,z,w)    CALL_VertexAttrib4fNV(GET_DISPATCH(), (index,x,y,z,w))
00073 #define ATTRIB1ARB(index,x)         CALL_VertexAttrib1fARB(GET_DISPATCH(), (index,x))
00074 #define ATTRIB2ARB(index,x,y)       CALL_VertexAttrib2fARB(GET_DISPATCH(), (index,x,y))
00075 #define ATTRIB3ARB(index,x,y,z)     CALL_VertexAttrib3fARB(GET_DISPATCH(), (index,x,y,z))
00076 #define ATTRIB4ARB(index,x,y,z,w)   CALL_VertexAttrib4fARB(GET_DISPATCH(), (index,x,y,z,w))
00077 #define FOGCOORDF(x)                CALL_FogCoordfEXT(GET_DISPATCH(), (x))
00078 #define SECONDARYCOLORF(a,b,c)      CALL_SecondaryColor3fEXT(GET_DISPATCH(), (a,b,c))
00079 
00080 static void GLAPIENTRY
00081 loopback_Color3b_f( GLbyte red, GLbyte green, GLbyte blue )
00082 {
00083    COLORF( BYTE_TO_FLOAT(red),
00084        BYTE_TO_FLOAT(green),
00085        BYTE_TO_FLOAT(blue),
00086        1.0 );
00087 }
00088 
00089 static void GLAPIENTRY
00090 loopback_Color3d_f( GLdouble red, GLdouble green, GLdouble blue )
00091 {
00092    COLORF( (GLfloat) red, (GLfloat) green, (GLfloat) blue, 1.0 );
00093 }
00094 
00095 static void GLAPIENTRY
00096 loopback_Color3i_f( GLint red, GLint green, GLint blue )
00097 {
00098    COLORF( INT_TO_FLOAT(red), INT_TO_FLOAT(green),
00099        INT_TO_FLOAT(blue), 1.0);
00100 }
00101 
00102 static void GLAPIENTRY
00103 loopback_Color3s_f( GLshort red, GLshort green, GLshort blue )
00104 {
00105    COLORF( SHORT_TO_FLOAT(red), SHORT_TO_FLOAT(green),
00106        SHORT_TO_FLOAT(blue), 1.0);
00107 }
00108 
00109 static void GLAPIENTRY
00110 loopback_Color3ui_f( GLuint red, GLuint green, GLuint blue )
00111 {
00112    COLORF( UINT_TO_FLOAT(red), UINT_TO_FLOAT(green),
00113        UINT_TO_FLOAT(blue), 1.0 );
00114 }
00115 
00116 static void GLAPIENTRY
00117 loopback_Color3us_f( GLushort red, GLushort green, GLushort blue )
00118 {
00119    COLORF( USHORT_TO_FLOAT(red), USHORT_TO_FLOAT(green),
00120        USHORT_TO_FLOAT(blue), 1.0 );
00121 }
00122 
00123 static void GLAPIENTRY
00124 loopback_Color3ub_f( GLubyte red, GLubyte green, GLubyte blue )
00125 {
00126    COLORF( UBYTE_TO_FLOAT(red), UBYTE_TO_FLOAT(green),
00127        UBYTE_TO_FLOAT(blue), 1.0 );
00128 }
00129 
00130 
00131 static void GLAPIENTRY
00132 loopback_Color3bv_f( const GLbyte *v )
00133 {
00134    COLORF( BYTE_TO_FLOAT(v[0]), BYTE_TO_FLOAT(v[1]),
00135        BYTE_TO_FLOAT(v[2]), 1.0 );
00136 }
00137 
00138 static void GLAPIENTRY
00139 loopback_Color3dv_f( const GLdouble *v )
00140 {
00141    COLORF( (GLfloat) v[0], (GLfloat) v[1], (GLfloat) v[2], 1.0 );
00142 }
00143 
00144 static void GLAPIENTRY
00145 loopback_Color3iv_f( const GLint *v )
00146 {
00147    COLORF( INT_TO_FLOAT(v[0]), INT_TO_FLOAT(v[1]),
00148        INT_TO_FLOAT(v[2]), 1.0 );
00149 }
00150 
00151 static void GLAPIENTRY
00152 loopback_Color3sv_f( const GLshort *v )
00153 {
00154    COLORF( SHORT_TO_FLOAT(v[0]), SHORT_TO_FLOAT(v[1]),
00155        SHORT_TO_FLOAT(v[2]), 1.0 );
00156 }
00157 
00158 static void GLAPIENTRY
00159 loopback_Color3uiv_f( const GLuint *v )
00160 {
00161    COLORF( UINT_TO_FLOAT(v[0]), UINT_TO_FLOAT(v[1]),
00162        UINT_TO_FLOAT(v[2]), 1.0 );
00163 }
00164 
00165 static void GLAPIENTRY
00166 loopback_Color3usv_f( const GLushort *v )
00167 {
00168    COLORF( USHORT_TO_FLOAT(v[0]), USHORT_TO_FLOAT(v[1]),
00169        USHORT_TO_FLOAT(v[2]), 1.0 );
00170 }
00171 
00172 static void GLAPIENTRY
00173 loopback_Color3ubv_f( const GLubyte *v )
00174 {
00175    COLORF( UBYTE_TO_FLOAT(v[0]), UBYTE_TO_FLOAT(v[1]),
00176        UBYTE_TO_FLOAT(v[2]), 1.0 );
00177 }
00178 
00179 
00180 static void GLAPIENTRY
00181 loopback_Color4b_f( GLbyte red, GLbyte green, GLbyte blue,
00182                   GLbyte alpha )
00183 {
00184    COLORF( BYTE_TO_FLOAT(red), BYTE_TO_FLOAT(green),
00185        BYTE_TO_FLOAT(blue), BYTE_TO_FLOAT(alpha) );
00186 }
00187 
00188 static void GLAPIENTRY
00189 loopback_Color4d_f( GLdouble red, GLdouble green, GLdouble blue,
00190                   GLdouble alpha )
00191 {
00192    COLORF( (GLfloat) red, (GLfloat) green, (GLfloat) blue, (GLfloat) alpha );
00193 }
00194 
00195 static void GLAPIENTRY
00196 loopback_Color4i_f( GLint red, GLint green, GLint blue, GLint alpha )
00197 {
00198    COLORF( INT_TO_FLOAT(red), INT_TO_FLOAT(green),
00199        INT_TO_FLOAT(blue), INT_TO_FLOAT(alpha) );
00200 }
00201 
00202 static void GLAPIENTRY
00203 loopback_Color4s_f( GLshort red, GLshort green, GLshort blue,
00204                   GLshort alpha )
00205 {
00206    COLORF( SHORT_TO_FLOAT(red), SHORT_TO_FLOAT(green),
00207        SHORT_TO_FLOAT(blue), SHORT_TO_FLOAT(alpha) );
00208 }
00209 
00210 static void GLAPIENTRY
00211 loopback_Color4ui_f( GLuint red, GLuint green, GLuint blue, GLuint alpha )
00212 {
00213    COLORF( UINT_TO_FLOAT(red), UINT_TO_FLOAT(green),
00214        UINT_TO_FLOAT(blue), UINT_TO_FLOAT(alpha) );
00215 }
00216 
00217 static void GLAPIENTRY
00218 loopback_Color4us_f( GLushort red, GLushort green, GLushort blue, GLushort alpha )
00219 {
00220    COLORF( USHORT_TO_FLOAT(red), USHORT_TO_FLOAT(green),
00221        USHORT_TO_FLOAT(blue), USHORT_TO_FLOAT(alpha) );
00222 }
00223 
00224 static void GLAPIENTRY
00225 loopback_Color4ub_f( GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha )
00226 {
00227    COLORF( UBYTE_TO_FLOAT(red), UBYTE_TO_FLOAT(green),
00228        UBYTE_TO_FLOAT(blue), UBYTE_TO_FLOAT(alpha) );
00229 }
00230 
00231 
00232 static void GLAPIENTRY
00233 loopback_Color4iv_f( const GLint *v )
00234 {
00235    COLORF( INT_TO_FLOAT(v[0]), INT_TO_FLOAT(v[1]),
00236        INT_TO_FLOAT(v[2]), INT_TO_FLOAT(v[3]) );
00237 }
00238 
00239 
00240 static void GLAPIENTRY
00241 loopback_Color4bv_f( const GLbyte *v )
00242 {
00243    COLORF( BYTE_TO_FLOAT(v[0]), BYTE_TO_FLOAT(v[1]),
00244        BYTE_TO_FLOAT(v[2]), BYTE_TO_FLOAT(v[3]) );
00245 }
00246 
00247 static void GLAPIENTRY
00248 loopback_Color4dv_f( const GLdouble *v )
00249 {
00250    COLORF( (GLfloat) v[0], (GLfloat) v[1], (GLfloat) v[2], (GLfloat) v[3] );
00251 }
00252 
00253 
00254 static void GLAPIENTRY
00255 loopback_Color4sv_f( const GLshort *v)
00256 {
00257    COLORF( SHORT_TO_FLOAT(v[0]), SHORT_TO_FLOAT(v[1]),
00258        SHORT_TO_FLOAT(v[2]), SHORT_TO_FLOAT(v[3]) );
00259 }
00260 
00261 
00262 static void GLAPIENTRY
00263 loopback_Color4uiv_f( const GLuint *v)
00264 {
00265    COLORF( UINT_TO_FLOAT(v[0]), UINT_TO_FLOAT(v[1]),
00266        UINT_TO_FLOAT(v[2]), UINT_TO_FLOAT(v[3]) );
00267 }
00268 
00269 static void GLAPIENTRY
00270 loopback_Color4usv_f( const GLushort *v)
00271 {
00272    COLORF( USHORT_TO_FLOAT(v[0]), USHORT_TO_FLOAT(v[1]),
00273        USHORT_TO_FLOAT(v[2]), USHORT_TO_FLOAT(v[3]) );
00274 }
00275 
00276 static void GLAPIENTRY
00277 loopback_Color4ubv_f( const GLubyte *v)
00278 {
00279    COLORF( UBYTE_TO_FLOAT(v[0]), UBYTE_TO_FLOAT(v[1]),
00280        UBYTE_TO_FLOAT(v[2]), UBYTE_TO_FLOAT(v[3]) );
00281 }
00282 
00283 
00284 static void GLAPIENTRY
00285 loopback_FogCoorddEXT( GLdouble d )
00286 {
00287    FOGCOORDF( (GLfloat) d );
00288 }
00289 
00290 static void GLAPIENTRY
00291 loopback_FogCoorddvEXT( const GLdouble *v )
00292 {
00293    FOGCOORDF( (GLfloat) *v );
00294 }
00295 
00296 
00297 static void GLAPIENTRY
00298 loopback_Indexd( GLdouble c )
00299 {
00300    INDEX( (GLfloat) c );
00301 }
00302 
00303 static void GLAPIENTRY
00304 loopback_Indexi( GLint c )
00305 {
00306    INDEX( (GLfloat) c );
00307 }
00308 
00309 static void GLAPIENTRY
00310 loopback_Indexs( GLshort c )
00311 {
00312    INDEX( (GLfloat) c );
00313 }
00314 
00315 static void GLAPIENTRY
00316 loopback_Indexub( GLubyte c )
00317 {
00318    INDEX( (GLfloat) c );
00319 }
00320 
00321 static void GLAPIENTRY
00322 loopback_Indexdv( const GLdouble *c )
00323 {
00324    INDEX( (GLfloat) *c );
00325 }
00326 
00327 static void GLAPIENTRY
00328 loopback_Indexiv( const GLint *c )
00329 {
00330    INDEX( (GLfloat) *c );
00331 }
00332 
00333 static void GLAPIENTRY
00334 loopback_Indexsv( const GLshort *c )
00335 {
00336    INDEX( (GLfloat) *c );
00337 }
00338 
00339 static void GLAPIENTRY
00340 loopback_Indexubv( const GLubyte *c )
00341 {
00342    INDEX( (GLfloat) *c );
00343 }
00344 
00345 
00346 static void GLAPIENTRY
00347 loopback_EdgeFlagv(const GLboolean *flag)
00348 {
00349    CALL_EdgeFlag(GET_DISPATCH(), (*flag));
00350 }
00351 
00352 
00353 static void GLAPIENTRY
00354 loopback_Normal3b( GLbyte nx, GLbyte ny, GLbyte nz )
00355 {
00356    NORMAL( BYTE_TO_FLOAT(nx), BYTE_TO_FLOAT(ny), BYTE_TO_FLOAT(nz) );
00357 }
00358 
00359 static void GLAPIENTRY
00360 loopback_Normal3d( GLdouble nx, GLdouble ny, GLdouble nz )
00361 {
00362    NORMAL((GLfloat) nx, (GLfloat) ny, (GLfloat) nz);
00363 }
00364 
00365 static void GLAPIENTRY
00366 loopback_Normal3i( GLint nx, GLint ny, GLint nz )
00367 {
00368    NORMAL( INT_TO_FLOAT(nx), INT_TO_FLOAT(ny), INT_TO_FLOAT(nz) );
00369 }
00370 
00371 static void GLAPIENTRY
00372 loopback_Normal3s( GLshort nx, GLshort ny, GLshort nz )
00373 {
00374    NORMAL( SHORT_TO_FLOAT(nx), SHORT_TO_FLOAT(ny), SHORT_TO_FLOAT(nz) );
00375 }
00376 
00377 static void GLAPIENTRY
00378 loopback_Normal3bv( const GLbyte *v )
00379 {
00380    NORMAL( BYTE_TO_FLOAT(v[0]), BYTE_TO_FLOAT(v[1]), BYTE_TO_FLOAT(v[2]) );
00381 }
00382 
00383 static void GLAPIENTRY
00384 loopback_Normal3dv( const GLdouble *v )
00385 {
00386    NORMAL( (GLfloat) v[0], (GLfloat) v[1], (GLfloat) v[2] );
00387 }
00388 
00389 static void GLAPIENTRY
00390 loopback_Normal3iv( const GLint *v )
00391 {
00392    NORMAL( INT_TO_FLOAT(v[0]), INT_TO_FLOAT(v[1]), INT_TO_FLOAT(v[2]) );
00393 }
00394 
00395 static void GLAPIENTRY
00396 loopback_Normal3sv( const GLshort *v )
00397 {
00398    NORMAL( SHORT_TO_FLOAT(v[0]), SHORT_TO_FLOAT(v[1]), SHORT_TO_FLOAT(v[2]) );
00399 }
00400 
00401 static void GLAPIENTRY
00402 loopback_TexCoord1d( GLdouble s )
00403 {
00404    TEXCOORD1((GLfloat) s);
00405 }
00406 
00407 static void GLAPIENTRY
00408 loopback_TexCoord1i( GLint s )
00409 {
00410    TEXCOORD1((GLfloat) s);
00411 }
00412 
00413 static void GLAPIENTRY
00414 loopback_TexCoord1s( GLshort s )
00415 {
00416    TEXCOORD1((GLfloat) s);
00417 }
00418 
00419 static void GLAPIENTRY
00420 loopback_TexCoord2d( GLdouble s, GLdouble t )
00421 {
00422    TEXCOORD2((GLfloat) s,(GLfloat) t);
00423 }
00424 
00425 static void GLAPIENTRY
00426 loopback_TexCoord2s( GLshort s, GLshort t )
00427 {
00428    TEXCOORD2((GLfloat) s,(GLfloat) t);
00429 }
00430 
00431 static void GLAPIENTRY
00432 loopback_TexCoord2i( GLint s, GLint t )
00433 {
00434    TEXCOORD2((GLfloat) s,(GLfloat) t);
00435 }
00436 
00437 static void GLAPIENTRY
00438 loopback_TexCoord3d( GLdouble s, GLdouble t, GLdouble r )
00439 {
00440    TEXCOORD3((GLfloat) s,(GLfloat) t,(GLfloat) r);
00441 }
00442 
00443 static void GLAPIENTRY
00444 loopback_TexCoord3i( GLint s, GLint t, GLint r )
00445 {
00446    TEXCOORD3((GLfloat) s,(GLfloat) t,(GLfloat) r);
00447 }
00448 
00449 static void GLAPIENTRY
00450 loopback_TexCoord3s( GLshort s, GLshort t, GLshort r )
00451 {
00452    TEXCOORD3((GLfloat) s,(GLfloat) t,(GLfloat) r);
00453 }
00454 
00455 static void GLAPIENTRY
00456 loopback_TexCoord4d( GLdouble s, GLdouble t, GLdouble r, GLdouble q )
00457 {
00458    TEXCOORD4((GLfloat) s,(GLfloat) t,(GLfloat) r,(GLfloat) q);
00459 }
00460 
00461 static void GLAPIENTRY
00462 loopback_TexCoord4i( GLint s, GLint t, GLint r, GLint q )
00463 {
00464    TEXCOORD4((GLfloat) s,(GLfloat) t,(GLfloat) r,(GLfloat) q);
00465 }
00466 
00467 static void GLAPIENTRY
00468 loopback_TexCoord4s( GLshort s, GLshort t, GLshort r, GLshort q )
00469 {
00470    TEXCOORD4((GLfloat) s,(GLfloat) t,(GLfloat) r,(GLfloat) q);
00471 }
00472 
00473 static void GLAPIENTRY
00474 loopback_TexCoord1dv( const GLdouble *v )
00475 {
00476    TEXCOORD1((GLfloat) v[0]);
00477 }
00478 
00479 static void GLAPIENTRY
00480 loopback_TexCoord1iv( const GLint *v )
00481 {
00482    TEXCOORD1((GLfloat) v[0]);
00483 }
00484 
00485 static void GLAPIENTRY
00486 loopback_TexCoord1sv( const GLshort *v )
00487 {
00488    TEXCOORD1((GLfloat) v[0]);
00489 }
00490 
00491 static void GLAPIENTRY
00492 loopback_TexCoord2dv( const GLdouble *v )
00493 {
00494    TEXCOORD2((GLfloat) v[0],(GLfloat) v[1]);
00495 }
00496 
00497 static void GLAPIENTRY
00498 loopback_TexCoord2iv( const GLint *v )
00499 {
00500    TEXCOORD2((GLfloat) v[0],(GLfloat) v[1]);
00501 }
00502 
00503 static void GLAPIENTRY
00504 loopback_TexCoord2sv( const GLshort *v )
00505 {
00506    TEXCOORD2((GLfloat) v[0],(GLfloat) v[1]);
00507 }
00508 
00509 static void GLAPIENTRY
00510 loopback_TexCoord3dv( const GLdouble *v )
00511 {
00512    TEXCOORD3((GLfloat) v[0],(GLfloat) v[1],(GLfloat) v[2]);
00513 }
00514 
00515 static void GLAPIENTRY
00516 loopback_TexCoord3iv( const GLint *v )
00517 {
00518    TEXCOORD3((GLfloat) v[0],(GLfloat) v[1],(GLfloat) v[2]);
00519 }
00520 
00521 static void GLAPIENTRY
00522 loopback_TexCoord3sv( const GLshort *v )
00523 {
00524    TEXCOORD3((GLfloat) v[0],(GLfloat) v[1],(GLfloat) v[2]);
00525 }
00526 
00527 static void GLAPIENTRY
00528 loopback_TexCoord4dv( const GLdouble *v )
00529 {
00530    TEXCOORD4((GLfloat) v[0],(GLfloat) v[1],(GLfloat) v[2],(GLfloat) v[3]);
00531 }
00532 
00533 static void GLAPIENTRY
00534 loopback_TexCoord4iv( const GLint *v )
00535 {
00536    TEXCOORD4((GLfloat) v[0],(GLfloat) v[1],(GLfloat) v[2],(GLfloat) v[3]);
00537 }
00538 
00539 static void GLAPIENTRY
00540 loopback_TexCoord4sv( const GLshort *v )
00541 {
00542    TEXCOORD4((GLfloat) v[0],(GLfloat) v[1],(GLfloat) v[2],(GLfloat) v[3]);
00543 }
00544 
00545 static void GLAPIENTRY
00546 loopback_Vertex2d( GLdouble x, GLdouble y )
00547 {
00548    VERTEX2( (GLfloat) x, (GLfloat) y );
00549 }
00550 
00551 static void GLAPIENTRY
00552 loopback_Vertex2i( GLint x, GLint y )
00553 {
00554    VERTEX2( (GLfloat) x, (GLfloat) y );
00555 }
00556 
00557 static void GLAPIENTRY
00558 loopback_Vertex2s( GLshort x, GLshort y )
00559 {
00560    VERTEX2( (GLfloat) x, (GLfloat) y );
00561 }
00562 
00563 static void GLAPIENTRY
00564 loopback_Vertex3d( GLdouble x, GLdouble y, GLdouble z )
00565 {
00566    VERTEX3( (GLfloat) x, (GLfloat) y, (GLfloat) z );
00567 }
00568 
00569 static void GLAPIENTRY
00570 loopback_Vertex3i( GLint x, GLint y, GLint z )
00571 {
00572    VERTEX3( (GLfloat) x, (GLfloat) y, (GLfloat) z );
00573 }
00574 
00575 static void GLAPIENTRY
00576 loopback_Vertex3s( GLshort x, GLshort y, GLshort z )
00577 {
00578    VERTEX3( (GLfloat) x, (GLfloat) y, (GLfloat) z );
00579 }
00580 
00581 static void GLAPIENTRY
00582 loopback_Vertex4d( GLdouble x, GLdouble y, GLdouble z, GLdouble w )
00583 {
00584    VERTEX4( (GLfloat) x, (GLfloat) y, (GLfloat) z, (GLfloat) w );
00585 }
00586 
00587 static void GLAPIENTRY
00588 loopback_Vertex4i( GLint x, GLint y, GLint z, GLint w )
00589 {
00590    VERTEX4( (GLfloat) x, (GLfloat) y, (GLfloat) z, (GLfloat) w );
00591 }
00592 
00593 static void GLAPIENTRY
00594 loopback_Vertex4s( GLshort x, GLshort y, GLshort z, GLshort w )
00595 {
00596    VERTEX4( (GLfloat) x, (GLfloat) y, (GLfloat) z, (GLfloat) w );
00597 }
00598 
00599 static void GLAPIENTRY
00600 loopback_Vertex2dv( const GLdouble *v )
00601 {
00602    VERTEX2( (GLfloat) v[0], (GLfloat) v[1] );
00603 }
00604 
00605 static void GLAPIENTRY
00606 loopback_Vertex2iv( const GLint *v )
00607 {
00608    VERTEX2( (GLfloat) v[0], (GLfloat) v[1] );
00609 }
00610 
00611 static void GLAPIENTRY
00612 loopback_Vertex2sv( const GLshort *v )
00613 {
00614    VERTEX2( (GLfloat) v[0], (GLfloat) v[1] );
00615 }
00616 
00617 static void GLAPIENTRY
00618 loopback_Vertex3dv( const GLdouble *v )
00619 {
00620    VERTEX3( (GLfloat) v[0], (GLfloat) v[1], (GLfloat) v[2] );
00621 }
00622 
00623 static void GLAPIENTRY
00624 loopback_Vertex3iv( const GLint *v )
00625 {
00626    VERTEX3( (GLfloat) v[0], (GLfloat) v[1], (GLfloat) v[2] );
00627 }
00628 
00629 static void GLAPIENTRY
00630 loopback_Vertex3sv( const GLshort *v )
00631 {
00632    VERTEX3( (GLfloat) v[0], (GLfloat) v[1], (GLfloat) v[2] );
00633 }
00634 
00635 static void GLAPIENTRY
00636 loopback_Vertex4dv( const GLdouble *v )
00637 {
00638    VERTEX4( (GLfloat) v[0], (GLfloat) v[1],
00639         (GLfloat) v[2], (GLfloat) v[3] );
00640 }
00641 
00642 static void GLAPIENTRY
00643 loopback_Vertex4iv( const GLint *v )
00644 {
00645    VERTEX4( (GLfloat) v[0], (GLfloat) v[1],
00646         (GLfloat) v[2], (GLfloat) v[3] );
00647 }
00648 
00649 static void GLAPIENTRY
00650 loopback_Vertex4sv( const GLshort *v )
00651 {
00652    VERTEX4( (GLfloat) v[0], (GLfloat) v[1],
00653         (GLfloat) v[2], (GLfloat) v[3] );
00654 }
00655 
00656 static void GLAPIENTRY
00657 loopback_MultiTexCoord1dARB(GLenum target, GLdouble s)
00658 {
00659    MULTI_TEXCOORD1( target, (GLfloat) s );
00660 }
00661 
00662 static void GLAPIENTRY
00663 loopback_MultiTexCoord1dvARB(GLenum target, const GLdouble *v)
00664 {
00665    MULTI_TEXCOORD1( target, (GLfloat) v[0] );
00666 }
00667 
00668 static void GLAPIENTRY
00669 loopback_MultiTexCoord1iARB(GLenum target, GLint s)
00670 {
00671    MULTI_TEXCOORD1( target, (GLfloat) s );
00672 }
00673 
00674 static void GLAPIENTRY
00675 loopback_MultiTexCoord1ivARB(GLenum target, const GLint *v)
00676 {
00677    MULTI_TEXCOORD1( target, (GLfloat) v[0] );
00678 }
00679 
00680 static void GLAPIENTRY
00681 loopback_MultiTexCoord1sARB(GLenum target, GLshort s)
00682 {
00683    MULTI_TEXCOORD1( target, (GLfloat) s );
00684 }
00685 
00686 static void GLAPIENTRY
00687 loopback_MultiTexCoord1svARB(GLenum target, const GLshort *v)
00688 {
00689    MULTI_TEXCOORD1( target, (GLfloat) v[0] );
00690 }
00691 
00692 static void GLAPIENTRY
00693 loopback_MultiTexCoord2dARB(GLenum target, GLdouble s, GLdouble t)
00694 {
00695    MULTI_TEXCOORD2( target, (GLfloat) s, (GLfloat) t );
00696 }
00697 
00698 static void GLAPIENTRY
00699 loopback_MultiTexCoord2dvARB(GLenum target, const GLdouble *v)
00700 {
00701    MULTI_TEXCOORD2( target, (GLfloat) v[0], (GLfloat) v[1] );
00702 }
00703 
00704 static void GLAPIENTRY
00705 loopback_MultiTexCoord2iARB(GLenum target, GLint s, GLint t)
00706 {
00707    MULTI_TEXCOORD2( target, (GLfloat) s, (GLfloat) t );
00708 }
00709 
00710 static void GLAPIENTRY
00711 loopback_MultiTexCoord2ivARB(GLenum target, const GLint *v)
00712 {
00713    MULTI_TEXCOORD2( target, (GLfloat) v[0], (GLfloat) v[1] );
00714 }
00715 
00716 static void GLAPIENTRY
00717 loopback_MultiTexCoord2sARB(GLenum target, GLshort s, GLshort t)
00718 {
00719    MULTI_TEXCOORD2( target, (GLfloat) s, (GLfloat) t );
00720 }
00721 
00722 static void GLAPIENTRY
00723 loopback_MultiTexCoord2svARB(GLenum target, const GLshort *v)
00724 {
00725    MULTI_TEXCOORD2( target, (GLfloat) v[0], (GLfloat) v[1] );
00726 }
00727 
00728 static void GLAPIENTRY
00729 loopback_MultiTexCoord3dARB(GLenum target, GLdouble s, GLdouble t, GLdouble r)
00730 {
00731    MULTI_TEXCOORD3( target, (GLfloat) s, (GLfloat) t, (GLfloat) r );
00732 }
00733 
00734 static void GLAPIENTRY
00735 loopback_MultiTexCoord3dvARB(GLenum target, const GLdouble *v)
00736 {
00737    MULTI_TEXCOORD3( target, (GLfloat) v[0], (GLfloat) v[1], (GLfloat) v[2] );
00738 }
00739 
00740 static void GLAPIENTRY
00741 loopback_MultiTexCoord3iARB(GLenum target, GLint s, GLint t, GLint r)
00742 {
00743    MULTI_TEXCOORD3( target, (GLfloat) s, (GLfloat) t, (GLfloat) r );
00744 }
00745 
00746 static void GLAPIENTRY
00747 loopback_MultiTexCoord3ivARB(GLenum target, const GLint *v)
00748 {
00749    MULTI_TEXCOORD3( target, (GLfloat) v[0], (GLfloat) v[1], (GLfloat) v[2] );
00750 }
00751 
00752 static void GLAPIENTRY
00753 loopback_MultiTexCoord3sARB(GLenum target, GLshort s, GLshort t, GLshort r)
00754 {
00755    MULTI_TEXCOORD3( target, (GLfloat) s, (GLfloat) t, (GLfloat) r );
00756 }
00757 
00758 static void GLAPIENTRY
00759 loopback_MultiTexCoord3svARB(GLenum target, const GLshort *v)
00760 {
00761    MULTI_TEXCOORD3( target, (GLfloat) v[0], (GLfloat) v[1], (GLfloat) v[2] );
00762 }
00763 
00764 static void GLAPIENTRY
00765 loopback_MultiTexCoord4dARB(GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q)
00766 {
00767    MULTI_TEXCOORD4( target, (GLfloat) s, (GLfloat) t, 
00768             (GLfloat) r, (GLfloat) q );
00769 }
00770 
00771 static void GLAPIENTRY
00772 loopback_MultiTexCoord4dvARB(GLenum target, const GLdouble *v)
00773 {
00774    MULTI_TEXCOORD4( target, (GLfloat) v[0], (GLfloat) v[1], 
00775             (GLfloat) v[2], (GLfloat) v[3] );
00776 }
00777 
00778 static void GLAPIENTRY
00779 loopback_MultiTexCoord4iARB(GLenum target, GLint s, GLint t, GLint r, GLint q)
00780 {
00781    MULTI_TEXCOORD4( target, (GLfloat) s, (GLfloat) t,
00782             (GLfloat) r, (GLfloat) q );
00783 }
00784 
00785 static void GLAPIENTRY
00786 loopback_MultiTexCoord4ivARB(GLenum target, const GLint *v)
00787 {
00788    MULTI_TEXCOORD4( target, (GLfloat) v[0], (GLfloat) v[1],
00789             (GLfloat) v[2], (GLfloat) v[3] );
00790 }
00791 
00792 static void GLAPIENTRY
00793 loopback_MultiTexCoord4sARB(GLenum target, GLshort s, GLshort t, GLshort r, GLshort q)
00794 {
00795    MULTI_TEXCOORD4( target, (GLfloat) s, (GLfloat) t,
00796             (GLfloat) r, (GLfloat) q );
00797 }
00798 
00799 static void GLAPIENTRY
00800 loopback_MultiTexCoord4svARB(GLenum target, const GLshort *v)
00801 {
00802    MULTI_TEXCOORD4( target, (GLfloat) v[0], (GLfloat) v[1],
00803             (GLfloat) v[2], (GLfloat) v[3] );
00804 }
00805 
00806 static void GLAPIENTRY
00807 loopback_EvalCoord2dv( const GLdouble *u )
00808 {
00809    EVALCOORD2( (GLfloat) u[0], (GLfloat) u[1] );
00810 }
00811 
00812 static void GLAPIENTRY
00813 loopback_EvalCoord2fv( const GLfloat *u )
00814 {
00815    EVALCOORD2( u[0], u[1] );
00816 }
00817 
00818 static void GLAPIENTRY
00819 loopback_EvalCoord2d( GLdouble u, GLdouble v )
00820 {
00821    EVALCOORD2( (GLfloat) u, (GLfloat) v );
00822 }
00823 
00824 static void GLAPIENTRY
00825 loopback_EvalCoord1dv( const GLdouble *u )
00826 {
00827    EVALCOORD1( (GLfloat) *u );
00828 }
00829 
00830 static void GLAPIENTRY
00831 loopback_EvalCoord1fv( const GLfloat *u )
00832 {
00833    EVALCOORD1( (GLfloat) *u );
00834 }
00835 
00836 static void GLAPIENTRY
00837 loopback_EvalCoord1d( GLdouble u )
00838 {
00839    EVALCOORD1( (GLfloat) u );
00840 }
00841 
00842 static void GLAPIENTRY
00843 loopback_Materialf( GLenum face, GLenum pname, GLfloat param )
00844 {
00845    GLfloat fparam[4];
00846    fparam[0] = param;
00847    MATERIALFV( face, pname, fparam );
00848 }
00849 
00850 static void GLAPIENTRY
00851 loopback_Materiali(GLenum face, GLenum pname, GLint param )
00852 {
00853    GLfloat p = (GLfloat) param;
00854    MATERIALFV(face, pname, &p);
00855 }
00856 
00857 static void GLAPIENTRY
00858 loopback_Materialiv(GLenum face, GLenum pname, const GLint *params )
00859 {
00860    GLfloat fparam[4];
00861    switch (pname) {
00862    case GL_AMBIENT:
00863    case GL_DIFFUSE:
00864    case GL_SPECULAR:
00865    case GL_EMISSION:
00866    case GL_AMBIENT_AND_DIFFUSE:
00867       fparam[0] = INT_TO_FLOAT( params[0] );
00868       fparam[1] = INT_TO_FLOAT( params[1] );
00869       fparam[2] = INT_TO_FLOAT( params[2] );
00870       fparam[3] = INT_TO_FLOAT( params[3] );
00871       break;
00872    case GL_SHININESS:
00873       fparam[0] = (GLfloat) params[0];
00874       break;
00875    case GL_COLOR_INDEXES:
00876       fparam[0] = (GLfloat) params[0];
00877       fparam[1] = (GLfloat) params[1];
00878       fparam[2] = (GLfloat) params[2];
00879       break;
00880    default:
00881       ;
00882    }
00883    MATERIALFV(face, pname, fparam);
00884 }
00885 
00886 
00887 static void GLAPIENTRY
00888 loopback_Rectd(GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2)
00889 {
00890    RECTF((GLfloat) x1, (GLfloat) y1, (GLfloat) x2, (GLfloat) y2);
00891 }
00892 
00893 static void GLAPIENTRY
00894 loopback_Rectdv(const GLdouble *v1, const GLdouble *v2)
00895 {
00896    RECTF((GLfloat) v1[0], (GLfloat) v1[1], (GLfloat) v2[0], (GLfloat) v2[1]);
00897 }
00898 
00899 static void GLAPIENTRY
00900 loopback_Rectfv(const GLfloat *v1, const GLfloat *v2)
00901 {
00902    RECTF(v1[0], v1[1], v2[0], v2[1]);
00903 }
00904 
00905 static void GLAPIENTRY
00906 loopback_Recti(GLint x1, GLint y1, GLint x2, GLint y2)
00907 {
00908    RECTF((GLfloat) x1, (GLfloat) y1, (GLfloat) x2, (GLfloat) y2);
00909 }
00910 
00911 static void GLAPIENTRY
00912 loopback_Rectiv(const GLint *v1, const GLint *v2)
00913 {
00914    RECTF((GLfloat) v1[0], (GLfloat) v1[1], (GLfloat) v2[0], (GLfloat) v2[1]);
00915 }
00916 
00917 static void GLAPIENTRY
00918 loopback_Rects(GLshort x1, GLshort y1, GLshort x2, GLshort y2)
00919 {
00920    RECTF((GLfloat) x1, (GLfloat) y1, (GLfloat) x2, (GLfloat) y2);
00921 }
00922 
00923 static void GLAPIENTRY
00924 loopback_Rectsv(const GLshort *v1, const GLshort *v2)
00925 {
00926    RECTF((GLfloat) v1[0], (GLfloat) v1[1], (GLfloat) v2[0], (GLfloat) v2[1]);
00927 }
00928 
00929 static void GLAPIENTRY
00930 loopback_SecondaryColor3bEXT_f( GLbyte red, GLbyte green, GLbyte blue )
00931 {
00932    SECONDARYCOLORF( BYTE_TO_FLOAT(red),
00933             BYTE_TO_FLOAT(green),
00934             BYTE_TO_FLOAT(blue) );
00935 }
00936 
00937 static void GLAPIENTRY
00938 loopback_SecondaryColor3dEXT_f( GLdouble red, GLdouble green, GLdouble blue )
00939 {
00940    SECONDARYCOLORF( (GLfloat) red, (GLfloat) green, (GLfloat) blue );
00941 }
00942 
00943 static void GLAPIENTRY
00944 loopback_SecondaryColor3iEXT_f( GLint red, GLint green, GLint blue )
00945 {
00946    SECONDARYCOLORF( INT_TO_FLOAT(red),
00947             INT_TO_FLOAT(green),
00948             INT_TO_FLOAT(blue));
00949 }
00950 
00951 static void GLAPIENTRY
00952 loopback_SecondaryColor3sEXT_f( GLshort red, GLshort green, GLshort blue )
00953 {
00954    SECONDARYCOLORF(SHORT_TO_FLOAT(red),
00955                    SHORT_TO_FLOAT(green),
00956                    SHORT_TO_FLOAT(blue));
00957 }
00958 
00959 static void GLAPIENTRY
00960 loopback_SecondaryColor3uiEXT_f( GLuint red, GLuint green, GLuint blue )
00961 {
00962    SECONDARYCOLORF(UINT_TO_FLOAT(red),
00963                    UINT_TO_FLOAT(green),
00964                    UINT_TO_FLOAT(blue));
00965 }
00966 
00967 static void GLAPIENTRY
00968 loopback_SecondaryColor3usEXT_f( GLushort red, GLushort green, GLushort blue )
00969 {
00970    SECONDARYCOLORF(USHORT_TO_FLOAT(red),
00971                    USHORT_TO_FLOAT(green),
00972                    USHORT_TO_FLOAT(blue));
00973 }
00974 
00975 static void GLAPIENTRY
00976 loopback_SecondaryColor3ubEXT_f( GLubyte red, GLubyte green, GLubyte blue )
00977 {
00978    SECONDARYCOLORF(UBYTE_TO_FLOAT(red),
00979                    UBYTE_TO_FLOAT(green),
00980                    UBYTE_TO_FLOAT(blue));
00981 }
00982 
00983 static void GLAPIENTRY
00984 loopback_SecondaryColor3bvEXT_f( const GLbyte *v )
00985 {
00986    SECONDARYCOLORF(BYTE_TO_FLOAT(v[0]),
00987                    BYTE_TO_FLOAT(v[1]),
00988                    BYTE_TO_FLOAT(v[2]));
00989 }
00990 
00991 static void GLAPIENTRY
00992 loopback_SecondaryColor3dvEXT_f( const GLdouble *v )
00993 {
00994    SECONDARYCOLORF( (GLfloat) v[0], (GLfloat) v[1], (GLfloat) v[2] );
00995 }
00996 static void GLAPIENTRY
00997 loopback_SecondaryColor3ivEXT_f( const GLint *v )
00998 {
00999    SECONDARYCOLORF(INT_TO_FLOAT(v[0]),
01000                    INT_TO_FLOAT(v[1]),
01001                    INT_TO_FLOAT(v[2]));
01002 }
01003 
01004 static void GLAPIENTRY
01005 loopback_SecondaryColor3svEXT_f( const GLshort *v )
01006 {
01007    SECONDARYCOLORF(SHORT_TO_FLOAT(v[0]),
01008                    SHORT_TO_FLOAT(v[1]),
01009                    SHORT_TO_FLOAT(v[2]));
01010 }
01011 
01012 static void GLAPIENTRY
01013 loopback_SecondaryColor3uivEXT_f( const GLuint *v )
01014 {
01015    SECONDARYCOLORF(UINT_TO_FLOAT(v[0]),
01016                    UINT_TO_FLOAT(v[1]),
01017                    UINT_TO_FLOAT(v[2]));
01018 }
01019 
01020 static void GLAPIENTRY
01021 loopback_SecondaryColor3usvEXT_f( const GLushort *v )
01022 {
01023    SECONDARYCOLORF(USHORT_TO_FLOAT(v[0]),
01024                    USHORT_TO_FLOAT(v[1]),
01025                    USHORT_TO_FLOAT(v[2]));
01026 }
01027 
01028 static void GLAPIENTRY
01029 loopback_SecondaryColor3ubvEXT_f( const GLubyte *v )
01030 {
01031    SECONDARYCOLORF(UBYTE_TO_FLOAT(v[0]),
01032                    UBYTE_TO_FLOAT(v[1]),
01033                    UBYTE_TO_FLOAT(v[2]));
01034 }
01035 
01036 
01037 /*
01038  * GL_NV_vertex_program:
01039  * Always loop-back to one of the VertexAttrib[1234]f[v]NV functions.
01040  */
01041 
01042 static void GLAPIENTRY
01043 loopback_VertexAttrib1sNV(GLuint index, GLshort x)
01044 {
01045    ATTRIB1NV(index, (GLfloat) x);
01046 }
01047 
01048 static void GLAPIENTRY
01049 loopback_VertexAttrib1dNV(GLuint index, GLdouble x)
01050 {
01051    ATTRIB1NV(index, (GLfloat) x);
01052 }
01053 
01054 static void GLAPIENTRY
01055 loopback_VertexAttrib2sNV(GLuint index, GLshort x, GLshort y)
01056 {
01057    ATTRIB2NV(index, (GLfloat) x, y);
01058 }
01059 
01060 static void GLAPIENTRY
01061 loopback_VertexAttrib2dNV(GLuint index, GLdouble x, GLdouble y)
01062 {
01063    ATTRIB2NV(index, (GLfloat) x, (GLfloat) y);
01064 }
01065 
01066 static void GLAPIENTRY
01067 loopback_VertexAttrib3sNV(GLuint index, GLshort x, GLshort y, GLshort z)
01068 {
01069    ATTRIB3NV(index, (GLfloat) x, (GLfloat) y, (GLfloat) z);
01070 }
01071 
01072 static void GLAPIENTRY
01073 loopback_VertexAttrib3dNV(GLuint index, GLdouble x, GLdouble y, GLdouble z)
01074 {
01075    ATTRIB4NV(index, (GLfloat) x, (GLfloat) y, (GLfloat) z, 1.0F);
01076 }
01077 
01078 static void GLAPIENTRY
01079 loopback_VertexAttrib4sNV(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w)
01080 {
01081    ATTRIB4NV(index, (GLfloat) x, (GLfloat) y, (GLfloat) z, (GLfloat) w);
01082 }
01083 
01084 static void GLAPIENTRY
01085 loopback_VertexAttrib4dNV(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
01086 {
01087    ATTRIB4NV(index, (GLfloat) x, (GLfloat) y, (GLfloat) z, (GLfloat) w);
01088 }
01089 
01090 static void GLAPIENTRY
01091 loopback_VertexAttrib4ubNV(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w)
01092 {
01093    ATTRIB4NV(index, UBYTE_TO_FLOAT(x), UBYTE_TO_FLOAT(y),
01094     UBYTE_TO_FLOAT(z), UBYTE_TO_FLOAT(w));
01095 }
01096 
01097 static void GLAPIENTRY
01098 loopback_VertexAttrib1svNV(GLuint index, const GLshort *v)
01099 {
01100    ATTRIB1NV(index, (GLfloat) v[0]);
01101 }
01102 
01103 static void GLAPIENTRY
01104 loopback_VertexAttrib1dvNV(GLuint index, const GLdouble *v)
01105 {
01106    ATTRIB1NV(index, (GLfloat) v[0]);
01107 }
01108 
01109 static void GLAPIENTRY
01110 loopback_VertexAttrib2svNV(GLuint index, const GLshort *v)
01111 {
01112    ATTRIB2NV(index, (GLfloat) v[0], (GLfloat) v[1]);
01113 }
01114 
01115 static void GLAPIENTRY
01116 loopback_VertexAttrib2dvNV(GLuint index, const GLdouble *v)
01117 {
01118    ATTRIB2NV(index, (GLfloat) v[0], (GLfloat) v[1]);
01119 }
01120 
01121 static void GLAPIENTRY
01122 loopback_VertexAttrib3svNV(GLuint index, const GLshort *v)
01123 {
01124    ATTRIB3NV(index, (GLfloat) v[0], (GLfloat) v[1], (GLfloat) v[2]);
01125 }
01126 
01127 static void GLAPIENTRY
01128 loopback_VertexAttrib3dvNV(GLuint index, const GLdouble *v)
01129 {
01130    ATTRIB3NV(index, (GLfloat) v[0], (GLfloat) v[1], (GLfloat) v[2]);
01131 }
01132 
01133 static void GLAPIENTRY
01134 loopback_VertexAttrib4svNV(GLuint index, const GLshort *v)
01135 {
01136    ATTRIB4NV(index, (GLfloat) v[0], (GLfloat) v[1], (GLfloat) v[2], 
01137       (GLfloat)v[3]);
01138 }
01139 
01140 static void GLAPIENTRY
01141 loopback_VertexAttrib4dvNV(GLuint index, const GLdouble *v)
01142 {
01143    ATTRIB4NV(index, (GLfloat) v[0], (GLfloat) v[1], (GLfloat) v[2], (GLfloat) v[3]);
01144 }
01145 
01146 static void GLAPIENTRY
01147 loopback_VertexAttrib4ubvNV(GLuint index, const GLubyte *v)
01148 {
01149    ATTRIB4NV(index, UBYTE_TO_FLOAT(v[0]), UBYTE_TO_FLOAT(v[1]),
01150           UBYTE_TO_FLOAT(v[2]), UBYTE_TO_FLOAT(v[3]));
01151 }
01152 
01153 
01154 static void GLAPIENTRY
01155 loopback_VertexAttribs1svNV(GLuint index, GLsizei n, const GLshort *v)
01156 {
01157    GLint i;
01158    for (i = n - 1; i >= 0; i--)
01159       loopback_VertexAttrib1svNV(index + i, v + i);
01160 }
01161 
01162 static void GLAPIENTRY
01163 loopback_VertexAttribs1fvNV(GLuint index, GLsizei n, const GLfloat *v)
01164 {
01165    GLint i;
01166    for (i = n - 1; i >= 0; i--)
01167       ATTRIB1NV(index + i, v[i]);
01168 }
01169 
01170 static void GLAPIENTRY
01171 loopback_VertexAttribs1dvNV(GLuint index, GLsizei n, const GLdouble *v)
01172 {
01173    GLint i;
01174    for (i = n - 1; i >= 0; i--)
01175       loopback_VertexAttrib1dvNV(index + i, v + i);
01176 }
01177 
01178 static void GLAPIENTRY
01179 loopback_VertexAttribs2svNV(GLuint index, GLsizei n, const GLshort *v)
01180 {
01181    GLint i;
01182    for (i = n - 1; i >= 0; i--)
01183       loopback_VertexAttrib2svNV(index + i, v + 2 * i);
01184 }
01185 
01186 static void GLAPIENTRY
01187 loopback_VertexAttribs2fvNV(GLuint index, GLsizei n, const GLfloat *v)
01188 {
01189    GLint i;
01190    for (i = n - 1; i >= 0; i--)
01191       ATTRIB2NV(index + i, v[2 * i], v[2 * i + 1]);
01192 }
01193 
01194 static void GLAPIENTRY
01195 loopback_VertexAttribs2dvNV(GLuint index, GLsizei n, const GLdouble *v)
01196 {
01197    GLint i;
01198    for (i = n - 1; i >= 0; i--)
01199       loopback_VertexAttrib2dvNV(index + i, v + 2 * i);
01200 }
01201 
01202 static void GLAPIENTRY
01203 loopback_VertexAttribs3svNV(GLuint index, GLsizei n, const GLshort *v)
01204 {
01205    GLint i;
01206    for (i = n - 1; i >= 0; i--)
01207       loopback_VertexAttrib3svNV(index + i, v + 3 * i);
01208 }
01209 
01210 static void GLAPIENTRY
01211 loopback_VertexAttribs3fvNV(GLuint index, GLsizei n, const GLfloat *v)
01212 {
01213    GLint i;
01214    for (i = n - 1; i >= 0; i--)
01215       ATTRIB3NV(index + i, v[3 * i], v[3 * i + 1], v[3 * i + 2]);
01216 }
01217 
01218 static void GLAPIENTRY
01219 loopback_VertexAttribs3dvNV(GLuint index, GLsizei n, const GLdouble *v)
01220 {
01221    GLint i;
01222    for (i = n - 1; i >= 0; i--)
01223       loopback_VertexAttrib3dvNV(index + i, v + 3 * i);
01224 }
01225 
01226 static void GLAPIENTRY
01227 loopback_VertexAttribs4svNV(GLuint index, GLsizei n, const GLshort *v)
01228 {
01229    GLint i;
01230    for (i = n - 1; i >= 0; i--)
01231       loopback_VertexAttrib4svNV(index + i, v + 4 * i);
01232 }
01233 
01234 static void GLAPIENTRY
01235 loopback_VertexAttribs4fvNV(GLuint index, GLsizei n, const GLfloat *v)
01236 {
01237    GLint i;
01238    for (i = n - 1; i >= 0; i--)
01239       ATTRIB4NV(index + i, v[4 * i], v[4 * i + 1], v[4 * i + 2], v[4 * i + 3]);
01240 }
01241 
01242 static void GLAPIENTRY
01243 loopback_VertexAttribs4dvNV(GLuint index, GLsizei n, const GLdouble *v)
01244 {
01245    GLint i;
01246    for (i = n - 1; i >= 0; i--)
01247       loopback_VertexAttrib4dvNV(index + i, v + 4 * i);
01248 }
01249 
01250 static void GLAPIENTRY
01251 loopback_VertexAttribs4ubvNV(GLuint index, GLsizei n, const GLubyte *v)
01252 {
01253    GLint i;
01254    for (i = n - 1; i >= 0; i--)
01255       loopback_VertexAttrib4ubvNV(index + i, v + 4 * i);
01256 }
01257 
01258 
01259 /*
01260  * GL_ARB_vertex_program
01261  * Always loop-back to one of the VertexAttrib[1234]f[v]ARB functions.
01262  */
01263 
01264 static void GLAPIENTRY
01265 loopback_VertexAttrib1sARB(GLuint index, GLshort x)
01266 {
01267    ATTRIB1ARB(index, (GLfloat) x);
01268 }
01269 
01270 static void GLAPIENTRY
01271 loopback_VertexAttrib1dARB(GLuint index, GLdouble x)
01272 {
01273    ATTRIB1ARB(index, (GLfloat) x);
01274 }
01275 
01276 static void GLAPIENTRY
01277 loopback_VertexAttrib2sARB(GLuint index, GLshort x, GLshort y)
01278 {
01279    ATTRIB2ARB(index, (GLfloat) x, y);
01280 }
01281 
01282 static void GLAPIENTRY
01283 loopback_VertexAttrib2dARB(GLuint index, GLdouble x, GLdouble y)
01284 {
01285    ATTRIB2ARB(index, (GLfloat) x, (GLfloat) y);
01286 }
01287 
01288 static void GLAPIENTRY
01289 loopback_VertexAttrib3sARB(GLuint index, GLshort x, GLshort y, GLshort z)
01290 {
01291    ATTRIB3ARB(index, (GLfloat) x, (GLfloat) y, (GLfloat) z);
01292 }
01293 
01294 static void GLAPIENTRY
01295 loopback_VertexAttrib3dARB(GLuint index, GLdouble x, GLdouble y, GLdouble z)
01296 {
01297    ATTRIB4ARB(index, (GLfloat) x, (GLfloat) y, (GLfloat) z, 1.0F);
01298 }
01299 
01300 static void GLAPIENTRY
01301 loopback_VertexAttrib4sARB(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w)
01302 {
01303    ATTRIB4ARB(index, (GLfloat) x, (GLfloat) y, (GLfloat) z, (GLfloat) w);
01304 }
01305 
01306 static void GLAPIENTRY
01307 loopback_VertexAttrib4dARB(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
01308 {
01309    ATTRIB4ARB(index, (GLfloat) x, (GLfloat) y, (GLfloat) z, (GLfloat) w);
01310 }
01311 
01312 static void GLAPIENTRY
01313 loopback_VertexAttrib1svARB(GLuint index, const GLshort *v)
01314 {
01315    ATTRIB1ARB(index, (GLfloat) v[0]);
01316 }
01317 
01318 static void GLAPIENTRY
01319 loopback_VertexAttrib1dvARB(GLuint index, const GLdouble *v)
01320 {
01321    ATTRIB1ARB(index, (GLfloat) v[0]);
01322 }
01323 
01324 static void GLAPIENTRY
01325 loopback_VertexAttrib2svARB(GLuint index, const GLshort *v)
01326 {
01327    ATTRIB2ARB(index, (GLfloat) v[0], (GLfloat) v[1]);
01328 }
01329 
01330 static void GLAPIENTRY
01331 loopback_VertexAttrib2dvARB(GLuint index, const GLdouble *v)
01332 {
01333    ATTRIB2ARB(index, (GLfloat) v[0], (GLfloat) v[1]);
01334 }
01335 
01336 static void GLAPIENTRY
01337 loopback_VertexAttrib3svARB(GLuint index, const GLshort *v)
01338 {
01339    ATTRIB3ARB(index, (GLfloat) v[0], (GLfloat) v[1], (GLfloat) v[2]);
01340 }
01341 
01342 static void GLAPIENTRY
01343 loopback_VertexAttrib3dvARB(GLuint index, const GLdouble *v)
01344 {
01345    ATTRIB3ARB(index, (GLfloat) v[0], (GLfloat) v[1], (GLfloat) v[2]);
01346 }
01347 
01348 static void GLAPIENTRY
01349 loopback_VertexAttrib4svARB(GLuint index, const GLshort *v)
01350 {
01351    ATTRIB4ARB(index, (GLfloat) v[0], (GLfloat) v[1], (GLfloat) v[2], 
01352       (GLfloat)v[3]);
01353 }
01354 
01355 static void GLAPIENTRY
01356 loopback_VertexAttrib4dvARB(GLuint index, const GLdouble *v)
01357 {
01358    ATTRIB4ARB(index, (GLfloat) v[0], (GLfloat) v[1], (GLfloat) v[2], (GLfloat) v[3]);
01359 }
01360 
01361 static void GLAPIENTRY
01362 loopback_VertexAttrib4bvARB(GLuint index, const GLbyte * v)
01363 {
01364    ATTRIB4ARB(index, (GLfloat) v[0], (GLfloat) v[1], (GLfloat) v[2], (GLfloat) v[3]);
01365 }
01366 
01367 static void GLAPIENTRY
01368 loopback_VertexAttrib4ivARB(GLuint index, const GLint * v)
01369 {
01370    ATTRIB4ARB(index, (GLfloat) v[0], (GLfloat) v[1], (GLfloat) v[2], (GLfloat) v[3]);
01371 }
01372 
01373 static void GLAPIENTRY
01374 loopback_VertexAttrib4ubvARB(GLuint index, const GLubyte * v)
01375 {
01376    ATTRIB4ARB(index, (GLfloat) v[0], (GLfloat) v[1], (GLfloat) v[2], (GLfloat) v[3]);
01377 }
01378 
01379 static void GLAPIENTRY
01380 loopback_VertexAttrib4usvARB(GLuint index, const GLushort * v)
01381 {
01382    ATTRIB4ARB(index, (GLfloat) v[0], (GLfloat) v[1], (GLfloat) v[2], (GLfloat) v[3]);
01383 }
01384 
01385 static void GLAPIENTRY
01386 loopback_VertexAttrib4uivARB(GLuint index, const GLuint * v)
01387 {
01388    ATTRIB4ARB(index, (GLfloat) v[0], (GLfloat) v[1], (GLfloat) v[2], (GLfloat) v[3]);
01389 }
01390 
01391 static void GLAPIENTRY
01392 loopback_VertexAttrib4NbvARB(GLuint index, const GLbyte * v)
01393 {
01394    ATTRIB4ARB(index, BYTE_TO_FLOAT(v[0]), BYTE_TO_FLOAT(v[1]),
01395           BYTE_TO_FLOAT(v[2]), BYTE_TO_FLOAT(v[3]));
01396 }
01397 
01398 static void GLAPIENTRY
01399 loopback_VertexAttrib4NsvARB(GLuint index, const GLshort * v)
01400 {
01401    ATTRIB4ARB(index, SHORT_TO_FLOAT(v[0]), SHORT_TO_FLOAT(v[1]),
01402           SHORT_TO_FLOAT(v[2]), SHORT_TO_FLOAT(v[3]));
01403 }
01404 
01405 static void GLAPIENTRY
01406 loopback_VertexAttrib4NivARB(GLuint index, const GLint * v)
01407 {
01408    ATTRIB4ARB(index, INT_TO_FLOAT(v[0]), INT_TO_FLOAT(v[1]),
01409           INT_TO_FLOAT(v[2]), INT_TO_FLOAT(v[3]));
01410 }
01411 
01412 static void GLAPIENTRY
01413 loopback_VertexAttrib4NubARB(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w)
01414 {
01415    ATTRIB4ARB(index, UBYTE_TO_FLOAT(x), UBYTE_TO_FLOAT(y),
01416               UBYTE_TO_FLOAT(z), UBYTE_TO_FLOAT(w));
01417 }
01418 
01419 static void GLAPIENTRY
01420 loopback_VertexAttrib4NubvARB(GLuint index, const GLubyte * v)
01421 {
01422    ATTRIB4ARB(index, UBYTE_TO_FLOAT(v[0]), UBYTE_TO_FLOAT(v[1]),
01423           UBYTE_TO_FLOAT(v[2]), UBYTE_TO_FLOAT(v[3]));
01424 }
01425 
01426 static void GLAPIENTRY
01427 loopback_VertexAttrib4NusvARB(GLuint index, const GLushort * v)
01428 {
01429    ATTRIB4ARB(index, USHORT_TO_FLOAT(v[0]), USHORT_TO_FLOAT(v[1]),
01430           USHORT_TO_FLOAT(v[2]), USHORT_TO_FLOAT(v[3]));
01431 }
01432 
01433 static void GLAPIENTRY
01434 loopback_VertexAttrib4NuivARB(GLuint index, const GLuint * v)
01435 {
01436    ATTRIB4ARB(index, UINT_TO_FLOAT(v[0]), UINT_TO_FLOAT(v[1]),
01437           UINT_TO_FLOAT(v[2]), UINT_TO_FLOAT(v[3]));
01438 }
01439 
01440 
01441 
01442 
01443 /*
01444  * This code never registers handlers for any of the entry points
01445  * listed in vtxfmt.h.
01446  */
01447 void
01448 _mesa_loopback_init_api_table( struct _glapi_table *dest )
01449 {
01450    SET_Color3b(dest, loopback_Color3b_f);
01451    SET_Color3d(dest, loopback_Color3d_f);
01452    SET_Color3i(dest, loopback_Color3i_f);
01453    SET_Color3s(dest, loopback_Color3s_f);
01454    SET_Color3ui(dest, loopback_Color3ui_f);
01455    SET_Color3us(dest, loopback_Color3us_f);
01456    SET_Color3ub(dest, loopback_Color3ub_f);
01457    SET_Color4b(dest, loopback_Color4b_f);
01458    SET_Color4d(dest, loopback_Color4d_f);
01459    SET_Color4i(dest, loopback_Color4i_f);
01460    SET_Color4s(dest, loopback_Color4s_f);
01461    SET_Color4ui(dest, loopback_Color4ui_f);
01462    SET_Color4us(dest, loopback_Color4us_f);
01463    SET_Color4ub(dest, loopback_Color4ub_f);
01464    SET_Color3bv(dest, loopback_Color3bv_f);
01465    SET_Color3dv(dest, loopback_Color3dv_f);
01466    SET_Color3iv(dest, loopback_Color3iv_f);
01467    SET_Color3sv(dest, loopback_Color3sv_f);
01468    SET_Color3uiv(dest, loopback_Color3uiv_f);
01469    SET_Color3usv(dest, loopback_Color3usv_f);
01470    SET_Color3ubv(dest, loopback_Color3ubv_f);
01471    SET_Color4bv(dest, loopback_Color4bv_f);
01472    SET_Color4dv(dest, loopback_Color4dv_f);
01473    SET_Color4iv(dest, loopback_Color4iv_f);
01474    SET_Color4sv(dest, loopback_Color4sv_f);
01475    SET_Color4uiv(dest, loopback_Color4uiv_f);
01476    SET_Color4usv(dest, loopback_Color4usv_f);
01477    SET_Color4ubv(dest, loopback_Color4ubv_f);
01478 
01479    SET_SecondaryColor3bEXT(dest, loopback_SecondaryColor3bEXT_f);
01480    SET_SecondaryColor3dEXT(dest, loopback_SecondaryColor3dEXT_f);
01481    SET_SecondaryColor3iEXT(dest, loopback_SecondaryColor3iEXT_f);
01482    SET_SecondaryColor3sEXT(dest, loopback_SecondaryColor3sEXT_f);
01483    SET_SecondaryColor3uiEXT(dest, loopback_SecondaryColor3uiEXT_f);
01484    SET_SecondaryColor3usEXT(dest, loopback_SecondaryColor3usEXT_f);
01485    SET_SecondaryColor3ubEXT(dest, loopback_SecondaryColor3ubEXT_f);
01486    SET_SecondaryColor3bvEXT(dest, loopback_SecondaryColor3bvEXT_f);
01487    SET_SecondaryColor3dvEXT(dest, loopback_SecondaryColor3dvEXT_f);
01488    SET_SecondaryColor3ivEXT(dest, loopback_SecondaryColor3ivEXT_f);
01489    SET_SecondaryColor3svEXT(dest, loopback_SecondaryColor3svEXT_f);
01490    SET_SecondaryColor3uivEXT(dest, loopback_SecondaryColor3uivEXT_f);
01491    SET_SecondaryColor3usvEXT(dest, loopback_SecondaryColor3usvEXT_f);
01492    SET_SecondaryColor3ubvEXT(dest, loopback_SecondaryColor3ubvEXT_f);
01493       
01494    SET_EdgeFlagv(dest, loopback_EdgeFlagv);
01495 
01496    SET_Indexd(dest, loopback_Indexd);
01497    SET_Indexi(dest, loopback_Indexi);
01498    SET_Indexs(dest, loopback_Indexs);
01499    SET_Indexub(dest, loopback_Indexub);
01500    SET_Indexdv(dest, loopback_Indexdv);
01501    SET_Indexiv(dest, loopback_Indexiv);
01502    SET_Indexsv(dest, loopback_Indexsv);
01503    SET_Indexubv(dest, loopback_Indexubv);
01504    SET_Normal3b(dest, loopback_Normal3b);
01505    SET_Normal3d(dest, loopback_Normal3d);
01506    SET_Normal3i(dest, loopback_Normal3i);
01507    SET_Normal3s(dest, loopback_Normal3s);
01508    SET_Normal3bv(dest, loopback_Normal3bv);
01509    SET_Normal3dv(dest, loopback_Normal3dv);
01510    SET_Normal3iv(dest, loopback_Normal3iv);
01511    SET_Normal3sv(dest, loopback_Normal3sv);
01512    SET_TexCoord1d(dest, loopback_TexCoord1d);
01513    SET_TexCoord1i(dest, loopback_TexCoord1i);
01514    SET_TexCoord1s(dest, loopback_TexCoord1s);
01515    SET_TexCoord2d(dest, loopback_TexCoord2d);
01516    SET_TexCoord2s(dest, loopback_TexCoord2s);
01517    SET_TexCoord2i(dest, loopback_TexCoord2i);
01518    SET_TexCoord3d(dest, loopback_TexCoord3d);
01519    SET_TexCoord3i(dest, loopback_TexCoord3i);
01520    SET_TexCoord3s(dest, loopback_TexCoord3s);
01521    SET_TexCoord4d(dest, loopback_TexCoord4d);
01522    SET_TexCoord4i(dest, loopback_TexCoord4i);
01523    SET_TexCoord4s(dest, loopback_TexCoord4s);
01524    SET_TexCoord1dv(dest, loopback_TexCoord1dv);
01525    SET_TexCoord1iv(dest, loopback_TexCoord1iv);
01526    SET_TexCoord1sv(dest, loopback_TexCoord1sv);
01527    SET_TexCoord2dv(dest, loopback_TexCoord2dv);
01528    SET_TexCoord2iv(dest, loopback_TexCoord2iv);
01529    SET_TexCoord2sv(dest, loopback_TexCoord2sv);
01530    SET_TexCoord3dv(dest, loopback_TexCoord3dv);
01531    SET_TexCoord3iv(dest, loopback_TexCoord3iv);
01532    SET_TexCoord3sv(dest, loopback_TexCoord3sv);
01533    SET_TexCoord4dv(dest, loopback_TexCoord4dv);
01534    SET_TexCoord4iv(dest, loopback_TexCoord4iv);
01535    SET_TexCoord4sv(dest, loopback_TexCoord4sv);
01536    SET_Vertex2d(dest, loopback_Vertex2d);
01537    SET_Vertex2i(dest, loopback_Vertex2i);
01538    SET_Vertex2s(dest, loopback_Vertex2s);
01539    SET_Vertex3d(dest, loopback_Vertex3d);
01540    SET_Vertex3i(dest, loopback_Vertex3i);
01541    SET_Vertex3s(dest, loopback_Vertex3s);
01542    SET_Vertex4d(dest, loopback_Vertex4d);
01543    SET_Vertex4i(dest, loopback_Vertex4i);
01544    SET_Vertex4s(dest, loopback_Vertex4s);
01545    SET_Vertex2dv(dest, loopback_Vertex2dv);
01546    SET_Vertex2iv(dest, loopback_Vertex2iv);
01547    SET_Vertex2sv(dest, loopback_Vertex2sv);
01548    SET_Vertex3dv(dest, loopback_Vertex3dv);
01549    SET_Vertex3iv(dest, loopback_Vertex3iv);
01550    SET_Vertex3sv(dest, loopback_Vertex3sv);
01551    SET_Vertex4dv(dest, loopback_Vertex4dv);
01552    SET_Vertex4iv(dest, loopback_Vertex4iv);
01553    SET_Vertex4sv(dest, loopback_Vertex4sv);
01554    SET_MultiTexCoord1dARB(dest, loopback_MultiTexCoord1dARB);
01555    SET_MultiTexCoord1dvARB(dest, loopback_MultiTexCoord1dvARB);
01556    SET_MultiTexCoord1iARB(dest, loopback_MultiTexCoord1iARB);
01557    SET_MultiTexCoord1ivARB(dest, loopback_MultiTexCoord1ivARB);
01558    SET_MultiTexCoord1sARB(dest, loopback_MultiTexCoord1sARB);
01559    SET_MultiTexCoord1svARB(dest, loopback_MultiTexCoord1svARB);
01560    SET_MultiTexCoord2dARB(dest, loopback_MultiTexCoord2dARB);
01561    SET_MultiTexCoord2dvARB(dest, loopback_MultiTexCoord2dvARB);
01562    SET_MultiTexCoord2iARB(dest, loopback_MultiTexCoord2iARB);
01563    SET_MultiTexCoord2ivARB(dest, loopback_MultiTexCoord2ivARB);
01564    SET_MultiTexCoord2sARB(dest, loopback_MultiTexCoord2sARB);
01565    SET_MultiTexCoord2svARB(dest, loopback_MultiTexCoord2svARB);
01566    SET_MultiTexCoord3dARB(dest, loopback_MultiTexCoord3dARB);
01567    SET_MultiTexCoord3dvARB(dest, loopback_MultiTexCoord3dvARB);
01568    SET_MultiTexCoord3iARB(dest, loopback_MultiTexCoord3iARB);
01569    SET_MultiTexCoord3ivARB(dest, loopback_MultiTexCoord3ivARB);
01570    SET_MultiTexCoord3sARB(dest, loopback_MultiTexCoord3sARB);
01571    SET_MultiTexCoord3svARB(dest, loopback_MultiTexCoord3svARB);
01572    SET_MultiTexCoord4dARB(dest, loopback_MultiTexCoord4dARB);
01573    SET_MultiTexCoord4dvARB(dest, loopback_MultiTexCoord4dvARB);
01574    SET_MultiTexCoord4iARB(dest, loopback_MultiTexCoord4iARB);
01575    SET_MultiTexCoord4ivARB(dest, loopback_MultiTexCoord4ivARB);
01576    SET_MultiTexCoord4sARB(dest, loopback_MultiTexCoord4sARB);
01577    SET_MultiTexCoord4svARB(dest, loopback_MultiTexCoord4svARB);
01578    SET_EvalCoord2dv(dest, loopback_EvalCoord2dv);
01579    SET_EvalCoord2fv(dest, loopback_EvalCoord2fv);
01580    SET_EvalCoord2d(dest, loopback_EvalCoord2d);
01581    SET_EvalCoord1dv(dest, loopback_EvalCoord1dv);
01582    SET_EvalCoord1fv(dest, loopback_EvalCoord1fv);
01583    SET_EvalCoord1d(dest, loopback_EvalCoord1d);
01584    SET_Materialf(dest, loopback_Materialf);
01585    SET_Materiali(dest, loopback_Materiali);
01586    SET_Materialiv(dest, loopback_Materialiv);
01587    SET_Rectd(dest, loopback_Rectd);
01588    SET_Rectdv(dest, loopback_Rectdv);
01589    SET_Rectfv(dest, loopback_Rectfv);
01590    SET_Recti(dest, loopback_Recti);
01591    SET_Rectiv(dest, loopback_Rectiv);
01592    SET_Rects(dest, loopback_Rects);
01593    SET_Rectsv(dest, loopback_Rectsv);
01594    SET_FogCoorddEXT(dest, loopback_FogCoorddEXT);
01595    SET_FogCoorddvEXT(dest, loopback_FogCoorddvEXT);
01596 
01597    SET_VertexAttrib1sNV(dest, loopback_VertexAttrib1sNV);
01598    SET_VertexAttrib1dNV(dest, loopback_VertexAttrib1dNV);
01599    SET_VertexAttrib2sNV(dest, loopback_VertexAttrib2sNV);
01600    SET_VertexAttrib2dNV(dest, loopback_VertexAttrib2dNV);
01601    SET_VertexAttrib3sNV(dest, loopback_VertexAttrib3sNV);
01602    SET_VertexAttrib3dNV(dest, loopback_VertexAttrib3dNV);
01603    SET_VertexAttrib4sNV(dest, loopback_VertexAttrib4sNV);
01604    SET_VertexAttrib4dNV(dest, loopback_VertexAttrib4dNV);
01605    SET_VertexAttrib4ubNV(dest, loopback_VertexAttrib4ubNV);
01606    SET_VertexAttrib1svNV(dest, loopback_VertexAttrib1svNV);
01607    SET_VertexAttrib1dvNV(dest, loopback_VertexAttrib1dvNV);
01608    SET_VertexAttrib2svNV(dest, loopback_VertexAttrib2svNV);
01609    SET_VertexAttrib2dvNV(dest, loopback_VertexAttrib2dvNV);
01610    SET_VertexAttrib3svNV(dest, loopback_VertexAttrib3svNV);
01611    SET_VertexAttrib3dvNV(dest, loopback_VertexAttrib3dvNV);
01612    SET_VertexAttrib4svNV(dest, loopback_VertexAttrib4svNV);
01613    SET_VertexAttrib4dvNV(dest, loopback_VertexAttrib4dvNV);
01614    SET_VertexAttrib4ubvNV(dest, loopback_VertexAttrib4ubvNV);
01615    SET_VertexAttribs1svNV(dest, loopback_VertexAttribs1svNV);
01616    SET_VertexAttribs1fvNV(dest, loopback_VertexAttribs1fvNV);
01617    SET_VertexAttribs1dvNV(dest, loopback_VertexAttribs1dvNV);
01618    SET_VertexAttribs2svNV(dest, loopback_VertexAttribs2svNV);
01619    SET_VertexAttribs2fvNV(dest, loopback_VertexAttribs2fvNV);
01620    SET_VertexAttribs2dvNV(dest, loopback_VertexAttribs2dvNV);
01621    SET_VertexAttribs3svNV(dest, loopback_VertexAttribs3svNV);
01622    SET_VertexAttribs3fvNV(dest, loopback_VertexAttribs3fvNV);
01623    SET_VertexAttribs3dvNV(dest, loopback_VertexAttribs3dvNV);
01624    SET_VertexAttribs4svNV(dest, loopback_VertexAttribs4svNV);
01625    SET_VertexAttribs4fvNV(dest, loopback_VertexAttribs4fvNV);
01626    SET_VertexAttribs4dvNV(dest, loopback_VertexAttribs4dvNV);
01627    SET_VertexAttribs4ubvNV(dest, loopback_VertexAttribs4ubvNV);
01628 
01629    SET_VertexAttrib1sARB(dest, loopback_VertexAttrib1sARB);
01630    SET_VertexAttrib1dARB(dest, loopback_VertexAttrib1dARB);
01631    SET_VertexAttrib2sARB(dest, loopback_VertexAttrib2sARB);
01632    SET_VertexAttrib2dARB(dest, loopback_VertexAttrib2dARB);
01633    SET_VertexAttrib3sARB(dest, loopback_VertexAttrib3sARB);
01634    SET_VertexAttrib3dARB(dest, loopback_VertexAttrib3dARB);
01635    SET_VertexAttrib4sARB(dest, loopback_VertexAttrib4sARB);
01636    SET_VertexAttrib4dARB(dest, loopback_VertexAttrib4dARB);
01637    SET_VertexAttrib1svARB(dest, loopback_VertexAttrib1svARB);
01638    SET_VertexAttrib1dvARB(dest, loopback_VertexAttrib1dvARB);
01639    SET_VertexAttrib2svARB(dest, loopback_VertexAttrib2svARB);
01640    SET_VertexAttrib2dvARB(dest, loopback_VertexAttrib2dvARB);
01641    SET_VertexAttrib3svARB(dest, loopback_VertexAttrib3svARB);
01642    SET_VertexAttrib3dvARB(dest, loopback_VertexAttrib3dvARB);
01643    SET_VertexAttrib4svARB(dest, loopback_VertexAttrib4svARB);
01644    SET_VertexAttrib4dvARB(dest, loopback_VertexAttrib4dvARB);
01645    SET_VertexAttrib4NubARB(dest, loopback_VertexAttrib4NubARB);
01646    SET_VertexAttrib4NubvARB(dest, loopback_VertexAttrib4NubvARB);
01647    SET_VertexAttrib4bvARB(dest, loopback_VertexAttrib4bvARB);
01648    SET_VertexAttrib4ivARB(dest, loopback_VertexAttrib4ivARB);
01649    SET_VertexAttrib4ubvARB(dest, loopback_VertexAttrib4ubvARB);
01650    SET_VertexAttrib4usvARB(dest, loopback_VertexAttrib4usvARB);
01651    SET_VertexAttrib4uivARB(dest, loopback_VertexAttrib4uivARB);
01652    SET_VertexAttrib4NbvARB(dest, loopback_VertexAttrib4NbvARB);
01653    SET_VertexAttrib4NsvARB(dest, loopback_VertexAttrib4NsvARB);
01654    SET_VertexAttrib4NivARB(dest, loopback_VertexAttrib4NivARB);
01655    SET_VertexAttrib4NusvARB(dest, loopback_VertexAttrib4NusvARB);
01656    SET_VertexAttrib4NuivARB(dest, loopback_VertexAttrib4NuivARB);
01657 }

Generated on Mon May 28 2012 04:19:56 for ReactOS by doxygen 1.7.6.1

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.