#ifndef DEFINES_GLU_H
#define DEFINES_GLU_H

/*
    *** Automatically generated from '/home/aros/ABIv0/Build/20110803/AROS/workbench/libs/mesa/src/aros/glu/glu.conf'. Edits will be lost. ***
    Copyright © 1995-2011, The AROS Development Team. All rights reserved.
*/

/*
    Desc: Defines for glu
*/

#include <aros/libcall.h>
#include <exec/types.h>
#include <aros/preprocessor/variadic/cast2iptr.hpp>

__BEGIN_DECLS


#define __gluBeginCurve_WB(__GluBase, __arg1) \
        AROS_LC1NR(void, gluBeginCurve, \
                  AROS_LCA(GLUnurbs *,(__arg1),A0), \
        struct Library *, (__GluBase), 35, Glu)

#define gluBeginCurve(arg1) \
    __gluBeginCurve_WB(GluBase, (arg1))

#define __gluBeginPolygon_WB(__GluBase, __arg1) \
        AROS_LC1NR(void, gluBeginPolygon, \
                  AROS_LCA(GLUtesselator *,(__arg1),A0), \
        struct Library *, (__GluBase), 36, Glu)

#define gluBeginPolygon(arg1) \
    __gluBeginPolygon_WB(GluBase, (arg1))

#define __gluBeginSurface_WB(__GluBase, __arg1) \
        AROS_LC1NR(void, gluBeginSurface, \
                  AROS_LCA(GLUnurbs *,(__arg1),A0), \
        struct Library *, (__GluBase), 37, Glu)

#define gluBeginSurface(arg1) \
    __gluBeginSurface_WB(GluBase, (arg1))

#define __gluBeginTrim_WB(__GluBase, __arg1) \
        AROS_LC1NR(void, gluBeginTrim, \
                  AROS_LCA(GLUnurbs *,(__arg1),A0), \
        struct Library *, (__GluBase), 38, Glu)

#define gluBeginTrim(arg1) \
    __gluBeginTrim_WB(GluBase, (arg1))

#define __gluBuild1DMipmapLevels_WB(__GluBase, __arg1, __arg2, __arg3, __arg4, __arg5, __arg6, __arg7, __arg8, __arg9) \
        AROS_LC9(GLint, gluBuild1DMipmapLevels, \
                  AROS_LCA(GLenum,(__arg1),D0), \
                  AROS_LCA(GLint,(__arg2),D1), \
                  AROS_LCA(GLsizei,(__arg3),D2), \
                  AROS_LCA(GLenum,(__arg4),D3), \
                  AROS_LCA(GLenum,(__arg5),D4), \
                  AROS_LCA(GLint,(__arg6),D5), \
                  AROS_LCA(GLint,(__arg7),D6), \
                  AROS_LCA(GLint,(__arg8),D7), \
                  AROS_LCA(const void *,(__arg9),A0), \
        struct Library *, (__GluBase), 39, Glu)

#define gluBuild1DMipmapLevels(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9) \
    __gluBuild1DMipmapLevels_WB(GluBase, (arg1), (arg2), (arg3), (arg4), (arg5), (arg6), (arg7), (arg8), (arg9))

#define __gluBuild1DMipmaps_WB(__GluBase, __arg1, __arg2, __arg3, __arg4, __arg5, __arg6) \
        AROS_LC6(GLint, gluBuild1DMipmaps, \
                  AROS_LCA(GLenum,(__arg1),D0), \
                  AROS_LCA(GLint,(__arg2),D1), \
                  AROS_LCA(GLsizei,(__arg3),D2), \
                  AROS_LCA(GLenum,(__arg4),D3), \
                  AROS_LCA(GLenum,(__arg5),D4), \
                  AROS_LCA(const void *,(__arg6),A0), \
        struct Library *, (__GluBase), 40, Glu)

#define gluBuild1DMipmaps(arg1, arg2, arg3, arg4, arg5, arg6) \
    __gluBuild1DMipmaps_WB(GluBase, (arg1), (arg2), (arg3), (arg4), (arg5), (arg6))

#define __gluBuild2DMipmapLevels_WB(__GluBase, __arg1, __arg2, __arg3, __arg4, __arg5, __arg6, __arg7, __arg8, __arg9, __arg10) \
        AROS_LC10(GLint, gluBuild2DMipmapLevels, \
                  AROS_LCA(GLenum,(__arg1),D0), \
                  AROS_LCA(GLint,(__arg2),D1), \
                  AROS_LCA(GLsizei,(__arg3),D2), \
                  AROS_LCA(GLsizei,(__arg4),D3), \
                  AROS_LCA(GLenum,(__arg5),D4), \
                  AROS_LCA(GLenum,(__arg6),D5), \
                  AROS_LCA(GLint,(__arg7),D6), \
                  AROS_LCA(GLint,(__arg8),D7), \
                  AROS_LCA(GLint,(__arg9),A0), \
                  AROS_LCA(const void *,(__arg10),A1), \
        struct Library *, (__GluBase), 41, Glu)

#define gluBuild2DMipmapLevels(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10) \
    __gluBuild2DMipmapLevels_WB(GluBase, (arg1), (arg2), (arg3), (arg4), (arg5), (arg6), (arg7), (arg8), (arg9), (arg10))

#define __gluBuild2DMipmaps_WB(__GluBase, __arg1, __arg2, __arg3, __arg4, __arg5, __arg6, __arg7) \
        AROS_LC7(GLint, gluBuild2DMipmaps, \
                  AROS_LCA(GLenum,(__arg1),D0), \
                  AROS_LCA(GLint,(__arg2),D1), \
                  AROS_LCA(GLsizei,(__arg3),D2), \
                  AROS_LCA(GLsizei,(__arg4),D3), \
                  AROS_LCA(GLenum,(__arg5),D4), \
                  AROS_LCA(GLenum,(__arg6),D5), \
                  AROS_LCA(const void *,(__arg7),A0), \
        struct Library *, (__GluBase), 42, Glu)

#define gluBuild2DMipmaps(arg1, arg2, arg3, arg4, arg5, arg6, arg7) \
    __gluBuild2DMipmaps_WB(GluBase, (arg1), (arg2), (arg3), (arg4), (arg5), (arg6), (arg7))

#define __gluBuild3DMipmapLevels_WB(__GluBase, __arg1, __arg2, __arg3, __arg4, __arg5, __arg6, __arg7, __arg8, __arg9, __arg10, __arg11) \
        AROS_LC11(GLint, gluBuild3DMipmapLevels, \
                  AROS_LCA(GLenum,(__arg1),D0), \
                  AROS_LCA(GLint,(__arg2),D1), \
                  AROS_LCA(GLsizei,(__arg3),D2), \
                  AROS_LCA(GLsizei,(__arg4),D3), \
                  AROS_LCA(GLsizei,(__arg5),D4), \
                  AROS_LCA(GLenum,(__arg6),D5), \
                  AROS_LCA(GLenum,(__arg7),D6), \
                  AROS_LCA(GLint,(__arg8),D7), \
                  AROS_LCA(GLint,(__arg9),A0), \
                  AROS_LCA(GLint,(__arg10),A1), \
                  AROS_LCA(const void *,(__arg11),A2), \
        struct Library *, (__GluBase), 43, Glu)

#define gluBuild3DMipmapLevels(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11) \
    __gluBuild3DMipmapLevels_WB(GluBase, (arg1), (arg2), (arg3), (arg4), (arg5), (arg6), (arg7), (arg8), (arg9), (arg10), (arg11))

#define __gluBuild3DMipmaps_WB(__GluBase, __arg1, __arg2, __arg3, __arg4, __arg5, __arg6, __arg7, __arg8) \
        AROS_LC8(GLint, gluBuild3DMipmaps, \
                  AROS_LCA(GLenum,(__arg1),D0), \
                  AROS_LCA(GLint,(__arg2),D1), \
                  AROS_LCA(GLsizei,(__arg3),D2), \
                  AROS_LCA(GLsizei,(__arg4),D3), \
                  AROS_LCA(GLsizei,(__arg5),D4), \
                  AROS_LCA(GLenum,(__arg6),D5), \
                  AROS_LCA(GLenum,(__arg7),D6), \
                  AROS_LCA(const void *,(__arg8),A0), \
        struct Library *, (__GluBase), 44, Glu)

#define gluBuild3DMipmaps(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8) \
    __gluBuild3DMipmaps_WB(GluBase, (arg1), (arg2), (arg3), (arg4), (arg5), (arg6), (arg7), (arg8))

#define __gluCheckExtension_WB(__GluBase, __arg1, __arg2) \
        AROS_LC2(GLboolean, gluCheckExtension, \
                  AROS_LCA(const GLubyte *,(__arg1),A0), \
                  AROS_LCA(const GLubyte *,(__arg2),A1), \
        struct Library *, (__GluBase), 45, Glu)

#define gluCheckExtension(arg1, arg2) \
    __gluCheckExtension_WB(GluBase, (arg1), (arg2))

#define __gluCylinder_WB(__GluBase, __arg1, __arg2, __arg3, __arg4, __arg5, __arg6) \
        AROS_LC6NR(void, gluCylinder, \
                  AROS_LCA(GLUquadric *,(__arg1),A0), \
                  AROS_LCA(GLdouble,(__arg2),D0), \
                  AROS_LCA(GLdouble,(__arg3),D1), \
                  AROS_LCA(GLdouble,(__arg4),D2), \
                  AROS_LCA(GLint,(__arg5),D3), \
                  AROS_LCA(GLint,(__arg6),D4), \
        struct Library *, (__GluBase), 46, Glu)

#define gluCylinder(arg1, arg2, arg3, arg4, arg5, arg6) \
    __gluCylinder_WB(GluBase, (arg1), (arg2), (arg3), (arg4), (arg5), (arg6))

#define __gluDeleteNurbsRenderer_WB(__GluBase, __arg1) \
        AROS_LC1NR(void, gluDeleteNurbsRenderer, \
                  AROS_LCA(GLUnurbs *,(__arg1),A0), \
        struct Library *, (__GluBase), 47, Glu)

#define gluDeleteNurbsRenderer(arg1) \
    __gluDeleteNurbsRenderer_WB(GluBase, (arg1))

#define __gluDeleteQuadric_WB(__GluBase, __arg1) \
        AROS_LC1NR(void, gluDeleteQuadric, \
                  AROS_LCA(GLUquadric *,(__arg1),A0), \
        struct Library *, (__GluBase), 48, Glu)

#define gluDeleteQuadric(arg1) \
    __gluDeleteQuadric_WB(GluBase, (arg1))

#define __gluDeleteTess_WB(__GluBase, __arg1) \
        AROS_LC1NR(void, gluDeleteTess, \
                  AROS_LCA(GLUtesselator *,(__arg1),A0), \
        struct Library *, (__GluBase), 49, Glu)

#define gluDeleteTess(arg1) \
    __gluDeleteTess_WB(GluBase, (arg1))

#define __gluDisk_WB(__GluBase, __arg1, __arg2, __arg3, __arg4, __arg5) \
        AROS_LC5NR(void, gluDisk, \
                  AROS_LCA(GLUquadric *,(__arg1),A0), \
                  AROS_LCA(GLdouble,(__arg2),D0), \
                  AROS_LCA(GLdouble,(__arg3),D1), \
                  AROS_LCA(GLint,(__arg4),D2), \
                  AROS_LCA(GLint,(__arg5),D3), \
        struct Library *, (__GluBase), 50, Glu)

#define gluDisk(arg1, arg2, arg3, arg4, arg5) \
    __gluDisk_WB(GluBase, (arg1), (arg2), (arg3), (arg4), (arg5))

#define __gluEndCurve_WB(__GluBase, __arg1) \
        AROS_LC1NR(void, gluEndCurve, \
                  AROS_LCA(GLUnurbs *,(__arg1),A0), \
        struct Library *, (__GluBase), 51, Glu)

#define gluEndCurve(arg1) \
    __gluEndCurve_WB(GluBase, (arg1))

#define __gluEndPolygon_WB(__GluBase, __arg1) \
        AROS_LC1NR(void, gluEndPolygon, \
                  AROS_LCA(GLUtesselator *,(__arg1),A0), \
        struct Library *, (__GluBase), 52, Glu)

#define gluEndPolygon(arg1) \
    __gluEndPolygon_WB(GluBase, (arg1))

#define __gluEndSurface_WB(__GluBase, __arg1) \
        AROS_LC1NR(void, gluEndSurface, \
                  AROS_LCA(GLUnurbs *,(__arg1),A0), \
        struct Library *, (__GluBase), 53, Glu)

#define gluEndSurface(arg1) \
    __gluEndSurface_WB(GluBase, (arg1))

#define __gluEndTrim_WB(__GluBase, __arg1) \
        AROS_LC1NR(void, gluEndTrim, \
                  AROS_LCA(GLUnurbs *,(__arg1),A0), \
        struct Library *, (__GluBase), 54, Glu)

#define gluEndTrim(arg1) \
    __gluEndTrim_WB(GluBase, (arg1))

#define __gluErrorString_WB(__GluBase, __arg1) \
        AROS_LC1(const GLubyte *, gluErrorString, \
                  AROS_LCA(GLenum,(__arg1),D0), \
        struct Library *, (__GluBase), 55, Glu)

#define gluErrorString(arg1) \
    __gluErrorString_WB(GluBase, (arg1))

#define __gluGetNurbsProperty_WB(__GluBase, __arg1, __arg2, __arg3) \
        AROS_LC3NR(void, gluGetNurbsProperty, \
                  AROS_LCA(GLUnurbs *,(__arg1),A0), \
                  AROS_LCA(GLenum,(__arg2),D0), \
                  AROS_LCA(GLfloat *,(__arg3),A1), \
        struct Library *, (__GluBase), 56, Glu)

#define gluGetNurbsProperty(arg1, arg2, arg3) \
    __gluGetNurbsProperty_WB(GluBase, (arg1), (arg2), (arg3))

#define __gluGetString_WB(__GluBase, __arg1) \
        AROS_LC1(const GLubyte *, gluGetString, \
                  AROS_LCA(GLenum,(__arg1),D0), \
        struct Library *, (__GluBase), 57, Glu)

#define gluGetString(arg1) \
    __gluGetString_WB(GluBase, (arg1))

#define __gluGetTessProperty_WB(__GluBase, __arg1, __arg2, __arg3) \
        AROS_LC3NR(void, gluGetTessProperty, \
                  AROS_LCA(GLUtesselator *,(__arg1),A0), \
                  AROS_LCA(GLenum,(__arg2),D0), \
                  AROS_LCA(GLdouble *,(__arg3),A1), \
        struct Library *, (__GluBase), 58, Glu)

#define gluGetTessProperty(arg1, arg2, arg3) \
    __gluGetTessProperty_WB(GluBase, (arg1), (arg2), (arg3))

#define __gluLoadSamplingMatrices_WB(__GluBase, __arg1, __arg2, __arg3, __arg4) \
        AROS_LC4NR(void, gluLoadSamplingMatrices, \
                  AROS_LCA(GLUnurbs *,(__arg1),A0), \
                  AROS_LCA(const GLfloat *,(__arg2),A1), \
                  AROS_LCA(const GLfloat *,(__arg3),A2), \
                  AROS_LCA(const GLint *,(__arg4),A3), \
        struct Library *, (__GluBase), 59, Glu)

#define gluLoadSamplingMatrices(arg1, arg2, arg3, arg4) \
    __gluLoadSamplingMatrices_WB(GluBase, (arg1), (arg2), (arg3), (arg4))

#define __gluLookAt_WB(__GluBase, __arg1, __arg2, __arg3, __arg4, __arg5, __arg6, __arg7, __arg8, __arg9) \
        AROS_LC9NR(void, gluLookAt, \
                  AROS_LCA(GLdouble,(__arg1),D0), \
                  AROS_LCA(GLdouble,(__arg2),D1), \
                  AROS_LCA(GLdouble,(__arg3),D2), \
                  AROS_LCA(GLdouble,(__arg4),D3), \
                  AROS_LCA(GLdouble,(__arg5),D4), \
                  AROS_LCA(GLdouble,(__arg6),D5), \
                  AROS_LCA(GLdouble,(__arg7),D6), \
                  AROS_LCA(GLdouble,(__arg8),D7), \
                  AROS_LCA(GLdouble,(__arg9),A0), \
        struct Library *, (__GluBase), 60, Glu)

#define gluLookAt(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9) \
    __gluLookAt_WB(GluBase, (arg1), (arg2), (arg3), (arg4), (arg5), (arg6), (arg7), (arg8), (arg9))

#define __gluNewNurbsRenderer_WB(__GluBase) \
        AROS_LC0(GLUnurbs*, gluNewNurbsRenderer, \
        struct Library *, (__GluBase), 61, Glu)

#define gluNewNurbsRenderer() \
    __gluNewNurbsRenderer_WB(GluBase)

#define __gluNewQuadric_WB(__GluBase) \
        AROS_LC0(GLUquadric*, gluNewQuadric, \
        struct Library *, (__GluBase), 62, Glu)

#define gluNewQuadric() \
    __gluNewQuadric_WB(GluBase)

#define __gluNewTess_WB(__GluBase) \
        AROS_LC0(GLUtesselator*, gluNewTess, \
        struct Library *, (__GluBase), 63, Glu)

#define gluNewTess() \
    __gluNewTess_WB(GluBase)

#define __gluNextContour_WB(__GluBase, __arg1, __arg2) \
        AROS_LC2NR(void, gluNextContour, \
                  AROS_LCA(GLUtesselator *,(__arg1),A0), \
                  AROS_LCA(GLenum,(__arg2),D0), \
        struct Library *, (__GluBase), 64, Glu)

#define gluNextContour(arg1, arg2) \
    __gluNextContour_WB(GluBase, (arg1), (arg2))

#define __gluNurbsCallback_WB(__GluBase, __arg1, __arg2, __arg3) \
        AROS_LC3NR(void, gluNurbsCallback, \
                  AROS_LCA(GLUnurbs *,(__arg1),A0), \
                  AROS_LCA(GLenum,(__arg2),D0), \
                  AROS_LCA(_GLUfuncptr,(__arg3),D1), \
        struct Library *, (__GluBase), 65, Glu)

#define gluNurbsCallback(arg1, arg2, arg3) \
    __gluNurbsCallback_WB(GluBase, (arg1), (arg2), (arg3))

#define __gluNurbsCallbackData_WB(__GluBase, __arg1, __arg2) \
        AROS_LC2NR(void, gluNurbsCallbackData, \
                  AROS_LCA(GLUnurbs *,(__arg1),A0), \
                  AROS_LCA(GLvoid *,(__arg2),A1), \
        struct Library *, (__GluBase), 66, Glu)

#define gluNurbsCallbackData(arg1, arg2) \
    __gluNurbsCallbackData_WB(GluBase, (arg1), (arg2))

#define __gluNurbsCallbackDataEXT_WB(__GluBase, __arg1, __arg2) \
        AROS_LC2NR(void, gluNurbsCallbackDataEXT, \
                  AROS_LCA(GLUnurbs *,(__arg1),A0), \
                  AROS_LCA(GLvoid *,(__arg2),A1), \
        struct Library *, (__GluBase), 67, Glu)

#define gluNurbsCallbackDataEXT(arg1, arg2) \
    __gluNurbsCallbackDataEXT_WB(GluBase, (arg1), (arg2))

#define __gluNurbsCurve_WB(__GluBase, __arg1, __arg2, __arg3, __arg4, __arg5, __arg6, __arg7) \
        AROS_LC7NR(void, gluNurbsCurve, \
                  AROS_LCA(GLUnurbs *,(__arg1),A0), \
                  AROS_LCA(GLint,(__arg2),D0), \
                  AROS_LCA(GLfloat *,(__arg3),A1), \
                  AROS_LCA(GLint,(__arg4),D1), \
                  AROS_LCA(GLfloat *,(__arg5),A2), \
                  AROS_LCA(GLint,(__arg6),D2), \
                  AROS_LCA(GLenum,(__arg7),D3), \
        struct Library *, (__GluBase), 68, Glu)

#define gluNurbsCurve(arg1, arg2, arg3, arg4, arg5, arg6, arg7) \
    __gluNurbsCurve_WB(GluBase, (arg1), (arg2), (arg3), (arg4), (arg5), (arg6), (arg7))

#define __gluNurbsProperty_WB(__GluBase, __arg1, __arg2, __arg3) \
        AROS_LC3NR(void, gluNurbsProperty, \
                  AROS_LCA(GLUnurbs *,(__arg1),A0), \
                  AROS_LCA(GLenum,(__arg2),D0), \
                  AROS_LCA(GLfloat,(__arg3),D1), \
        struct Library *, (__GluBase), 69, Glu)

#define gluNurbsProperty(arg1, arg2, arg3) \
    __gluNurbsProperty_WB(GluBase, (arg1), (arg2), (arg3))

#define __gluNurbsSurface_WB(__GluBase, __arg1, __arg2, __arg3, __arg4, __arg5, __arg6, __arg7, __arg8, __arg9, __arg10, __arg11) \
        AROS_LC11NR(void, gluNurbsSurface, \
                  AROS_LCA(GLUnurbs *,(__arg1),A0), \
                  AROS_LCA(GLint,(__arg2),D0), \
                  AROS_LCA(GLfloat *,(__arg3),A1), \
                  AROS_LCA(GLint,(__arg4),D1), \
                  AROS_LCA(GLfloat *,(__arg5),A2), \
                  AROS_LCA(GLint,(__arg6),D2), \
                  AROS_LCA(GLint,(__arg7),D3), \
                  AROS_LCA(GLfloat *,(__arg8),A3), \
                  AROS_LCA(GLint,(__arg9),D4), \
                  AROS_LCA(GLint,(__arg10),D5), \
                  AROS_LCA(GLenum,(__arg11),D6), \
        struct Library *, (__GluBase), 70, Glu)

#define gluNurbsSurface(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11) \
    __gluNurbsSurface_WB(GluBase, (arg1), (arg2), (arg3), (arg4), (arg5), (arg6), (arg7), (arg8), (arg9), (arg10), (arg11))

#define __gluOrtho2D_WB(__GluBase, __arg1, __arg2, __arg3, __arg4) \
        AROS_LC4NR(void, gluOrtho2D, \
                  AROS_LCA(GLdouble,(__arg1),D0), \
                  AROS_LCA(GLdouble,(__arg2),D1), \
                  AROS_LCA(GLdouble,(__arg3),D2), \
                  AROS_LCA(GLdouble,(__arg4),D3), \
        struct Library *, (__GluBase), 71, Glu)

#define gluOrtho2D(arg1, arg2, arg3, arg4) \
    __gluOrtho2D_WB(GluBase, (arg1), (arg2), (arg3), (arg4))

#define __gluPartialDisk_WB(__GluBase, __arg1, __arg2, __arg3, __arg4, __arg5, __arg6, __arg7) \
        AROS_LC7NR(void, gluPartialDisk, \
                  AROS_LCA(GLUquadric *,(__arg1),A0), \
                  AROS_LCA(GLdouble,(__arg2),D0), \
                  AROS_LCA(GLdouble,(__arg3),D1), \
                  AROS_LCA(GLint,(__arg4),D2), \
                  AROS_LCA(GLint,(__arg5),D3), \
                  AROS_LCA(GLdouble,(__arg6),D4), \
                  AROS_LCA(GLdouble,(__arg7),D5), \
        struct Library *, (__GluBase), 72, Glu)

#define gluPartialDisk(arg1, arg2, arg3, arg4, arg5, arg6, arg7) \
    __gluPartialDisk_WB(GluBase, (arg1), (arg2), (arg3), (arg4), (arg5), (arg6), (arg7))

#define __gluPerspective_WB(__GluBase, __arg1, __arg2, __arg3, __arg4) \
        AROS_LC4NR(void, gluPerspective, \
                  AROS_LCA(GLdouble,(__arg1),D0), \
                  AROS_LCA(GLdouble,(__arg2),D1), \
                  AROS_LCA(GLdouble,(__arg3),D2), \
                  AROS_LCA(GLdouble,(__arg4),D3), \
        struct Library *, (__GluBase), 73, Glu)

#define gluPerspective(arg1, arg2, arg3, arg4) \
    __gluPerspective_WB(GluBase, (arg1), (arg2), (arg3), (arg4))

#define __gluPickMatrix_WB(__GluBase, __arg1, __arg2, __arg3, __arg4, __arg5) \
        AROS_LC5NR(void, gluPickMatrix, \
                  AROS_LCA(GLdouble,(__arg1),D0), \
                  AROS_LCA(GLdouble,(__arg2),D1), \
                  AROS_LCA(GLdouble,(__arg3),D2), \
                  AROS_LCA(GLdouble,(__arg4),D3), \
                  AROS_LCA(GLint *,(__arg5),A0), \
        struct Library *, (__GluBase), 74, Glu)

#define gluPickMatrix(arg1, arg2, arg3, arg4, arg5) \
    __gluPickMatrix_WB(GluBase, (arg1), (arg2), (arg3), (arg4), (arg5))

#define __gluProject_WB(__GluBase, __arg1, __arg2, __arg3, __arg4, __arg5, __arg6, __arg7, __arg8, __arg9) \
        AROS_LC9(GLint, gluProject, \
                  AROS_LCA(GLdouble,(__arg1),D0), \
                  AROS_LCA(GLdouble,(__arg2),D1), \
                  AROS_LCA(GLdouble,(__arg3),D2), \
                  AROS_LCA(const GLdouble *,(__arg4),A0), \
                  AROS_LCA(const GLdouble *,(__arg5),A1), \
                  AROS_LCA(const GLint *,(__arg6),A2), \
                  AROS_LCA(GLdouble *,(__arg7),A3), \
                  AROS_LCA(GLdouble *,(__arg8),A4), \
                  AROS_LCA(GLdouble *,(__arg9),A5), \
        struct Library *, (__GluBase), 75, Glu)

#define gluProject(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9) \
    __gluProject_WB(GluBase, (arg1), (arg2), (arg3), (arg4), (arg5), (arg6), (arg7), (arg8), (arg9))

#define __gluPwlCurve_WB(__GluBase, __arg1, __arg2, __arg3, __arg4, __arg5) \
        AROS_LC5NR(void, gluPwlCurve, \
                  AROS_LCA(GLUnurbs *,(__arg1),A0), \
                  AROS_LCA(GLint,(__arg2),D0), \
                  AROS_LCA(GLfloat *,(__arg3),A1), \
                  AROS_LCA(GLint,(__arg4),D1), \
                  AROS_LCA(GLenum,(__arg5),D2), \
        struct Library *, (__GluBase), 76, Glu)

#define gluPwlCurve(arg1, arg2, arg3, arg4, arg5) \
    __gluPwlCurve_WB(GluBase, (arg1), (arg2), (arg3), (arg4), (arg5))

#define __gluQuadricCallback_WB(__GluBase, __arg1, __arg2, __arg3) \
        AROS_LC3NR(void, gluQuadricCallback, \
                  AROS_LCA(GLUquadric *,(__arg1),A0), \
                  AROS_LCA(GLenum,(__arg2),D0), \
                  AROS_LCA(_GLUfuncptr,(__arg3),D1), \
        struct Library *, (__GluBase), 77, Glu)

#define gluQuadricCallback(arg1, arg2, arg3) \
    __gluQuadricCallback_WB(GluBase, (arg1), (arg2), (arg3))

#define __gluQuadricDrawStyle_WB(__GluBase, __arg1, __arg2) \
        AROS_LC2NR(void, gluQuadricDrawStyle, \
                  AROS_LCA(GLUquadric *,(__arg1),A0), \
                  AROS_LCA(GLenum,(__arg2),D0), \
        struct Library *, (__GluBase), 78, Glu)

#define gluQuadricDrawStyle(arg1, arg2) \
    __gluQuadricDrawStyle_WB(GluBase, (arg1), (arg2))

#define __gluQuadricNormals_WB(__GluBase, __arg1, __arg2) \
        AROS_LC2NR(void, gluQuadricNormals, \
                  AROS_LCA(GLUquadric *,(__arg1),A0), \
                  AROS_LCA(GLenum,(__arg2),D0), \
        struct Library *, (__GluBase), 79, Glu)

#define gluQuadricNormals(arg1, arg2) \
    __gluQuadricNormals_WB(GluBase, (arg1), (arg2))

#define __gluQuadricOrientation_WB(__GluBase, __arg1, __arg2) \
        AROS_LC2NR(void, gluQuadricOrientation, \
                  AROS_LCA(GLUquadric *,(__arg1),A0), \
                  AROS_LCA(GLenum,(__arg2),D0), \
        struct Library *, (__GluBase), 80, Glu)

#define gluQuadricOrientation(arg1, arg2) \
    __gluQuadricOrientation_WB(GluBase, (arg1), (arg2))

#define __gluQuadricTexture_WB(__GluBase, __arg1, __arg2) \
        AROS_LC2NR(void, gluQuadricTexture, \
                  AROS_LCA(GLUquadric *,(__arg1),A0), \
                  AROS_LCA(GLboolean,(__arg2),D0), \
        struct Library *, (__GluBase), 81, Glu)

#define gluQuadricTexture(arg1, arg2) \
    __gluQuadricTexture_WB(GluBase, (arg1), (arg2))

#define __gluScaleImage_WB(__GluBase, __arg1, __arg2, __arg3, __arg4, __arg5, __arg6, __arg7, __arg8, __arg9) \
        AROS_LC9(GLint, gluScaleImage, \
                  AROS_LCA(GLenum,(__arg1),D0), \
                  AROS_LCA(GLsizei,(__arg2),D1), \
                  AROS_LCA(GLsizei,(__arg3),D2), \
                  AROS_LCA(GLenum,(__arg4),D3), \
                  AROS_LCA(const void *,(__arg5),A0), \
                  AROS_LCA(GLsizei,(__arg6),D4), \
                  AROS_LCA(GLsizei,(__arg7),D5), \
                  AROS_LCA(GLenum,(__arg8),D6), \
                  AROS_LCA(GLvoid *,(__arg9),A1), \
        struct Library *, (__GluBase), 82, Glu)

#define gluScaleImage(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9) \
    __gluScaleImage_WB(GluBase, (arg1), (arg2), (arg3), (arg4), (arg5), (arg6), (arg7), (arg8), (arg9))

#define __gluSphere_WB(__GluBase, __arg1, __arg2, __arg3, __arg4) \
        AROS_LC4NR(void, gluSphere, \
                  AROS_LCA(GLUquadric *,(__arg1),A0), \
                  AROS_LCA(GLdouble,(__arg2),D0), \
                  AROS_LCA(GLint,(__arg3),D1), \
                  AROS_LCA(GLint,(__arg4),D2), \
        struct Library *, (__GluBase), 83, Glu)

#define gluSphere(arg1, arg2, arg3, arg4) \
    __gluSphere_WB(GluBase, (arg1), (arg2), (arg3), (arg4))

#define __gluTessBeginContour_WB(__GluBase, __arg1) \
        AROS_LC1NR(void, gluTessBeginContour, \
                  AROS_LCA(GLUtesselator *,(__arg1),A0), \
        struct Library *, (__GluBase), 84, Glu)

#define gluTessBeginContour(arg1) \
    __gluTessBeginContour_WB(GluBase, (arg1))

#define __gluTessBeginPolygon_WB(__GluBase, __arg1, __arg2) \
        AROS_LC2NR(void, gluTessBeginPolygon, \
                  AROS_LCA(GLUtesselator *,(__arg1),A0), \
                  AROS_LCA(GLvoid *,(__arg2),A1), \
        struct Library *, (__GluBase), 85, Glu)

#define gluTessBeginPolygon(arg1, arg2) \
    __gluTessBeginPolygon_WB(GluBase, (arg1), (arg2))

#define __gluTessCallback_WB(__GluBase, __arg1, __arg2, __arg3) \
        AROS_LC3NR(void, gluTessCallback, \
                  AROS_LCA(GLUtesselator *,(__arg1),A0), \
                  AROS_LCA(GLenum,(__arg2),D0), \
                  AROS_LCA(_GLUfuncptr,(__arg3),D1), \
        struct Library *, (__GluBase), 86, Glu)

#define gluTessCallback(arg1, arg2, arg3) \
    __gluTessCallback_WB(GluBase, (arg1), (arg2), (arg3))

#define __gluTessEndContour_WB(__GluBase, __arg1) \
        AROS_LC1NR(void, gluTessEndContour, \
                  AROS_LCA(GLUtesselator *,(__arg1),A0), \
        struct Library *, (__GluBase), 87, Glu)

#define gluTessEndContour(arg1) \
    __gluTessEndContour_WB(GluBase, (arg1))

#define __gluTessEndPolygon_WB(__GluBase, __arg1) \
        AROS_LC1NR(void, gluTessEndPolygon, \
                  AROS_LCA(GLUtesselator *,(__arg1),A0), \
        struct Library *, (__GluBase), 88, Glu)

#define gluTessEndPolygon(arg1) \
    __gluTessEndPolygon_WB(GluBase, (arg1))

#define __gluTessNormal_WB(__GluBase, __arg1, __arg2, __arg3, __arg4) \
        AROS_LC4NR(void, gluTessNormal, \
                  AROS_LCA(GLUtesselator *,(__arg1),A0), \
                  AROS_LCA(GLdouble,(__arg2),D0), \
                  AROS_LCA(GLdouble,(__arg3),D1), \
                  AROS_LCA(GLdouble,(__arg4),D2), \
        struct Library *, (__GluBase), 89, Glu)

#define gluTessNormal(arg1, arg2, arg3, arg4) \
    __gluTessNormal_WB(GluBase, (arg1), (arg2), (arg3), (arg4))

#define __gluTessProperty_WB(__GluBase, __arg1, __arg2, __arg3) \
        AROS_LC3NR(void, gluTessProperty, \
                  AROS_LCA(GLUtesselator *,(__arg1),A0), \
                  AROS_LCA(GLenum,(__arg2),D0), \
                  AROS_LCA(GLdouble,(__arg3),D1), \
        struct Library *, (__GluBase), 90, Glu)

#define gluTessProperty(arg1, arg2, arg3) \
    __gluTessProperty_WB(GluBase, (arg1), (arg2), (arg3))

#define __gluTessVertex_WB(__GluBase, __arg1, __arg2, __arg3) \
        AROS_LC3NR(void, gluTessVertex, \
                  AROS_LCA(GLUtesselator *,(__arg1),A0), \
                  AROS_LCA(GLdouble *,(__arg2),A1), \
                  AROS_LCA(GLvoid *,(__arg3),A2), \
        struct Library *, (__GluBase), 91, Glu)

#define gluTessVertex(arg1, arg2, arg3) \
    __gluTessVertex_WB(GluBase, (arg1), (arg2), (arg3))

#define __gluUnProject_WB(__GluBase, __arg1, __arg2, __arg3, __arg4, __arg5, __arg6, __arg7, __arg8, __arg9) \
        AROS_LC9(GLint, gluUnProject, \
                  AROS_LCA(GLdouble,(__arg1),D0), \
                  AROS_LCA(GLdouble,(__arg2),D1), \
                  AROS_LCA(GLdouble,(__arg3),D2), \
                  AROS_LCA(const GLdouble *,(__arg4),A0), \
                  AROS_LCA(const GLdouble *,(__arg5),A1), \
                  AROS_LCA(const GLint *,(__arg6),A2), \
                  AROS_LCA(GLdouble *,(__arg7),A3), \
                  AROS_LCA(GLdouble *,(__arg8),A4), \
                  AROS_LCA(GLdouble *,(__arg9),A5), \
        struct Library *, (__GluBase), 92, Glu)

#define gluUnProject(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9) \
    __gluUnProject_WB(GluBase, (arg1), (arg2), (arg3), (arg4), (arg5), (arg6), (arg7), (arg8), (arg9))

__END_DECLS

#endif /* DEFINES_GLU_H*/
