/* * Mesa 3-D graphics library * Version: 4.1 * * Copyright (C) 1999-2002 Brian Paul All Rights Reserved. * * Permission is hereby granted, free of charge, to any person obtaining a * copy of this software and associated documentation files (the "Software"), * to deal in the Software without restriction, including without limitation * the rights to use, copy, modify, merge, publish, distribute, sublicense, * and/or sell copies of the Software, and to permit persons to whom the * Software is furnished to do so, subject to the following conditions: * * The above copyright notice and this permission notice shall be included * in all copies or substantial portions of the Software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. * * Authors: * Gareth Hughes */ #ifndef PRE_LOOPBACK #define PRE_LOOPBACK( FUNC ) #endif static void GLAPIENTRY TAG(ArrayElement)( GLint i ) { PRE_LOOPBACK( ArrayElement ); _glapi_Dispatch->ArrayElement( i ); } static void GLAPIENTRY TAG(Color3f)( GLfloat r, GLfloat g, GLfloat b ) { PRE_LOOPBACK( Color3f ); _glapi_Dispatch->Color3f( r, g, b ); } static void GLAPIENTRY TAG(Color3fv)( const GLfloat *v ) { PRE_LOOPBACK( Color3fv ); _glapi_Dispatch->Color3fv( v ); } static void GLAPIENTRY TAG(Color4f)( GLfloat r, GLfloat g, GLfloat b, GLfloat a ) { PRE_LOOPBACK( Color4f ); _glapi_Dispatch->Color4f( r, g, b, a ); } static void GLAPIENTRY TAG(Color4fv)( const GLfloat *v ) { PRE_LOOPBACK( Color4fv ); _glapi_Dispatch->Color4fv( v ); } static void GLAPIENTRY TAG(EdgeFlag)( GLboolean e ) { PRE_LOOPBACK( EdgeFlag ); _glapi_Dispatch->EdgeFlag( e ); } static void GLAPIENTRY TAG(EdgeFlagv)( const GLboolean *v ) { PRE_LOOPBACK( EdgeFlagv ); _glapi_Dispatch->EdgeFlagv( v ); } static void GLAPIENTRY TAG(EvalCoord1f)( GLfloat s ) { PRE_LOOPBACK( EvalCoord1f ); _glapi_Dispatch->EvalCoord1f( s ); } static void GLAPIENTRY TAG(EvalCoord1fv)( const GLfloat *v ) { PRE_LOOPBACK( EvalCoord1fv ); _glapi_Dispatch->EvalCoord1fv( v ); } static void GLAPIENTRY TAG(EvalCoord2f)( GLfloat s, GLfloat t ) { PRE_LOOPBACK( EvalCoord2f ); _glapi_Dispatch->EvalCoord2f( s, t ); } static void GLAPIENTRY TAG(EvalCoord2fv)( const GLfloat *v ) { PRE_LOOPBACK( EvalCoord2fv ); _glapi_Dispatch->EvalCoord2fv( v ); } static void GLAPIENTRY TAG(EvalPoint1)( GLint i ) { PRE_LOOPBACK( EvalPoint1 ); _glapi_Dispatch->EvalPoint1( i ); } static void GLAPIENTRY TAG(EvalPoint2)( GLint i, GLint j ) { PRE_LOOPBACK( EvalPoint2 ); _glapi_Dispatch->EvalPoint2( i, j ); } static void GLAPIENTRY TAG(FogCoordfEXT)( GLfloat f ) { PRE_LOOPBACK( FogCoordfEXT ); _glapi_Dispatch->FogCoordfEXT( f ); } static void GLAPIENTRY TAG(FogCoordfvEXT)( const GLfloat *v ) { PRE_LOOPBACK( FogCoordfvEXT ); _glapi_Dispatch->FogCoordfvEXT( v ); } static void GLAPIENTRY TAG(Indexf)( GLfloat f ) { PRE_LOOPBACK( Indexf ); _glapi_Dispatch->Indexf( f ); } static void GLAPIENTRY TAG(Indexfv)( const GLfloat *v ) { PRE_LOOPBACK( Indexfv ); _glapi_Dispatch->Indexfv( v ); } static void GLAPIENTRY TAG(Materialfv)( GLenum face, GLenum pname, const GLfloat *v ) { PRE_LOOPBACK( Materialfv ); _glapi_Dispatch->Materialfv( face, pname, v ); } static void GLAPIENTRY TAG(MultiTexCoord1fARB)( GLenum target, GLfloat a ) { PRE_LOOPBACK( MultiTexCoord1fARB ); _glapi_Dispatch->MultiTexCoord1fARB( target, a ); } static void GLAPIENTRY TAG(MultiTexCoord1fvARB)( GLenum target, const GLfloat *tc ) { PRE_LOOPBACK( MultiTexCoord1fvARB ); _glapi_Dispatch->MultiTexCoord1fvARB( target, tc ); } static void GLAPIENTRY TAG(MultiTexCoord2fARB)( GLenum target, GLfloat s, GLfloat t ) { PRE_LOOPBACK( MultiTexCoord2fARB ); _glapi_Dispatch->MultiTexCoord2fARB( target, s, t ); } static void GLAPIENTRY TAG(MultiTexCoord2fvARB)( GLenum target, const GLfloat *tc ) { PRE_LOOPBACK( MultiTexCoord2fvARB ); _glapi_Dispatch->MultiTexCoord2fvARB( target, tc ); } static void GLAPIENTRY TAG(MultiTexCoord3fARB)( GLenum target, GLfloat s, GLfloat t, GLfloat r ) { PRE_LOOPBACK( MultiTexCoord3fARB ); _glapi_Dispatch->MultiTexCoord3fARB( target, s, t, r ); } static void GLAPIENTRY TAG(MultiTexCoord3fvARB)( GLenum target, const GLfloat *tc ) { PRE_LOOPBACK( MultiTexCoord3fvARB ); _glapi_Dispatch->MultiTexCoord3fvARB( target, tc ); } static void GLAPIENTRY TAG(MultiTexCoord4fARB)( GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q ) { PRE_LOOPBACK( MultiTexCoord4fARB ); _glapi_Dispatch->MultiTexCoord4fARB( target, s, t, r, q ); } static void GLAPIENTRY TAG(MultiTexCoord4fvARB)( GLenum target, const GLfloat *tc ) { PRE_LOOPBACK( MultiTexCoord4fvARB ); _glapi_Dispatch->MultiTexCoord4fvARB( target, tc ); } static void GLAPIENTRY TAG(Normal3f)( GLfloat x, GLfloat y, GLfloat z ) { PRE_LOOPBACK( Normal3f ); _glapi_Dispatch->Normal3f( x, y, z ); } static void GLAPIENTRY TAG(Normal3fv)( const GLfloat *v ) { PRE_LOOPBACK( Normal3fv ); _glapi_Dispatch->Normal3fv( v ); } static void GLAPIENTRY TAG(SecondaryColor3fEXT)( GLfloat r, GLfloat g, GLfloat b ) { PRE_LOOPBACK( SecondaryColor3fEXT ); _glapi_Dispatch->SecondaryColor3fEXT( r, g, b ); } static void GLAPIENTRY TAG(SecondaryColor3fvEXT)( const GLfloat *v ) { PRE_LOOPBACK( SecondaryColor3fvEXT ); _glapi_Dispatch->SecondaryColor3fvEXT( v ); } static void GLAPIENTRY TAG(TexCoord1f)( GLfloat s ) { PRE_LOOPBACK( TexCoord1f ); _glapi_Dispatch->TexCoord1f( s ); } static void GLAPIENTRY TAG(TexCoord1fv)( const GLfloat *tc ) { PRE_LOOPBACK( TexCoord1fv ); _glapi_Dispatch->TexCoord1fv( tc ); } static void GLAPIENTRY TAG(TexCoord2f)( GLfloat s, GLfloat t ) { PRE_LOOPBACK( TexCoord2f ); _glapi_Dispatch->TexCoord2f( s, t ); } static void GLAPIENTRY TAG(TexCoord2fv)( const GLfloat *tc ) { PRE_LOOPBACK( TexCoord2fv ); _glapi_Dispatch->TexCoord2fv( tc ); } static void GLAPIENTRY TAG(TexCoord3f)( GLfloat s, GLfloat t, GLfloat r ) { PRE_LOOPBACK( TexCoord3f ); _glapi_Dispatch->TexCoord3f( s, t, r ); } static void GLAPIENTRY TAG(TexCoord3fv)( const GLfloat *tc ) { PRE_LOOPBACK( TexCoord3fv ); _glapi_Dispatch->TexCoord3fv( tc ); } static void GLAPIENTRY TAG(TexCoord4f)( GLfloat s, GLfloat t, GLfloat r, GLfloat q ) { PRE_LOOPBACK( TexCoord4f ); _glapi_Dispatch->TexCoord4f( s, t, r, q ); } static void GLAPIENTRY TAG(TexCoord4fv)( const GLfloat *tc ) { PRE_LOOPBACK( TexCoord4fv ); _glapi_Dispatch->TexCoord4fv( tc ); } static void GLAPIENTRY TAG(Vertex2f)( GLfloat x, GLfloat y ) { PRE_LOOPBACK( Vertex2f ); _glapi_Dispatch->Vertex2f( x, y ); } static void GLAPIENTRY TAG(Vertex2fv)( const GLfloat *v ) { PRE_LOOPBACK( Vertex2fv ); _glapi_Dispatch->Vertex2fv( v ); } static void GLAPIENTRY TAG(Vertex3f)( GLfloat x, GLfloat y, GLfloat z ) { PRE_LOOPBACK( Vertex3f ); _glapi_Dispatch->Vertex3f( x, y, z ); } static void GLAPIENTRY TAG(Vertex3fv)( const GLfloat *v ) { PRE_LOOPBACK( Vertex3fv ); _glapi_Dispatch->Vertex3fv( v ); } static void GLAPIENTRY TAG(Vertex4f)( GLfloat x, GLfloat y, GLfloat z, GLfloat w ) { PRE_LOOPBACK( Vertex4f ); _glapi_Dispatch->Vertex4f( x, y, z, w ); } static void GLAPIENTRY TAG(Vertex4fv)( const GLfloat *v ) { PRE_LOOPBACK( Vertex4fv ); _glapi_Dispatch->Vertex4fv( v ); } static void GLAPIENTRY TAG(CallList)( GLuint i ) { PRE_LOOPBACK( CallList ); _glapi_Dispatch->CallList( i ); } static void GLAPIENTRY TAG(CallLists)( GLsizei sz, GLenum type, const GLvoid *v ) { PRE_LOOPBACK( CallLists ); _glapi_Dispatch->CallLists( sz, type, v ); } static void GLAPIENTRY TAG(Begin)( GLenum mode ) { PRE_LOOPBACK( Begin ); _glapi_Dispatch->Begin( mode ); } static void GLAPIENTRY TAG(End)( void ) { PRE_LOOPBACK( End ); _glapi_Dispatch->End(); } static void GLAPIENTRY TAG(Rectf)( GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2 ) { PRE_LOOPBACK( Rectf ); _glapi_Dispatch->Rectf( x1, y1, x2, y2 ); } static void GLAPIENTRY TAG(DrawArrays)( GLenum mode, GLint start, GLsizei count ) { PRE_LOOPBACK( DrawArrays ); _glapi_Dispatch->DrawArrays( mode, start, count ); } static void GLAPIENTRY TAG(DrawElements)( GLenum mode, GLsizei count, GLenum type, const GLvoid *indices ) { PRE_LOOPBACK( DrawElements ); _glapi_Dispatch->DrawElements( mode, count, type, indices ); } static void GLAPIENTRY TAG(DrawRangeElements)( GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices ) { PRE_LOOPBACK( DrawRangeElements ); _glapi_Dispatch->DrawRangeElements( mode, start, end, count, type, indices ); } static void GLAPIENTRY TAG(EvalMesh1)( GLenum mode, GLint i1, GLint i2 ) { PRE_LOOPBACK( EvalMesh1 ); _glapi_Dispatch->EvalMesh1( mode, i1, i2 ); } static void GLAPIENTRY TAG(EvalMesh2)( GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2 ) { PRE_LOOPBACK( EvalMesh2 ); _glapi_Dispatch->EvalMesh2( mode, i1, i2, j1, j2 ); } static void GLAPIENTRY TAG(VertexAttrib1fNV)( GLuint index, GLfloat x ) { PRE_LOOPBACK( VertexAttrib1fNV ); _glapi_Dispatch->VertexAttrib1fNV( index, x ); } static void GLAPIENTRY TAG(VertexAttrib1fvNV)( GLuint index, const GLfloat *v ) { PRE_LOOPBACK( VertexAttrib1fvNV ); _glapi_Dispatch->VertexAttrib1fvNV( index, v ); } static void GLAPIENTRY TAG(VertexAttrib2fNV)( GLuint index, GLfloat x, GLfloat y ) { PRE_LOOPBACK( VertexAttrib2fNV ); _glapi_Dispatch->VertexAttrib2fNV( index, x, y ); } static void GLAPIENTRY TAG(VertexAttrib2fvNV)( GLuint index, const GLfloat *v ) { PRE_LOOPBACK( VertexAttrib2fvNV ); _glapi_Dispatch->VertexAttrib2fvNV( index, v ); } static void GLAPIENTRY TAG(VertexAttrib3fNV)( GLuint index, GLfloat x, GLfloat y, GLfloat z ) { PRE_LOOPBACK( VertexAttrib3fNV ); _glapi_Dispatch->VertexAttrib3fNV( index, x, y, z ); } static void GLAPIENTRY TAG(VertexAttrib3fvNV)( GLuint index, const GLfloat *v ) { PRE_LOOPBACK( VertexAttrib3fvNV ); _glapi_Dispatch->VertexAttrib3fvNV( index, v ); } static void GLAPIENTRY TAG(VertexAttrib4fNV)( GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w ) { PRE_LOOPBACK( VertexAttrib4fNV ); _glapi_Dispatch->VertexAttrib4fNV( index, x, y, z, w ); } static void GLAPIENTRY TAG(VertexAttrib4fvNV)( GLuint index, const GLfloat *v ) { PRE_LOOPBACK( VertexAttrib4fvNV ); _glapi_Dispatch->VertexAttrib4fvNV( index, v ); } static GLvertexformat TAG(vtxfmt) = { TAG(ArrayElement), TAG(Color3f), TAG(Color3fv), TAG(Color4f), TAG(Color4fv), TAG(EdgeFlag), TAG(EdgeFlagv), TAG(EvalCoord1f), TAG(EvalCoord1fv), TAG(EvalCoord2f), TAG(EvalCoord2fv), TAG(EvalPoint1), TAG(EvalPoint2), TAG(FogCoordfEXT), TAG(FogCoordfvEXT), TAG(Indexf), TAG(Indexfv), TAG(Materialfv), TAG(MultiTexCoord1fARB), TAG(MultiTexCoord1fvARB), TAG(MultiTexCoord2fARB), TAG(MultiTexCoord2fvARB), TAG(MultiTexCoord3fARB), TAG(MultiTexCoord3fvARB), TAG(MultiTexCoord4fARB), TAG(MultiTexCoord4fvARB), TAG(Normal3f), TAG(Normal3fv), TAG(SecondaryColor3fEXT), TAG(SecondaryColor3fvEXT), TAG(TexCoord1f), TAG(TexCoord1fv), TAG(TexCoord2f), TAG(TexCoord2fv), TAG(TexCoord3f), TAG(TexCoord3fv), TAG(TexCoord4f), TAG(TexCoord4fv), TAG(Vertex2f), TAG(Vertex2fv), TAG(Vertex3f), TAG(Vertex3fv), TAG(Vertex4f), TAG(Vertex4fv), TAG(CallList), TAG(CallLists), TAG(Begin), TAG(End), TAG(VertexAttrib1fNV), TAG(VertexAttrib1fvNV), TAG(VertexAttrib2fNV), TAG(VertexAttrib2fvNV), TAG(VertexAttrib3fNV), TAG(VertexAttrib3fvNV), TAG(VertexAttrib4fNV), TAG(VertexAttrib4fvNV), TAG(Rectf), TAG(DrawArrays), TAG(DrawElements), TAG(DrawRangeElements), TAG(EvalMesh1), TAG(EvalMesh2) }; #undef TAG #undef PRE_LOOPBACK