home *** CD-ROM | disk | FTP | other *** search
/ AmigActive 6 / AACD06.ISO / AACD / System / Mesa-3.1 / include / GL / gl.h < prev    next >
C/C++ Source or Header  |  2000-01-08  |  77KB  |  2,255 lines

  1. /* $Id: gl.h,v 1.8 1999/09/19 02:03:18 tjump Exp $ */
  2.  
  3. /*
  4.  * Mesa 3-D graphics library
  5.  * Version:  3.1
  6.  *
  7.  * Copyright (C) 1999  Brian Paul   All Rights Reserved.
  8.  *
  9.  * Permission is hereby granted, free of charge, to any person obtaining a
  10.  * copy of this software and associated documentation files (the "Software"),
  11.  * to deal in the Software without restriction, including without limitation
  12.  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
  13.  * and/or sell copies of the Software, and to permit persons to whom the
  14.  * Software is furnished to do so, subject to the following conditions:
  15.  *
  16.  * The above copyright notice and this permission notice shall be included
  17.  * in all copies or substantial portions of the Software.
  18.  *
  19.  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
  20.  * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
  21.  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
  22.  * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
  23.  * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
  24.  * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
  25.  */
  26.  
  27.  
  28.  
  29.  
  30. #ifndef GL_H
  31. #define GL_H
  32.  
  33. #if defined(USE_MGL_NAMESPACE)
  34. #include "gl_mangle.h"
  35. #endif
  36.  
  37.  
  38. #if defined(__BEOS__)
  39. #include <stdlib.h>     /* to get some BeOS-isms */
  40. #endif
  41.  
  42.  
  43. #if !defined(OPENSTEP) && (defined(NeXT) || defined(NeXT_PDO))
  44. #define OPENSTEP
  45. #endif
  46.  
  47.  
  48. #if defined(_WIN32) && !defined(__WIN32__)
  49. #    define __WIN32__
  50. #endif
  51.  
  52. #if !defined(OPENSTEP) && (defined(__WIN32__) || defined(__CYGWIN32__))
  53. #    pragma warning( disable : 4244 ) /* '=' : conversion from 'const double ' to 'float ', possible loss of data */
  54. #    pragma warning( disable : 4018 ) /* '<' : signed/unsigned mismatch */
  55. #    pragma warning( disable : 4305 ) /* '=' : truncation from 'const double ' to 'float ' */
  56. #    pragma warning( disable : 4550 ) /* 'function' undefined; assuming extern returning int */
  57. #    pragma warning( disable : 4761 ) /* integral size mismatch in argument; conversion supplied */
  58. #    if defined(_MSC_VER) && defined(BUILD_GL32) /* tag specify we're building mesa as a DLL */
  59. #        define GLAPI __declspec(dllexport)
  60. #     define WGLAPI __declspec(dllexport)
  61. #    elif defined(_MSC_VER) && defined(_DLL) /* tag specifying we're building for DLL runtime support */
  62. #        define GLAPI __declspec(dllimport)
  63. #     define WGLAPI __declspec(dllimport)
  64. #    else /* for use with static link lib build of Win32 edition only */
  65. #        define GLAPI extern
  66. #     define WGLAPI __declspec(dllimport)
  67. #    endif /* _STATIC_MESA support */
  68. #    define GLAPIENTRY __stdcall
  69. #    define GLCALLBACK __stdcall
  70. #    define GLWINAPI __stdcall
  71. #    define GLWINAPIV __cdecl
  72. #else
  73. /* non-Windows compilation */
  74. #    define GLAPI extern
  75. #    define GLAPIENTRY
  76. #    define GLCALLBACK
  77. #    define GLWINAPI
  78. #    define GLWINAPIV
  79. #endif /* WIN32 / CYGWIN32 bracket */
  80.  
  81. /* compatability guard so we don't need to change client code */
  82.  
  83. #if defined(_WIN32) && !defined(_WINDEF_) && !defined(OPENSTEP)
  84. #    if !defined(MESA_MINWARN)
  85. #        pragma message( "note: WINDOWS.H not included, providing Mesa definition of CALLBACK macro" )
  86. #        pragma message( "----: and PROC typedef. If you receive compiler warnings about either ")
  87. #        pragma message( "----: being multiply defined you should include WINDOWS.H priot to gl/gl.h" )
  88. #    endif
  89. #    define CALLBACK GLCALLBACK
  90. typedef int (GLAPIENTRY *PROC)();
  91. typedef void *HGLRC;
  92. typedef void *HDC;
  93. typedef unsigned long COLORREF;
  94. #endif
  95.  
  96. #if defined(_WIN32) && !defined(_WINGDI_) && !defined(OPENSTEP)
  97. #    if !defined(MESA_MINWARN)
  98. #        pragma message( "note: WINDOWS.H not included, providing Mesa definition of wgl functions" )
  99. #        pragma message( "----: and macros. If you receive compiler warnings about any being multiply ")
  100. #        pragma message( "----: defined you should include WINDOWS.H priot to gl/gl.h" )
  101. #    endif
  102. #    define WGL_FONT_LINES      0
  103. #    define WGL_FONT_POLYGONS   1
  104. #    ifdef UNICODE
  105. #        define wglUseFontBitmaps  wglUseFontBitmapsW
  106. #        define wglUseFontOutlines  wglUseFontOutlinesW
  107. #    else
  108. #        define wglUseFontBitmaps  wglUseFontBitmapsA
  109. #        define wglUseFontOutlines  wglUseFontOutlinesA
  110. #    endif /* !UNICODE */
  111. typedef struct tagLAYERPLANEDESCRIPTOR LAYERPLANEDESCRIPTOR, *PLAYERPLANEDESCRIPTOR, *LPLAYERPLANEDESCRIPTOR;
  112. typedef struct _GLYPHMETRICSFLOAT GLYPHMETRICSFLOAT, *PGLYPHMETRICSFLOAT, *LPGLYPHMETRICSFLOAT;
  113. typedef struct tagPIXELFORMATDESCRIPTOR PIXELFORMATDESCRIPTOR, *PPIXELFORMATDESCRIPTOR, *LPPIXELFORMATDESCRIPTOR;
  114. #include <gl/mesa_wgl.h>
  115. #endif
  116.  
  117.  
  118. #ifdef __cplusplus
  119. extern "C" {
  120. #endif
  121.  
  122.  
  123. #ifdef macintosh
  124.     #pragma enumsalwaysint on
  125.     #if PRAGMA_IMPORT_SUPPORTED
  126.     #pragma import on
  127.     #endif
  128. #endif
  129.  
  130.  
  131.  
  132. /*
  133.  * Apps can test for this symbol to do conditional compilation if needed.
  134.  */
  135. #define MESA
  136.  
  137. #define MESA_MAJOR_VERSION 3
  138. #define MESA_MINOR_VERSION 1
  139.  
  140.  
  141. #define GL_VERSION_1_1   1
  142. #define GL_VERSION_1_2   1
  143.  
  144.  
  145. /*
  146.  *
  147.  * Enumerations
  148.  *
  149.  */
  150.  
  151. typedef enum {
  152.     /* Boolean values */
  153.     GL_FALSE            = 0,
  154.     GL_TRUE                = 1,
  155.  
  156.     /* Data types */
  157.     GL_BYTE                = 0x1400,
  158.     GL_UNSIGNED_BYTE        = 0x1401,
  159.     GL_SHORT            = 0x1402,
  160.     GL_UNSIGNED_SHORT        = 0x1403,
  161.     GL_INT                = 0x1404,
  162.     GL_UNSIGNED_INT            = 0x1405,
  163.     GL_FLOAT            = 0x1406,
  164.     GL_DOUBLE            = 0x140A,
  165.     GL_2_BYTES            = 0x1407,
  166.     GL_3_BYTES            = 0x1408,
  167.     GL_4_BYTES            = 0x1409,
  168.  
  169.     /* Primitives */
  170.     GL_POINTS            = 0x0000,
  171.     GL_LINES            = 0x0001,
  172.     GL_LINE_LOOP            = 0x0002,
  173.     GL_LINE_STRIP            = 0x0003,
  174.     GL_TRIANGLES            = 0x0004,
  175.     GL_TRIANGLE_STRIP        = 0x0005,
  176.     GL_TRIANGLE_FAN            = 0x0006,
  177.     GL_QUADS            = 0x0007,
  178.     GL_QUAD_STRIP            = 0x0008,
  179.     GL_POLYGON            = 0x0009,
  180.  
  181.     /* Vertex Arrays */
  182.     GL_VERTEX_ARRAY            = 0x8074,
  183.     GL_NORMAL_ARRAY            = 0x8075,
  184.     GL_COLOR_ARRAY            = 0x8076,
  185.     GL_INDEX_ARRAY            = 0x8077,
  186.     GL_TEXTURE_COORD_ARRAY        = 0x8078,
  187.     GL_EDGE_FLAG_ARRAY        = 0x8079,
  188.     GL_VERTEX_ARRAY_SIZE        = 0x807A,
  189.     GL_VERTEX_ARRAY_TYPE        = 0x807B,
  190.     GL_VERTEX_ARRAY_STRIDE        = 0x807C,
  191.     GL_NORMAL_ARRAY_TYPE        = 0x807E,
  192.     GL_NORMAL_ARRAY_STRIDE        = 0x807F,
  193.     GL_COLOR_ARRAY_SIZE        = 0x8081,
  194.     GL_COLOR_ARRAY_TYPE        = 0x8082,
  195.     GL_COLOR_ARRAY_STRIDE        = 0x8083,
  196.     GL_INDEX_ARRAY_TYPE        = 0x8085,
  197.     GL_INDEX_ARRAY_STRIDE        = 0x8086,
  198.     GL_TEXTURE_COORD_ARRAY_SIZE    = 0x8088,
  199.     GL_TEXTURE_COORD_ARRAY_TYPE    = 0x8089,
  200.     GL_TEXTURE_COORD_ARRAY_STRIDE    = 0x808A,
  201.     GL_EDGE_FLAG_ARRAY_STRIDE    = 0x808C,
  202.     GL_VERTEX_ARRAY_POINTER        = 0x808E,
  203.     GL_NORMAL_ARRAY_POINTER        = 0x808F,
  204.     GL_COLOR_ARRAY_POINTER        = 0x8090,
  205.     GL_INDEX_ARRAY_POINTER        = 0x8091,
  206.     GL_TEXTURE_COORD_ARRAY_POINTER    = 0x8092,
  207.     GL_EDGE_FLAG_ARRAY_POINTER    = 0x8093,
  208.     GL_V2F                = 0x2A20,
  209.     GL_V3F                = 0x2A21,
  210.     GL_C4UB_V2F            = 0x2A22,
  211.     GL_C4UB_V3F            = 0x2A23,
  212.     GL_C3F_V3F            = 0x2A24,
  213.     GL_N3F_V3F            = 0x2A25,
  214.     GL_C4F_N3F_V3F            = 0x2A26,
  215.     GL_T2F_V3F            = 0x2A27,
  216.     GL_T4F_V4F            = 0x2A28,
  217.     GL_T2F_C4UB_V3F            = 0x2A29,
  218.     GL_T2F_C3F_V3F            = 0x2A2A,
  219.     GL_T2F_N3F_V3F            = 0x2A2B,
  220.     GL_T2F_C4F_N3F_V3F        = 0x2A2C,
  221.     GL_T4F_C4F_N3F_V4F        = 0x2A2D,
  222.  
  223.     /* Matrix Mode */
  224.     GL_MATRIX_MODE            = 0x0BA0,
  225.     GL_MODELVIEW            = 0x1700,
  226.     GL_PROJECTION            = 0x1701,
  227.     GL_TEXTURE            = 0x1702,
  228.  
  229.     /* Points */
  230.     GL_POINT_SMOOTH            = 0x0B10,
  231.     GL_POINT_SIZE            = 0x0B11,
  232.     GL_POINT_SIZE_GRANULARITY     = 0x0B13,
  233.     GL_POINT_SIZE_RANGE        = 0x0B12,
  234.  
  235.     /* Lines */
  236.     GL_LINE_SMOOTH            = 0x0B20,
  237.     GL_LINE_STIPPLE            = 0x0B24,
  238.     GL_LINE_STIPPLE_PATTERN        = 0x0B25,
  239.     GL_LINE_STIPPLE_REPEAT        = 0x0B26,
  240.     GL_LINE_WIDTH            = 0x0B21,
  241.     GL_LINE_WIDTH_GRANULARITY    = 0x0B23,
  242.     GL_LINE_WIDTH_RANGE        = 0x0B22,
  243.  
  244.     /* Polygons */
  245.     GL_POINT            = 0x1B00,
  246.     GL_LINE                = 0x1B01,
  247.     GL_FILL                = 0x1B02,
  248.     GL_CW                = 0x0900,
  249.     GL_CCW                = 0x0901,
  250.     GL_FRONT            = 0x0404,
  251.     GL_BACK                = 0x0405,
  252.     GL_POLYGON_MODE            = 0x0B40,
  253.     GL_POLYGON_SMOOTH        = 0x0B41,
  254.     GL_POLYGON_STIPPLE        = 0x0B42,
  255.     GL_EDGE_FLAG            = 0x0B43,
  256.     GL_CULL_FACE            = 0x0B44,
  257.     GL_CULL_FACE_MODE        = 0x0B45,
  258.     GL_FRONT_FACE            = 0x0B46,
  259.     GL_POLYGON_OFFSET_FACTOR    = 0x8038,
  260.     GL_POLYGON_OFFSET_UNITS        = 0x2A00,
  261.     GL_POLYGON_OFFSET_POINT        = 0x2A01,
  262.     GL_POLYGON_OFFSET_LINE        = 0x2A02,
  263.     GL_POLYGON_OFFSET_FILL        = 0x8037,
  264.  
  265.     /* Display Lists */
  266.     GL_COMPILE            = 0x1300,
  267.     GL_COMPILE_AND_EXECUTE        = 0x1301,
  268.     GL_LIST_BASE            = 0x0B32,
  269.     GL_LIST_INDEX            = 0x0B33,
  270.     GL_LIST_MODE            = 0x0B30,
  271.  
  272.     /* Depth buffer */
  273.     GL_NEVER            = 0x0200,
  274.     GL_LESS                = 0x0201,
  275.     GL_GEQUAL            = 0x0206,
  276.     GL_LEQUAL            = 0x0203,
  277.     GL_GREATER            = 0x0204,
  278.     GL_NOTEQUAL            = 0x0205,
  279.     GL_EQUAL            = 0x0202,
  280.     GL_ALWAYS            = 0x0207,
  281.     GL_DEPTH_TEST            = 0x0B71,
  282.     GL_DEPTH_BITS            = 0x0D56,
  283.     GL_DEPTH_CLEAR_VALUE        = 0x0B73,
  284.     GL_DEPTH_FUNC            = 0x0B74,
  285.     GL_DEPTH_RANGE            = 0x0B70,
  286.     GL_DEPTH_WRITEMASK        = 0x0B72,
  287.     GL_DEPTH_COMPONENT        = 0x1902,
  288.  
  289.     /* Lighting */
  290.     GL_LIGHTING            = 0x0B50,
  291.     GL_LIGHT0            = 0x4000,
  292.     GL_LIGHT1            = 0x4001,
  293.     GL_LIGHT2            = 0x4002,
  294.     GL_LIGHT3            = 0x4003,
  295.     GL_LIGHT4            = 0x4004,
  296.     GL_LIGHT5            = 0x4005,
  297.     GL_LIGHT6            = 0x4006,
  298.     GL_LIGHT7            = 0x4007,
  299.     GL_SPOT_EXPONENT        = 0x1205,
  300.     GL_SPOT_CUTOFF            = 0x1206,
  301.     GL_CONSTANT_ATTENUATION        = 0x1207,
  302.     GL_LINEAR_ATTENUATION        = 0x1208,
  303.     GL_QUADRATIC_ATTENUATION    = 0x1209,
  304.     GL_AMBIENT            = 0x1200,
  305.     GL_DIFFUSE            = 0x1201,
  306.     GL_SPECULAR            = 0x1202,
  307.     GL_SHININESS            = 0x1601,
  308.     GL_EMISSION            = 0x1600,
  309.     GL_POSITION            = 0x1203,
  310.     GL_SPOT_DIRECTION        = 0x1204,
  311.     GL_AMBIENT_AND_DIFFUSE        = 0x1602,
  312.     GL_COLOR_INDEXES        = 0x1603,
  313.     GL_LIGHT_MODEL_TWO_SIDE        = 0x0B52,
  314.     GL_LIGHT_MODEL_LOCAL_VIEWER    = 0x0B51,
  315.     GL_LIGHT_MODEL_AMBIENT        = 0x0B53,
  316.     GL_FRONT_AND_BACK        = 0x0408,
  317.     GL_SHADE_MODEL            = 0x0B54,
  318.     GL_FLAT                = 0x1D00,
  319.     GL_SMOOTH            = 0x1D01,
  320.     GL_COLOR_MATERIAL        = 0x0B57,
  321.     GL_COLOR_MATERIAL_FACE        = 0x0B55,
  322.     GL_COLOR_MATERIAL_PARAMETER    = 0x0B56,
  323.     GL_NORMALIZE            = 0x0BA1,
  324.  
  325.     /* User clipping planes */
  326.     GL_CLIP_PLANE0            = 0x3000,
  327.     GL_CLIP_PLANE1            = 0x3001,
  328.     GL_CLIP_PLANE2            = 0x3002,
  329.     GL_CLIP_PLANE3            = 0x3003,
  330.     GL_CLIP_PLANE4            = 0x3004,
  331.     GL_CLIP_PLANE5            = 0x3005,
  332.  
  333.     /* Accumulation buffer */
  334.     GL_ACCUM_RED_BITS        = 0x0D58,
  335.     GL_ACCUM_GREEN_BITS        = 0x0D59,
  336.     GL_ACCUM_BLUE_BITS        = 0x0D5A,
  337.     GL_ACCUM_ALPHA_BITS        = 0x0D5B,
  338.     GL_ACCUM_CLEAR_VALUE        = 0x0B80,
  339.     GL_ACCUM            = 0x0100,
  340.     GL_ADD                = 0x0104,
  341.     GL_LOAD                = 0x0101,
  342.     GL_MULT                = 0x0103,
  343.     GL_RETURN            = 0x0102,
  344.  
  345.     /* Alpha testing */
  346.     GL_ALPHA_TEST            = 0x0BC0,
  347.     GL_ALPHA_TEST_REF        = 0x0BC2,
  348.     GL_ALPHA_TEST_FUNC        = 0x0BC1,
  349.  
  350.     /* Blending */
  351.     GL_BLEND            = 0x0BE2,
  352.     GL_BLEND_SRC            = 0x0BE1,
  353.     GL_BLEND_DST            = 0x0BE0,
  354.     GL_ZERO                = 0,
  355.     GL_ONE                = 1,
  356.     GL_SRC_COLOR            = 0x0300,
  357.     GL_ONE_MINUS_SRC_COLOR        = 0x0301,
  358.     GL_DST_COLOR            = 0x0306,
  359.     GL_ONE_MINUS_DST_COLOR        = 0x0307,
  360.     GL_SRC_ALPHA            = 0x0302,
  361.     GL_ONE_MINUS_SRC_ALPHA        = 0x0303,
  362.     GL_DST_ALPHA            = 0x0304,
  363.     GL_ONE_MINUS_DST_ALPHA        = 0x0305,
  364.     GL_SRC_ALPHA_SATURATE        = 0x0308,
  365.     GL_CONSTANT_COLOR        = 0x8001,
  366.     GL_ONE_MINUS_CONSTANT_COLOR    = 0x8002,
  367.     GL_CONSTANT_ALPHA        = 0x8003,
  368.     GL_ONE_MINUS_CONSTANT_ALPHA    = 0x8004,
  369.  
  370.     /* Render Mode */
  371.     GL_FEEDBACK            = 0x1C01,
  372.     GL_RENDER            = 0x1C00,
  373.     GL_SELECT            = 0x1C02,
  374.  
  375.     /* Feedback */
  376.     GL_2D                = 0x0600,
  377.     GL_3D                = 0x0601,
  378.     GL_3D_COLOR            = 0x0602,
  379.     GL_3D_COLOR_TEXTURE        = 0x0603,
  380.     GL_4D_COLOR_TEXTURE        = 0x0604,
  381.     GL_POINT_TOKEN            = 0x0701,
  382.     GL_LINE_TOKEN            = 0x0702,
  383.     GL_LINE_RESET_TOKEN        = 0x0707,
  384.     GL_POLYGON_TOKEN        = 0x0703,
  385.     GL_BITMAP_TOKEN            = 0x0704,
  386.     GL_DRAW_PIXEL_TOKEN        = 0x0705,
  387.     GL_COPY_PIXEL_TOKEN        = 0x0706,
  388.     GL_PASS_THROUGH_TOKEN        = 0x0700,
  389.     GL_FEEDBACK_BUFFER_POINTER    = 0x0DF0,
  390.     GL_FEEDBACK_BUFFER_SIZE        = 0x0DF1,
  391.     GL_FEEDBACK_BUFFER_TYPE        = 0x0DF2,
  392.  
  393.     /* Selection */
  394.     GL_SELECTION_BUFFER_POINTER    = 0x0DF3,
  395.     GL_SELECTION_BUFFER_SIZE    = 0x0DF4,
  396.  
  397.     /* Fog */
  398.     GL_FOG                = 0x0B60,
  399.     GL_FOG_MODE            = 0x0B65,
  400.     GL_FOG_DENSITY            = 0x0B62,
  401.     GL_FOG_COLOR            = 0x0B66,
  402.     GL_FOG_INDEX            = 0x0B61,
  403.     GL_FOG_START            = 0x0B63,
  404.     GL_FOG_END            = 0x0B64,
  405.     GL_LINEAR            = 0x2601,
  406.     GL_EXP                = 0x0800,
  407.     GL_EXP2                = 0x0801,
  408.  
  409.     /* Logic Ops */
  410.     GL_LOGIC_OP            = 0x0BF1,
  411.     GL_INDEX_LOGIC_OP        = 0x0BF1,
  412.     GL_COLOR_LOGIC_OP        = 0x0BF2,
  413.     GL_LOGIC_OP_MODE        = 0x0BF0,
  414.     GL_CLEAR            = 0x1500,
  415.     GL_SET                = 0x150F,
  416.     GL_COPY                = 0x1503,
  417.     GL_COPY_INVERTED        = 0x150C,
  418.     GL_NOOP                = 0x1505,
  419.     GL_INVERT            = 0x150A,
  420.     GL_AND                = 0x1501,
  421.     GL_NAND                = 0x150E,
  422.     GL_OR                = 0x1507,
  423.     GL_NOR                = 0x1508,
  424.     GL_XOR                = 0x1506,
  425.     GL_EQUIV            = 0x1509,
  426.     GL_AND_REVERSE            = 0x1502,
  427.     GL_AND_INVERTED            = 0x1504,
  428.     GL_OR_REVERSE            = 0x150B,
  429.     GL_OR_INVERTED            = 0x150D,
  430.  
  431.     /* Stencil */
  432.     GL_STENCIL_TEST            = 0x0B90,
  433.     GL_STENCIL_WRITEMASK        = 0x0B98,
  434.     GL_STENCIL_BITS            = 0x0D57,
  435.     GL_STENCIL_FUNC            = 0x0B92,
  436.     GL_STENCIL_VALUE_MASK        = 0x0B93,
  437.     GL_STENCIL_REF            = 0x0B97,
  438.     GL_STENCIL_FAIL            = 0x0B94,
  439.     GL_STENCIL_PASS_DEPTH_PASS    = 0x0B96,
  440.     GL_STENCIL_PASS_DEPTH_FAIL    = 0x0B95,
  441.     GL_STENCIL_CLEAR_VALUE        = 0x0B91,
  442.     GL_STENCIL_INDEX        = 0x1901,
  443.     GL_KEEP                = 0x1E00,
  444.     GL_REPLACE            = 0x1E01,
  445.     GL_INCR                = 0x1E02,
  446.     GL_DECR                = 0x1E03,
  447.  
  448.     /* Buffers, Pixel Drawing/Reading */
  449.     GL_NONE                = 0,
  450.     GL_LEFT                = 0x0406,
  451.     GL_RIGHT            = 0x0407,
  452.     /*GL_FRONT            = 0x0404, */
  453.     /*GL_BACK            = 0x0405, */
  454.     /*GL_FRONT_AND_BACK        = 0x0408, */
  455.     GL_FRONT_LEFT            = 0x0400,
  456.     GL_FRONT_RIGHT            = 0x0401,
  457.     GL_BACK_LEFT            = 0x0402,
  458.     GL_BACK_RIGHT            = 0x0403,
  459.     GL_AUX0                = 0x0409,
  460.     GL_AUX1                = 0x040A,
  461.     GL_AUX2                = 0x040B,
  462.     GL_AUX3                = 0x040C,
  463.     GL_COLOR_INDEX            = 0x1900,
  464.     GL_RED                = 0x1903,
  465.     GL_GREEN            = 0x1904,
  466.     GL_BLUE                = 0x1905,
  467.     GL_ALPHA            = 0x1906,
  468.     GL_LUMINANCE            = 0x1909,
  469.     GL_LUMINANCE_ALPHA        = 0x190A,
  470.     GL_ALPHA_BITS            = 0x0D55,
  471.     GL_RED_BITS            = 0x0D52,
  472.     GL_GREEN_BITS            = 0x0D53,
  473.     GL_BLUE_BITS            = 0x0D54,
  474.     GL_INDEX_BITS            = 0x0D51,
  475.     GL_SUBPIXEL_BITS        = 0x0D50,
  476.     GL_AUX_BUFFERS            = 0x0C00,
  477.     GL_READ_BUFFER            = 0x0C02,
  478.     GL_DRAW_BUFFER            = 0x0C01,
  479.     GL_DOUBLEBUFFER            = 0x0C32,
  480.     GL_STEREO            = 0x0C33,
  481.     GL_BITMAP            = 0x1A00,
  482.     GL_COLOR            = 0x1800,
  483.     GL_DEPTH            = 0x1801,
  484.     GL_STENCIL            = 0x1802,
  485.     GL_DITHER            = 0x0BD0,
  486.     GL_RGB                = 0x1907,
  487.     GL_RGBA                = 0x1908,
  488.  
  489.     /* Implementation limits */
  490.     GL_MAX_LIST_NESTING        = 0x0B31,
  491.     GL_MAX_ATTRIB_STACK_DEPTH    = 0x0D35,
  492.     GL_MAX_MODELVIEW_STACK_DEPTH    = 0x0D36,
  493.     GL_MAX_NAME_STACK_DEPTH        = 0x0D37,
  494.     GL_MAX_PROJECTION_STACK_DEPTH    = 0x0D38,
  495.     GL_MAX_TEXTURE_STACK_DEPTH    = 0x0D39,
  496.     GL_MAX_EVAL_ORDER        = 0x0D30,
  497.     GL_MAX_LIGHTS            = 0x0D31,
  498.     GL_MAX_CLIP_PLANES        = 0x0D32,
  499.     GL_MAX_TEXTURE_SIZE        = 0x0D33,
  500.     GL_MAX_PIXEL_MAP_TABLE        = 0x0D34,
  501.     GL_MAX_VIEWPORT_DIMS        = 0x0D3A,
  502.     GL_MAX_CLIENT_ATTRIB_STACK_DEPTH= 0x0D3B,
  503.  
  504.     /* Gets */
  505.     GL_ATTRIB_STACK_DEPTH        = 0x0BB0,
  506.     GL_CLIENT_ATTRIB_STACK_DEPTH    = 0x0BB1,
  507.     GL_COLOR_CLEAR_VALUE        = 0x0C22,
  508.     GL_COLOR_WRITEMASK        = 0x0C23,
  509.     GL_CURRENT_INDEX        = 0x0B01,
  510.     GL_CURRENT_COLOR        = 0x0B00,
  511.     GL_CURRENT_NORMAL        = 0x0B02,
  512.     GL_CURRENT_RASTER_COLOR        = 0x0B04,
  513.     GL_CURRENT_RASTER_DISTANCE    = 0x0B09,
  514.     GL_CURRENT_RASTER_INDEX        = 0x0B05,
  515.     GL_CURRENT_RASTER_POSITION    = 0x0B07,
  516.     GL_CURRENT_RASTER_TEXTURE_COORDS = 0x0B06,
  517.     GL_CURRENT_RASTER_POSITION_VALID = 0x0B08,
  518.     GL_CURRENT_TEXTURE_COORDS    = 0x0B03,
  519.     GL_INDEX_CLEAR_VALUE        = 0x0C20,
  520.     GL_INDEX_MODE            = 0x0C30,
  521.     GL_INDEX_WRITEMASK        = 0x0C21,
  522.     GL_MODELVIEW_MATRIX        = 0x0BA6,
  523.     GL_MODELVIEW_STACK_DEPTH    = 0x0BA3,
  524.     GL_NAME_STACK_DEPTH        = 0x0D70,
  525.     GL_PROJECTION_MATRIX        = 0x0BA7,
  526.     GL_PROJECTION_STACK_DEPTH    = 0x0BA4,
  527.     GL_RENDER_MODE            = 0x0C40,
  528.     GL_RGBA_MODE            = 0x0C31,
  529.     GL_TEXTURE_MATRIX        = 0x0BA8,
  530.     GL_TEXTURE_STACK_DEPTH        = 0x0BA5,
  531.     GL_VIEWPORT            = 0x0BA2,
  532.  
  533.     /* Evaluators */
  534.     GL_AUTO_NORMAL            = 0x0D80,
  535.     GL_MAP1_COLOR_4            = 0x0D90,
  536.     GL_MAP1_GRID_DOMAIN        = 0x0DD0,
  537.     GL_MAP1_GRID_SEGMENTS        = 0x0DD1,
  538.     GL_MAP1_INDEX            = 0x0D91,
  539.     GL_MAP1_NORMAL            = 0x0D92,
  540.     GL_MAP1_TEXTURE_COORD_1        = 0x0D93,
  541.     GL_MAP1_TEXTURE_COORD_2        = 0x0D94,
  542.     GL_MAP1_TEXTURE_COORD_3        = 0x0D95,
  543.     GL_MAP1_TEXTURE_COORD_4        = 0x0D96,
  544.     GL_MAP1_VERTEX_3        = 0x0D97,
  545.     GL_MAP1_VERTEX_4        = 0x0D98,
  546.     GL_MAP2_COLOR_4            = 0x0DB0,
  547.     GL_MAP2_GRID_DOMAIN        = 0x0DD2,
  548.     GL_MAP2_GRID_SEGMENTS        = 0x0DD3,
  549.     GL_MAP2_INDEX            = 0x0DB1,
  550.     GL_MAP2_NORMAL            = 0x0DB2,
  551.     GL_MAP2_TEXTURE_COORD_1        = 0x0DB3,
  552.     GL_MAP2_TEXTURE_COORD_2        = 0x0DB4,
  553.     GL_MAP2_TEXTURE_COORD_3        = 0x0DB5,
  554.     GL_MAP2_TEXTURE_COORD_4        = 0x0DB6,
  555.     GL_MAP2_VERTEX_3        = 0x0DB7,
  556.     GL_MAP2_VERTEX_4        = 0x0DB8,
  557.     GL_COEFF            = 0x0A00,
  558.     GL_DOMAIN            = 0x0A02,
  559.     GL_ORDER            = 0x0A01,
  560.  
  561.     /* Hints */
  562.     GL_FOG_HINT            = 0x0C54,
  563.     GL_LINE_SMOOTH_HINT        = 0x0C52,
  564.     GL_PERSPECTIVE_CORRECTION_HINT    = 0x0C50,
  565.     GL_POINT_SMOOTH_HINT        = 0x0C51,
  566.     GL_POLYGON_SMOOTH_HINT        = 0x0C53,
  567.     GL_DONT_CARE            = 0x1100,
  568.     GL_FASTEST            = 0x1101,
  569.     GL_NICEST            = 0x1102,
  570.  
  571.     /* Scissor box */
  572.     GL_SCISSOR_TEST            = 0x0C11,
  573.     GL_SCISSOR_BOX            = 0x0C10,
  574.  
  575.     /* Pixel Mode / Transfer */
  576.     GL_MAP_COLOR            = 0x0D10,
  577.     GL_MAP_STENCIL            = 0x0D11,
  578.     GL_INDEX_SHIFT            = 0x0D12,
  579.     GL_INDEX_OFFSET            = 0x0D13,
  580.     GL_RED_SCALE            = 0x0D14,
  581.     GL_RED_BIAS            = 0x0D15,
  582.     GL_GREEN_SCALE            = 0x0D18,
  583.     GL_GREEN_BIAS            = 0x0D19,
  584.     GL_BLUE_SCALE            = 0x0D1A,
  585.     GL_BLUE_BIAS            = 0x0D1B,
  586.     GL_ALPHA_SCALE            = 0x0D1C,
  587.     GL_ALPHA_BIAS            = 0x0D1D,
  588.     GL_DEPTH_SCALE            = 0x0D1E,
  589.     GL_DEPTH_BIAS            = 0x0D1F,
  590.     GL_PIXEL_MAP_S_TO_S_SIZE    = 0x0CB1,
  591.     GL_PIXEL_MAP_I_TO_I_SIZE    = 0x0CB0,
  592.     GL_PIXEL_MAP_I_TO_R_SIZE    = 0x0CB2,
  593.     GL_PIXEL_MAP_I_TO_G_SIZE    = 0x0CB3,
  594.     GL_PIXEL_MAP_I_TO_B_SIZE    = 0x0CB4,
  595.     GL_PIXEL_MAP_I_TO_A_SIZE    = 0x0CB5,
  596.     GL_PIXEL_MAP_R_TO_R_SIZE    = 0x0CB6,
  597.     GL_PIXEL_MAP_G_TO_G_SIZE    = 0x0CB7,
  598.     GL_PIXEL_MAP_B_TO_B_SIZE    = 0x0CB8,
  599.     GL_PIXEL_MAP_A_TO_A_SIZE    = 0x0CB9,
  600.     GL_PIXEL_MAP_S_TO_S        = 0x0C71,
  601.     GL_PIXEL_MAP_I_TO_I        = 0x0C70,
  602.     GL_PIXEL_MAP_I_TO_R        = 0x0C72,
  603.     GL_PIXEL_MAP_I_TO_G        = 0x0C73,
  604.     GL_PIXEL_MAP_I_TO_B        = 0x0C74,
  605.     GL_PIXEL_MAP_I_TO_A        = 0x0C75,
  606.     GL_PIXEL_MAP_R_TO_R        = 0x0C76,
  607.     GL_PIXEL_MAP_G_TO_G        = 0x0C77,
  608.     GL_PIXEL_MAP_B_TO_B        = 0x0C78,
  609.     GL_PIXEL_MAP_A_TO_A        = 0x0C79,
  610.     GL_PACK_ALIGNMENT        = 0x0D05,
  611.     GL_PACK_LSB_FIRST        = 0x0D01,
  612.     GL_PACK_ROW_LENGTH        = 0x0D02,
  613.     GL_PACK_SKIP_PIXELS        = 0x0D04,
  614.     GL_PACK_SKIP_ROWS        = 0x0D03,
  615.     GL_PACK_SWAP_BYTES        = 0x0D00,
  616.     GL_UNPACK_ALIGNMENT        = 0x0CF5,
  617.     GL_UNPACK_LSB_FIRST        = 0x0CF1,
  618.     GL_UNPACK_ROW_LENGTH        = 0x0CF2,
  619.     GL_UNPACK_SKIP_PIXELS        = 0x0CF4,
  620.     GL_UNPACK_SKIP_ROWS        = 0x0CF3,
  621.     GL_UNPACK_SWAP_BYTES        = 0x0CF0,
  622.     GL_ZOOM_X            = 0x0D16,
  623.     GL_ZOOM_Y            = 0x0D17,
  624.  
  625.     /* Texture mapping */
  626.     GL_TEXTURE_ENV            = 0x2300,
  627.     GL_TEXTURE_ENV_MODE        = 0x2200,
  628.     GL_TEXTURE_1D            = 0x0DE0,
  629.     GL_TEXTURE_2D            = 0x0DE1,
  630.     GL_TEXTURE_WRAP_S        = 0x2802,
  631.     GL_TEXTURE_WRAP_T        = 0x2803,
  632.     GL_TEXTURE_MAG_FILTER        = 0x2800,
  633.     GL_TEXTURE_MIN_FILTER        = 0x2801,
  634.     GL_TEXTURE_ENV_COLOR        = 0x2201,
  635.     GL_TEXTURE_GEN_S        = 0x0C60,
  636.     GL_TEXTURE_GEN_T        = 0x0C61,
  637.     GL_TEXTURE_GEN_MODE        = 0x2500,
  638.     GL_TEXTURE_BORDER_COLOR        = 0x1004,
  639.     GL_TEXTURE_WIDTH        = 0x1000,
  640.     GL_TEXTURE_HEIGHT        = 0x1001,
  641.     GL_TEXTURE_BORDER        = 0x1005,
  642.     GL_TEXTURE_COMPONENTS        = 0x1003,
  643.     GL_TEXTURE_RED_SIZE        = 0x805C,
  644.     GL_TEXTURE_GREEN_SIZE        = 0x805D,
  645.     GL_TEXTURE_BLUE_SIZE        = 0x805E,
  646.     GL_TEXTURE_ALPHA_SIZE        = 0x805F,
  647.     GL_TEXTURE_LUMINANCE_SIZE    = 0x8060,
  648.     GL_TEXTURE_INTENSITY_SIZE    = 0x8061,
  649.     GL_NEAREST_MIPMAP_NEAREST    = 0x2700,
  650.     GL_NEAREST_MIPMAP_LINEAR    = 0x2702,
  651.     GL_LINEAR_MIPMAP_NEAREST    = 0x2701,
  652.     GL_LINEAR_MIPMAP_LINEAR        = 0x2703,
  653.     GL_OBJECT_LINEAR        = 0x2401,
  654.     GL_OBJECT_PLANE            = 0x2501,
  655.     GL_EYE_LINEAR            = 0x2400,
  656.     GL_EYE_PLANE            = 0x2502,
  657.     GL_SPHERE_MAP            = 0x2402,
  658.     GL_DECAL            = 0x2101,
  659.     GL_MODULATE            = 0x2100,
  660.     GL_NEAREST            = 0x2600,
  661.     GL_REPEAT            = 0x2901,
  662.     GL_CLAMP            = 0x2900,
  663.     GL_S                = 0x2000,
  664.     GL_T                = 0x2001,
  665.     GL_R                = 0x2002,
  666.     GL_Q                = 0x2003,
  667.     GL_TEXTURE_GEN_R        = 0x0C62,
  668.     GL_TEXTURE_GEN_Q        = 0x0C63,
  669.  
  670.     /* GL 1.1 texturing */
  671.     GL_PROXY_TEXTURE_1D        = 0x8063,
  672.     GL_PROXY_TEXTURE_2D        = 0x8064,
  673.     GL_TEXTURE_PRIORITY        = 0x8066,
  674.     GL_TEXTURE_RESIDENT        = 0x8067,
  675.     GL_TEXTURE_BINDING_1D        = 0x8068,
  676.     GL_TEXTURE_BINDING_2D        = 0x8069,
  677.     GL_TEXTURE_INTERNAL_FORMAT    = 0x1003,
  678.  
  679.     /* GL 1.2 texturing */
  680.     GL_PACK_SKIP_IMAGES        = 0x806B,
  681.     GL_PACK_IMAGE_HEIGHT        = 0x806C,
  682.     GL_UNPACK_SKIP_IMAGES        = 0x806D,
  683.     GL_UNPACK_IMAGE_HEIGHT        = 0x806E,
  684.     GL_TEXTURE_3D            = 0x806F,
  685.     GL_PROXY_TEXTURE_3D        = 0x8070,
  686.     GL_TEXTURE_DEPTH        = 0x8071,
  687.     GL_TEXTURE_WRAP_R        = 0x8072,
  688.     GL_MAX_3D_TEXTURE_SIZE        = 0x8073,
  689.     GL_TEXTURE_BINDING_3D        = 0x806A,
  690.  
  691.     /* Internal texture formats (GL 1.1) */
  692.     GL_ALPHA4            = 0x803B,
  693.     GL_ALPHA8            = 0x803C,
  694.     GL_ALPHA12            = 0x803D,
  695.     GL_ALPHA16            = 0x803E,
  696.     GL_LUMINANCE4            = 0x803F,
  697.     GL_LUMINANCE8            = 0x8040,
  698.     GL_LUMINANCE12            = 0x8041,
  699.     GL_LUMINANCE16            = 0x8042,
  700.     GL_LUMINANCE4_ALPHA4        = 0x8043,
  701.     GL_LUMINANCE6_ALPHA2        = 0x8044,
  702.     GL_LUMINANCE8_ALPHA8        = 0x8045,
  703.     GL_LUMINANCE12_ALPHA4        = 0x8046,
  704.     GL_LUMINANCE12_ALPHA12        = 0x8047,
  705.     GL_LUMINANCE16_ALPHA16        = 0x8048,
  706.     GL_INTENSITY            = 0x8049,
  707.     GL_INTENSITY4            = 0x804A,
  708.     GL_INTENSITY8            = 0x804B,
  709.     GL_INTENSITY12            = 0x804C,
  710.     GL_INTENSITY16            = 0x804D,
  711.     GL_R3_G3_B2            = 0x2A10,
  712.     GL_RGB4                = 0x804F,
  713.     GL_RGB5                = 0x8050,
  714.     GL_RGB8                = 0x8051,
  715.     GL_RGB10            = 0x8052,
  716.     GL_RGB12            = 0x8053,
  717.     GL_RGB16            = 0x8054,
  718.     GL_RGBA2            = 0x8055,
  719.     GL_RGBA4            = 0x8056,
  720.     GL_RGB5_A1            = 0x8057,
  721.     GL_RGBA8            = 0x8058,
  722.     GL_RGB10_A2            = 0x8059,
  723.     GL_RGBA12            = 0x805A,
  724.     GL_RGBA16            = 0x805B,
  725.  
  726.     /* Utility */
  727.     GL_VENDOR            = 0x1F00,
  728.     GL_RENDERER            = 0x1F01,
  729.     GL_VERSION            = 0x1F02,
  730.     GL_EXTENSIONS            = 0x1F03,
  731.  
  732.     /* Errors */
  733.     GL_INVALID_VALUE        = 0x0501,
  734.     GL_INVALID_ENUM            = 0x0500,
  735.     GL_INVALID_OPERATION        = 0x0502,
  736.     GL_STACK_OVERFLOW        = 0x0503,
  737.     GL_STACK_UNDERFLOW        = 0x0504,
  738.     GL_OUT_OF_MEMORY        = 0x0505,
  739.  
  740.     /*
  741.      * Extensions
  742.      */
  743.  
  744.     /* GL_EXT_blend_minmax and GL_EXT_blend_color */
  745.     GL_CONSTANT_COLOR_EXT            = 0x8001,
  746.     GL_ONE_MINUS_CONSTANT_COLOR_EXT        = 0x8002,
  747.     GL_CONSTANT_ALPHA_EXT            = 0x8003,
  748.     GL_ONE_MINUS_CONSTANT_ALPHA_EXT        = 0x8004,
  749.     GL_BLEND_EQUATION_EXT            = 0x8009,
  750.     GL_MIN_EXT                = 0x8007,
  751.     GL_MAX_EXT                = 0x8008,
  752.     GL_FUNC_ADD_EXT                = 0x8006,
  753.     GL_FUNC_SUBTRACT_EXT            = 0x800A,
  754.     GL_FUNC_REVERSE_SUBTRACT_EXT        = 0x800B,
  755.     GL_BLEND_COLOR_EXT            = 0x8005,
  756.  
  757.     /* GL_EXT_polygon_offset */
  758.     GL_POLYGON_OFFSET_EXT            = 0x8037,
  759.     GL_POLYGON_OFFSET_FACTOR_EXT        = 0x8038,
  760.     GL_POLYGON_OFFSET_BIAS_EXT        = 0x8039,
  761.  
  762.     /* GL_EXT_vertex_array */
  763.     GL_VERTEX_ARRAY_EXT            = 0x8074,
  764.     GL_NORMAL_ARRAY_EXT            = 0x8075,
  765.     GL_COLOR_ARRAY_EXT            = 0x8076,
  766.     GL_INDEX_ARRAY_EXT            = 0x8077,
  767.     GL_TEXTURE_COORD_ARRAY_EXT        = 0x8078,
  768.     GL_EDGE_FLAG_ARRAY_EXT            = 0x8079,
  769.     GL_VERTEX_ARRAY_SIZE_EXT        = 0x807A,
  770.     GL_VERTEX_ARRAY_TYPE_EXT        = 0x807B,
  771.     GL_VERTEX_ARRAY_STRIDE_EXT        = 0x807C,
  772.     GL_VERTEX_ARRAY_COUNT_EXT        = 0x807D,
  773.     GL_NORMAL_ARRAY_TYPE_EXT        = 0x807E,
  774.     GL_NORMAL_ARRAY_STRIDE_EXT        = 0x807F,
  775.     GL_NORMAL_ARRAY_COUNT_EXT        = 0x8080,
  776.     GL_COLOR_ARRAY_SIZE_EXT            = 0x8081,
  777.     GL_COLOR_ARRAY_TYPE_EXT            = 0x8082,
  778.     GL_COLOR_ARRAY_STRIDE_EXT        = 0x8083,
  779.     GL_COLOR_ARRAY_COUNT_EXT        = 0x8084,
  780.     GL_INDEX_ARRAY_TYPE_EXT            = 0x8085,
  781.     GL_INDEX_ARRAY_STRIDE_EXT        = 0x8086,
  782.     GL_INDEX_ARRAY_COUNT_EXT        = 0x8087,
  783.     GL_TEXTURE_COORD_ARRAY_SIZE_EXT        = 0x8088,
  784.     GL_TEXTURE_COORD_ARRAY_TYPE_EXT        = 0x8089,
  785.     GL_TEXTURE_COORD_ARRAY_STRIDE_EXT    = 0x808A,
  786.     GL_TEXTURE_COORD_ARRAY_COUNT_EXT    = 0x808B,
  787.     GL_EDGE_FLAG_ARRAY_STRIDE_EXT        = 0x808C,
  788.     GL_EDGE_FLAG_ARRAY_COUNT_EXT        = 0x808D,
  789.     GL_VERTEX_ARRAY_POINTER_EXT        = 0x808E,
  790.     GL_NORMAL_ARRAY_POINTER_EXT        = 0x808F,
  791.     GL_COLOR_ARRAY_POINTER_EXT        = 0x8090,
  792.     GL_INDEX_ARRAY_POINTER_EXT        = 0x8091,
  793.     GL_TEXTURE_COORD_ARRAY_POINTER_EXT    = 0x8092,
  794.     GL_EDGE_FLAG_ARRAY_POINTER_EXT        = 0x8093,
  795.  
  796.     /* GL_EXT_texture_object */
  797.     GL_TEXTURE_PRIORITY_EXT            = 0x8066,
  798.     GL_TEXTURE_RESIDENT_EXT            = 0x8067,
  799.     GL_TEXTURE_1D_BINDING_EXT        = 0x8068,
  800.     GL_TEXTURE_2D_BINDING_EXT        = 0x8069,
  801.  
  802.     /* GL_EXT_texture3D */
  803.     GL_PACK_SKIP_IMAGES_EXT            = 0x806B,
  804.     GL_PACK_IMAGE_HEIGHT_EXT        = 0x806C,
  805.     GL_UNPACK_SKIP_IMAGES_EXT        = 0x806D,
  806.     GL_UNPACK_IMAGE_HEIGHT_EXT        = 0x806E,
  807.     GL_TEXTURE_3D_EXT            = 0x806F,
  808.     GL_PROXY_TEXTURE_3D_EXT            = 0x8070,
  809.     GL_TEXTURE_DEPTH_EXT            = 0x8071,
  810.     GL_TEXTURE_WRAP_R_EXT            = 0x8072,
  811.     GL_MAX_3D_TEXTURE_SIZE_EXT        = 0x8073,
  812.     GL_TEXTURE_3D_BINDING_EXT        = 0x806A,
  813.  
  814.     /* GL_EXT_paletted_texture */
  815.     GL_TABLE_TOO_LARGE_EXT            = 0x8031,
  816.     GL_COLOR_TABLE_FORMAT_EXT        = 0x80D8,
  817.     GL_COLOR_TABLE_WIDTH_EXT        = 0x80D9,
  818.     GL_COLOR_TABLE_RED_SIZE_EXT        = 0x80DA,
  819.     GL_COLOR_TABLE_GREEN_SIZE_EXT        = 0x80DB,
  820.     GL_COLOR_TABLE_BLUE_SIZE_EXT        = 0x80DC,
  821.     GL_COLOR_TABLE_ALPHA_SIZE_EXT         = 0x80DD,
  822.     GL_COLOR_TABLE_LUMINANCE_SIZE_EXT    = 0x80DE,
  823.     GL_COLOR_TABLE_INTENSITY_SIZE_EXT    = 0x80DF,
  824.     GL_TEXTURE_INDEX_SIZE_EXT        = 0x80ED,
  825.     GL_COLOR_INDEX1_EXT            = 0x80E2,
  826.     GL_COLOR_INDEX2_EXT            = 0x80E3,
  827.     GL_COLOR_INDEX4_EXT            = 0x80E4,
  828.     GL_COLOR_INDEX8_EXT            = 0x80E5,
  829.     GL_COLOR_INDEX12_EXT            = 0x80E6,
  830.     GL_COLOR_INDEX16_EXT            = 0x80E7,
  831.  
  832.     /* GL_EXT_shared_texture_palette */
  833.     GL_SHARED_TEXTURE_PALETTE_EXT        = 0x81FB,
  834.  
  835.     /* GL_EXT_point_parameters */
  836.     GL_POINT_SIZE_MIN_EXT            = 0x8126,
  837.     GL_POINT_SIZE_MAX_EXT            = 0x8127,
  838.     GL_POINT_FADE_THRESHOLD_SIZE_EXT    = 0x8128,
  839.     GL_DISTANCE_ATTENUATION_EXT        = 0x8129,
  840.  
  841.     /* GL_EXT_rescale_normal */
  842.     GL_RESCALE_NORMAL_EXT            = 0x803A,
  843.  
  844.     /* GL_EXT_abgr */
  845.     GL_ABGR_EXT                = 0x8000,
  846.  
  847.     /* GL_EXT_stencil_wrap */
  848.     GL_INCR_WRAP_EXT            = 0x8507,
  849.     GL_DECR_WRAP_EXT            = 0x8508,
  850.  
  851.     /* GL_SGIS_texture_edge_clamp */
  852.     GL_CLAMP_TO_EDGE_SGIS            = 0x812F,
  853.  
  854.     /* GL_INGR_blend_func_separate */
  855.     GL_BLEND_DST_RGB_INGR            = 0x80C8,
  856.     GL_BLEND_SRC_RGB_INGR            = 0x80C9,
  857.     GL_BLEND_DST_ALPHA_INGR            = 0x80CA,
  858.     GL_BLEND_SRC_ALPHA_INGR            = 0x80CB,
  859.  
  860.     /* OpenGL 1.2 */
  861.     GL_RESCALE_NORMAL            = 0x803A,
  862.     GL_CLAMP_TO_EDGE            = 0x812F,
  863.     GL_MAX_ELEMENTS_VERTICES        = 0xF0E8,
  864.     GL_MAX_ELEMENTS_INDICES            = 0xF0E9,
  865.     GL_BGR                    = 0x80E0,
  866.     GL_BGRA                    = 0x80E1,
  867.     GL_UNSIGNED_BYTE_3_3_2            = 0x8032,
  868.     GL_UNSIGNED_BYTE_2_3_3_REV        = 0x8362,
  869.     GL_UNSIGNED_SHORT_5_6_5            = 0x8363,
  870.     GL_UNSIGNED_SHORT_5_6_5_REV        = 0x8364,
  871.     GL_UNSIGNED_SHORT_4_4_4_4        = 0x8033,
  872.     GL_UNSIGNED_SHORT_4_4_4_4_REV        = 0x8365,
  873.     GL_UNSIGNED_SHORT_5_5_5_1        = 0x8034,
  874.     GL_UNSIGNED_SHORT_1_5_5_5_REV        = 0x8366,
  875.     GL_UNSIGNED_INT_8_8_8_8            = 0x8035,
  876.     GL_UNSIGNED_INT_8_8_8_8_REV        = 0x8367,
  877.     GL_UNSIGNED_INT_10_10_10_2        = 0x8036,
  878.     GL_UNSIGNED_INT_2_10_10_10_REV        = 0x8368,
  879.     GL_LIGHT_MODEL_COLOR_CONTROL        = 0x81F8,
  880.     GL_SINGLE_COLOR                = 0x81F9,
  881.     GL_SEPARATE_SPECULAR_COLOR        = 0x81FA,
  882.     GL_TEXTURE_MIN_LOD            = 0x813A,
  883.     GL_TEXTURE_MAX_LOD            = 0x813B,
  884.     GL_TEXTURE_BASE_LEVEL            = 0x813C,
  885.     GL_TEXTURE_MAX_LEVEL            = 0x813D,
  886.  
  887.     /* GL_ARB_multitexture */
  888.     GL_TEXTURE0_ARB                = 0x84C0,
  889.     GL_TEXTURE1_ARB                = 0x84C1,
  890.     GL_TEXTURE2_ARB                = 0x84C2,
  891.     GL_TEXTURE3_ARB                = 0x84C3,
  892.     GL_TEXTURE4_ARB                = 0x84C4,
  893.     GL_TEXTURE5_ARB                = 0x84C5,
  894.     GL_TEXTURE6_ARB                = 0x84C6,
  895.     GL_TEXTURE7_ARB                = 0x84C7,
  896.     GL_TEXTURE8_ARB                = 0x84C8,
  897.     GL_TEXTURE9_ARB                = 0x84C9,
  898.     GL_TEXTURE10_ARB            = 0x84CA,
  899.     GL_TEXTURE11_ARB            = 0x84CB,
  900.     GL_TEXTURE12_ARB            = 0x84CC,
  901.     GL_TEXTURE13_ARB            = 0x84CD,
  902.     GL_TEXTURE14_ARB            = 0x84CE,
  903.     GL_TEXTURE15_ARB            = 0x84CF,
  904.     GL_TEXTURE16_ARB            = 0x84D0,
  905.     GL_TEXTURE17_ARB            = 0x84D1,
  906.     GL_TEXTURE18_ARB            = 0x84D2,
  907.     GL_TEXTURE19_ARB            = 0x84D3,
  908.     GL_TEXTURE20_ARB            = 0x84D4,
  909.     GL_TEXTURE21_ARB            = 0x84D5,
  910.     GL_TEXTURE22_ARB            = 0x84D6,
  911.     GL_TEXTURE23_ARB            = 0x84D7,
  912.     GL_TEXTURE24_ARB            = 0x84D8,
  913.     GL_TEXTURE25_ARB            = 0x84D9,
  914.     GL_TEXTURE26_ARB            = 0x84DA,
  915.     GL_TEXTURE27_ARB            = 0x84DB,
  916.     GL_TEXTURE28_ARB            = 0x84DC,
  917.     GL_TEXTURE29_ARB            = 0x84DD,
  918.     GL_TEXTURE30_ARB            = 0x84DE,
  919.     GL_TEXTURE31_ARB            = 0x84DF,
  920.     GL_ACTIVE_TEXTURE_ARB            = 0x84E0,
  921.     GL_CLIENT_ACTIVE_TEXTURE_ARB        = 0x84E1,
  922.     GL_MAX_TEXTURE_UNITS_ARB        = 0x84E2,
  923.  
  924.     /*
  925.      * OpenGL 1.2 imaging subset (NOT IMPLEMENTED BY MESA)
  926.      */
  927.     /* GL_EXT_color_table */
  928.     GL_COLOR_TABLE                = 0x80D0,
  929.     GL_POST_CONVOLUTION_COLOR_TABLE        = 0x80D1,
  930.     GL_POST_COLOR_MATRIX_COLOR_TABLE    = 0x80D2,
  931.     GL_PROXY_COLOR_TABLE            = 0x80D3,
  932.     GL_PROXY_POST_CONVOLUTION_COLOR_TABLE    = 0x80D4,
  933.     GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE    = 0x80D5,
  934.     GL_COLOR_TABLE_SCALE            = 0x80D6,
  935.     GL_COLOR_TABLE_BIAS            = 0x80D7,
  936.     GL_COLOR_TABLE_FORMAT            = 0x80D8,
  937.     GL_COLOR_TABLE_WIDTH            = 0x80D9,
  938.     GL_COLOR_TABLE_RED_SIZE            = 0x80DA,
  939.     GL_COLOR_TABLE_GREEN_SIZE        = 0x80DB,
  940.     GL_COLOR_TABLE_BLUE_SIZE        = 0x80DC,
  941.     GL_COLOR_TABLE_ALPHA_SIZE        = 0x80DD,
  942.     GL_COLOR_TABLE_LUMINANCE_SIZE        = 0x80DE,
  943.     GL_COLOR_TABLE_INTENSITY_SIZE        = 0x80DF,
  944.  
  945.     /* GL_EXT_convolution and GL_HP_convolution_border_modes */
  946.     GL_CONVOLUTION_1D            = 0x8010,
  947.     GL_CONVOLUTION_2D            = 0x8011,
  948.     GL_SEPARABLE_2D                = 0x8012,
  949.     GL_CONVOLUTION_BORDER_MODE        = 0x8013,
  950.     GL_CONVOLUTION_FILTER_SCALE        = 0x8014,
  951.     GL_CONVOLUTION_FILTER_BIAS        = 0x8015,
  952.     GL_REDUCE                = 0x8016,
  953.     GL_CONVOLUTION_FORMAT            = 0x8017,
  954.     GL_CONVOLUTION_WIDTH            = 0x8018,
  955.     GL_CONVOLUTION_HEIGHT            = 0x8019,
  956.     GL_MAX_CONVOLUTION_WIDTH        = 0x801A,
  957.     GL_MAX_CONVOLUTION_HEIGHT        = 0x801B,
  958.     GL_POST_CONVOLUTION_RED_SCALE        = 0x801C,
  959.     GL_POST_CONVOLUTION_GREEN_SCALE        = 0x801D,
  960.     GL_POST_CONVOLUTION_BLUE_SCALE        = 0x801E,
  961.     GL_POST_CONVOLUTION_ALPHA_SCALE        = 0x801F,
  962.     GL_POST_CONVOLUTION_RED_BIAS        = 0x8020,
  963.     GL_POST_CONVOLUTION_GREEN_BIAS        = 0x8021,
  964.     GL_POST_CONVOLUTION_BLUE_BIAS        = 0x8022,
  965.     GL_POST_CONVOLUTION_ALPHA_BIAS        = 0x8023,
  966.     GL_CONSTANT_BORDER            = 0x8151,
  967.     GL_REPLICATE_BORDER            = 0x8153,
  968.     GL_CONVOLUTION_BORDER_COLOR        = 0x8154,
  969.  
  970.     /* GL_SGI_color_matrix */
  971.     GL_COLOR_MATRIX                = 0x80B1,
  972.     GL_COLOR_MATRIX_STACK_DEPTH        = 0x80B2,
  973.     GL_MAX_COLOR_MATRIX_STACK_DEPTH        = 0x80B3,
  974.     GL_POST_COLOR_MATRIX_RED_SCALE        = 0x80B4,
  975.     GL_POST_COLOR_MATRIX_GREEN_SCALE    = 0x80B5,
  976.     GL_POST_COLOR_MATRIX_BLUE_SCALE        = 0x80B6,
  977.     GL_POST_COLOR_MATRIX_ALPHA_SCALE    = 0x80B7,
  978.     GL_POST_COLOR_MATRIX_RED_BIAS        = 0x80B8,
  979.     GL_POST_COLOR_MATRIX_GREEN_BIAS        = 0x80B9,
  980.     GL_POST_COLOR_MATRIX_BLUE_BIAS        = 0x80BA,
  981.     GL_POST_COLOR_MATRIX_ALPHA_BIAS        = 0x80BB,
  982.  
  983.     /* GL_EXT_histogram */
  984.     GL_HISTOGRAM                = 0x8024,
  985.     GL_PROXY_HISTOGRAM            = 0x8025,
  986.     GL_HISTOGRAM_WIDTH            = 0x8026,
  987.     GL_HISTOGRAM_FORMAT            = 0x8027,
  988.     GL_HISTOGRAM_RED_SIZE            = 0x8028,
  989.     GL_HISTOGRAM_GREEN_SIZE            = 0x8029,
  990.     GL_HISTOGRAM_BLUE_SIZE            = 0x802A,
  991.     GL_HISTOGRAM_ALPHA_SIZE            = 0x802B,
  992.     GL_HISTOGRAM_LUMINANCE_SIZE        = 0x802C,
  993.     GL_HISTOGRAM_SINK            = 0x802D,
  994.     GL_MINMAX                = 0x802E,
  995.     GL_MINMAX_FORMAT            = 0x802F,
  996.     GL_MINMAX_SINK                = 0x8030,
  997.     GL_TABLE_TOO_LARGE            = 0x8031,
  998.  
  999.     /* GL_NV_texgen_reflection (nVidia) */
  1000.     GL_NORMAL_MAP_NV            = 0x8511,
  1001.     GL_REFLECTION_MAP_NV            = 0x8512,
  1002.  
  1003.     /* GL_PGI_misc_hints */
  1004.     GL_PREFER_DOUBLEBUFFER_HINT_PGI        = 107000,
  1005.     GL_STRICT_DEPTHFUNC_HINT_PGI        = 107030,
  1006.     GL_STRICT_LIGHTING_HINT_PGI        = 107031,
  1007.     GL_STRICT_SCISSOR_HINT_PGI        = 107032,
  1008.     GL_FULL_STIPPLE_HINT_PGI        = 107033,
  1009.     GL_NATIVE_GRAPHICS_BEGIN_HINT_PGI    = 107011,
  1010.     GL_NATIVE_GRAPHICS_END_HINT_PGI        = 107012,
  1011.     GL_CONSERVE_MEMORY_HINT_PGI        = 107005,
  1012.     GL_RECLAIM_MEMORY_HINT_PGI        = 107006,
  1013.     GL_ALWAYS_FAST_HINT_PGI            = 107020,
  1014.     GL_ALWAYS_SOFT_HINT_PGI            = 107021,
  1015.     GL_ALLOW_DRAW_OBJ_HINT_PGI        = 107022,
  1016.     GL_ALLOW_DRAW_WIN_HINT_PGI        = 107023,
  1017.     GL_ALLOW_DRAW_FRG_HINT_PGI        = 107024,
  1018.     GL_ALLOW_DRAW_SPN_HINT_PGI        = 107024,
  1019.     GL_ALLOW_DRAW_MEM_HINT_PGI        = 107025,
  1020.     GL_CLIP_NEAR_HINT_PGI            = 107040,
  1021.     GL_CLIP_FAR_HINT_PGI            = 107041,
  1022.     GL_WIDE_LINE_HINT_PGI              = 107042,
  1023.     GL_BACK_NORMALS_HINT_PGI        = 107043,
  1024.     GL_NATIVE_GRAPHICS_HANDLE_PGI        = 107010,
  1025.  
  1026.     /* GL_EXT_compiled_vertex_array */
  1027.     GL_ARRAY_ELEMENT_LOCK_FIRST_SGI        = 0x81A8,
  1028.     GL_ARRAY_ELEMENT_LOCK_COUNT_SGI        = 0x81A9,
  1029.  
  1030.     /* GL_EXT_clip_volume_hint */
  1031.     GL_CLIP_VOLUME_CLIPPING_HINT_EXT    = 0x80F0
  1032.  
  1033.  
  1034. /* When you add new enums, please make sure you update the strings
  1035.  * in enums.c as well...
  1036.  */
  1037.  
  1038. }
  1039. #ifdef CENTERLINE_CLPP
  1040.   /* CenterLine C++ workaround: */
  1041.   gl_enum;
  1042.   typedef int GLenum;
  1043. #else
  1044.   /* all other compilers */
  1045.   GLenum;
  1046. #endif
  1047.  
  1048.  
  1049. /* GL_NO_ERROR must be zero */
  1050. #define GL_NO_ERROR 0
  1051.  
  1052.  
  1053.  
  1054. enum {
  1055.     GL_CURRENT_BIT        = 0x00000001,
  1056.     GL_POINT_BIT        = 0x00000002,
  1057.     GL_LINE_BIT        = 0x00000004,
  1058.     GL_POLYGON_BIT        = 0x00000008,
  1059.     GL_POLYGON_STIPPLE_BIT    = 0x00000010,
  1060.     GL_PIXEL_MODE_BIT    = 0x00000020,
  1061.     GL_LIGHTING_BIT        = 0x00000040,
  1062.     GL_FOG_BIT        = 0x00000080,
  1063.     GL_DEPTH_BUFFER_BIT    = 0x00000100,
  1064.     GL_ACCUM_BUFFER_BIT    = 0x00000200,
  1065.     GL_STENCIL_BUFFER_BIT    = 0x00000400,
  1066.     GL_VIEWPORT_BIT        = 0x00000800,
  1067.     GL_TRANSFORM_BIT    = 0x00001000,
  1068.     GL_ENABLE_BIT        = 0x00002000,
  1069.     GL_COLOR_BUFFER_BIT    = 0x00004000,
  1070.     GL_HINT_BIT        = 0x00008000,
  1071.     GL_EVAL_BIT        = 0x00010000,
  1072.     GL_LIST_BIT        = 0x00020000,
  1073.     GL_TEXTURE_BIT        = 0x00040000,
  1074.     GL_SCISSOR_BIT        = 0x00080000,
  1075.     GL_ALL_ATTRIB_BITS    = 0x000FFFFF
  1076. };
  1077.  
  1078.  
  1079. enum {
  1080.     GL_CLIENT_PIXEL_STORE_BIT    = 0x00000001,
  1081.     GL_CLIENT_VERTEX_ARRAY_BIT    = 0x00000002
  1082. };
  1083. #define GL_CLIENT_ALL_ATTRIB_BITS 0xFFFFFFFF
  1084.  
  1085.  
  1086. typedef unsigned int GLbitfield;
  1087.  
  1088.  
  1089. #ifdef CENTERLINE_CLPP
  1090. #define signed
  1091. #endif
  1092.  
  1093.  
  1094. /*
  1095.  *
  1096.  * Data types (may be architecture dependent in some cases)
  1097.  *
  1098.  */
  1099.  
  1100. /*  C type        GL type        storage                            */
  1101. /*-------------------------------------------------------------------------*/
  1102. typedef void        GLvoid;
  1103. typedef unsigned char    GLboolean;
  1104. typedef signed char    GLbyte;        /* 1-byte signed */
  1105. typedef short        GLshort;    /* 2-byte signed */
  1106. typedef int        GLint;        /* 4-byte signed */
  1107. typedef unsigned char    GLubyte;    /* 1-byte unsigned */
  1108. typedef unsigned short    GLushort;    /* 2-byte unsigned */
  1109. typedef unsigned int    GLuint;        /* 4-byte unsigned */
  1110. typedef int        GLsizei;    /* 4-byte signed */
  1111. typedef float        GLfloat;    /* single precision float */
  1112. typedef float        GLclampf;    /* single precision float in [0,1] */
  1113. typedef double        GLdouble;    /* double precision float */
  1114. typedef double        GLclampd;    /* double precision float in [0,1] */
  1115.  
  1116.  
  1117.  
  1118. #if defined(__BEOS__) || defined(__QUICKDRAW__)
  1119. #pragma export on
  1120. #endif
  1121.  
  1122.  
  1123. /*
  1124.  * Miscellaneous
  1125.  */
  1126.  
  1127. GLAPI void GLAPIENTRY glClearIndex( GLfloat c );
  1128.  
  1129. GLAPI void GLAPIENTRY glClearColor( GLclampf red,
  1130.               GLclampf green,
  1131.               GLclampf blue,
  1132.               GLclampf alpha );
  1133.  
  1134. GLAPI void GLAPIENTRY glClear( GLbitfield mask );
  1135.  
  1136. GLAPI void GLAPIENTRY glIndexMask( GLuint mask );
  1137.  
  1138. GLAPI void GLAPIENTRY glColorMask( GLboolean red, GLboolean green,
  1139.              GLboolean blue, GLboolean alpha );
  1140.  
  1141. GLAPI void GLAPIENTRY glAlphaFunc( GLenum func, GLclampf ref );
  1142.  
  1143. GLAPI void GLAPIENTRY glBlendFunc( GLenum sfactor, GLenum dfactor );
  1144.  
  1145. GLAPI void GLAPIENTRY glLogicOp( GLenum opcode );
  1146.  
  1147. GLAPI void GLAPIENTRY glCullFace( GLenum mode );
  1148.  
  1149. GLAPI void GLAPIENTRY glFrontFace( GLenum mode );
  1150.  
  1151. GLAPI void GLAPIENTRY glPointSize( GLfloat size );
  1152.  
  1153. GLAPI void GLAPIENTRY glLineWidth( GLfloat width );
  1154.  
  1155. GLAPI void GLAPIENTRY glLineStipple( GLint factor, GLushort pattern );
  1156.  
  1157. GLAPI void GLAPIENTRY glPolygonMode( GLenum face, GLenum mode );
  1158.  
  1159. GLAPI void GLAPIENTRY glPolygonOffset( GLfloat factor, GLfloat units );
  1160.  
  1161. GLAPI void GLAPIENTRY glPolygonStipple( const GLubyte *mask );
  1162.  
  1163. GLAPI void GLAPIENTRY glGetPolygonStipple( GLubyte *mask );
  1164.  
  1165. GLAPI void GLAPIENTRY glEdgeFlag( GLboolean flag );
  1166.  
  1167. GLAPI void GLAPIENTRY glEdgeFlagv( const GLboolean *flag );
  1168.  
  1169. GLAPI void GLAPIENTRY glScissor( GLint x, GLint y,
  1170.                                    GLsizei width, GLsizei height);
  1171.  
  1172. GLAPI void GLAPIENTRY glClipPlane( GLenum plane, const GLdouble *equation );
  1173.  
  1174. GLAPI void GLAPIENTRY glGetClipPlane( GLenum plane, GLdouble *equation );
  1175.  
  1176. GLAPI void GLAPIENTRY glDrawBuffer( GLenum mode );
  1177.  
  1178. GLAPI void GLAPIENTRY glReadBuffer( GLenum mode );
  1179.  
  1180. GLAPI void GLAPIENTRY glEnable( GLenum cap );
  1181.  
  1182. GLAPI void GLAPIENTRY glDisable( GLenum cap );
  1183.  
  1184. GLAPI GLboolean GLAPIENTRY glIsEnabled( GLenum cap );
  1185.  
  1186.  
  1187. GLAPI void GLAPIENTRY glEnableClientState( GLenum cap );  /* 1.1 */
  1188.  
  1189. GLAPI void GLAPIENTRY glDisableClientState( GLenum cap );  /* 1.1 */
  1190.  
  1191.  
  1192. GLAPI void GLAPIENTRY glGetBooleanv( GLenum pname, GLboolean *params );
  1193.  
  1194. GLAPI void GLAPIENTRY glGetDoublev( GLenum pname, GLdouble *params );
  1195.  
  1196. GLAPI void GLAPIENTRY glGetFloatv( GLenum pname, GLfloat *params );
  1197.  
  1198. GLAPI void GLAPIENTRY glGetIntegerv( GLenum pname, GLint *params );
  1199.  
  1200.  
  1201. GLAPI void GLAPIENTRY glPushAttrib( GLbitfield mask );
  1202.  
  1203. GLAPI void GLAPIENTRY glPopAttrib( void );
  1204.  
  1205.  
  1206. GLAPI void GLAPIENTRY glPushClientAttrib( GLbitfield mask );  /* 1.1 */
  1207.  
  1208. GLAPI void GLAPIENTRY glPopClientAttrib( void );  /* 1.1 */
  1209.  
  1210.  
  1211. GLAPI GLint GLAPIENTRY glRenderMode( GLenum mode );
  1212.  
  1213. GLAPI GLenum GLAPIENTRY glGetError( void );
  1214.  
  1215. GLAPI const GLubyte* GLAPIENTRY glGetString( GLenum name );
  1216.  
  1217. GLAPI void GLAPIENTRY glFinish( void );
  1218.  
  1219. GLAPI void GLAPIENTRY glFlush( void );
  1220.  
  1221. GLAPI void GLAPIENTRY glHint( GLenum target, GLenum mode );
  1222.  
  1223.  
  1224.  
  1225. /*
  1226.  * Depth Buffer
  1227.  */
  1228.  
  1229. GLAPI void GLAPIENTRY glClearDepth( GLclampd depth );
  1230.  
  1231. GLAPI void GLAPIENTRY glDepthFunc( GLenum func );
  1232.  
  1233. GLAPI void GLAPIENTRY glDepthMask( GLboolean flag );
  1234.  
  1235. GLAPI void GLAPIENTRY glDepthRange( GLclampd near_val, GLclampd far_val );
  1236.  
  1237.  
  1238. /*
  1239.  * Accumulation Buffer
  1240.  */
  1241.  
  1242. GLAPI void GLAPIENTRY glClearAccum( GLfloat red, GLfloat green,
  1243.                                       GLfloat blue, GLfloat alpha );
  1244.  
  1245. GLAPI void GLAPIENTRY glAccum( GLenum op, GLfloat value );
  1246.  
  1247.  
  1248.  
  1249. /*
  1250.  * Transformation
  1251.  */
  1252.  
  1253. GLAPI void GLAPIENTRY glMatrixMode( GLenum mode );
  1254.  
  1255. GLAPI void GLAPIENTRY glOrtho( GLdouble left, GLdouble right,
  1256.                                  GLdouble bottom, GLdouble top,
  1257.                                  GLdouble near_val, GLdouble far_val );
  1258.  
  1259. GLAPI void GLAPIENTRY glFrustum( GLdouble left, GLdouble right,
  1260.                                    GLdouble bottom, GLdouble top,
  1261.                                    GLdouble near_val, GLdouble far_val );
  1262.  
  1263. GLAPI void GLAPIENTRY glViewport( GLint x, GLint y,
  1264.                                     GLsizei width, GLsizei height );
  1265.  
  1266. GLAPI void GLAPIENTRY glPushMatrix( void );
  1267.  
  1268. GLAPI void GLAPIENTRY glPopMatrix( void );
  1269.  
  1270. GLAPI void GLAPIENTRY glLoadIdentity( void );
  1271.  
  1272. GLAPI void GLAPIENTRY glLoadMatrixd( const GLdouble *m );
  1273. GLAPI void GLAPIENTRY glLoadMatrixf( const GLfloat *m );
  1274.  
  1275. GLAPI void GLAPIENTRY glMultMatrixd( const GLdouble *m );
  1276. GLAPI void GLAPIENTRY glMultMatrixf( const GLfloat *m );
  1277.  
  1278. GLAPI void GLAPIENTRY glRotated( GLdouble angle,
  1279.                                    GLdouble x, GLdouble y, GLdouble z );
  1280. GLAPI void GLAPIENTRY glRotatef( GLfloat angle,
  1281.                                    GLfloat x, GLfloat y, GLfloat z );
  1282.  
  1283. GLAPI void GLAPIENTRY glScaled( GLdouble x, GLdouble y, GLdouble z );
  1284. GLAPI void GLAPIENTRY glScalef( GLfloat x, GLfloat y, GLfloat z );
  1285.  
  1286. GLAPI void GLAPIENTRY glTranslated( GLdouble x, GLdouble y, GLdouble z );
  1287. GLAPI void GLAPIENTRY glTranslatef( GLfloat x, GLfloat y, GLfloat z );
  1288.  
  1289.  
  1290.  
  1291. /*
  1292.  * Display Lists
  1293.  */
  1294.  
  1295. GLAPI GLboolean GLAPIENTRY glIsList( GLuint list );
  1296.  
  1297. GLAPI void GLAPIENTRY glDeleteLists( GLuint list, GLsizei range );
  1298.  
  1299. GLAPI GLuint GLAPIENTRY glGenLists( GLsizei range );
  1300.  
  1301. GLAPI void GLAPIENTRY glNewList( GLuint list, GLenum mode );
  1302.  
  1303. GLAPI void GLAPIENTRY glEndList( void );
  1304.  
  1305. GLAPI void GLAPIENTRY glCallList( GLuint list );
  1306.  
  1307. GLAPI void GLAPIENTRY glCallLists( GLsizei n, GLenum type,
  1308.                                      const GLvoid *lists );
  1309.  
  1310. GLAPI void GLAPIENTRY glListBase( GLuint base );
  1311.  
  1312.  
  1313.  
  1314. /*
  1315.  * Drawing Functions
  1316.  */
  1317.  
  1318. GLAPI void GLAPIENTRY glBegin( GLenum mode );
  1319.  
  1320. GLAPI void GLAPIENTRY glEnd( void );
  1321.  
  1322.  
  1323. GLAPI void GLAPIENTRY glVertex2d( GLdouble x, GLdouble y );
  1324. GLAPI void GLAPIENTRY glVertex2f( GLfloat x, GLfloat y );
  1325. GLAPI void GLAPIENTRY glVertex2i( GLint x, GLint y );
  1326. GLAPI void GLAPIENTRY glVertex2s( GLshort x, GLshort y );
  1327.  
  1328. GLAPI void GLAPIENTRY glVertex3d( GLdouble x, GLdouble y, GLdouble z );
  1329. GLAPI void GLAPIENTRY glVertex3f( GLfloat x, GLfloat y, GLfloat z );
  1330. GLAPI void GLAPIENTRY glVertex3i( GLint x, GLint y, GLint z );
  1331. GLAPI void GLAPIENTRY glVertex3s( GLshort x, GLshort y, GLshort z );
  1332.  
  1333. GLAPI void GLAPIENTRY glVertex4d( GLdouble x, GLdouble y, GLdouble z, GLdouble w );
  1334. GLAPI void GLAPIENTRY glVertex4f( GLfloat x, GLfloat y, GLfloat z, GLfloat w );
  1335. GLAPI void GLAPIENTRY glVertex4i( GLint x, GLint y, GLint z, GLint w );
  1336. GLAPI void GLAPIENTRY glVertex4s( GLshort x, GLshort y, GLshort z, GLshort w );
  1337.  
  1338. GLAPI void GLAPIENTRY glVertex2dv( const GLdouble *v );
  1339. GLAPI void GLAPIENTRY glVertex2fv( const GLfloat *v );
  1340. GLAPI void GLAPIENTRY glVertex2iv( const GLint *v );
  1341. GLAPI void GLAPIENTRY glVertex2sv( const GLshort *v );
  1342.  
  1343. GLAPI void GLAPIENTRY glVertex3dv( const GLdouble *v );
  1344. GLAPI void GLAPIENTRY glVertex3fv( const GLfloat *v );
  1345. GLAPI void GLAPIENTRY glVertex3iv( const GLint *v );
  1346. GLAPI void GLAPIENTRY glVertex3sv( const GLshort *v );
  1347.  
  1348. GLAPI void GLAPIENTRY glVertex4dv( const GLdouble *v );
  1349. GLAPI void GLAPIENTRY glVertex4fv( const GLfloat *v );
  1350. GLAPI void GLAPIENTRY glVertex4iv( const GLint *v );
  1351. GLAPI void GLAPIENTRY glVertex4sv( const GLshort *v );
  1352.  
  1353.  
  1354. GLAPI void GLAPIENTRY glNormal3b( GLbyte nx, GLbyte ny, GLbyte nz );
  1355. GLAPI void GLAPIENTRY glNormal3d( GLdouble nx, GLdouble ny, GLdouble nz );
  1356. GLAPI void GLAPIENTRY glNormal3f( GLfloat nx, GLfloat ny, GLfloat nz );
  1357. GLAPI void GLAPIENTRY glNormal3i( GLint nx, GLint ny, GLint nz );
  1358. GLAPI void GLAPIENTRY glNormal3s( GLshort nx, GLshort ny, GLshort nz );
  1359.  
  1360. GLAPI void GLAPIENTRY glNormal3bv( const GLbyte *v );
  1361. GLAPI void GLAPIENTRY glNormal3dv( const GLdouble *v );
  1362. GLAPI void GLAPIENTRY glNormal3fv( const GLfloat *v );
  1363. GLAPI void GLAPIENTRY glNormal3iv( const GLint *v );
  1364. GLAPI void GLAPIENTRY glNormal3sv( const GLshort *v );
  1365.  
  1366.  
  1367. GLAPI void GLAPIENTRY glIndexd( GLdouble c );
  1368. GLAPI void GLAPIENTRY glIndexf( GLfloat c );
  1369. GLAPI void GLAPIENTRY glIndexi( GLint c );
  1370. GLAPI void GLAPIENTRY glIndexs( GLshort c );
  1371. GLAPI void GLAPIENTRY glIndexub( GLubyte c );  /* 1.1 */
  1372.  
  1373. GLAPI void GLAPIENTRY glIndexdv( const GLdouble *c );
  1374. GLAPI void GLAPIENTRY glIndexfv( const GLfloat *c );
  1375. GLAPI void GLAPIENTRY glIndexiv( const GLint *c );
  1376. GLAPI void GLAPIENTRY glIndexsv( const GLshort *c );
  1377. GLAPI void GLAPIENTRY glIndexubv( const GLubyte *c );  /* 1.1 */
  1378.  
  1379. GLAPI void GLAPIENTRY glColor3b( GLbyte red, GLbyte green, GLbyte blue );
  1380. GLAPI void GLAPIENTRY glColor3d( GLdouble red, GLdouble green, GLdouble blue );
  1381. GLAPI void GLAPIENTRY glColor3f( GLfloat red, GLfloat green, GLfloat blue );
  1382. GLAPI void GLAPIENTRY glColor3i( GLint red, GLint green, GLint blue );
  1383. GLAPI void GLAPIENTRY glColor3s( GLshort red, GLshort green, GLshort blue );
  1384. GLAPI void GLAPIENTRY glColor3ub( GLubyte red, GLubyte green, GLubyte blue );
  1385. GLAPI void GLAPIENTRY glColor3ui( GLuint red, GLuint green, GLuint blue );
  1386. GLAPI void GLAPIENTRY glColor3us( GLushort red, GLushort green, GLushort blue );
  1387.  
  1388. GLAPI void GLAPIENTRY glColor4b( GLbyte red, GLbyte green,
  1389.                                    GLbyte blue, GLbyte alpha );
  1390. GLAPI void GLAPIENTRY glColor4d( GLdouble red, GLdouble green,
  1391.                                    GLdouble blue, GLdouble alpha );
  1392. GLAPI void GLAPIENTRY glColor4f( GLfloat red, GLfloat green,
  1393.                                    GLfloat blue, GLfloat alpha );
  1394. GLAPI void GLAPIENTRY glColor4i( GLint red, GLint green,
  1395.                                    GLint blue, GLint alpha );
  1396. GLAPI void GLAPIENTRY glColor4s( GLshort red, GLshort green,
  1397.                                    GLshort blue, GLshort alpha );
  1398. GLAPI void GLAPIENTRY glColor4ub( GLubyte red, GLubyte green,
  1399.                                     GLubyte blue, GLubyte alpha );
  1400. GLAPI void GLAPIENTRY glColor4ui( GLuint red, GLuint green,
  1401.                                     GLuint blue, GLuint alpha );
  1402. GLAPI void GLAPIENTRY glColor4us( GLushort red, GLushort green,
  1403.                                     GLushort blue, GLushort alpha );
  1404.  
  1405.  
  1406. GLAPI void GLAPIENTRY glColor3bv( const GLbyte *v );
  1407. GLAPI void GLAPIENTRY glColor3dv( const GLdouble *v );
  1408. GLAPI void GLAPIENTRY glColor3fv( const GLfloat *v );
  1409. GLAPI void GLAPIENTRY glColor3iv( const GLint *v );
  1410. GLAPI void GLAPIENTRY glColor3sv( const GLshort *v );
  1411. GLAPI void GLAPIENTRY glColor3ubv( const GLubyte *v );
  1412. GLAPI void GLAPIENTRY glColor3uiv( const GLuint *v );
  1413. GLAPI void GLAPIENTRY glColor3usv( const GLushort *v );
  1414.  
  1415. GLAPI void GLAPIENTRY glColor4bv( const GLbyte *v );
  1416. GLAPI void GLAPIENTRY glColor4dv( const GLdouble *v );
  1417. GLAPI void GLAPIENTRY glColor4fv( const GLfloat *v );
  1418. GLAPI void GLAPIENTRY glColor4iv( const GLint *v );
  1419. GLAPI void GLAPIENTRY glColor4sv( const GLshort *v );
  1420. GLAPI void GLAPIENTRY glColor4ubv( const GLubyte *v );
  1421. GLAPI void GLAPIENTRY glColor4uiv( const GLuint *v );
  1422. GLAPI void GLAPIENTRY glColor4usv( const GLushort *v );
  1423.  
  1424.  
  1425. GLAPI void GLAPIENTRY glTexCoord1d( GLdouble s );
  1426. GLAPI void GLAPIENTRY glTexCoord1f( GLfloat s );
  1427. GLAPI void GLAPIENTRY glTexCoord1i( GLint s );
  1428. GLAPI void GLAPIENTRY glTexCoord1s( GLshort s );
  1429.  
  1430. GLAPI void GLAPIENTRY glTexCoord2d( GLdouble s, GLdouble t );
  1431. GLAPI void GLAPIENTRY glTexCoord2f( GLfloat s, GLfloat t );
  1432. GLAPI void GLAPIENTRY glTexCoord2i( GLint s, GLint t );
  1433. GLAPI void GLAPIENTRY glTexCoord2s( GLshort s, GLshort t );
  1434.  
  1435. GLAPI void GLAPIENTRY glTexCoord3d( GLdouble s, GLdouble t, GLdouble r );
  1436. GLAPI void GLAPIENTRY glTexCoord3f( GLfloat s, GLfloat t, GLfloat r );
  1437. GLAPI void GLAPIENTRY glTexCoord3i( GLint s, GLint t, GLint r );
  1438. GLAPI void GLAPIENTRY glTexCoord3s( GLshort s, GLshort t, GLshort r );
  1439.  
  1440. GLAPI void GLAPIENTRY glTexCoord4d( GLdouble s, GLdouble t, GLdouble r, GLdouble q );
  1441. GLAPI void GLAPIENTRY glTexCoord4f( GLfloat s, GLfloat t, GLfloat r, GLfloat q );
  1442. GLAPI void GLAPIENTRY glTexCoord4i( GLint s, GLint t, GLint r, GLint q );
  1443. GLAPI void GLAPIENTRY glTexCoord4s( GLshort s, GLshort t, GLshort r, GLshort q );
  1444.  
  1445. GLAPI void GLAPIENTRY glTexCoord1dv( const GLdouble *v );
  1446. GLAPI void GLAPIENTRY glTexCoord1fv( const GLfloat *v );
  1447. GLAPI void GLAPIENTRY glTexCoord1iv( const GLint *v );
  1448. GLAPI void GLAPIENTRY glTexCoord1sv( const GLshort *v );
  1449.  
  1450. GLAPI void GLAPIENTRY glTexCoord2dv( const GLdouble *v );
  1451. GLAPI void GLAPIENTRY glTexCoord2fv( const GLfloat *v );
  1452. GLAPI void GLAPIENTRY glTexCoord2iv( const GLint *v );
  1453. GLAPI void GLAPIENTRY glTexCoord2sv( const GLshort *v );
  1454.  
  1455. GLAPI void GLAPIENTRY glTexCoord3dv( const GLdouble *v );
  1456. GLAPI void GLAPIENTRY glTexCoord3fv( const GLfloat *v );
  1457. GLAPI void GLAPIENTRY glTexCoord3iv( const GLint *v );
  1458. GLAPI void GLAPIENTRY glTexCoord3sv( const GLshort *v );
  1459.  
  1460. GLAPI void GLAPIENTRY glTexCoord4dv( const GLdouble *v );
  1461. GLAPI void GLAPIENTRY glTexCoord4fv( const GLfloat *v );
  1462. GLAPI void GLAPIENTRY glTexCoord4iv( const GLint *v );
  1463. GLAPI void GLAPIENTRY glTexCoord4sv( const GLshort *v );
  1464.  
  1465.  
  1466. GLAPI void GLAPIENTRY glRasterPos2d( GLdouble x, GLdouble y );
  1467. GLAPI void GLAPIENTRY glRasterPos2f( GLfloat x, GLfloat y );
  1468. GLAPI void GLAPIENTRY glRasterPos2i( GLint x, GLint y );
  1469. GLAPI void GLAPIENTRY glRasterPos2s( GLshort x, GLshort y );
  1470.  
  1471. GLAPI void GLAPIENTRY glRasterPos3d( GLdouble x, GLdouble y, GLdouble z );
  1472. GLAPI void GLAPIENTRY glRasterPos3f( GLfloat x, GLfloat y, GLfloat z );
  1473. GLAPI void GLAPIENTRY glRasterPos3i( GLint x, GLint y, GLint z );
  1474. GLAPI void GLAPIENTRY glRasterPos3s( GLshort x, GLshort y, GLshort z );
  1475.  
  1476. GLAPI void GLAPIENTRY glRasterPos4d( GLdouble x, GLdouble y, GLdouble z, GLdouble w );
  1477. GLAPI void GLAPIENTRY glRasterPos4f( GLfloat x, GLfloat y, GLfloat z, GLfloat w );
  1478. GLAPI void GLAPIENTRY glRasterPos4i( GLint x, GLint y, GLint z, GLint w );
  1479. GLAPI void GLAPIENTRY glRasterPos4s( GLshort x, GLshort y, GLshort z, GLshort w );
  1480.  
  1481. GLAPI void GLAPIENTRY glRasterPos2dv( const GLdouble *v );
  1482. GLAPI void GLAPIENTRY glRasterPos2fv( const GLfloat *v );
  1483. GLAPI void GLAPIENTRY glRasterPos2iv( const GLint *v );
  1484. GLAPI void GLAPIENTRY glRasterPos2sv( const GLshort *v );
  1485.  
  1486. GLAPI void GLAPIENTRY glRasterPos3dv( const GLdouble *v );
  1487. GLAPI void GLAPIENTRY glRasterPos3fv( const GLfloat *v );
  1488. GLAPI void GLAPIENTRY glRasterPos3iv( const GLint *v );
  1489. GLAPI void GLAPIENTRY glRasterPos3sv( const GLshort *v );
  1490.  
  1491. GLAPI void GLAPIENTRY glRasterPos4dv( const GLdouble *v );
  1492. GLAPI void GLAPIENTRY glRasterPos4fv( const GLfloat *v );
  1493. GLAPI void GLAPIENTRY glRasterPos4iv( const GLint *v );
  1494. GLAPI void GLAPIENTRY glRasterPos4sv( const GLshort *v );
  1495.  
  1496.  
  1497. GLAPI void GLAPIENTRY glRectd( GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2 );
  1498. GLAPI void GLAPIENTRY glRectf( GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2 );
  1499. GLAPI void GLAPIENTRY glRecti( GLint x1, GLint y1, GLint x2, GLint y2 );
  1500. GLAPI void GLAPIENTRY glRects( GLshort x1, GLshort y1, GLshort x2, GLshort y2 );
  1501.  
  1502.  
  1503. GLAPI void GLAPIENTRY glRectdv( const GLdouble *v1, const GLdouble *v2 );
  1504. GLAPI void GLAPIENTRY glRectfv( const GLfloat *v1, const GLfloat *v2 );
  1505. GLAPI void GLAPIENTRY glRectiv( const GLint *v1, const GLint *v2 );
  1506. GLAPI void GLAPIENTRY glRectsv( const GLshort *v1, const GLshort *v2 );
  1507.  
  1508.  
  1509.  
  1510. /*
  1511.  * Vertex Arrays  (1.1)
  1512.  */
  1513.  
  1514. GLAPI void GLAPIENTRY glVertexPointer( GLint size, GLenum type,
  1515.                                        GLsizei stride, const GLvoid *ptr );
  1516.  
  1517. GLAPI void GLAPIENTRY glNormalPointer( GLenum type, GLsizei stride,
  1518.                                        const GLvoid *ptr );
  1519.  
  1520. GLAPI void GLAPIENTRY glColorPointer( GLint size, GLenum type,
  1521.                                       GLsizei stride, const GLvoid *ptr );
  1522.  
  1523. GLAPI void GLAPIENTRY glIndexPointer( GLenum type, GLsizei stride,
  1524.                                       const GLvoid *ptr );
  1525.  
  1526. GLAPI void GLAPIENTRY glTexCoordPointer( GLint size, GLenum type,
  1527.                                          GLsizei stride, const GLvoid *ptr );
  1528.  
  1529. GLAPI void GLAPIENTRY glEdgeFlagPointer( GLsizei stride, const GLvoid *ptr );
  1530.  
  1531. GLAPI void GLAPIENTRY glGetPointerv( GLenum pname, void **params );
  1532.  
  1533. GLAPI void GLAPIENTRY glArrayElement( GLint i );
  1534.  
  1535. GLAPI void GLAPIENTRY glDrawArrays( GLenum mode, GLint first, GLsizei count );
  1536.  
  1537. GLAPI void GLAPIENTRY glDrawElements( GLenum mode, GLsizei count,
  1538.                                       GLenum type, const GLvoid *indices );
  1539.  
  1540. GLAPI void GLAPIENTRY glInterleavedArrays( GLenum format, GLsizei stride,
  1541.                                            const GLvoid *pointer );
  1542.  
  1543.  
  1544. /*
  1545.  * Lighting
  1546.  */
  1547.  
  1548. GLAPI void GLAPIENTRY glShadeModel( GLenum mode );
  1549.  
  1550. GLAPI void GLAPIENTRY glLightf( GLenum light, GLenum pname, GLfloat param );
  1551. GLAPI void GLAPIENTRY glLighti( GLenum light, GLenum pname, GLint param );
  1552. GLAPI void GLAPIENTRY glLightfv( GLenum light, GLenum pname,
  1553.                                  const GLfloat *params );
  1554. GLAPI void GLAPIENTRY glLightiv( GLenum light, GLenum pname,
  1555.                                  const GLint *params );
  1556.  
  1557. GLAPI void GLAPIENTRY glGetLightfv( GLenum light, GLenum pname,
  1558.                                     GLfloat *params );
  1559. GLAPI void GLAPIENTRY glGetLightiv( GLenum light, GLenum pname,
  1560.                                     GLint *params );
  1561.  
  1562. GLAPI void GLAPIENTRY glLightModelf( GLenum pname, GLfloat param );
  1563. GLAPI void GLAPIENTRY glLightModeli( GLenum pname, GLint param );
  1564. GLAPI void GLAPIENTRY glLightModelfv( GLenum pname, const GLfloat *params );
  1565. GLAPI void GLAPIENTRY glLightModeliv( GLenum pname, const GLint *params );
  1566.  
  1567. GLAPI void GLAPIENTRY glMaterialf( GLenum face, GLenum pname, GLfloat param );
  1568. GLAPI void GLAPIENTRY glMateriali( GLenum face, GLenum pname, GLint param );
  1569. GLAPI void GLAPIENTRY glMaterialfv( GLenum face, GLenum pname, const GLfloat *params );
  1570. GLAPI void GLAPIENTRY glMaterialiv( GLenum face, GLenum pname, const GLint *params );
  1571.  
  1572. GLAPI void GLAPIENTRY glGetMaterialfv( GLenum face, GLenum pname, GLfloat *params );
  1573. GLAPI void GLAPIENTRY glGetMaterialiv( GLenum face, GLenum pname, GLint *params );
  1574.  
  1575. GLAPI void GLAPIENTRY glColorMaterial( GLenum face, GLenum mode );
  1576.  
  1577.  
  1578.  
  1579.  
  1580. /*
  1581.  * Raster functions
  1582.  */
  1583.  
  1584. GLAPI void GLAPIENTRY glPixelZoom( GLfloat xfactor, GLfloat yfactor );
  1585.  
  1586. GLAPI void GLAPIENTRY glPixelStoref( GLenum pname, GLfloat param );
  1587. GLAPI void GLAPIENTRY glPixelStorei( GLenum pname, GLint param );
  1588.  
  1589. GLAPI void GLAPIENTRY glPixelTransferf( GLenum pname, GLfloat param );
  1590. GLAPI void GLAPIENTRY glPixelTransferi( GLenum pname, GLint param );
  1591.  
  1592. GLAPI void GLAPIENTRY glPixelMapfv( GLenum map, GLint mapsize,
  1593.                                     const GLfloat *values );
  1594. GLAPI void GLAPIENTRY glPixelMapuiv( GLenum map, GLint mapsize,
  1595.                                      const GLuint *values );
  1596. GLAPI void GLAPIENTRY glPixelMapusv( GLenum map, GLint mapsize,
  1597.                                      const GLushort *values );
  1598.  
  1599. GLAPI void GLAPIENTRY glGetPixelMapfv( GLenum map, GLfloat *values );
  1600. GLAPI void GLAPIENTRY glGetPixelMapuiv( GLenum map, GLuint *values );
  1601. GLAPI void GLAPIENTRY glGetPixelMapusv( GLenum map, GLushort *values );
  1602.  
  1603. GLAPI void GLAPIENTRY glBitmap( GLsizei width, GLsizei height,
  1604.                                 GLfloat xorig, GLfloat yorig,
  1605.                                 GLfloat xmove, GLfloat ymove,
  1606.                                 const GLubyte *bitmap );
  1607.  
  1608. GLAPI void GLAPIENTRY glReadPixels( GLint x, GLint y,
  1609.                                     GLsizei width, GLsizei height,
  1610.                                     GLenum format, GLenum type,
  1611.                                     GLvoid *pixels );
  1612.  
  1613. GLAPI void GLAPIENTRY glDrawPixels( GLsizei width, GLsizei height,
  1614.                                     GLenum format, GLenum type,
  1615.                                     const GLvoid *pixels );
  1616.  
  1617. GLAPI void GLAPIENTRY glCopyPixels( GLint x, GLint y,
  1618.                                     GLsizei width, GLsizei height,
  1619.                                     GLenum type );
  1620.  
  1621.  
  1622.  
  1623. /*
  1624.  * Stenciling
  1625.  */
  1626.  
  1627. GLAPI void GLAPIENTRY glStencilFunc( GLenum func, GLint ref, GLuint mask );
  1628.  
  1629. GLAPI void GLAPIENTRY glStencilMask( GLuint mask );
  1630.  
  1631. GLAPI void GLAPIENTRY glStencilOp( GLenum fail, GLenum zfail, GLenum zpass );
  1632.  
  1633. GLAPI void GLAPIENTRY glClearStencil( GLint s );
  1634.  
  1635.  
  1636.  
  1637. /*
  1638.  * Texture mapping
  1639.  */
  1640.  
  1641. GLAPI void GLAPIENTRY glTexGend( GLenum coord, GLenum pname, GLdouble param );
  1642. GLAPI void GLAPIENTRY glTexGenf( GLenum coord, GLenum pname, GLfloat param );
  1643. GLAPI void GLAPIENTRY glTexGeni( GLenum coord, GLenum pname, GLint param );
  1644.  
  1645. GLAPI void GLAPIENTRY glTexGendv( GLenum coord, GLenum pname, const GLdouble *params );
  1646. GLAPI void GLAPIENTRY glTexGenfv( GLenum coord, GLenum pname, const GLfloat *params );
  1647. GLAPI void GLAPIENTRY glTexGeniv( GLenum coord, GLenum pname, const GLint *params );
  1648.  
  1649. GLAPI void GLAPIENTRY glGetTexGendv( GLenum coord, GLenum pname, GLdouble *params );
  1650. GLAPI void GLAPIENTRY glGetTexGenfv( GLenum coord, GLenum pname, GLfloat *params );
  1651. GLAPI void GLAPIENTRY glGetTexGeniv( GLenum coord, GLenum pname, GLint *params );
  1652.  
  1653.  
  1654. GLAPI void GLAPIENTRY glTexEnvf( GLenum target, GLenum pname, GLfloat param );
  1655. GLAPI void GLAPIENTRY glTexEnvi( GLenum target, GLenum pname, GLint param );
  1656.  
  1657. GLAPI void GLAPIENTRY glTexEnvfv( GLenum target, GLenum pname, const GLfloat *params );
  1658. GLAPI void GLAPIENTRY glTexEnviv( GLenum target, GLenum pname, const GLint *params );
  1659.  
  1660. GLAPI void GLAPIENTRY glGetTexEnvfv( GLenum target, GLenum pname, GLfloat *params );
  1661. GLAPI void GLAPIENTRY glGetTexEnviv( GLenum target, GLenum pname, GLint *params );
  1662.  
  1663.  
  1664. GLAPI void GLAPIENTRY glTexParameterf( GLenum target, GLenum pname, GLfloat param );
  1665. GLAPI void GLAPIENTRY glTexParameteri( GLenum target, GLenum pname, GLint param );
  1666.  
  1667. GLAPI void GLAPIENTRY glTexParameterfv( GLenum target, GLenum pname,
  1668.                                           const GLfloat *params );
  1669. GLAPI void GLAPIENTRY glTexParameteriv( GLenum target, GLenum pname,
  1670.                                           const GLint *params );
  1671.  
  1672. GLAPI void GLAPIENTRY glGetTexParameterfv( GLenum target,
  1673.                                            GLenum pname, GLfloat *params);
  1674. GLAPI void GLAPIENTRY glGetTexParameteriv( GLenum target,
  1675.                                            GLenum pname, GLint *params );
  1676.  
  1677. GLAPI void GLAPIENTRY glGetTexLevelParameterfv( GLenum target, GLint level,
  1678.                                                 GLenum pname, GLfloat *params );
  1679. GLAPI void GLAPIENTRY glGetTexLevelParameteriv( GLenum target, GLint level,
  1680.                                                 GLenum pname, GLint *params );
  1681.  
  1682.  
  1683. GLAPI void GLAPIENTRY glTexImage1D( GLenum target, GLint level,
  1684.                                     GLint internalFormat,
  1685.                                     GLsizei width, GLint border,
  1686.                                     GLenum format, GLenum type,
  1687.                                     const GLvoid *pixels );
  1688.  
  1689. GLAPI void GLAPIENTRY glTexImage2D( GLenum target, GLint level,
  1690.                                     GLint internalFormat,
  1691.                                     GLsizei width, GLsizei height,
  1692.                                     GLint border, GLenum format, GLenum type,
  1693.                                     const GLvoid *pixels );
  1694.  
  1695. GLAPI void GLAPIENTRY glGetTexImage( GLenum target, GLint level,
  1696.                                      GLenum format, GLenum type,
  1697.                                      GLvoid *pixels );
  1698.  
  1699.  
  1700.  
  1701. /* 1.1 functions */
  1702.  
  1703. GLAPI void GLAPIENTRY glGenTextures( GLsizei n, GLuint *textures );
  1704.  
  1705. GLAPI void GLAPIENTRY glDeleteTextures( GLsizei n, const GLuint *textures);
  1706.  
  1707. GLAPI void GLAPIENTRY glBindTexture( GLenum target, GLuint texture );
  1708.  
  1709. GLAPI void GLAPIENTRY glPrioritizeTextures( GLsizei n,
  1710.                                             const GLuint *textures,
  1711.                                             const GLclampf *priorities );
  1712.  
  1713. GLAPI GLboolean GLAPIENTRY glAreTexturesResident( GLsizei n,
  1714.                                                   const GLuint *textures,
  1715.                                                   GLboolean *residences );
  1716.  
  1717. GLAPI GLboolean GLAPIENTRY glIsTexture( GLuint texture );
  1718.  
  1719.  
  1720. GLAPI void GLAPIENTRY glTexSubImage1D( GLenum target, GLint level,
  1721.                                        GLint xoffset,
  1722.                                        GLsizei width, GLenum format,
  1723.                                        GLenum type, const GLvoid *pixels );
  1724.  
  1725.  
  1726. GLAPI void GLAPIENTRY glTexSubImage2D( GLenum target, GLint level,
  1727.                                        GLint xoffset, GLint yoffset,
  1728.                                        GLsizei width, GLsizei height,
  1729.                                        GLenum format, GLenum type,
  1730.                                        const GLvoid *pixels );
  1731.  
  1732.  
  1733. GLAPI void GLAPIENTRY glCopyTexImage1D( GLenum target, GLint level,
  1734.                                         GLenum internalformat,
  1735.                                         GLint x, GLint y,
  1736.                                         GLsizei width, GLint border );
  1737.  
  1738.  
  1739. GLAPI void GLAPIENTRY glCopyTexImage2D( GLenum target, GLint level,
  1740.                                         GLenum internalformat,
  1741.                                         GLint x, GLint y,
  1742.                                         GLsizei width, GLsizei height,
  1743.                                         GLint border );
  1744.  
  1745.  
  1746. GLAPI void GLAPIENTRY glCopyTexSubImage1D( GLenum target, GLint level,
  1747.                                            GLint xoffset, GLint x, GLint y,
  1748.                                            GLsizei width );
  1749.  
  1750.  
  1751. GLAPI void GLAPIENTRY glCopyTexSubImage2D( GLenum target, GLint level,
  1752.                                            GLint xoffset, GLint yoffset,
  1753.                                            GLint x, GLint y,
  1754.                                            GLsizei width, GLsizei height );
  1755.  
  1756.  
  1757.  
  1758.  
  1759. /*
  1760.  * Evaluators
  1761.  */
  1762.  
  1763. GLAPI void GLAPIENTRY glMap1d( GLenum target, GLdouble u1, GLdouble u2,
  1764.                                GLint stride,
  1765.                                GLint order, const GLdouble *points );
  1766. GLAPI void GLAPIENTRY glMap1f( GLenum target, GLfloat u1, GLfloat u2,
  1767.                                GLint stride,
  1768.                                GLint order, const GLfloat *points );
  1769.  
  1770. GLAPI void GLAPIENTRY glMap2d( GLenum target,
  1771.              GLdouble u1, GLdouble u2, GLint ustride, GLint uorder,
  1772.              GLdouble v1, GLdouble v2, GLint vstride, GLint vorder,
  1773.              const GLdouble *points );
  1774. GLAPI void GLAPIENTRY glMap2f( GLenum target,
  1775.              GLfloat u1, GLfloat u2, GLint ustride, GLint uorder,
  1776.              GLfloat v1, GLfloat v2, GLint vstride, GLint vorder,
  1777.              const GLfloat *points );
  1778.  
  1779. GLAPI void GLAPIENTRY glGetMapdv( GLenum target, GLenum query, GLdouble *v );
  1780. GLAPI void GLAPIENTRY glGetMapfv( GLenum target, GLenum query, GLfloat *v );
  1781. GLAPI void GLAPIENTRY glGetMapiv( GLenum target, GLenum query, GLint *v );
  1782.  
  1783. GLAPI void GLAPIENTRY glEvalCoord1d( GLdouble u );
  1784. GLAPI void GLAPIENTRY glEvalCoord1f( GLfloat u );
  1785.  
  1786. GLAPI void GLAPIENTRY glEvalCoord1dv( const GLdouble *u );
  1787. GLAPI void GLAPIENTRY glEvalCoord1fv( const GLfloat *u );
  1788.  
  1789. GLAPI void GLAPIENTRY glEvalCoord2d( GLdouble u, GLdouble v );
  1790. GLAPI void GLAPIENTRY glEvalCoord2f( GLfloat u, GLfloat v );
  1791.  
  1792. GLAPI void GLAPIENTRY glEvalCoord2dv( const GLdouble *u );
  1793. GLAPI void GLAPIENTRY glEvalCoord2fv( const GLfloat *u );
  1794.  
  1795. GLAPI void GLAPIENTRY glMapGrid1d( GLint un, GLdouble u1, GLdouble u2 );
  1796. GLAPI void GLAPIENTRY glMapGrid1f( GLint un, GLfloat u1, GLfloat u2 );
  1797.  
  1798. GLAPI void GLAPIENTRY glMapGrid2d( GLint un, GLdouble u1, GLdouble u2,
  1799.                                    GLint vn, GLdouble v1, GLdouble v2 );
  1800. GLAPI void GLAPIENTRY glMapGrid2f( GLint un, GLfloat u1, GLfloat u2,
  1801.                                    GLint vn, GLfloat v1, GLfloat v2 );
  1802.  
  1803. GLAPI void GLAPIENTRY glEvalPoint1( GLint i );
  1804.  
  1805. GLAPI void GLAPIENTRY glEvalPoint2( GLint i, GLint j );
  1806.  
  1807. GLAPI void GLAPIENTRY glEvalMesh1( GLenum mode, GLint i1, GLint i2 );
  1808.  
  1809. GLAPI void GLAPIENTRY glEvalMesh2( GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2 );
  1810.  
  1811.  
  1812.  
  1813. /*
  1814.  * Fog
  1815.  */
  1816.  
  1817. GLAPI void GLAPIENTRY glFogf( GLenum pname, GLfloat param );
  1818.  
  1819. GLAPI void GLAPIENTRY glFogi( GLenum pname, GLint param );
  1820.  
  1821. GLAPI void GLAPIENTRY glFogfv( GLenum pname, const GLfloat *params );
  1822.  
  1823. GLAPI void GLAPIENTRY glFogiv( GLenum pname, const GLint *params );
  1824.  
  1825.  
  1826.  
  1827. /*
  1828.  * Selection and Feedback
  1829.  */
  1830.  
  1831. GLAPI void GLAPIENTRY glFeedbackBuffer( GLsizei size, GLenum type, GLfloat *buffer );
  1832.  
  1833. GLAPI void GLAPIENTRY glPassThrough( GLfloat token );
  1834.  
  1835. GLAPI void GLAPIENTRY glSelectBuffer( GLsizei size, GLuint *buffer );
  1836.  
  1837. GLAPI void GLAPIENTRY glInitNames( void );
  1838.  
  1839. GLAPI void GLAPIENTRY glLoadName( GLuint name );
  1840.  
  1841. GLAPI void GLAPIENTRY glPushName( GLuint name );
  1842.  
  1843. GLAPI void GLAPIENTRY glPopName( void );
  1844.  
  1845.  
  1846.  
  1847. /*
  1848.  * Extensions
  1849.  */
  1850.  
  1851. /* GL_EXT_blend_minmax */
  1852. GLAPI void GLAPIENTRY glBlendEquationEXT( GLenum mode );
  1853.  
  1854.  
  1855.  
  1856. /* GL_EXT_blend_color */
  1857. GLAPI void GLAPIENTRY glBlendColorEXT( GLclampf red, GLclampf green,
  1858.                                        GLclampf blue, GLclampf alpha );
  1859.  
  1860.  
  1861.  
  1862. /* GL_EXT_polygon_offset */
  1863. GLAPI void GLAPIENTRY glPolygonOffsetEXT( GLfloat factor, GLfloat bias );
  1864.  
  1865.  
  1866.  
  1867. /* GL_EXT_vertex_array */
  1868.  
  1869. GLAPI void GLAPIENTRY glVertexPointerEXT( GLint size, GLenum type,
  1870.                                           GLsizei stride,
  1871.                                           GLsizei count, const GLvoid *ptr );
  1872.  
  1873. GLAPI void GLAPIENTRY glNormalPointerEXT( GLenum type, GLsizei stride,
  1874.                                           GLsizei count, const GLvoid *ptr );
  1875.  
  1876. GLAPI void GLAPIENTRY glColorPointerEXT( GLint size, GLenum type,
  1877.                                          GLsizei stride,
  1878.                                          GLsizei count, const GLvoid *ptr );
  1879.  
  1880. GLAPI void GLAPIENTRY glIndexPointerEXT( GLenum type, GLsizei stride,
  1881.                                          GLsizei count, const GLvoid *ptr );
  1882.  
  1883. GLAPI void GLAPIENTRY glTexCoordPointerEXT( GLint size, GLenum type,
  1884.                                             GLsizei stride, GLsizei count,
  1885.                                             const GLvoid *ptr );
  1886.  
  1887. GLAPI void GLAPIENTRY glEdgeFlagPointerEXT( GLsizei stride, GLsizei count,
  1888.                                             const GLboolean *ptr );
  1889.  
  1890. GLAPI void GLAPIENTRY glGetPointervEXT( GLenum pname, void **params );
  1891.  
  1892. GLAPI void GLAPIENTRY glArrayElementEXT( GLint i );
  1893.  
  1894. GLAPI void GLAPIENTRY glDrawArraysEXT( GLenum mode, GLint first,
  1895.                                        GLsizei count );
  1896.  
  1897.  
  1898.  
  1899. /* GL_EXT_texture_object */
  1900.  
  1901. GLAPI void GLAPIENTRY glGenTexturesEXT( GLsizei n, GLuint *textures );
  1902.  
  1903. GLAPI void GLAPIENTRY glDeleteTexturesEXT( GLsizei n, const GLuint *textures);
  1904.  
  1905. GLAPI void GLAPIENTRY glBindTextureEXT( GLenum target, GLuint texture );
  1906.  
  1907. GLAPI void GLAPIENTRY glPrioritizeTexturesEXT( GLsizei n,
  1908.                                                const GLuint *textures,
  1909.                                                const GLclampf *priorities );
  1910.  
  1911. GLAPI GLboolean GLAPIENTRY glAreTexturesResidentEXT( GLsizei n,
  1912.                                                      const GLuint *textures,
  1913.                                                      GLboolean *residences );
  1914.  
  1915. GLAPI GLboolean GLAPIENTRY glIsTextureEXT( GLuint texture );
  1916.  
  1917.  
  1918.  
  1919. /* GL_EXT_texture3D */
  1920.  
  1921. GLAPI void GLAPIENTRY glTexImage3DEXT( GLenum target, GLint level,
  1922.                                        GLenum internalFormat,
  1923.                                        GLsizei width, GLsizei height,
  1924.                                        GLsizei depth, GLint border,
  1925.                                        GLenum format, GLenum type,
  1926.                                        const GLvoid *pixels );
  1927.  
  1928. GLAPI void GLAPIENTRY glTexSubImage3DEXT( GLenum target, GLint level,
  1929.                                           GLint xoffset, GLint yoffset,
  1930.                                           GLint zoffset, GLsizei width,
  1931.                                           GLsizei height, GLsizei depth,
  1932.                                           GLenum format,
  1933.                                           GLenum type, const GLvoid *pixels);
  1934.  
  1935. GLAPI void GLAPIENTRY glCopyTexSubImage3DEXT( GLenum target, GLint level,
  1936.                                               GLint xoffset, GLint yoffset,
  1937.                                               GLint zoffset, GLint x,
  1938.                                               GLint y, GLsizei width,
  1939.                                               GLsizei height );
  1940.  
  1941.  
  1942.  
  1943. /* GL_EXT_color_table */
  1944.  
  1945. GLAPI void GLAPIENTRY glColorTableEXT( GLenum target, GLenum internalformat,
  1946.                                        GLsizei width, GLenum format,
  1947.                                        GLenum type, const GLvoid *table );
  1948.  
  1949. GLAPI void GLAPIENTRY glColorSubTableEXT( GLenum target,
  1950.                                           GLsizei start, GLsizei count,
  1951.                                           GLenum format, GLenum type,
  1952.                                           const GLvoid *data );
  1953.  
  1954. GLAPI void GLAPIENTRY glGetColorTableEXT( GLenum target, GLenum format,
  1955.                                           GLenum type, GLvoid *table );
  1956.  
  1957. GLAPI void GLAPIENTRY glGetColorTableParameterfvEXT( GLenum target,
  1958.                                                      GLenum pname,
  1959.                                                      GLfloat *params );
  1960.  
  1961. GLAPI void GLAPIENTRY glGetColorTableParameterivEXT( GLenum target,
  1962.                                                      GLenum pname,
  1963.                                                      GLint *params );
  1964.  
  1965.  
  1966. /* GL_ARB_multitexture */
  1967.  
  1968. GLAPI void GLAPIENTRY glActiveTextureARB(GLenum texture);
  1969. GLAPI void GLAPIENTRY glClientActiveTextureARB(GLenum texture);
  1970. GLAPI void GLAPIENTRY glMultiTexCoord1dARB(GLenum target, GLdouble s);
  1971. GLAPI void GLAPIENTRY glMultiTexCoord1dvARB(GLenum target, const GLdouble *v);
  1972. GLAPI void GLAPIENTRY glMultiTexCoord1fARB(GLenum target, GLfloat s);
  1973. GLAPI void GLAPIENTRY glMultiTexCoord1fvARB(GLenum target, const GLfloat *v);
  1974. GLAPI void GLAPIENTRY glMultiTexCoord1iARB(GLenum target, GLint s);
  1975. GLAPI void GLAPIENTRY glMultiTexCoord1ivARB(GLenum target, const GLint *v);
  1976. GLAPI void GLAPIENTRY glMultiTexCoord1sARB(GLenum target, GLshort s);
  1977. GLAPI void GLAPIENTRY glMultiTexCoord1svARB(GLenum target, const GLshort *v);
  1978. GLAPI void GLAPIENTRY glMultiTexCoord2dARB(GLenum target, GLdouble s, GLdouble t);
  1979. GLAPI void GLAPIENTRY glMultiTexCoord2dvARB(GLenum target, const GLdouble *v);
  1980. GLAPI void GLAPIENTRY glMultiTexCoord2fARB(GLenum target, GLfloat s, GLfloat t);
  1981. GLAPI void GLAPIENTRY glMultiTexCoord2fvARB(GLenum target, const GLfloat *v);
  1982. GLAPI void GLAPIENTRY glMultiTexCoord2iARB(GLenum target, GLint s, GLint t);
  1983. GLAPI void GLAPIENTRY glMultiTexCoord2ivARB(GLenum target, const GLint *v);
  1984. GLAPI void GLAPIENTRY glMultiTexCoord2sARB(GLenum target, GLshort s, GLshort t);
  1985. GLAPI void GLAPIENTRY glMultiTexCoord2svARB(GLenum target, const GLshort *v);
  1986. GLAPI void GLAPIENTRY glMultiTexCoord3dARB(GLenum target, GLdouble s, GLdouble t, GLdouble r);
  1987. GLAPI void GLAPIENTRY glMultiTexCoord3dvARB(GLenum target, const GLdouble *v);
  1988. GLAPI void GLAPIENTRY glMultiTexCoord3fARB(GLenum target, GLfloat s, GLfloat t, GLfloat r);
  1989. GLAPI void GLAPIENTRY glMultiTexCoord3fvARB(GLenum target, const GLfloat *v);
  1990. GLAPI void GLAPIENTRY glMultiTexCoord3iARB(GLenum target, GLint s, GLint t, GLint r);
  1991. GLAPI void GLAPIENTRY glMultiTexCoord3ivARB(GLenum target, const GLint *v);
  1992. GLAPI void GLAPIENTRY glMultiTexCoord3sARB(GLenum target, GLshort s, GLshort t, GLshort r);
  1993. GLAPI void GLAPIENTRY glMultiTexCoord3svARB(GLenum target, const GLshort *v);
  1994. GLAPI void GLAPIENTRY glMultiTexCoord4dARB(GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q);
  1995. GLAPI void GLAPIENTRY glMultiTexCoord4dvARB(GLenum target, const GLdouble *v);
  1996. GLAPI void GLAPIENTRY glMultiTexCoord4fARB(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q);
  1997. GLAPI void GLAPIENTRY glMultiTexCoord4fvARB(GLenum target, const GLfloat *v);
  1998. GLAPI void GLAPIENTRY glMultiTexCoord4iARB(GLenum target, GLint s, GLint t, GLint r, GLint q);
  1999. GLAPI void GLAPIENTRY glMultiTexCoord4ivARB(GLenum target, const GLint *v);
  2000. GLAPI void GLAPIENTRY glMultiTexCoord4sARB(GLenum target, GLshort s, GLshort t, GLshort r, GLshort q);
  2001. GLAPI void GLAPIENTRY glMultiTexCoord4svARB(GLenum target, const GLshort *v);
  2002.  
  2003.  
  2004.  
  2005. /* GL_EXT_point_parameters */
  2006. GLAPI void GLAPIENTRY glPointParameterfEXT( GLenum pname, GLfloat param );
  2007. GLAPI void GLAPIENTRY glPointParameterfvEXT( GLenum pname,
  2008.                                                const GLfloat *params );
  2009.  
  2010.  
  2011.  
  2012. /* GL_INGR_blend_func_separate */
  2013. GLAPI void GLAPIENTRY glBlendFuncSeparateINGR( GLenum sfactorRGB,
  2014.                                                GLenum dfactorRGB,
  2015.                                                GLenum sfactorAlpha,
  2016.                                                GLenum dfactorAlpha );
  2017.  
  2018.  
  2019.  
  2020. /* GL_MESA_window_pos */
  2021.  
  2022. GLAPI void GLAPIENTRY glWindowPos2iMESA( GLint x, GLint y );
  2023. GLAPI void GLAPIENTRY glWindowPos2sMESA( GLshort x, GLshort y );
  2024. GLAPI void GLAPIENTRY glWindowPos2fMESA( GLfloat x, GLfloat y );
  2025. GLAPI void GLAPIENTRY glWindowPos2dMESA( GLdouble x, GLdouble y );
  2026.  
  2027. GLAPI void GLAPIENTRY glWindowPos2ivMESA( const GLint *p );
  2028. GLAPI void GLAPIENTRY glWindowPos2svMESA( const GLshort *p );
  2029. GLAPI void GLAPIENTRY glWindowPos2fvMESA( const GLfloat *p );
  2030. GLAPI void GLAPIENTRY glWindowPos2dvMESA( const GLdouble *p );
  2031.  
  2032. GLAPI void GLAPIENTRY glWindowPos3iMESA( GLint x, GLint y, GLint z );
  2033. GLAPI void GLAPIENTRY glWindowPos3sMESA( GLshort x, GLshort y, GLshort z );
  2034. GLAPI void GLAPIENTRY glWindowPos3fMESA( GLfloat x, GLfloat y, GLfloat z );
  2035. GLAPI void GLAPIENTRY glWindowPos3dMESA( GLdouble x, GLdouble y, GLdouble z );
  2036.  
  2037. GLAPI void GLAPIENTRY glWindowPos3ivMESA( const GLint *p );
  2038. GLAPI void GLAPIENTRY glWindowPos3svMESA( const GLshort *p );
  2039. GLAPI void GLAPIENTRY glWindowPos3fvMESA( const GLfloat *p );
  2040. GLAPI void GLAPIENTRY glWindowPos3dvMESA( const GLdouble *p );
  2041.  
  2042. GLAPI void GLAPIENTRY glWindowPos4iMESA( GLint x, GLint y, GLint z, GLint w );
  2043. GLAPI void GLAPIENTRY glWindowPos4sMESA( GLshort x, GLshort y, GLshort z, GLshort w );
  2044. GLAPI void GLAPIENTRY glWindowPos4fMESA( GLfloat x, GLfloat y, GLfloat z, GLfloat w );
  2045. GLAPI void GLAPIENTRY glWindowPos4dMESA( GLdouble x, GLdouble y, GLdouble z, GLdouble w);
  2046.  
  2047. GLAPI void GLAPIENTRY glWindowPos4ivMESA( const GLint *p );
  2048. GLAPI void GLAPIENTRY glWindowPos4svMESA( const GLshort *p );
  2049. GLAPI void GLAPIENTRY glWindowPos4fvMESA( const GLfloat *p );
  2050. GLAPI void GLAPIENTRY glWindowPos4dvMESA( const GLdouble *p );
  2051.  
  2052.  
  2053. /* GL_MESA_resize_buffers */
  2054.  
  2055. GLAPI void GLAPIENTRY glResizeBuffersMESA( void );
  2056.  
  2057.  
  2058. /* 1.2 functions */
  2059. GLAPI void GLAPIENTRY glDrawRangeElements( GLenum mode, GLuint start,
  2060.     GLuint end, GLsizei count, GLenum type, const GLvoid *indices );
  2061.  
  2062. GLAPI void GLAPIENTRY glTexImage3D( GLenum target, GLint level,
  2063.                                       GLint internalFormat,
  2064.                                       GLsizei width, GLsizei height,
  2065.                                       GLsizei depth, GLint border,
  2066.                                       GLenum format, GLenum type,
  2067.                                       const GLvoid *pixels );
  2068.  
  2069. GLAPI void GLAPIENTRY glTexSubImage3D( GLenum target, GLint level,
  2070.                                          GLint xoffset, GLint yoffset,
  2071.                                          GLint zoffset, GLsizei width,
  2072.                                          GLsizei height, GLsizei depth,
  2073.                                          GLenum format,
  2074.                                          GLenum type, const GLvoid *pixels);
  2075.  
  2076. GLAPI void GLAPIENTRY glCopyTexSubImage3D( GLenum target, GLint level,
  2077.                                              GLint xoffset, GLint yoffset,
  2078.                                              GLint zoffset, GLint x,
  2079.                                              GLint y, GLsizei width,
  2080.                                              GLsizei height );
  2081.  
  2082.  
  2083. /* 1.2 imaging extension functions */
  2084.  
  2085. GLAPI void GLAPIENTRY glBlendEquation( GLenum mode );
  2086.  
  2087. GLAPI void GLAPIENTRY glBlendColor( GLclampf red, GLclampf green,
  2088.                                     GLclampf blue, GLclampf alpha );
  2089.  
  2090. GLAPI void GLAPIENTRY glColorSubTable( GLenum target, GLsizei start,
  2091.                            GLsizei count, GLenum format, GLenum type,
  2092.                            const GLvoid *data );
  2093.  
  2094. GLAPI void GLAPIENTRY glColorTable( GLenum target, GLenum internalFormat,
  2095.                         GLsizei width, GLenum format, GLenum type,
  2096.                         const GLvoid *table );
  2097.  
  2098. GLAPI void GLAPIENTRY glColorTableParameterfv(GLenum target, GLenum pname, const GLfloat *params);
  2099. GLAPI void GLAPIENTRY glColorTableParameteriv(GLenum target, GLenum pname, const GLint *params);
  2100.  
  2101. GLAPI void GLAPIENTRY glGetColorTable( GLenum target, GLenum format,
  2102.                        GLenum type, GLvoid *table );
  2103.  
  2104. GLAPI void GLAPIENTRY glGetColorTableParameterfv( GLenum target, GLenum pname,
  2105.                                       GLfloat *params );
  2106.  
  2107. GLAPI void GLAPIENTRY glGetColorTableParameteriv( GLenum target, GLenum pname,
  2108.                                       GLint *params );
  2109.  
  2110. GLAPI void GLAPIENTRY glHistogram( GLenum target, GLsizei width,
  2111.                    GLenum internalformat, GLboolean sink );
  2112.  
  2113. GLAPI void GLAPIENTRY glResetHistogram( GLenum target );
  2114.  
  2115. GLAPI void GLAPIENTRY glGetHistogram( GLenum target, GLboolean reset,
  2116.                       GLenum format, GLenum type,
  2117.                       GLvoid *values );
  2118.  
  2119. GLAPI void GLAPIENTRY glGetHistogramParameterfv( GLenum target, GLenum pname,
  2120.                          GLfloat *params );
  2121.  
  2122. GLAPI void GLAPIENTRY glGetHistogramParameteriv( GLenum target, GLenum pname,
  2123.                          GLint *params );
  2124.  
  2125. GLAPI void GLAPIENTRY glMinmax( GLenum target, GLenum internalformat,
  2126.                 GLboolean sink );
  2127.  
  2128. GLAPI void GLAPIENTRY glResetMinmax( GLenum target );
  2129.  
  2130. GLAPI void GLAPIENTRY glGetMinmax( GLenum target, GLboolean reset,
  2131.                                    GLenum format, GLenum types,
  2132.                                    GLvoid *values );
  2133.  
  2134. GLAPI void GLAPIENTRY glGetMinmaxParameterfv( GLenum target, GLenum pname,
  2135.                           GLfloat *params );
  2136.  
  2137. GLAPI void GLAPIENTRY glGetMinmaxParameteriv( GLenum target, GLenum pname,
  2138.                           GLint *params );
  2139.  
  2140. GLAPI void GLAPIENTRY glConvolutionFilter1D( GLenum target,
  2141.     GLenum internalformat, GLsizei width, GLenum format, GLenum type,
  2142.     const GLvoid *image );
  2143.  
  2144. GLAPI void GLAPIENTRY glConvolutionFilter2D( GLenum target,
  2145.     GLenum internalformat, GLsizei width, GLsizei height, GLenum format,
  2146.     GLenum type, const GLvoid *image );
  2147.  
  2148. GLAPI void GLAPIENTRY glConvolutionParameterf( GLenum target, GLenum pname,
  2149.     GLfloat params );
  2150.  
  2151. GLAPI void GLAPIENTRY glConvolutionParameterfv( GLenum target, GLenum pname,
  2152.     const GLfloat *params );
  2153.  
  2154. GLAPI void GLAPIENTRY glConvolutionParameteri( GLenum target, GLenum pname,
  2155.     GLint params );
  2156.  
  2157. GLAPI void GLAPIENTRY glConvolutionParameteriv( GLenum target, GLenum pname,
  2158.     const GLint *params );
  2159.  
  2160. GLAPI void GLAPIENTRY glCopyConvolutionFilter1D( GLenum target,
  2161.     GLenum internalformat, GLint x, GLint y, GLsizei width );
  2162.  
  2163. GLAPI void GLAPIENTRY glCopyConvolutionFilter2D( GLenum target,
  2164.     GLenum internalformat, GLint x, GLint y, GLsizei width,
  2165.     GLsizei height);
  2166.  
  2167. GLAPI void GLAPIENTRY glGetConvolutionFilter( GLenum target, GLenum format,
  2168.     GLenum type, GLvoid *image );
  2169.  
  2170. GLAPI void GLAPIENTRY glGetConvolutionParameterfv( GLenum target, GLenum pname,
  2171.     GLfloat *params );
  2172.  
  2173. GLAPI void GLAPIENTRY glGetConvolutionParameteriv( GLenum target, GLenum pname,
  2174.     GLint *params );
  2175.  
  2176. GLAPI void GLAPIENTRY glSeparableFilter2D( GLenum target,
  2177.     GLenum internalformat, GLsizei width, GLsizei height, GLenum format,
  2178.     GLenum type, const GLvoid *row, const GLvoid *column );
  2179.  
  2180. GLAPI void GLAPIENTRY glGetSeparableFilter( GLenum target, GLenum format,
  2181.     GLenum type, GLvoid *row, GLvoid *column, GLvoid *span );
  2182.  
  2183. GLAPI void GLAPIENTRY glCopyColorSubTable( GLenum target, GLsizei start,
  2184.     GLint x, GLint y, GLsizei width );
  2185.  
  2186. GLAPI void GLAPIENTRY glCopyColorTable( GLenum target, GLenum internalformat,
  2187.     GLint x, GLint y, GLsizei width );
  2188.  
  2189.  
  2190.  
  2191. /* GL_EXT_compiled_vertex_array */
  2192. GLAPI void GLAPIENTRY glLockArraysEXT( GLint first, GLsizei count );
  2193. GLAPI void GLAPIENTRY glUnlockArraysEXT( void );
  2194.  
  2195.  
  2196. /*
  2197.  * GL_EXT_get_proc_address
  2198.  *
  2199.  * XXX this is a preliminary extension.  It may change!  Use at your
  2200.  * own risk!  Do not release code which uses this extension yet!
  2201.  * If you want to try it out, #define GL_EXT_get_proc_address before
  2202.  * #include <GL/gl.h>
  2203.  */
  2204. #define GL_EXT_get_proc_address 1
  2205. #ifdef GL_EXT_get_proc_address
  2206. GLAPI void (GLAPIENTRY *glGetProcAddressEXT(const GLubyte *procName))();
  2207. #endif
  2208.  
  2209. #if defined(__BEOS__) || defined(__QUICKDRAW__)
  2210. #pragma export off
  2211. #endif
  2212.  
  2213.  
  2214. /*
  2215.  * Compile-time tests for extensions:
  2216.  */
  2217. #define GL_EXT_blend_color        1
  2218. #define GL_EXT_blend_logic_op        1
  2219. #define GL_EXT_blend_minmax        1
  2220. #define GL_EXT_blend_subtract        1
  2221. #define GL_EXT_polygon_offset        1
  2222. #define GL_EXT_vertex_array        1
  2223. #define GL_EXT_texture_object        1
  2224. #define GL_EXT_texture3D        1
  2225. #define GL_EXT_paletted_texture        1
  2226. #define GL_EXT_shared_texture_palette    1
  2227. #define GL_EXT_point_parameters        1
  2228. #define GL_EXT_rescale_normal        1
  2229. #define GL_EXT_abgr            1
  2230. #define GL_EXT_stencil_wrap        1
  2231. #define GL_MESA_window_pos        1
  2232. #define GL_MESA_resize_buffers        1
  2233. #define GL_SGIS_texture_edge_clamp    1
  2234. #define GL_INGR_blend_func_separate    1
  2235. #define GL_ARB_multitexture        1
  2236. #define GL_NV_texgen_reflection        1
  2237. #define GL_PGI_misc_hints               1
  2238. #define GL_EXT_compiled_vertex_array    1
  2239. #define GL_EXT_clip_volume_hint         1
  2240.  
  2241.  
  2242. #ifdef macintosh
  2243.     #pragma enumsalwaysint reset
  2244.     #if PRAGMA_IMPORT_SUPPORTED
  2245.     #pragma import off
  2246.     #endif
  2247. #endif
  2248.  
  2249.  
  2250. #ifdef __cplusplus
  2251. }
  2252. #endif
  2253.  
  2254. #endif
  2255.