#ifndef MINIGL_INTERFACE_DEF_H
#define MINIGL_INTERFACE_DEF_H

/*
** This file was machine generated by idltool 51.6.
** Do not edit
*/

#ifndef EXEC_TYPES_H
#include <exec/types.h>
#endif
#ifndef EXEC_EXEC_H
#include <exec/exec.h>
#endif
#ifndef EXEC_INTERFACES_H
#include <exec/interfaces.h>
#endif

#ifndef GL_GLU_H
#include <GL/glu.h>
#endif

struct MiniGLIFace
{
        struct InterfaceData Data;

        ULONG APICALL (*Obtain)(struct MiniGLIFace *Self);
        ULONG APICALL (*Release)(struct MiniGLIFace *Self);
        void APICALL (*Expunge)(struct MiniGLIFace *Self);
        struct Interface * APICALL (*Clone)(struct MiniGLIFace *Self);
        void * APICALL (*CreateContext)(struct MiniGLIFace *Self, struct TagItem * tagList);
        void * APICALL (*CreateContextTags)(struct MiniGLIFace *Self, ...);
        GLint APICALL (*GetSupportedScreenModes)(struct MiniGLIFace *Self, MGLScreenModeCallback CallbackFn);
        GLboolean APICALL (*ScreenModeIsSupported)(struct MiniGLIFace *Self, GLsizei width, GLsizei height, GLint depth);
};

struct GLContextIFace
{
        struct InterfaceData Data;

        ULONG APICALL (*Obtain)(struct GLContextIFace *Self);
        ULONG APICALL (*Release)(struct GLContextIFace *Self);
        void APICALL (*Expunge)(struct GLContextIFace *Self);
        struct Interface * APICALL (*Clone)(struct GLContextIFace *Self);
        void APICALL (*SetBitmap)(struct GLContextIFace *Self, void * bitmap);
        void APICALL (*DeleteContext)(struct GLContextIFace *Self);
        void APICALL (*EnableSync)(struct GLContextIFace *Self, GLboolean enable);
        void APICALL (*MinTriArea)(struct GLContextIFace *Self, GLfloat area);
        void * APICALL (*GetWindowHandle)(struct GLContextIFace *Self);
        GLboolean APICALL (*LockDisplay)(struct GLContextIFace *Self);
        void APICALL (*ResizeContext)(struct GLContextIFace *Self, GLsizei width, GLsizei height);
        void APICALL (*SetState)(struct GLContextIFace *Self, GLenum cap, GLboolean state);
        void APICALL (*SwitchDisplay)(struct GLContextIFace *Self);
        void APICALL (*UnlockDisplay)(struct GLContextIFace *Self);
        void APICALL (*LockMode)(struct GLContextIFace *Self, GLenum lockMode);
        void APICALL (*SetZOffset)(struct GLContextIFace *Self, GLfloat offset);
        GLboolean APICALL (*LockBack)(struct GLContextIFace *Self, MGLLockInfo *info);
        void APICALL (*GrabFocus)(struct GLContextIFace *Self, GLboolean grab);
        void APICALL (*PinTexture)(struct GLContextIFace *Self, GLuint texnum);
        void APICALL (*UnpinTexture)(struct GLContextIFace *Self, GLuint texnum);
        void APICALL (*SetTextureRenderTarget)(struct GLContextIFace *Self, GLuint texnum);
        void APICALL (*GLAlphaFunc)(struct GLContextIFace *Self, GLenum func, GLclampf ref);
        void APICALL (*GLBegin)(struct GLContextIFace *Self, GLenum mode);
        void APICALL (*GLBindTexture)(struct GLContextIFace *Self, GLenum target, GLuint texture);
        void APICALL (*GLBlendFunc)(struct GLContextIFace *Self, GLenum sfactor, GLenum dfactor);
        void APICALL (*GLClear)(struct GLContextIFace *Self, GLbitfield mask);
        void APICALL (*GLClearColor)(struct GLContextIFace *Self, GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);
        void APICALL (*GLClearDepth)(struct GLContextIFace *Self, GLclampd depth);
        void APICALL (*GLColor4f)(struct GLContextIFace *Self, GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
        void APICALL (*GLColorTable)(struct GLContextIFace *Self, GLenum target, GLenum internalformat, GLint width, GLenum format, GLenum type, const GLvoid* data);
        void APICALL (*GLCullFace)(struct GLContextIFace *Self, GLenum mode);
        void APICALL (*GLDeleteTextures)(struct GLContextIFace *Self, GLsizei n, const GLuint *textures);
        void APICALL (*GLDepthFunc)(struct GLContextIFace *Self, GLenum func);
        void APICALL (*GLDepthMask)(struct GLContextIFace *Self, GLboolean flag);
        void APICALL (*GLDepthRange)(struct GLContextIFace *Self, GLclampd n, GLclampd f);
        void APICALL (*GLDrawBuffer)(struct GLContextIFace *Self, GLenum mode);
        void APICALL (*GLEnd)(struct GLContextIFace *Self);
        void APICALL (*GLFinish)(struct GLContextIFace *Self);
        void APICALL (*GLFlush)(struct GLContextIFace *Self);
        void APICALL (*GLFogf)(struct GLContextIFace *Self, GLenum pname, GLfloat param);
        void APICALL (*GLFogfv)(struct GLContextIFace *Self, GLenum pname, GLfloat *param);
        void APICALL (*GLFrontFace)(struct GLContextIFace *Self, GLenum mode);
        void APICALL (*GLFrustum)(struct GLContextIFace *Self, GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
        void APICALL (*GLGenTextures)(struct GLContextIFace *Self, GLsizei n, GLuint *textures);
        void APICALL (*GLGetBooleanv)(struct GLContextIFace *Self, GLenum pname, GLboolean *params);
        GLenum APICALL (*GLGetError)(struct GLContextIFace *Self);
        void APICALL (*GLGetFloatv)(struct GLContextIFace *Self, GLenum pname, GLfloat *params);
        void APICALL (*GLGetIntegerv)(struct GLContextIFace *Self, GLenum pname, GLint *params);
        const GLubyte* APICALL (*GLGetString)(struct GLContextIFace *Self, GLenum name);
        void APICALL (*GLHint)(struct GLContextIFace *Self, GLenum target, GLenum mode);
        GLboolean APICALL (*GLIsEnabled)(struct GLContextIFace *Self, GLenum cap);
        void APICALL (*GLLoadIdentity)(struct GLContextIFace *Self);
        void APICALL (*GLLoadMatrixd)(struct GLContextIFace *Self, const GLdouble *m);
        void APICALL (*GLLoadMatrixf)(struct GLContextIFace *Self, const GLfloat *m);
        void APICALL (*GLMatrixMode)(struct GLContextIFace *Self, GLenum mode);
        void APICALL (*GLMultMatrixd)(struct GLContextIFace *Self, const GLdouble *m);
        void APICALL (*GLMultMatrixf)(struct GLContextIFace *Self, const GLfloat *m);
        void APICALL (*GLNormal3f)(struct GLContextIFace *Self, GLfloat x, GLfloat y, GLfloat z);
        void APICALL (*GLOrtho)(struct GLContextIFace *Self, GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
        void APICALL (*GLPixelStorei)(struct GLContextIFace *Self, GLenum pname, GLint param);
        void APICALL (*GLPolygonMode)(struct GLContextIFace *Self, GLenum face, GLenum mode);
        void APICALL (*GLPolygonOffset)(struct GLContextIFace *Self, GLfloat factor, GLfloat units);
        void APICALL (*GLPopMatrix)(struct GLContextIFace *Self);
        void APICALL (*GLPushMatrix)(struct GLContextIFace *Self);
        void APICALL (*GLReadPixels)(struct GLContextIFace *Self, GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels);
        void APICALL (*GLRotatef)(struct GLContextIFace *Self, GLfloat angle, GLfloat x, GLfloat y, GLfloat z);
        void APICALL (*GLScalef)(struct GLContextIFace *Self, GLfloat x, GLfloat y, GLfloat z);
        void APICALL (*GLScissor)(struct GLContextIFace *Self, GLint x, GLint y, GLsizei width, GLsizei height);
        void APICALL (*GLShadeModel)(struct GLContextIFace *Self, GLenum mode);
        void APICALL (*GLTexCoord2f)(struct GLContextIFace *Self, GLfloat s, GLfloat t);
        void APICALL (*GLTexCoord4f)(struct GLContextIFace *Self, GLfloat s, GLfloat t, GLfloat r, GLfloat q);
        void APICALL (*GLTexEnvi)(struct GLContextIFace *Self, GLenum target, GLenum pname, GLint param);
        void APICALL (*GLTexEnvfv)(struct GLContextIFace *Self, GLenum target, GLenum pname, const GLfloat* param);
        void APICALL (*GLTexGeni)(struct GLContextIFace *Self, GLenum coord, GLenum mode, GLint param);
        void APICALL (*GLTexGenfv)(struct GLContextIFace *Self, GLenum coord, GLenum pname, GLfloat *params);
        void APICALL (*GLTexImage2D)(struct GLContextIFace *Self, GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
        void APICALL (*GLTexParameteri)(struct GLContextIFace *Self, GLenum target, GLenum pname, GLint param);
        void APICALL (*GLTexSubImage2D)(struct GLContextIFace *Self, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
        void APICALL (*GLTranslatef)(struct GLContextIFace *Self, GLfloat x, GLfloat y, GLfloat z);
        void APICALL (*GLVertex4f)(struct GLContextIFace *Self, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
        void APICALL (*GLViewport)(struct GLContextIFace *Self, GLint x, GLint y, GLsizei width, GLsizei height);
        void APICALL (*GLPushAttrib)(struct GLContextIFace *Self, GLbitfield attrib);
        void APICALL (*GLPopAttrib)(struct GLContextIFace *Self);
        void APICALL (*GLRectf)(struct GLContextIFace *Self, GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2);
        void APICALL (*GLEnableClientState)(struct GLContextIFace *Self, GLenum state);
        void APICALL (*GLDisableClientState)(struct GLContextIFace *Self, GLenum state);
        void APICALL (*GLTexCoordPointer)(struct GLContextIFace *Self, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
        void APICALL (*GLNormalPointer)(struct GLContextIFace *Self, GLenum type, GLsizei stride, const GLvoid *pointer);
        void APICALL (*GLColorPointer)(struct GLContextIFace *Self, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
        void APICALL (*GLVertexPointer)(struct GLContextIFace *Self, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
        void APICALL (*GLDrawElements)(struct GLContextIFace *Self, GLenum mode, GLsizei cound, GLenum type, const GLvoid *indices);
        void APICALL (*GLDrawArrays)(struct GLContextIFace *Self, GLenum mode, GLint first, GLsizei count);
        void APICALL (*GLArrayElement)(struct GLContextIFace *Self, GLint i);
        void APICALL (*GLClientActiveTexture)(struct GLContextIFace *Self, GLenum texture);
        void APICALL (*GLInterleavedArrays)(struct GLContextIFace *Self, GLenum format, GLsizei stride, const GLvoid *pointer);
        void APICALL (*GLLockArrays)(struct GLContextIFace *Self, GLint first, GLsizei count);
        void APICALL (*GLUnlockArrays)(struct GLContextIFace *Self);
        void APICALL (*GLActiveTexture)(struct GLContextIFace *Self, GLenum unit);
        void APICALL (*GLMultiTexCoord2f)(struct GLContextIFace *Self, GLenum unit, GLfloat s, GLfloat t);
        void APICALL (*GLMultiTexCoord4f)(struct GLContextIFace *Self, GLenum unit, GLfloat s, GLfloat t, GLfloat r, GLfloat q);
        void APICALL (*GLMaterialf)(struct GLContextIFace *Self, GLenum face, GLenum pname, GLfloat param);
        void APICALL (*GLMaterialfv)(struct GLContextIFace *Self, GLenum face, GLenum pname, const GLfloat* params);
        void APICALL (*GLMaterialiv)(struct GLContextIFace *Self, GLenum face, GLenum pname, const GLint* params);
        void APICALL (*GLLightf)(struct GLContextIFace *Self, GLenum light, GLenum pname, GLfloat param);
        void APICALL (*GLLightfv)(struct GLContextIFace *Self, GLenum light, GLenum pname, const GLfloat* params);
        void APICALL (*GLLightiv)(struct GLContextIFace *Self, GLenum light, GLenum pname, const GLint* params);
        void APICALL (*GLLightModelf)(struct GLContextIFace *Self, GLenum pname, GLfloat param);
        void APICALL (*GLLightModelfv)(struct GLContextIFace *Self, GLenum pname, const GLfloat* params);
        void APICALL (*GLLightModeliv)(struct GLContextIFace *Self, GLenum pname, const GLint* params);
        void APICALL (*GLColorMaterial)(struct GLContextIFace *Self, GLenum face, GLenum mode);
        void APICALL (*GLStencilFunc)(struct GLContextIFace *Self, GLenum func, GLint ref, GLint mask);
        void APICALL (*GLStencilOp)(struct GLContextIFace *Self, GLenum sfail, GLenum dpfail, GLenum dppass);
        void APICALL (*GLStencilMask)(struct GLContextIFace *Self, GLuint mask);
        void APICALL (*GLClearStencil)(struct GLContextIFace *Self, GLint s);
        void APICALL (*GLColorMask)(struct GLContextIFace *Self, GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
        void APICALL (*GLLineWidth)(struct GLContextIFace *Self, GLfloat width);
        void APICALL (*GLClipPlane)(struct GLContextIFace *Self, GLenum plane, GLdouble *eqn);
        void APICALL (*GLPointSize)(struct GLContextIFace *Self, GLfloat size);
        void APICALL (*GLBitmap)(struct GLContextIFace *Self, GLsizei w, GLsizei h, GLfloat xbo, GLfloat ybo, GLfloat xbi, GLfloat ybi, const GLubyte *data);
        void APICALL (*GLLineStipple)(struct GLContextIFace *Self, GLint factor, GLushort pattern);
        void APICALL (*GLPolygonStipple)(struct GLContextIFace *Self, GLubyte *pattern);
        void APICALL (*GLRasterPos4f)(struct GLContextIFace *Self, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
        void APICALL (*GLCallList)(struct GLContextIFace *Self, GLuint list);
        void APICALL (*GLCallLists)(struct GLContextIFace *Self, GLsizei n, GLenum type, const GLvoid* lists);
        void APICALL (*GLDeleteLists)(struct GLContextIFace *Self, GLuint list, GLsizei range);
        void APICALL (*GLEndList)(struct GLContextIFace *Self);
        GLuint APICALL (*GLGenLists)(struct GLContextIFace *Self, GLsizei range);
        GLboolean APICALL (*GLIsList)(struct GLContextIFace *Self, GLuint list);
        void APICALL (*GLListBase)(struct GLContextIFace *Self, GLuint base);
        void APICALL (*GLNewList)(struct GLContextIFace *Self, GLuint list, GLenum mode);
        void APICALL (*GLGetDoublev)(struct GLContextIFace *Self, GLenum pname, GLdouble *params);
        GLboolean APICALL (*GLIsTexture)(struct GLContextIFace *Self, GLuint texture);
        void APICALL (*GLInitNames)(struct GLContextIFace *Self);
        void APICALL (*GLLoadName)(struct GLContextIFace *Self, GLuint name);
        void APICALL (*GLPushName)(struct GLContextIFace *Self, GLuint name);
        void APICALL (*GLPopName)(struct GLContextIFace *Self);
        void APICALL (*GLSelectBuffer)(struct GLContextIFace *Self, GLsizei size, GLuint* buffer);
        GLint APICALL (*GLRenderMode)(struct GLContextIFace *Self, GLenum mode);
        void APICALL (*GLGetTexEnviv)(struct GLContextIFace *Self, GLenum target, GLenum pname, GLint* params);
        GLboolean APICALL (*GLAreTexturesResident)(struct GLContextIFace *Self, GLsizei n, GLuint* textures, GLboolean* residences);
        void APICALL (*GLGetLightfv)(struct GLContextIFace *Self, GLenum light, GLenum , GLfloat* params);
        void APICALL (*GLGetLightiv)(struct GLContextIFace *Self, GLenum light, GLenum , GLint* params);
        void APICALL (*GLGetTexLevelParameterfv)(struct GLContextIFace *Self, GLenum target, GLint level, GLenum pname, GLfloat* params);
        void APICALL (*GLGetTexLevelParameteriv)(struct GLContextIFace *Self, GLenum target, GLint level, GLenum pname, GLint* params);
        void APICALL (*GLMap1f)(struct GLContextIFace *Self, GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat* points);
        void APICALL (*GLMap1d)(struct GLContextIFace *Self, GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLdouble* points);
        void APICALL (*GLEvalCoord1f)(struct GLContextIFace *Self, GLfloat arg);
        void APICALL (*GLMapGrid1f)(struct GLContextIFace *Self, GLint n, GLfloat u1, GLfloat u2);
        void APICALL (*GLEvalMesh1)(struct GLContextIFace *Self, GLenum mode, GLint p1, GLint p2);
        void APICALL (*GLEvalPoint1)(struct GLContextIFace *Self, GLint p);
        void APICALL (*GLPushClientAttrib)(struct GLContextIFace *Self, GLbitfield attrib);
        void APICALL (*GLPopClientAttrib)(struct GLContextIFace *Self);
        GLboolean APICALL (*SetDisplayMode)(struct GLContextIFace *Self, GLboolean windowed, GLsizei width, GLsizei height, GLint depth);
        void APICALL (*GLMap2f)(struct GLContextIFace *Self, GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat* points);
        void APICALL (*GLMap2d)(struct GLContextIFace *Self, GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble* points);
        void APICALL (*GLEvalCoord2f)(struct GLContextIFace *Self, GLfloat u, GLfloat v);
        void APICALL (*GLMapGrid2f)(struct GLContextIFace *Self, GLint nu, GLfloat u1, GLfloat u2, GLint nv, GLfloat v1, GLfloat v2);
        void APICALL (*GLEvalMesh2)(struct GLContextIFace *Self, GLenum mode, GLint p1, GLint p2, GLint q1, GLint q2);
        void APICALL (*GLEvalPoint2)(struct GLContextIFace *Self, GLint p, GLint q);
        void APICALL (*GLDrawPixels)(struct GLContextIFace *Self, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid * pixels);
        void APICALL (*GLGetMapfv)(struct GLContextIFace *Self, GLenum map, GLenum value, GLfloat * data);
        void APICALL (*GLGetMapdv)(struct GLContextIFace *Self, GLenum map, GLenum value, GLdouble * data);
        void APICALL (*GLGetMapiv)(struct GLContextIFace *Self, GLenum map, GLenum value, GLint * data);
        void APICALL (*GLGetMaterialiv)(struct GLContextIFace *Self, GLenum face, GLenum value, GLint * data);
        void APICALL (*GLGetMaterialfv)(struct GLContextIFace *Self, GLenum face, GLenum value, GLfloat * data);
        void APICALL (*GLPixelTransferf)(struct GLContextIFace *Self, GLenum param, GLfloat value);
        void APICALL (*GLGetTexImage)(struct GLContextIFace *Self, GLenum target, GLint lod, GLenum format, GLenum type, GLvoid* );
        void APICALL (*GLTexParameterfv)(struct GLContextIFace *Self, GLenum target, GLenum pname, GLfloat * params);
        void APICALL (*GLTexParameteriv)(struct GLContextIFace *Self, GLenum target, GLenum pname, GLint * params);
        void APICALL (*GLDrawRangeElements)(struct GLContextIFace *Self, GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, GLvoid * indices);
        void APICALL (*GLCopyTexImage2D)(struct GLContextIFace *Self, GLenum target, GLint level, GLint internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
        void APICALL (*GLCopyTexSubImage2D)(struct GLContextIFace *Self, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
        void APICALL (*GLGetClipPlane)(struct GLContextIFace *Self, GLenum plane, GLdouble * eqn);
        void APICALL (*GLReadBuffer)(struct GLContextIFace *Self, GLenum src);
        void APICALL (*MGLSetFrontBuffer)(struct GLContextIFace *Self, void * bitmap);
        void APICALL (*MGLSetBackBuffer)(struct GLContextIFace *Self, void * bitmap);
        GLboolean APICALL (*MGLSetAuxBuffer)(struct GLContextIFace *Self, GLenum buffer, void * bitmap);
        GLUtesselator * APICALL (*GLUNewTess)(struct GLContextIFace *Self);
        void APICALL (*GLUDeleteTess)(struct GLContextIFace *Self, GLUtesselator * tess);
        void APICALL (*GLUTessProperty)(struct GLContextIFace *Self, GLUtesselator * tess, GLenum which, GLdouble value);
        void APICALL (*GLUGetTessProperty)(struct GLContextIFace *Self, GLUtesselator * tess, GLenum which, GLdouble * value);
        void APICALL (*GLUTessNormal)(struct GLContextIFace *Self, GLUtesselator * tess, GLdouble x, GLdouble y, GLdouble z);
        void APICALL (*GLUTessCallback)(struct GLContextIFace *Self, GLUtesselator * tess, GLenum which, void * fn);
        void APICALL (*GLUTessVertex)(struct GLContextIFace *Self, GLUtesselator * tess, GLdouble * coords, void * data);
        void APICALL (*GLUTessBeginPolygon)(struct GLContextIFace *Self, GLUtesselator * tess, void * data);
        void APICALL (*GLUTessBeginContour)(struct GLContextIFace *Self, GLUtesselator * tess);
        void APICALL (*GLUTessEndContour)(struct GLContextIFace *Self, GLUtesselator * tess);
        void APICALL (*GLUTessEndPolygon)(struct GLContextIFace *Self, GLUtesselator * tess);
        void APICALL (*GLUBeginPolygon)(struct GLContextIFace *Self, GLUtesselator * tess);
        void APICALL (*GLUNextContour)(struct GLContextIFace *Self, GLUtesselator * tess, GLenum type);
        void APICALL (*GLUEndPolygon)(struct GLContextIFace *Self, GLUtesselator * tess);
        GLubyte * APICALL (*GLUErrorString)(struct GLContextIFace *Self, GLenum error);
        GLint APICALL (*GLUScaleImage)(struct GLContextIFace *Self, GLenum format, GLsizei widthin, GLsizei heightin, GLenum typein, const void * datain, GLsizei widthout, GLsizei heightout, GLenum typeout, void * dataout);
        GLint APICALL (*GLUBuild2DMipmapLevels)(struct GLContextIFace *Self, GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLenum format, GLenum type, GLint userLevel, GLint baseLevel, GLint maxlevel, const void * data);
        GLint APICALL (*GLUBuild2DMipmaps)(struct GLContextIFace *Self, GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLenum format, GLenum type, const void * data);
        void APICALL (*GLUOrtho2D)(struct GLContextIFace *Self, GLdouble left, GLdouble right, GLdouble bottom, GLdouble top);
        void APICALL (*GLUPerspective)(struct GLContextIFace *Self, GLdouble fovy, GLdouble aspect, GLdouble zNear, GLdouble zFar);
        void APICALL (*GLULookAt)(struct GLContextIFace *Self, GLdouble eyex, GLdouble eyey, GLdouble eyez, GLdouble centerx, GLdouble centery, GLdouble centerz, GLdouble upx, GLdouble upy, GLdouble upz);
        GLint APICALL (*GLUProject)(struct GLContextIFace *Self, GLdouble objx, GLdouble objy, GLdouble objz, const GLdouble * modelMatrix, const GLdouble * projMatrix, const GLint * viewPort, GLdouble * winx, GLdouble * winy, GLdouble * winz);
        GLint APICALL (*GLUUnProject)(struct GLContextIFace *Self, GLdouble winx, GLdouble winy, GLdouble winz, const GLdouble * modelMatrix, const GLdouble * projMatrix, const GLint * viewPort, GLdouble * objx, GLdouble * objy, GLdouble * objz);
        GLint APICALL (*GLUUnProject4)(struct GLContextIFace *Self, GLdouble winx, GLdouble winy, GLdouble winz, GLdouble clipw, const GLdouble * modelMatrix, const GLdouble * projMatrix, const GLint * viewPort, GLdouble nearVal, GLdouble farVal, GLdouble * objx, GLdouble * objy, GLdouble * objz, GLdouble * objw);
        void APICALL (*GLUPickMatrix)(struct GLContextIFace *Self, GLdouble x, GLdouble y, GLdouble deltax, GLdouble deltay, GLint * viewport);
        GLUquadric * APICALL (*GLUNewQuadric)(struct GLContextIFace *Self);
        void APICALL (*GLUDeleteQuadric)(struct GLContextIFace *Self, GLUquadric * state);
        void APICALL (*GLUQuadricCallback)(struct GLContextIFace *Self, GLUquadric * qobj, GLenum which, void * fn);
        void APICALL (*GLUQuadricNormals)(struct GLContextIFace *Self, GLUquadric * qovbj, GLenum normals);
        void APICALL (*GLUQuadricTexture)(struct GLContextIFace *Self, GLUquadric * qobj, GLboolean texture);
        void APICALL (*GLUQuadricOrientation)(struct GLContextIFace *Self, GLUquadric * qobj, GLenum orientation);
        void APICALL (*GLUQuadricDrawStyle)(struct GLContextIFace *Self, GLUquadric * qobj, GLenum drawStyle);
        void APICALL (*GLUCylinder)(struct GLContextIFace *Self, GLUquadric * qobj, GLdouble baseRadius, GLdouble topRadius, GLdouble height, GLint slices, GLint stacks);
        void APICALL (*GLUDisk)(struct GLContextIFace *Self, GLUquadric * qobj, GLdouble innerRadius, GLdouble outerRadius, GLint slices, GLint loops);
        void APICALL (*GLUPartialDisk)(struct GLContextIFace *Self, GLUquadric * qobj, GLdouble innerRadius, GLdouble outerRadius, GLint slices, GLint loops, GLdouble startAngle, GLdouble sweepAngle);
        void APICALL (*GLUSphere)(struct GLContextIFace *Self, GLUquadric * qobj, GLdouble radius, GLint slices, GLint stacks);
        const GLubyte * APICALL (*GLUGetString)(struct GLContextIFace *Self, GLenum name);
        GLboolean APICALL (*GLUCheckExtension)(struct GLContextIFace *Self, const GLubyte * extName, const GLubyte * extString);
        GLUnurbs * APICALL (*GLUNewNurbsRenderer)(struct GLContextIFace *Self);
        void APICALL (*GLUDeleteNurbsRenderer)(struct GLContextIFace *Self, GLUnurbs * r);
        void APICALL (*GLUDeleteNurbsTessellatorEXT)(struct GLContextIFace *Self, GLUnurbs * r);
        void APICALL (*GLUBeginSurface)(struct GLContextIFace *Self, GLUnurbs * r);
        void APICALL (*GLUBeginCurve)(struct GLContextIFace *Self, GLUnurbs * r);
        void APICALL (*GLUEndCurve)(struct GLContextIFace *Self, GLUnurbs * r);
        void APICALL (*GLUEndSurface)(struct GLContextIFace *Self, GLUnurbs * r);
        void APICALL (*GLUBeginTrim)(struct GLContextIFace *Self, GLUnurbs * r);
        void APICALL (*GLUEndTrim)(struct GLContextIFace *Self, GLUnurbs * r);
        void APICALL (*GLUPwlCurve)(struct GLContextIFace *Self, GLUnurbs * r, GLint count, GLfloat * array, GLint stride, GLenum type);
        void APICALL (*GLUNurbsCurve)(struct GLContextIFace *Self, GLUnurbs * r, GLint nknots, GLfloat * knot, GLint stride, GLfloat * ctlarray, GLint order, GLenum type);
        void APICALL (*GLUNurbsSurface)(struct GLContextIFace *Self, GLUnurbs * r, GLint sknot_count, GLfloat * sknot, GLint tknot_count, GLfloat * tknot, GLint s_stride, GLint t_stride, GLfloat * ctlarray, GLint sorder, GLint torder, GLenum type);
        void APICALL (*GLULoadSamplingMatrices)(struct GLContextIFace *Self, GLUnurbs * r, const GLfloat * modelMatrix, const GLfloat * projMatrix, const GLint * viewport);
        void APICALL (*GLUNurbsProperty)(struct GLContextIFace *Self, GLUnurbs * r, GLenum property, GLfloat value);
        void APICALL (*GLUGetNurbsProperty)(struct GLContextIFace *Self, GLUnurbs * r, GLenum property, GLfloat * value);
        void APICALL (*GLUNurbsCallback)(struct GLContextIFace *Self, GLUnurbs * r, GLenum which, void * fn);
        void APICALL (*GLUNurbsCallbackDataEXT)(struct GLContextIFace *Self, GLUnurbs * r, void * userData);
        void APICALL (*GLGetTexParameterfv)(struct GLContextIFace *Self, GLenum target, GLenum value, GLfloat * data);
        void APICALL (*GLGetTexParameteriv)(struct GLContextIFace *Self, GLenum target, GLenum value, GLint * data);
        void APICALL (*GLPixelZoom)(struct GLContextIFace *Self, GLfloat zoomx, GLfloat zoomy);
        void APICALL (*GLCopyPixels)(struct GLContextIFace *Self, GLint x, GLint y, GLsizei width, GLsizei height, GLenum type);
        void APICALL (*GLLogicOp)(struct GLContextIFace *Self, GLenum opcode);
        void APICALL (*MGLUpdateContext)(struct GLContextIFace *Self, struct TagItem *tagList);
        void APICALL (*MGLUpdateContextTags)(struct GLContextIFace *Self, ...);
        void APICALL (*MGLWaitGL)(struct GLContextIFace *Self);
        void APICALL (*GLTexImage1D)(struct GLContextIFace *Self, GLenum target, GLint level, GLint internalformat, GLsizei width,  GLint border, GLenum format, GLenum type, const GLvoid *pixels);
        void APICALL (*GLTexSubImage1D)(struct GLContextIFace *Self, GLenum target, GLint level, GLint xoffset, GLsizei width,  GLenum format, GLenum type, const GLvoid *pixels);
        void APICALL (*GLCopyTexImage1D)(struct GLContextIFace *Self, GLenum target, GLint level, GLint internalformat, GLint x, GLint y, GLsizei width, GLint border);
        void APICALL (*GLCopyTexSubImage1D)(struct GLContextIFace *Self, GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
		void APICALL (*GLGetPointerv)(struct GLContextIFace *Self, GLenum pname, GLvoid **params);
};

#endif /* MINIGL_INTERFACE_DEF_H */
