source: Daodan/MinGW/include/GL/gl.h@ 1106

Last change on this file since 1106 was 1046, checked in by alloc, 8 years ago

Daodan: Added Windows MinGW and build batch file

File size: 78.0 KB
RevLine 
[1046]1/*
2 * Mesa 3-D graphics library
3 * Version: 4.0
4 *
5 * Copyright (C) 1999-2001 Brian Paul All Rights Reserved.
6 *
7 * Permission is hereby granted, free of charge, to any person obtaining a
8 * copy of this software and associated documentation files (the "Software"),
9 * to deal in the Software without restriction, including without limitation
10 * the rights to use, copy, modify, merge, publish, distribute, sublicense,
11 * and/or sell copies of the Software, and to permit persons to whom the
12 * Software is furnished to do so, subject to the following conditions:
13 *
14 * The above copyright notice and this permission notice shall be included
15 * in all copies or substantial portions of the Software.
16 *
17 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
18 * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
19 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
20 * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
21 * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
22 * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
23 */
24
25
26/************************************************************************
27 * 2002-Apr-22, José Fonseca:
28 * Removed non Win32 system-specific stuff
29 *
30 * 2002-Apr-17, Marcus Geelnard:
31 * For win32, OpenGL 1.2 & 1.3 definitions are not made in this file
32 * anymore, since under Windows those are regarded as extensions, and
33 * are better defined in glext.h (especially the function prototypes may
34 * conflict with extension function pointers). A few "cosmetical"
35 * changes were also made to this file.
36 *
37 * 2002-Apr-15, Marcus Geelnard:
38 * Modified this file to better fit a wider range of compilers, removed
39 * Mesa specific stuff, and removed extension definitions (this file now
40 * relies on GL/glext.h). Hopefully this file should now function as a
41 * generic OpenGL gl.h include file for most compilers and environments.
42 * Changed GLAPIENTRY to APIENTRY (to be consistent with GL/glext.h).
43 ************************************************************************/
44
45
46#ifndef __gl_h_
47#define __gl_h_
48
49
50
51/************************************************************************
52 * Begin system-specific stuff.
53 */
54/* __WIN32__ */
55#if !defined(__WIN32__) && (defined(_WIN32) || defined(WIN32) || defined(__CYGWIN__))
56# define __WIN32__
57#endif
58
59/* GLAPI, part 1 (use WINGDIAPI, if defined) */
60#if defined(__WIN32__) && defined(WINGDIAPI)
61# define GLAPI WINGDIAPI
62#endif
63
64/* GLAPI, part 2 */
65#if !defined(GLAPI)
66# if defined(_MSC_VER) /* Microsoft Visual C++ */
67# define GLAPI __declspec(dllimport)
68# elif defined(__LCC__) && defined(__WIN32__) /* LCC-Win32 */
69# define GLAPI __stdcall
70# else /* Others (e.g. MinGW, Cygwin, non-win32) */
71# define GLAPI extern
72# endif
73#endif
74
75/* APIENTRY */
76#if !defined(APIENTRY)
77# if defined(__WIN32__)
78# define APIENTRY __stdcall
79# else
80# define APIENTRY
81# endif
82#endif
83/*
84 * End system-specific stuff.
85 ************************************************************************/
86
87
88
89#ifdef __cplusplus
90extern "C" {
91#endif
92
93
94
95#define GL_VERSION_1_1 1
96
97#if !defined(__WIN32__)
98#define GL_VERSION_1_2 1
99#define GL_VERSION_1_3 1
100#define GL_ARB_imaging 1
101#endif
102
103
104/*
105 *
106 * Datatypes
107 *
108 */
109#ifdef CENTERLINE_CLPP
110#define signed
111#endif
112typedef unsigned int GLenum;
113typedef unsigned char GLboolean;
114typedef unsigned int GLbitfield;
115typedef void GLvoid;
116typedef signed char GLbyte; /* 1-byte signed */
117typedef short GLshort; /* 2-byte signed */
118typedef int GLint; /* 4-byte signed */
119typedef unsigned char GLubyte; /* 1-byte unsigned */
120typedef unsigned short GLushort; /* 2-byte unsigned */
121typedef unsigned int GLuint; /* 4-byte unsigned */
122typedef int GLsizei; /* 4-byte signed */
123typedef float GLfloat; /* single precision float */
124typedef float GLclampf; /* single precision float in [0,1] */
125typedef double GLdouble; /* double precision float */
126typedef double GLclampd; /* double precision float in [0,1] */
127
128
129
130/************************************************************************
131 *
132 * Constants
133 *
134 ************************************************************************/
135
136/* Boolean values */
137#define GL_FALSE 0x0
138#define GL_TRUE 0x1
139
140/* Data types */
141#define GL_BYTE 0x1400
142#define GL_UNSIGNED_BYTE 0x1401
143#define GL_SHORT 0x1402
144#define GL_UNSIGNED_SHORT 0x1403
145#define GL_INT 0x1404
146#define GL_UNSIGNED_INT 0x1405
147#define GL_FLOAT 0x1406
148#define GL_DOUBLE 0x140A
149#define GL_2_BYTES 0x1407
150#define GL_3_BYTES 0x1408
151#define GL_4_BYTES 0x1409
152
153/* Primitives */
154#define GL_POINTS 0x0000
155#define GL_LINES 0x0001
156#define GL_LINE_LOOP 0x0002
157#define GL_LINE_STRIP 0x0003
158#define GL_TRIANGLES 0x0004
159#define GL_TRIANGLE_STRIP 0x0005
160#define GL_TRIANGLE_FAN 0x0006
161#define GL_QUADS 0x0007
162#define GL_QUAD_STRIP 0x0008
163#define GL_POLYGON 0x0009
164
165/* Vertex Arrays */
166#define GL_VERTEX_ARRAY 0x8074
167#define GL_NORMAL_ARRAY 0x8075
168#define GL_COLOR_ARRAY 0x8076
169#define GL_INDEX_ARRAY 0x8077
170#define GL_TEXTURE_COORD_ARRAY 0x8078
171#define GL_EDGE_FLAG_ARRAY 0x8079
172#define GL_VERTEX_ARRAY_SIZE 0x807A
173#define GL_VERTEX_ARRAY_TYPE 0x807B
174#define GL_VERTEX_ARRAY_STRIDE 0x807C
175#define GL_NORMAL_ARRAY_TYPE 0x807E
176#define GL_NORMAL_ARRAY_STRIDE 0x807F
177#define GL_COLOR_ARRAY_SIZE 0x8081
178#define GL_COLOR_ARRAY_TYPE 0x8082
179#define GL_COLOR_ARRAY_STRIDE 0x8083
180#define GL_INDEX_ARRAY_TYPE 0x8085
181#define GL_INDEX_ARRAY_STRIDE 0x8086
182#define GL_TEXTURE_COORD_ARRAY_SIZE 0x8088
183#define GL_TEXTURE_COORD_ARRAY_TYPE 0x8089
184#define GL_TEXTURE_COORD_ARRAY_STRIDE 0x808A
185#define GL_EDGE_FLAG_ARRAY_STRIDE 0x808C
186#define GL_VERTEX_ARRAY_POINTER 0x808E
187#define GL_NORMAL_ARRAY_POINTER 0x808F
188#define GL_COLOR_ARRAY_POINTER 0x8090
189#define GL_INDEX_ARRAY_POINTER 0x8091
190#define GL_TEXTURE_COORD_ARRAY_POINTER 0x8092
191#define GL_EDGE_FLAG_ARRAY_POINTER 0x8093
192#define GL_V2F 0x2A20
193#define GL_V3F 0x2A21
194#define GL_C4UB_V2F 0x2A22
195#define GL_C4UB_V3F 0x2A23
196#define GL_C3F_V3F 0x2A24
197#define GL_N3F_V3F 0x2A25
198#define GL_C4F_N3F_V3F 0x2A26
199#define GL_T2F_V3F 0x2A27
200#define GL_T4F_V4F 0x2A28
201#define GL_T2F_C4UB_V3F 0x2A29
202#define GL_T2F_C3F_V3F 0x2A2A
203#define GL_T2F_N3F_V3F 0x2A2B
204#define GL_T2F_C4F_N3F_V3F 0x2A2C
205#define GL_T4F_C4F_N3F_V4F 0x2A2D
206
207/* Matrix Mode */
208#define GL_MATRIX_MODE 0x0BA0
209#define GL_MODELVIEW 0x1700
210#define GL_PROJECTION 0x1701
211#define GL_TEXTURE 0x1702
212
213/* Points */
214#define GL_POINT_SMOOTH 0x0B10
215#define GL_POINT_SIZE 0x0B11
216#define GL_POINT_SIZE_GRANULARITY 0x0B13
217#define GL_POINT_SIZE_RANGE 0x0B12
218
219/* Lines */
220#define GL_LINE_SMOOTH 0x0B20
221#define GL_LINE_STIPPLE 0x0B24
222#define GL_LINE_STIPPLE_PATTERN 0x0B25
223#define GL_LINE_STIPPLE_REPEAT 0x0B26
224#define GL_LINE_WIDTH 0x0B21
225#define GL_LINE_WIDTH_GRANULARITY 0x0B23
226#define GL_LINE_WIDTH_RANGE 0x0B22
227
228/* Polygons */
229#define GL_POINT 0x1B00
230#define GL_LINE 0x1B01
231#define GL_FILL 0x1B02
232#define GL_CW 0x0900
233#define GL_CCW 0x0901
234#define GL_FRONT 0x0404
235#define GL_BACK 0x0405
236#define GL_POLYGON_MODE 0x0B40
237#define GL_POLYGON_SMOOTH 0x0B41
238#define GL_POLYGON_STIPPLE 0x0B42
239#define GL_EDGE_FLAG 0x0B43
240#define GL_CULL_FACE 0x0B44
241#define GL_CULL_FACE_MODE 0x0B45
242#define GL_FRONT_FACE 0x0B46
243#define GL_POLYGON_OFFSET_FACTOR 0x8038
244#define GL_POLYGON_OFFSET_UNITS 0x2A00
245#define GL_POLYGON_OFFSET_POINT 0x2A01
246#define GL_POLYGON_OFFSET_LINE 0x2A02
247#define GL_POLYGON_OFFSET_FILL 0x8037
248
249/* Display Lists */
250#define GL_COMPILE 0x1300
251#define GL_COMPILE_AND_EXECUTE 0x1301
252#define GL_LIST_BASE 0x0B32
253#define GL_LIST_INDEX 0x0B33
254#define GL_LIST_MODE 0x0B30
255
256/* Depth buffer */
257#define GL_NEVER 0x0200
258#define GL_LESS 0x0201
259#define GL_EQUAL 0x0202
260#define GL_LEQUAL 0x0203
261#define GL_GREATER 0x0204
262#define GL_NOTEQUAL 0x0205
263#define GL_GEQUAL 0x0206
264#define GL_ALWAYS 0x0207
265#define GL_DEPTH_TEST 0x0B71
266#define GL_DEPTH_BITS 0x0D56
267#define GL_DEPTH_CLEAR_VALUE 0x0B73
268#define GL_DEPTH_FUNC 0x0B74
269#define GL_DEPTH_RANGE 0x0B70
270#define GL_DEPTH_WRITEMASK 0x0B72
271#define GL_DEPTH_COMPONENT 0x1902
272
273/* Lighting */
274#define GL_LIGHTING 0x0B50
275#define GL_LIGHT0 0x4000
276#define GL_LIGHT1 0x4001
277#define GL_LIGHT2 0x4002
278#define GL_LIGHT3 0x4003
279#define GL_LIGHT4 0x4004
280#define GL_LIGHT5 0x4005
281#define GL_LIGHT6 0x4006
282#define GL_LIGHT7 0x4007
283#define GL_SPOT_EXPONENT 0x1205
284#define GL_SPOT_CUTOFF 0x1206
285#define GL_CONSTANT_ATTENUATION 0x1207
286#define GL_LINEAR_ATTENUATION 0x1208
287#define GL_QUADRATIC_ATTENUATION 0x1209
288#define GL_AMBIENT 0x1200
289#define GL_DIFFUSE 0x1201
290#define GL_SPECULAR 0x1202
291#define GL_SHININESS 0x1601
292#define GL_EMISSION 0x1600
293#define GL_POSITION 0x1203
294#define GL_SPOT_DIRECTION 0x1204
295#define GL_AMBIENT_AND_DIFFUSE 0x1602
296#define GL_COLOR_INDEXES 0x1603
297#define GL_LIGHT_MODEL_TWO_SIDE 0x0B52
298#define GL_LIGHT_MODEL_LOCAL_VIEWER 0x0B51
299#define GL_LIGHT_MODEL_AMBIENT 0x0B53
300#define GL_FRONT_AND_BACK 0x0408
301#define GL_SHADE_MODEL 0x0B54
302#define GL_FLAT 0x1D00
303#define GL_SMOOTH 0x1D01
304#define GL_COLOR_MATERIAL 0x0B57
305#define GL_COLOR_MATERIAL_FACE 0x0B55
306#define GL_COLOR_MATERIAL_PARAMETER 0x0B56
307#define GL_NORMALIZE 0x0BA1
308
309/* User clipping planes */
310#define GL_CLIP_PLANE0 0x3000
311#define GL_CLIP_PLANE1 0x3001
312#define GL_CLIP_PLANE2 0x3002
313#define GL_CLIP_PLANE3 0x3003
314#define GL_CLIP_PLANE4 0x3004
315#define GL_CLIP_PLANE5 0x3005
316
317/* Accumulation buffer */
318#define GL_ACCUM_RED_BITS 0x0D58
319#define GL_ACCUM_GREEN_BITS 0x0D59
320#define GL_ACCUM_BLUE_BITS 0x0D5A
321#define GL_ACCUM_ALPHA_BITS 0x0D5B
322#define GL_ACCUM_CLEAR_VALUE 0x0B80
323#define GL_ACCUM 0x0100
324#define GL_ADD 0x0104
325#define GL_LOAD 0x0101
326#define GL_MULT 0x0103
327#define GL_RETURN 0x0102
328
329/* Alpha testing */
330#define GL_ALPHA_TEST 0x0BC0
331#define GL_ALPHA_TEST_REF 0x0BC2
332#define GL_ALPHA_TEST_FUNC 0x0BC1
333
334/* Blending */
335#define GL_BLEND 0x0BE2
336#define GL_BLEND_SRC 0x0BE1
337#define GL_BLEND_DST 0x0BE0
338#define GL_ZERO 0x0
339#define GL_ONE 0x1
340#define GL_SRC_COLOR 0x0300
341#define GL_ONE_MINUS_SRC_COLOR 0x0301
342#define GL_SRC_ALPHA 0x0302
343#define GL_ONE_MINUS_SRC_ALPHA 0x0303
344#define GL_DST_ALPHA 0x0304
345#define GL_ONE_MINUS_DST_ALPHA 0x0305
346#define GL_DST_COLOR 0x0306
347#define GL_ONE_MINUS_DST_COLOR 0x0307
348#define GL_SRC_ALPHA_SATURATE 0x0308
349#define GL_CONSTANT_COLOR 0x8001
350#define GL_ONE_MINUS_CONSTANT_COLOR 0x8002
351#define GL_CONSTANT_ALPHA 0x8003
352#define GL_ONE_MINUS_CONSTANT_ALPHA 0x8004
353
354/* Render Mode */
355#define GL_FEEDBACK 0x1C01
356#define GL_RENDER 0x1C00
357#define GL_SELECT 0x1C02
358
359/* Feedback */
360#define GL_2D 0x0600
361#define GL_3D 0x0601
362#define GL_3D_COLOR 0x0602
363#define GL_3D_COLOR_TEXTURE 0x0603
364#define GL_4D_COLOR_TEXTURE 0x0604
365#define GL_POINT_TOKEN 0x0701
366#define GL_LINE_TOKEN 0x0702
367#define GL_LINE_RESET_TOKEN 0x0707
368#define GL_POLYGON_TOKEN 0x0703
369#define GL_BITMAP_TOKEN 0x0704
370#define GL_DRAW_PIXEL_TOKEN 0x0705
371#define GL_COPY_PIXEL_TOKEN 0x0706
372#define GL_PASS_THROUGH_TOKEN 0x0700
373#define GL_FEEDBACK_BUFFER_POINTER 0x0DF0
374#define GL_FEEDBACK_BUFFER_SIZE 0x0DF1
375#define GL_FEEDBACK_BUFFER_TYPE 0x0DF2
376
377/* Selection */
378#define GL_SELECTION_BUFFER_POINTER 0x0DF3
379#define GL_SELECTION_BUFFER_SIZE 0x0DF4
380
381/* Fog */
382#define GL_FOG 0x0B60
383#define GL_FOG_MODE 0x0B65
384#define GL_FOG_DENSITY 0x0B62
385#define GL_FOG_COLOR 0x0B66
386#define GL_FOG_INDEX 0x0B61
387#define GL_FOG_START 0x0B63
388#define GL_FOG_END 0x0B64
389#define GL_LINEAR 0x2601
390#define GL_EXP 0x0800
391#define GL_EXP2 0x0801
392
393/* Logic Ops */
394#define GL_LOGIC_OP 0x0BF1
395#define GL_INDEX_LOGIC_OP 0x0BF1
396#define GL_COLOR_LOGIC_OP 0x0BF2
397#define GL_LOGIC_OP_MODE 0x0BF0
398#define GL_CLEAR 0x1500
399#define GL_SET 0x150F
400#define GL_COPY 0x1503
401#define GL_COPY_INVERTED 0x150C
402#define GL_NOOP 0x1505
403#define GL_INVERT 0x150A
404#define GL_AND 0x1501
405#define GL_NAND 0x150E
406#define GL_OR 0x1507
407#define GL_NOR 0x1508
408#define GL_XOR 0x1506
409#define GL_EQUIV 0x1509
410#define GL_AND_REVERSE 0x1502
411#define GL_AND_INVERTED 0x1504
412#define GL_OR_REVERSE 0x150B
413#define GL_OR_INVERTED 0x150D
414
415/* Stencil */
416#define GL_STENCIL_TEST 0x0B90
417#define GL_STENCIL_WRITEMASK 0x0B98
418#define GL_STENCIL_BITS 0x0D57
419#define GL_STENCIL_FUNC 0x0B92
420#define GL_STENCIL_VALUE_MASK 0x0B93
421#define GL_STENCIL_REF 0x0B97
422#define GL_STENCIL_FAIL 0x0B94
423#define GL_STENCIL_PASS_DEPTH_PASS 0x0B96
424#define GL_STENCIL_PASS_DEPTH_FAIL 0x0B95
425#define GL_STENCIL_CLEAR_VALUE 0x0B91
426#define GL_STENCIL_INDEX 0x1901
427#define GL_KEEP 0x1E00
428#define GL_REPLACE 0x1E01
429#define GL_INCR 0x1E02
430#define GL_DECR 0x1E03
431
432/* Buffers, Pixel Drawing/Reading */
433#define GL_NONE 0x0
434#define GL_LEFT 0x0406
435#define GL_RIGHT 0x0407
436/*GL_FRONT 0x0404 */
437/*GL_BACK 0x0405 */
438/*GL_FRONT_AND_BACK 0x0408 */
439#define GL_FRONT_LEFT 0x0400
440#define GL_FRONT_RIGHT 0x0401
441#define GL_BACK_LEFT 0x0402
442#define GL_BACK_RIGHT 0x0403
443#define GL_AUX0 0x0409
444#define GL_AUX1 0x040A
445#define GL_AUX2 0x040B
446#define GL_AUX3 0x040C
447#define GL_COLOR_INDEX 0x1900
448#define GL_RED 0x1903
449#define GL_GREEN 0x1904
450#define GL_BLUE 0x1905
451#define GL_ALPHA 0x1906
452#define GL_LUMINANCE 0x1909
453#define GL_LUMINANCE_ALPHA 0x190A
454#define GL_ALPHA_BITS 0x0D55
455#define GL_RED_BITS 0x0D52
456#define GL_GREEN_BITS 0x0D53
457#define GL_BLUE_BITS 0x0D54
458#define GL_INDEX_BITS 0x0D51
459#define GL_SUBPIXEL_BITS 0x0D50
460#define GL_AUX_BUFFERS 0x0C00
461#define GL_READ_BUFFER 0x0C02
462#define GL_DRAW_BUFFER 0x0C01
463#define GL_DOUBLEBUFFER 0x0C32
464#define GL_STEREO 0x0C33
465#define GL_BITMAP 0x1A00
466#define GL_COLOR 0x1800
467#define GL_DEPTH 0x1801
468#define GL_STENCIL 0x1802
469#define GL_DITHER 0x0BD0
470#define GL_RGB 0x1907
471#define GL_RGBA 0x1908
472
473/* Implementation limits */
474#define GL_MAX_LIST_NESTING 0x0B31
475#define GL_MAX_ATTRIB_STACK_DEPTH 0x0D35
476#define GL_MAX_MODELVIEW_STACK_DEPTH 0x0D36
477#define GL_MAX_NAME_STACK_DEPTH 0x0D37
478#define GL_MAX_PROJECTION_STACK_DEPTH 0x0D38
479#define GL_MAX_TEXTURE_STACK_DEPTH 0x0D39
480#define GL_MAX_EVAL_ORDER 0x0D30
481#define GL_MAX_LIGHTS 0x0D31
482#define GL_MAX_CLIP_PLANES 0x0D32
483#define GL_MAX_TEXTURE_SIZE 0x0D33
484#define GL_MAX_PIXEL_MAP_TABLE 0x0D34
485#define GL_MAX_VIEWPORT_DIMS 0x0D3A
486#define GL_MAX_CLIENT_ATTRIB_STACK_DEPTH 0x0D3B
487
488/* Gets */
489#define GL_ATTRIB_STACK_DEPTH 0x0BB0
490#define GL_CLIENT_ATTRIB_STACK_DEPTH 0x0BB1
491#define GL_COLOR_CLEAR_VALUE 0x0C22
492#define GL_COLOR_WRITEMASK 0x0C23
493#define GL_CURRENT_INDEX 0x0B01
494#define GL_CURRENT_COLOR 0x0B00
495#define GL_CURRENT_NORMAL 0x0B02
496#define GL_CURRENT_RASTER_COLOR 0x0B04
497#define GL_CURRENT_RASTER_DISTANCE 0x0B09
498#define GL_CURRENT_RASTER_INDEX 0x0B05
499#define GL_CURRENT_RASTER_POSITION 0x0B07
500#define GL_CURRENT_RASTER_TEXTURE_COORDS 0x0B06
501#define GL_CURRENT_RASTER_POSITION_VALID 0x0B08
502#define GL_CURRENT_TEXTURE_COORDS 0x0B03
503#define GL_INDEX_CLEAR_VALUE 0x0C20
504#define GL_INDEX_MODE 0x0C30
505#define GL_INDEX_WRITEMASK 0x0C21
506#define GL_MODELVIEW_MATRIX 0x0BA6
507#define GL_MODELVIEW_STACK_DEPTH 0x0BA3
508#define GL_NAME_STACK_DEPTH 0x0D70
509#define GL_PROJECTION_MATRIX 0x0BA7
510#define GL_PROJECTION_STACK_DEPTH 0x0BA4
511#define GL_RENDER_MODE 0x0C40
512#define GL_RGBA_MODE 0x0C31
513#define GL_TEXTURE_MATRIX 0x0BA8
514#define GL_TEXTURE_STACK_DEPTH 0x0BA5
515#define GL_VIEWPORT 0x0BA2
516
517/* Evaluators */
518#define GL_AUTO_NORMAL 0x0D80
519#define GL_MAP1_COLOR_4 0x0D90
520#define GL_MAP1_GRID_DOMAIN 0x0DD0
521#define GL_MAP1_GRID_SEGMENTS 0x0DD1
522#define GL_MAP1_INDEX 0x0D91
523#define GL_MAP1_NORMAL 0x0D92
524#define GL_MAP1_TEXTURE_COORD_1 0x0D93
525#define GL_MAP1_TEXTURE_COORD_2 0x0D94
526#define GL_MAP1_TEXTURE_COORD_3 0x0D95
527#define GL_MAP1_TEXTURE_COORD_4 0x0D96
528#define GL_MAP1_VERTEX_3 0x0D97
529#define GL_MAP1_VERTEX_4 0x0D98
530#define GL_MAP2_COLOR_4 0x0DB0
531#define GL_MAP2_GRID_DOMAIN 0x0DD2
532#define GL_MAP2_GRID_SEGMENTS 0x0DD3
533#define GL_MAP2_INDEX 0x0DB1
534#define GL_MAP2_NORMAL 0x0DB2
535#define GL_MAP2_TEXTURE_COORD_1 0x0DB3
536#define GL_MAP2_TEXTURE_COORD_2 0x0DB4
537#define GL_MAP2_TEXTURE_COORD_3 0x0DB5
538#define GL_MAP2_TEXTURE_COORD_4 0x0DB6
539#define GL_MAP2_VERTEX_3 0x0DB7
540#define GL_MAP2_VERTEX_4 0x0DB8
541#define GL_COEFF 0x0A00
542#define GL_DOMAIN 0x0A02
543#define GL_ORDER 0x0A01
544
545/* Hints */
546#define GL_FOG_HINT 0x0C54
547#define GL_LINE_SMOOTH_HINT 0x0C52
548#define GL_PERSPECTIVE_CORRECTION_HINT 0x0C50
549#define GL_POINT_SMOOTH_HINT 0x0C51
550#define GL_POLYGON_SMOOTH_HINT 0x0C53
551#define GL_DONT_CARE 0x1100
552#define GL_FASTEST 0x1101
553#define GL_NICEST 0x1102
554
555/* Scissor box */
556#define GL_SCISSOR_TEST 0x0C11
557#define GL_SCISSOR_BOX 0x0C10
558
559/* Pixel Mode / Transfer */
560#define GL_MAP_COLOR 0x0D10
561#define GL_MAP_STENCIL 0x0D11
562#define GL_INDEX_SHIFT 0x0D12
563#define GL_INDEX_OFFSET 0x0D13
564#define GL_RED_SCALE 0x0D14
565#define GL_RED_BIAS 0x0D15
566#define GL_GREEN_SCALE 0x0D18
567#define GL_GREEN_BIAS 0x0D19
568#define GL_BLUE_SCALE 0x0D1A
569#define GL_BLUE_BIAS 0x0D1B
570#define GL_ALPHA_SCALE 0x0D1C
571#define GL_ALPHA_BIAS 0x0D1D
572#define GL_DEPTH_SCALE 0x0D1E
573#define GL_DEPTH_BIAS 0x0D1F
574#define GL_PIXEL_MAP_S_TO_S_SIZE 0x0CB1
575#define GL_PIXEL_MAP_I_TO_I_SIZE 0x0CB0
576#define GL_PIXEL_MAP_I_TO_R_SIZE 0x0CB2
577#define GL_PIXEL_MAP_I_TO_G_SIZE 0x0CB3
578#define GL_PIXEL_MAP_I_TO_B_SIZE 0x0CB4
579#define GL_PIXEL_MAP_I_TO_A_SIZE 0x0CB5
580#define GL_PIXEL_MAP_R_TO_R_SIZE 0x0CB6
581#define GL_PIXEL_MAP_G_TO_G_SIZE 0x0CB7
582#define GL_PIXEL_MAP_B_TO_B_SIZE 0x0CB8
583#define GL_PIXEL_MAP_A_TO_A_SIZE 0x0CB9
584#define GL_PIXEL_MAP_S_TO_S 0x0C71
585#define GL_PIXEL_MAP_I_TO_I 0x0C70
586#define GL_PIXEL_MAP_I_TO_R 0x0C72
587#define GL_PIXEL_MAP_I_TO_G 0x0C73
588#define GL_PIXEL_MAP_I_TO_B 0x0C74
589#define GL_PIXEL_MAP_I_TO_A 0x0C75
590#define GL_PIXEL_MAP_R_TO_R 0x0C76
591#define GL_PIXEL_MAP_G_TO_G 0x0C77
592#define GL_PIXEL_MAP_B_TO_B 0x0C78
593#define GL_PIXEL_MAP_A_TO_A 0x0C79
594#define GL_PACK_ALIGNMENT 0x0D05
595#define GL_PACK_LSB_FIRST 0x0D01
596#define GL_PACK_ROW_LENGTH 0x0D02
597#define GL_PACK_SKIP_PIXELS 0x0D04
598#define GL_PACK_SKIP_ROWS 0x0D03
599#define GL_PACK_SWAP_BYTES 0x0D00
600#define GL_UNPACK_ALIGNMENT 0x0CF5
601#define GL_UNPACK_LSB_FIRST 0x0CF1
602#define GL_UNPACK_ROW_LENGTH 0x0CF2
603#define GL_UNPACK_SKIP_PIXELS 0x0CF4
604#define GL_UNPACK_SKIP_ROWS 0x0CF3
605#define GL_UNPACK_SWAP_BYTES 0x0CF0
606#define GL_ZOOM_X 0x0D16
607#define GL_ZOOM_Y 0x0D17
608
609/* Texture mapping */
610#define GL_TEXTURE_ENV 0x2300
611#define GL_TEXTURE_ENV_MODE 0x2200
612#define GL_TEXTURE_1D 0x0DE0
613#define GL_TEXTURE_2D 0x0DE1
614#define GL_TEXTURE_WRAP_S 0x2802
615#define GL_TEXTURE_WRAP_T 0x2803
616#define GL_TEXTURE_MAG_FILTER 0x2800
617#define GL_TEXTURE_MIN_FILTER 0x2801
618#define GL_TEXTURE_ENV_COLOR 0x2201
619#define GL_TEXTURE_GEN_S 0x0C60
620#define GL_TEXTURE_GEN_T 0x0C61
621#define GL_TEXTURE_GEN_MODE 0x2500
622#define GL_TEXTURE_BORDER_COLOR 0x1004
623#define GL_TEXTURE_WIDTH 0x1000
624#define GL_TEXTURE_HEIGHT 0x1001
625#define GL_TEXTURE_BORDER 0x1005
626#define GL_TEXTURE_COMPONENTS 0x1003
627#define GL_TEXTURE_RED_SIZE 0x805C
628#define GL_TEXTURE_GREEN_SIZE 0x805D
629#define GL_TEXTURE_BLUE_SIZE 0x805E
630#define GL_TEXTURE_ALPHA_SIZE 0x805F
631#define GL_TEXTURE_LUMINANCE_SIZE 0x8060
632#define GL_TEXTURE_INTENSITY_SIZE 0x8061
633#define GL_NEAREST_MIPMAP_NEAREST 0x2700
634#define GL_NEAREST_MIPMAP_LINEAR 0x2702
635#define GL_LINEAR_MIPMAP_NEAREST 0x2701
636#define GL_LINEAR_MIPMAP_LINEAR 0x2703
637#define GL_OBJECT_LINEAR 0x2401
638#define GL_OBJECT_PLANE 0x2501
639#define GL_EYE_LINEAR 0x2400
640#define GL_EYE_PLANE 0x2502
641#define GL_SPHERE_MAP 0x2402
642#define GL_DECAL 0x2101
643#define GL_MODULATE 0x2100
644#define GL_NEAREST 0x2600
645#define GL_REPEAT 0x2901
646#define GL_CLAMP 0x2900
647#define GL_S 0x2000
648#define GL_T 0x2001
649#define GL_R 0x2002
650#define GL_Q 0x2003
651#define GL_TEXTURE_GEN_R 0x0C62
652#define GL_TEXTURE_GEN_Q 0x0C63
653
654/* Utility */
655#define GL_VENDOR 0x1F00
656#define GL_RENDERER 0x1F01
657#define GL_VERSION 0x1F02
658#define GL_EXTENSIONS 0x1F03
659
660/* Errors */
661#define GL_NO_ERROR 0x0
662#define GL_INVALID_VALUE 0x0501
663#define GL_INVALID_ENUM 0x0500
664#define GL_INVALID_OPERATION 0x0502
665#define GL_STACK_OVERFLOW 0x0503
666#define GL_STACK_UNDERFLOW 0x0504
667#define GL_OUT_OF_MEMORY 0x0505
668
669/* glPush/PopAttrib bits */
670#define GL_CURRENT_BIT 0x00000001
671#define GL_POINT_BIT 0x00000002
672#define GL_LINE_BIT 0x00000004
673#define GL_POLYGON_BIT 0x00000008
674#define GL_POLYGON_STIPPLE_BIT 0x00000010
675#define GL_PIXEL_MODE_BIT 0x00000020
676#define GL_LIGHTING_BIT 0x00000040
677#define GL_FOG_BIT 0x00000080
678#define GL_DEPTH_BUFFER_BIT 0x00000100
679#define GL_ACCUM_BUFFER_BIT 0x00000200
680#define GL_STENCIL_BUFFER_BIT 0x00000400
681#define GL_VIEWPORT_BIT 0x00000800
682#define GL_TRANSFORM_BIT 0x00001000
683#define GL_ENABLE_BIT 0x00002000
684#define GL_COLOR_BUFFER_BIT 0x00004000
685#define GL_HINT_BIT 0x00008000
686#define GL_EVAL_BIT 0x00010000
687#define GL_LIST_BIT 0x00020000
688#define GL_TEXTURE_BIT 0x00040000
689#define GL_SCISSOR_BIT 0x00080000
690#define GL_ALL_ATTRIB_BITS 0x000FFFFF
691
692
693/* OpenGL 1.1 */
694#define GL_PROXY_TEXTURE_1D 0x8063
695#define GL_PROXY_TEXTURE_2D 0x8064
696#define GL_TEXTURE_PRIORITY 0x8066
697#define GL_TEXTURE_RESIDENT 0x8067
698#define GL_TEXTURE_BINDING_1D 0x8068
699#define GL_TEXTURE_BINDING_2D 0x8069
700#define GL_TEXTURE_INTERNAL_FORMAT 0x1003
701#define GL_ALPHA4 0x803B
702#define GL_ALPHA8 0x803C
703#define GL_ALPHA12 0x803D
704#define GL_ALPHA16 0x803E
705#define GL_LUMINANCE4 0x803F
706#define GL_LUMINANCE8 0x8040
707#define GL_LUMINANCE12 0x8041
708#define GL_LUMINANCE16 0x8042
709#define GL_LUMINANCE4_ALPHA4 0x8043
710#define GL_LUMINANCE6_ALPHA2 0x8044
711#define GL_LUMINANCE8_ALPHA8 0x8045
712#define GL_LUMINANCE12_ALPHA4 0x8046
713#define GL_LUMINANCE12_ALPHA12 0x8047
714#define GL_LUMINANCE16_ALPHA16 0x8048
715#define GL_INTENSITY 0x8049
716#define GL_INTENSITY4 0x804A
717#define GL_INTENSITY8 0x804B
718#define GL_INTENSITY12 0x804C
719#define GL_INTENSITY16 0x804D
720#define GL_R3_G3_B2 0x2A10
721#define GL_RGB4 0x804F
722#define GL_RGB5 0x8050
723#define GL_RGB8 0x8051
724#define GL_RGB10 0x8052
725#define GL_RGB12 0x8053
726#define GL_RGB16 0x8054
727#define GL_RGBA2 0x8055
728#define GL_RGBA4 0x8056
729#define GL_RGB5_A1 0x8057
730#define GL_RGBA8 0x8058
731#define GL_RGB10_A2 0x8059
732#define GL_RGBA12 0x805A
733#define GL_RGBA16 0x805B
734#define GL_CLIENT_PIXEL_STORE_BIT 0x00000001
735#define GL_CLIENT_VERTEX_ARRAY_BIT 0x00000002
736#define GL_ALL_CLIENT_ATTRIB_BITS 0xFFFFFFFF
737#define GL_CLIENT_ALL_ATTRIB_BITS 0xFFFFFFFF
738
739
740/* Under Windows, we do not define OpenGL 1.2 & 1.3 functionality, since
741 it is treated as extensions (defined in glext.h) */
742#if !defined(__WIN32__)
743
744/* OpenGL 1.2 */
745#define GL_RESCALE_NORMAL 0x803A
746#define GL_CLAMP_TO_EDGE 0x812F
747#define GL_MAX_ELEMENTS_VERTICES 0x80E8
748#define GL_MAX_ELEMENTS_INDICES 0x80E9
749#define GL_BGR 0x80E0
750#define GL_BGRA 0x80E1
751#define GL_UNSIGNED_BYTE_3_3_2 0x8032
752#define GL_UNSIGNED_BYTE_2_3_3_REV 0x8362
753#define GL_UNSIGNED_SHORT_5_6_5 0x8363
754#define GL_UNSIGNED_SHORT_5_6_5_REV 0x8364
755#define GL_UNSIGNED_SHORT_4_4_4_4 0x8033
756#define GL_UNSIGNED_SHORT_4_4_4_4_REV 0x8365
757#define GL_UNSIGNED_SHORT_5_5_5_1 0x8034
758#define GL_UNSIGNED_SHORT_1_5_5_5_REV 0x8366
759#define GL_UNSIGNED_INT_8_8_8_8 0x8035
760#define GL_UNSIGNED_INT_8_8_8_8_REV 0x8367
761#define GL_UNSIGNED_INT_10_10_10_2 0x8036
762#define GL_UNSIGNED_INT_2_10_10_10_REV 0x8368
763#define GL_LIGHT_MODEL_COLOR_CONTROL 0x81F8
764#define GL_SINGLE_COLOR 0x81F9
765#define GL_SEPARATE_SPECULAR_COLOR 0x81FA
766#define GL_TEXTURE_MIN_LOD 0x813A
767#define GL_TEXTURE_MAX_LOD 0x813B
768#define GL_TEXTURE_BASE_LEVEL 0x813C
769#define GL_TEXTURE_MAX_LEVEL 0x813D
770#define GL_SMOOTH_POINT_SIZE_RANGE 0x0B12
771#define GL_SMOOTH_POINT_SIZE_GRANULARITY 0x0B13
772#define GL_SMOOTH_LINE_WIDTH_RANGE 0x0B22
773#define GL_SMOOTH_LINE_WIDTH_GRANULARITY 0x0B23
774#define GL_ALIASED_POINT_SIZE_RANGE 0x846D
775#define GL_ALIASED_LINE_WIDTH_RANGE 0x846E
776#define GL_PACK_SKIP_IMAGES 0x806B
777#define GL_PACK_IMAGE_HEIGHT 0x806C
778#define GL_UNPACK_SKIP_IMAGES 0x806D
779#define GL_UNPACK_IMAGE_HEIGHT 0x806E
780#define GL_TEXTURE_3D 0x806F
781#define GL_PROXY_TEXTURE_3D 0x8070
782#define GL_TEXTURE_DEPTH 0x8071
783#define GL_TEXTURE_WRAP_R 0x8072
784#define GL_MAX_3D_TEXTURE_SIZE 0x8073
785#define GL_TEXTURE_BINDING_3D 0x806A
786
787/* OpenGL 1.2 imaging subset */
788/* GL_EXT_color_table */
789#define GL_COLOR_TABLE 0x80D0
790#define GL_POST_CONVOLUTION_COLOR_TABLE 0x80D1
791#define GL_POST_COLOR_MATRIX_COLOR_TABLE 0x80D2
792#define GL_PROXY_COLOR_TABLE 0x80D3
793#define GL_PROXY_POST_CONVOLUTION_COLOR_TABLE 0x80D4
794#define GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE 0x80D5
795#define GL_COLOR_TABLE_SCALE 0x80D6
796#define GL_COLOR_TABLE_BIAS 0x80D7
797#define GL_COLOR_TABLE_FORMAT 0x80D8
798#define GL_COLOR_TABLE_WIDTH 0x80D9
799#define GL_COLOR_TABLE_RED_SIZE 0x80DA
800#define GL_COLOR_TABLE_GREEN_SIZE 0x80DB
801#define GL_COLOR_TABLE_BLUE_SIZE 0x80DC
802#define GL_COLOR_TABLE_ALPHA_SIZE 0x80DD
803#define GL_COLOR_TABLE_LUMINANCE_SIZE 0x80DE
804#define GL_COLOR_TABLE_INTENSITY_SIZE 0x80DF
805/* GL_EXT_convolution and GL_HP_convolution_border_modes */
806#define GL_CONVOLUTION_1D 0x8010
807#define GL_CONVOLUTION_2D 0x8011
808#define GL_SEPARABLE_2D 0x8012
809#define GL_CONVOLUTION_BORDER_MODE 0x8013
810#define GL_CONVOLUTION_FILTER_SCALE 0x8014
811#define GL_CONVOLUTION_FILTER_BIAS 0x8015
812#define GL_REDUCE 0x8016
813#define GL_CONVOLUTION_FORMAT 0x8017
814#define GL_CONVOLUTION_WIDTH 0x8018
815#define GL_CONVOLUTION_HEIGHT 0x8019
816#define GL_MAX_CONVOLUTION_WIDTH 0x801A
817#define GL_MAX_CONVOLUTION_HEIGHT 0x801B
818#define GL_POST_CONVOLUTION_RED_SCALE 0x801C
819#define GL_POST_CONVOLUTION_GREEN_SCALE 0x801D
820#define GL_POST_CONVOLUTION_BLUE_SCALE 0x801E
821#define GL_POST_CONVOLUTION_ALPHA_SCALE 0x801F
822#define GL_POST_CONVOLUTION_RED_BIAS 0x8020
823#define GL_POST_CONVOLUTION_GREEN_BIAS 0x8021
824#define GL_POST_CONVOLUTION_BLUE_BIAS 0x8022
825#define GL_POST_CONVOLUTION_ALPHA_BIAS 0x8023
826#define GL_CONSTANT_BORDER 0x8151
827#define GL_REPLICATE_BORDER 0x8153
828#define GL_CONVOLUTION_BORDER_COLOR 0x8154
829/* GL_SGI_color_matrix */
830#define GL_COLOR_MATRIX 0x80B1
831#define GL_COLOR_MATRIX_STACK_DEPTH 0x80B2
832#define GL_MAX_COLOR_MATRIX_STACK_DEPTH 0x80B3
833#define GL_POST_COLOR_MATRIX_RED_SCALE 0x80B4
834#define GL_POST_COLOR_MATRIX_GREEN_SCALE 0x80B5
835#define GL_POST_COLOR_MATRIX_BLUE_SCALE 0x80B6
836#define GL_POST_COLOR_MATRIX_ALPHA_SCALE 0x80B7
837#define GL_POST_COLOR_MATRIX_RED_BIAS 0x80B8
838#define GL_POST_COLOR_MATRIX_GREEN_BIAS 0x80B9
839#define GL_POST_COLOR_MATRIX_BLUE_BIAS 0x80BA
840#define GL_POST_COLOR_MATRIX_ALPHA_BIAS 0x80BB
841/* GL_EXT_histogram */
842#define GL_HISTOGRAM 0x8024
843#define GL_PROXY_HISTOGRAM 0x8025
844#define GL_HISTOGRAM_WIDTH 0x8026
845#define GL_HISTOGRAM_FORMAT 0x8027
846#define GL_HISTOGRAM_RED_SIZE 0x8028
847#define GL_HISTOGRAM_GREEN_SIZE 0x8029
848#define GL_HISTOGRAM_BLUE_SIZE 0x802A
849#define GL_HISTOGRAM_ALPHA_SIZE 0x802B
850#define GL_HISTOGRAM_LUMINANCE_SIZE 0x802C
851#define GL_HISTOGRAM_SINK 0x802D
852#define GL_MINMAX 0x802E
853#define GL_MINMAX_FORMAT 0x802F
854#define GL_MINMAX_SINK 0x8030
855#define GL_TABLE_TOO_LARGE 0x8031
856/* GL_EXT_blend_color, GL_EXT_blend_minmax */
857#define GL_BLEND_EQUATION 0x8009
858#define GL_MIN 0x8007
859#define GL_MAX 0x8008
860#define GL_FUNC_ADD 0x8006
861#define GL_FUNC_SUBTRACT 0x800A
862#define GL_FUNC_REVERSE_SUBTRACT 0x800B
863#define GL_BLEND_COLOR 0x8005
864
865
866/* OpenGL 1.3 */
867/* multitexture */
868#define GL_TEXTURE0 0x84C0
869#define GL_TEXTURE1 0x84C1
870#define GL_TEXTURE2 0x84C2
871#define GL_TEXTURE3 0x84C3
872#define GL_TEXTURE4 0x84C4
873#define GL_TEXTURE5 0x84C5
874#define GL_TEXTURE6 0x84C6
875#define GL_TEXTURE7 0x84C7
876#define GL_TEXTURE8 0x84C8
877#define GL_TEXTURE9 0x84C9
878#define GL_TEXTURE10 0x84CA
879#define GL_TEXTURE11 0x84CB
880#define GL_TEXTURE12 0x84CC
881#define GL_TEXTURE13 0x84CD
882#define GL_TEXTURE14 0x84CE
883#define GL_TEXTURE15 0x84CF
884#define GL_TEXTURE16 0x84D0
885#define GL_TEXTURE17 0x84D1
886#define GL_TEXTURE18 0x84D2
887#define GL_TEXTURE19 0x84D3
888#define GL_TEXTURE20 0x84D4
889#define GL_TEXTURE21 0x84D5
890#define GL_TEXTURE22 0x84D6
891#define GL_TEXTURE23 0x84D7
892#define GL_TEXTURE24 0x84D8
893#define GL_TEXTURE25 0x84D9
894#define GL_TEXTURE26 0x84DA
895#define GL_TEXTURE27 0x84DB
896#define GL_TEXTURE28 0x84DC
897#define GL_TEXTURE29 0x84DD
898#define GL_TEXTURE30 0x84DE
899#define GL_TEXTURE31 0x84DF
900#define GL_ACTIVE_TEXTURE 0x84E0
901#define GL_CLIENT_ACTIVE_TEXTURE 0x84E1
902#define GL_MAX_TEXTURE_UNITS 0x84E2
903/* texture_cube_map */
904#define GL_NORMAL_MAP 0x8511
905#define GL_REFLECTION_MAP 0x8512
906#define GL_TEXTURE_CUBE_MAP 0x8513
907#define GL_TEXTURE_BINDING_CUBE_MAP 0x8514
908#define GL_TEXTURE_CUBE_MAP_POSITIVE_X 0x8515
909#define GL_TEXTURE_CUBE_MAP_NEGATIVE_X 0x8516
910#define GL_TEXTURE_CUBE_MAP_POSITIVE_Y 0x8517
911#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Y 0x8518
912#define GL_TEXTURE_CUBE_MAP_POSITIVE_Z 0x8519
913#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Z 0x851A
914#define GL_PROXY_TEXTURE_CUBE_MAP 0x851B
915#define GL_MAX_CUBE_MAP_TEXTURE_SIZE 0x851C
916/* texture_compression */
917#define GL_COMPRESSED_ALPHA 0x84E9
918#define GL_COMPRESSED_LUMINANCE 0x84EA
919#define GL_COMPRESSED_LUMINANCE_ALPHA 0x84EB
920#define GL_COMPRESSED_INTENSITY 0x84EC
921#define GL_COMPRESSED_RGB 0x84ED
922#define GL_COMPRESSED_RGBA 0x84EE
923#define GL_TEXTURE_COMPRESSION_HINT 0x84EF
924#define GL_TEXTURE_COMPRESSED_IMAGE_SIZE 0x86A0
925#define GL_TEXTURE_COMPRESSED 0x86A1
926#define GL_NUM_COMPRESSED_TEXTURE_FORMATS 0x86A2
927#define GL_COMPRESSED_TEXTURE_FORMATS 0x86A3
928/* multisample */
929#define GL_MULTISAMPLE 0x809D
930#define GL_SAMPLE_ALPHA_TO_COVERAGE 0x809E
931#define GL_SAMPLE_ALPHA_TO_ONE 0x809F
932#define GL_SAMPLE_COVERAGE 0x80A0
933#define GL_SAMPLE_BUFFERS 0x80A8
934#define GL_SAMPLES 0x80A9
935#define GL_SAMPLE_COVERAGE_VALUE 0x80AA
936#define GL_SAMPLE_COVERAGE_INVERT 0x80AB
937#define GL_MULTISAMPLE_BIT 0x20000000
938/* transpose_matrix */
939#define GL_TRANSPOSE_MODELVIEW_MATRIX 0x84E3
940#define GL_TRANSPOSE_PROJECTION_MATRIX 0x84E4
941#define GL_TRANSPOSE_TEXTURE_MATRIX 0x84E5
942#define GL_TRANSPOSE_COLOR_MATRIX 0x84E6
943/* texture_env_combine */
944#define GL_COMBINE 0x8570
945#define GL_COMBINE_RGB 0x8571
946#define GL_COMBINE_ALPHA 0x8572
947#define GL_SOURCE0_RGB 0x8580
948#define GL_SOURCE1_RGB 0x8581
949#define GL_SOURCE2_RGB 0x8582
950#define GL_SOURCE0_ALPHA 0x8588
951#define GL_SOURCE1_ALPHA 0x8589
952#define GL_SOURCE2_ALPHA 0x858A
953#define GL_OPERAND0_RGB 0x8590
954#define GL_OPERAND1_RGB 0x8591
955#define GL_OPERAND2_RGB 0x8592
956#define GL_OPERAND0_ALPHA 0x8598
957#define GL_OPERAND1_ALPHA 0x8599
958#define GL_OPERAND2_ALPHA 0x859A
959#define GL_RGB_SCALE 0x8573
960#define GL_ADD_SIGNED 0x8574
961#define GL_INTERPOLATE 0x8575
962#define GL_SUBTRACT 0x84E7
963#define GL_CONSTANT 0x8576
964#define GL_PRIMARY_COLOR 0x8577
965#define GL_PREVIOUS 0x8578
966/* texture_env_dot3 */
967#define GL_DOT3_RGB 0x86AE
968#define GL_DOT3_RGBA 0x86AF
969/* texture_border_clamp */
970#define GL_CLAMP_TO_BORDER 0x812D
971
972#endif /* __WIN32__ */
973
974
975
976/************************************************************************
977 *
978 * Function prototypes
979 *
980 ************************************************************************/
981
982/* Miscellaneous */
983GLAPI void APIENTRY glClearIndex( GLfloat c );
984GLAPI void APIENTRY glClearColor( GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha );
985GLAPI void APIENTRY glClear( GLbitfield mask );
986GLAPI void APIENTRY glIndexMask( GLuint mask );
987GLAPI void APIENTRY glColorMask( GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha );
988GLAPI void APIENTRY glAlphaFunc( GLenum func, GLclampf ref );
989GLAPI void APIENTRY glBlendFunc( GLenum sfactor, GLenum dfactor );
990GLAPI void APIENTRY glLogicOp( GLenum opcode );
991GLAPI void APIENTRY glCullFace( GLenum mode );
992GLAPI void APIENTRY glFrontFace( GLenum mode );
993GLAPI void APIENTRY glPointSize( GLfloat size );
994GLAPI void APIENTRY glLineWidth( GLfloat width );
995GLAPI void APIENTRY glLineStipple( GLint factor, GLushort pattern );
996GLAPI void APIENTRY glPolygonMode( GLenum face, GLenum mode );
997GLAPI void APIENTRY glPolygonOffset( GLfloat factor, GLfloat units );
998GLAPI void APIENTRY glPolygonStipple( const GLubyte *mask );
999GLAPI void APIENTRY glGetPolygonStipple( GLubyte *mask );
1000GLAPI void APIENTRY glEdgeFlag( GLboolean flag );
1001GLAPI void APIENTRY glEdgeFlagv( const GLboolean *flag );
1002GLAPI void APIENTRY glScissor( GLint x, GLint y, GLsizei width, GLsizei height);
1003GLAPI void APIENTRY glClipPlane( GLenum plane, const GLdouble *equation );
1004GLAPI void APIENTRY glGetClipPlane( GLenum plane, GLdouble *equation );
1005GLAPI void APIENTRY glDrawBuffer( GLenum mode );
1006GLAPI void APIENTRY glReadBuffer( GLenum mode );
1007GLAPI void APIENTRY glEnable( GLenum cap );
1008GLAPI void APIENTRY glDisable( GLenum cap );
1009GLAPI GLboolean APIENTRY glIsEnabled( GLenum cap );
1010GLAPI void APIENTRY glEnableClientState( GLenum cap ); /* 1.1 */
1011GLAPI void APIENTRY glDisableClientState( GLenum cap ); /* 1.1 */
1012GLAPI void APIENTRY glGetBooleanv( GLenum pname, GLboolean *params );
1013GLAPI void APIENTRY glGetDoublev( GLenum pname, GLdouble *params );
1014GLAPI void APIENTRY glGetFloatv( GLenum pname, GLfloat *params );
1015GLAPI void APIENTRY glGetIntegerv( GLenum pname, GLint *params );
1016GLAPI void APIENTRY glPushAttrib( GLbitfield mask );
1017GLAPI void APIENTRY glPopAttrib( void );
1018GLAPI void APIENTRY glPushClientAttrib( GLbitfield mask ); /* 1.1 */
1019GLAPI void APIENTRY glPopClientAttrib( void ); /* 1.1 */
1020GLAPI GLint APIENTRY glRenderMode( GLenum mode );
1021GLAPI GLenum APIENTRY glGetError( void );
1022GLAPI const GLubyte* APIENTRY glGetString( GLenum name );
1023GLAPI void APIENTRY glFinish( void );
1024GLAPI void APIENTRY glFlush( void );
1025GLAPI void APIENTRY glHint( GLenum target, GLenum mode );
1026
1027/* Depth Buffer */
1028GLAPI void APIENTRY glClearDepth( GLclampd depth );
1029GLAPI void APIENTRY glDepthFunc( GLenum func );
1030GLAPI void APIENTRY glDepthMask( GLboolean flag );
1031GLAPI void APIENTRY glDepthRange( GLclampd near_val, GLclampd far_val );
1032
1033/* Accumulation Buffer */
1034GLAPI void APIENTRY glClearAccum( GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha );
1035GLAPI void APIENTRY glAccum( GLenum op, GLfloat value );
1036
1037/* Transformation */
1038GLAPI void APIENTRY glMatrixMode( GLenum mode );
1039GLAPI void APIENTRY glOrtho( GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble near_val, GLdouble far_val );
1040GLAPI void APIENTRY glFrustum( GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble near_val, GLdouble far_val );
1041GLAPI void APIENTRY glViewport( GLint x, GLint y, GLsizei width, GLsizei height );
1042GLAPI void APIENTRY glPushMatrix( void );
1043GLAPI void APIENTRY glPopMatrix( void );
1044GLAPI void APIENTRY glLoadIdentity( void );
1045GLAPI void APIENTRY glLoadMatrixd( const GLdouble *m );
1046GLAPI void APIENTRY glLoadMatrixf( const GLfloat *m );
1047GLAPI void APIENTRY glMultMatrixd( const GLdouble *m );
1048GLAPI void APIENTRY glMultMatrixf( const GLfloat *m );
1049GLAPI void APIENTRY glRotated( GLdouble angle, GLdouble x, GLdouble y, GLdouble z );
1050GLAPI void APIENTRY glRotatef( GLfloat angle, GLfloat x, GLfloat y, GLfloat z );
1051GLAPI void APIENTRY glScaled( GLdouble x, GLdouble y, GLdouble z );
1052GLAPI void APIENTRY glScalef( GLfloat x, GLfloat y, GLfloat z );
1053GLAPI void APIENTRY glTranslated( GLdouble x, GLdouble y, GLdouble z );
1054GLAPI void APIENTRY glTranslatef( GLfloat x, GLfloat y, GLfloat z );
1055
1056/* Display Lists */
1057GLAPI GLboolean APIENTRY glIsList( GLuint list );
1058GLAPI void APIENTRY glDeleteLists( GLuint list, GLsizei range );
1059GLAPI GLuint APIENTRY glGenLists( GLsizei range );
1060GLAPI void APIENTRY glNewList( GLuint list, GLenum mode );
1061GLAPI void APIENTRY glEndList( void );
1062GLAPI void APIENTRY glCallList( GLuint list );
1063GLAPI void APIENTRY glCallLists( GLsizei n, GLenum type, const GLvoid *lists );
1064GLAPI void APIENTRY glListBase( GLuint base );
1065
1066/* Drawing Functions */
1067GLAPI void APIENTRY glBegin( GLenum mode );
1068GLAPI void APIENTRY glEnd( void );
1069GLAPI void APIENTRY glVertex2d( GLdouble x, GLdouble y );
1070GLAPI void APIENTRY glVertex2f( GLfloat x, GLfloat y );
1071GLAPI void APIENTRY glVertex2i( GLint x, GLint y );
1072GLAPI void APIENTRY glVertex2s( GLshort x, GLshort y );
1073GLAPI void APIENTRY glVertex3d( GLdouble x, GLdouble y, GLdouble z );
1074GLAPI void APIENTRY glVertex3f( GLfloat x, GLfloat y, GLfloat z );
1075GLAPI void APIENTRY glVertex3i( GLint x, GLint y, GLint z );
1076GLAPI void APIENTRY glVertex3s( GLshort x, GLshort y, GLshort z );
1077GLAPI void APIENTRY glVertex4d( GLdouble x, GLdouble y, GLdouble z, GLdouble w );
1078GLAPI void APIENTRY glVertex4f( GLfloat x, GLfloat y, GLfloat z, GLfloat w );
1079GLAPI void APIENTRY glVertex4i( GLint x, GLint y, GLint z, GLint w );
1080GLAPI void APIENTRY glVertex4s( GLshort x, GLshort y, GLshort z, GLshort w );
1081GLAPI void APIENTRY glVertex2dv( const GLdouble *v );
1082GLAPI void APIENTRY glVertex2fv( const GLfloat *v );
1083GLAPI void APIENTRY glVertex2iv( const GLint *v );
1084GLAPI void APIENTRY glVertex2sv( const GLshort *v );
1085GLAPI void APIENTRY glVertex3dv( const GLdouble *v );
1086GLAPI void APIENTRY glVertex3fv( const GLfloat *v );
1087GLAPI void APIENTRY glVertex3iv( const GLint *v );
1088GLAPI void APIENTRY glVertex3sv( const GLshort *v );
1089GLAPI void APIENTRY glVertex4dv( const GLdouble *v );
1090GLAPI void APIENTRY glVertex4fv( const GLfloat *v );
1091GLAPI void APIENTRY glVertex4iv( const GLint *v );
1092GLAPI void APIENTRY glVertex4sv( const GLshort *v );
1093GLAPI void APIENTRY glNormal3b( GLbyte nx, GLbyte ny, GLbyte nz );
1094GLAPI void APIENTRY glNormal3d( GLdouble nx, GLdouble ny, GLdouble nz );
1095GLAPI void APIENTRY glNormal3f( GLfloat nx, GLfloat ny, GLfloat nz );
1096GLAPI void APIENTRY glNormal3i( GLint nx, GLint ny, GLint nz );
1097GLAPI void APIENTRY glNormal3s( GLshort nx, GLshort ny, GLshort nz );
1098GLAPI void APIENTRY glNormal3bv( const GLbyte *v );
1099GLAPI void APIENTRY glNormal3dv( const GLdouble *v );
1100GLAPI void APIENTRY glNormal3fv( const GLfloat *v );
1101GLAPI void APIENTRY glNormal3iv( const GLint *v );
1102GLAPI void APIENTRY glNormal3sv( const GLshort *v );
1103GLAPI void APIENTRY glIndexd( GLdouble c );
1104GLAPI void APIENTRY glIndexf( GLfloat c );
1105GLAPI void APIENTRY glIndexi( GLint c );
1106GLAPI void APIENTRY glIndexs( GLshort c );
1107GLAPI void APIENTRY glIndexub( GLubyte c ); /* 1.1 */
1108GLAPI void APIENTRY glIndexdv( const GLdouble *c );
1109GLAPI void APIENTRY glIndexfv( const GLfloat *c );
1110GLAPI void APIENTRY glIndexiv( const GLint *c );
1111GLAPI void APIENTRY glIndexsv( const GLshort *c );
1112GLAPI void APIENTRY glIndexubv( const GLubyte *c ); /* 1.1 */
1113GLAPI void APIENTRY glColor3b( GLbyte red, GLbyte green, GLbyte blue );
1114GLAPI void APIENTRY glColor3d( GLdouble red, GLdouble green, GLdouble blue );
1115GLAPI void APIENTRY glColor3f( GLfloat red, GLfloat green, GLfloat blue );
1116GLAPI void APIENTRY glColor3i( GLint red, GLint green, GLint blue );
1117GLAPI void APIENTRY glColor3s( GLshort red, GLshort green, GLshort blue );
1118GLAPI void APIENTRY glColor3ub( GLubyte red, GLubyte green, GLubyte blue );
1119GLAPI void APIENTRY glColor3ui( GLuint red, GLuint green, GLuint blue );
1120GLAPI void APIENTRY glColor3us( GLushort red, GLushort green, GLushort blue );
1121GLAPI void APIENTRY glColor4b( GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha );
1122GLAPI void APIENTRY glColor4d( GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha );
1123GLAPI void APIENTRY glColor4f( GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha );
1124GLAPI void APIENTRY glColor4i( GLint red, GLint green, GLint blue, GLint alpha );
1125GLAPI void APIENTRY glColor4s( GLshort red, GLshort green, GLshort blue, GLshort alpha );
1126GLAPI void APIENTRY glColor4ub( GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha );
1127GLAPI void APIENTRY glColor4ui( GLuint red, GLuint green, GLuint blue, GLuint alpha );
1128GLAPI void APIENTRY glColor4us( GLushort red, GLushort green, GLushort blue, GLushort alpha );
1129GLAPI void APIENTRY glColor3bv( const GLbyte *v );
1130GLAPI void APIENTRY glColor3dv( const GLdouble *v );
1131GLAPI void APIENTRY glColor3fv( const GLfloat *v );
1132GLAPI void APIENTRY glColor3iv( const GLint *v );
1133GLAPI void APIENTRY glColor3sv( const GLshort *v );
1134GLAPI void APIENTRY glColor3ubv( const GLubyte *v );
1135GLAPI void APIENTRY glColor3uiv( const GLuint *v );
1136GLAPI void APIENTRY glColor3usv( const GLushort *v );
1137GLAPI void APIENTRY glColor4bv( const GLbyte *v );
1138GLAPI void APIENTRY glColor4dv( const GLdouble *v );
1139GLAPI void APIENTRY glColor4fv( const GLfloat *v );
1140GLAPI void APIENTRY glColor4iv( const GLint *v );
1141GLAPI void APIENTRY glColor4sv( const GLshort *v );
1142GLAPI void APIENTRY glColor4ubv( const GLubyte *v );
1143GLAPI void APIENTRY glColor4uiv( const GLuint *v );
1144GLAPI void APIENTRY glColor4usv( const GLushort *v );
1145GLAPI void APIENTRY glTexCoord1d( GLdouble s );
1146GLAPI void APIENTRY glTexCoord1f( GLfloat s );
1147GLAPI void APIENTRY glTexCoord1i( GLint s );
1148GLAPI void APIENTRY glTexCoord1s( GLshort s );
1149GLAPI void APIENTRY glTexCoord2d( GLdouble s, GLdouble t );
1150GLAPI void APIENTRY glTexCoord2f( GLfloat s, GLfloat t );
1151GLAPI void APIENTRY glTexCoord2i( GLint s, GLint t );
1152GLAPI void APIENTRY glTexCoord2s( GLshort s, GLshort t );
1153GLAPI void APIENTRY glTexCoord3d( GLdouble s, GLdouble t, GLdouble r );
1154GLAPI void APIENTRY glTexCoord3f( GLfloat s, GLfloat t, GLfloat r );
1155GLAPI void APIENTRY glTexCoord3i( GLint s, GLint t, GLint r );
1156GLAPI void APIENTRY glTexCoord3s( GLshort s, GLshort t, GLshort r );
1157GLAPI void APIENTRY glTexCoord4d( GLdouble s, GLdouble t, GLdouble r, GLdouble q );
1158GLAPI void APIENTRY glTexCoord4f( GLfloat s, GLfloat t, GLfloat r, GLfloat q );
1159GLAPI void APIENTRY glTexCoord4i( GLint s, GLint t, GLint r, GLint q );
1160GLAPI void APIENTRY glTexCoord4s( GLshort s, GLshort t, GLshort r, GLshort q );
1161GLAPI void APIENTRY glTexCoord1dv( const GLdouble *v );
1162GLAPI void APIENTRY glTexCoord1fv( const GLfloat *v );
1163GLAPI void APIENTRY glTexCoord1iv( const GLint *v );
1164GLAPI void APIENTRY glTexCoord1sv( const GLshort *v );
1165GLAPI void APIENTRY glTexCoord2dv( const GLdouble *v );
1166GLAPI void APIENTRY glTexCoord2fv( const GLfloat *v );
1167GLAPI void APIENTRY glTexCoord2iv( const GLint *v );
1168GLAPI void APIENTRY glTexCoord2sv( const GLshort *v );
1169GLAPI void APIENTRY glTexCoord3dv( const GLdouble *v );
1170GLAPI void APIENTRY glTexCoord3fv( const GLfloat *v );
1171GLAPI void APIENTRY glTexCoord3iv( const GLint *v );
1172GLAPI void APIENTRY glTexCoord3sv( const GLshort *v );
1173GLAPI void APIENTRY glTexCoord4dv( const GLdouble *v );
1174GLAPI void APIENTRY glTexCoord4fv( const GLfloat *v );
1175GLAPI void APIENTRY glTexCoord4iv( const GLint *v );
1176GLAPI void APIENTRY glTexCoord4sv( const GLshort *v );
1177GLAPI void APIENTRY glRasterPos2d( GLdouble x, GLdouble y );
1178GLAPI void APIENTRY glRasterPos2f( GLfloat x, GLfloat y );
1179GLAPI void APIENTRY glRasterPos2i( GLint x, GLint y );
1180GLAPI void APIENTRY glRasterPos2s( GLshort x, GLshort y );
1181GLAPI void APIENTRY glRasterPos3d( GLdouble x, GLdouble y, GLdouble z );
1182GLAPI void APIENTRY glRasterPos3f( GLfloat x, GLfloat y, GLfloat z );
1183GLAPI void APIENTRY glRasterPos3i( GLint x, GLint y, GLint z );
1184GLAPI void APIENTRY glRasterPos3s( GLshort x, GLshort y, GLshort z );
1185GLAPI void APIENTRY glRasterPos4d( GLdouble x, GLdouble y, GLdouble z, GLdouble w );
1186GLAPI void APIENTRY glRasterPos4f( GLfloat x, GLfloat y, GLfloat z, GLfloat w );
1187GLAPI void APIENTRY glRasterPos4i( GLint x, GLint y, GLint z, GLint w );
1188GLAPI void APIENTRY glRasterPos4s( GLshort x, GLshort y, GLshort z, GLshort w );
1189GLAPI void APIENTRY glRasterPos2dv( const GLdouble *v );
1190GLAPI void APIENTRY glRasterPos2fv( const GLfloat *v );
1191GLAPI void APIENTRY glRasterPos2iv( const GLint *v );
1192GLAPI void APIENTRY glRasterPos2sv( const GLshort *v );
1193GLAPI void APIENTRY glRasterPos3dv( const GLdouble *v );
1194GLAPI void APIENTRY glRasterPos3fv( const GLfloat *v );
1195GLAPI void APIENTRY glRasterPos3iv( const GLint *v );
1196GLAPI void APIENTRY glRasterPos3sv( const GLshort *v );
1197GLAPI void APIENTRY glRasterPos4dv( const GLdouble *v );
1198GLAPI void APIENTRY glRasterPos4fv( const GLfloat *v );
1199GLAPI void APIENTRY glRasterPos4iv( const GLint *v );
1200GLAPI void APIENTRY glRasterPos4sv( const GLshort *v );
1201GLAPI void APIENTRY glRectd( GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2 );
1202GLAPI void APIENTRY glRectf( GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2 );
1203GLAPI void APIENTRY glRecti( GLint x1, GLint y1, GLint x2, GLint y2 );
1204GLAPI void APIENTRY glRects( GLshort x1, GLshort y1, GLshort x2, GLshort y2 );
1205GLAPI void APIENTRY glRectdv( const GLdouble *v1, const GLdouble *v2 );
1206GLAPI void APIENTRY glRectfv( const GLfloat *v1, const GLfloat *v2 );
1207GLAPI void APIENTRY glRectiv( const GLint *v1, const GLint *v2 );
1208GLAPI void APIENTRY glRectsv( const GLshort *v1, const GLshort *v2 );
1209
1210/* Lighting */
1211GLAPI void APIENTRY glShadeModel( GLenum mode );
1212GLAPI void APIENTRY glLightf( GLenum light, GLenum pname, GLfloat param );
1213GLAPI void APIENTRY glLighti( GLenum light, GLenum pname, GLint param );
1214GLAPI void APIENTRY glLightfv( GLenum light, GLenum pname, const GLfloat *params );
1215GLAPI void APIENTRY glLightiv( GLenum light, GLenum pname, const GLint *params );
1216GLAPI void APIENTRY glGetLightfv( GLenum light, GLenum pname, GLfloat *params );
1217GLAPI void APIENTRY glGetLightiv( GLenum light, GLenum pname, GLint *params );
1218GLAPI void APIENTRY glLightModelf( GLenum pname, GLfloat param );
1219GLAPI void APIENTRY glLightModeli( GLenum pname, GLint param );
1220GLAPI void APIENTRY glLightModelfv( GLenum pname, const GLfloat *params );
1221GLAPI void APIENTRY glLightModeliv( GLenum pname, const GLint *params );
1222GLAPI void APIENTRY glMaterialf( GLenum face, GLenum pname, GLfloat param );
1223GLAPI void APIENTRY glMateriali( GLenum face, GLenum pname, GLint param );
1224GLAPI void APIENTRY glMaterialfv( GLenum face, GLenum pname, const GLfloat *params );
1225GLAPI void APIENTRY glMaterialiv( GLenum face, GLenum pname, const GLint *params );
1226GLAPI void APIENTRY glGetMaterialfv( GLenum face, GLenum pname, GLfloat *params );
1227GLAPI void APIENTRY glGetMaterialiv( GLenum face, GLenum pname, GLint *params );
1228GLAPI void APIENTRY glColorMaterial( GLenum face, GLenum mode );
1229
1230/* Raster functions */
1231GLAPI void APIENTRY glPixelZoom( GLfloat xfactor, GLfloat yfactor );
1232GLAPI void APIENTRY glPixelStoref( GLenum pname, GLfloat param );
1233GLAPI void APIENTRY glPixelStorei( GLenum pname, GLint param );
1234GLAPI void APIENTRY glPixelTransferf( GLenum pname, GLfloat param );
1235GLAPI void APIENTRY glPixelTransferi( GLenum pname, GLint param );
1236GLAPI void APIENTRY glPixelMapfv( GLenum map, GLint mapsize, const GLfloat *values );
1237GLAPI void APIENTRY glPixelMapuiv( GLenum map, GLint mapsize, const GLuint *values );
1238GLAPI void APIENTRY glPixelMapusv( GLenum map, GLint mapsize, const GLushort *values );
1239GLAPI void APIENTRY glGetPixelMapfv( GLenum map, GLfloat *values );
1240GLAPI void APIENTRY glGetPixelMapuiv( GLenum map, GLuint *values );
1241GLAPI void APIENTRY glGetPixelMapusv( GLenum map, GLushort *values );
1242GLAPI void APIENTRY glBitmap( GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte *bitmap );
1243GLAPI void APIENTRY glReadPixels( GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels );
1244GLAPI void APIENTRY glDrawPixels( GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels );
1245GLAPI void APIENTRY glCopyPixels( GLint x, GLint y, GLsizei width, GLsizei height, GLenum type );
1246
1247/* Stenciling */
1248GLAPI void APIENTRY glStencilFunc( GLenum func, GLint ref, GLuint mask );
1249GLAPI void APIENTRY glStencilMask( GLuint mask );
1250GLAPI void APIENTRY glStencilOp( GLenum fail, GLenum zfail, GLenum zpass );
1251GLAPI void APIENTRY glClearStencil( GLint s );
1252
1253/* Texture mapping */
1254GLAPI void APIENTRY glTexGend( GLenum coord, GLenum pname, GLdouble param );
1255GLAPI void APIENTRY glTexGenf( GLenum coord, GLenum pname, GLfloat param );
1256GLAPI void APIENTRY glTexGeni( GLenum coord, GLenum pname, GLint param );
1257GLAPI void APIENTRY glTexGendv( GLenum coord, GLenum pname, const GLdouble *params );
1258GLAPI void APIENTRY glTexGenfv( GLenum coord, GLenum pname, const GLfloat *params );
1259GLAPI void APIENTRY glTexGeniv( GLenum coord, GLenum pname, const GLint *params );
1260GLAPI void APIENTRY glGetTexGendv( GLenum coord, GLenum pname, GLdouble *params );
1261GLAPI void APIENTRY glGetTexGenfv( GLenum coord, GLenum pname, GLfloat *params );
1262GLAPI void APIENTRY glGetTexGeniv( GLenum coord, GLenum pname, GLint *params );
1263GLAPI void APIENTRY glTexEnvf( GLenum target, GLenum pname, GLfloat param );
1264GLAPI void APIENTRY glTexEnvi( GLenum target, GLenum pname, GLint param );
1265GLAPI void APIENTRY glTexEnvfv( GLenum target, GLenum pname, const GLfloat *params );
1266GLAPI void APIENTRY glTexEnviv( GLenum target, GLenum pname, const GLint *params );
1267GLAPI void APIENTRY glGetTexEnvfv( GLenum target, GLenum pname, GLfloat *params );
1268GLAPI void APIENTRY glGetTexEnviv( GLenum target, GLenum pname, GLint *params );
1269GLAPI void APIENTRY glTexParameterf( GLenum target, GLenum pname, GLfloat param );
1270GLAPI void APIENTRY glTexParameteri( GLenum target, GLenum pname, GLint param );
1271GLAPI void APIENTRY glTexParameterfv( GLenum target, GLenum pname, const GLfloat *params );
1272GLAPI void APIENTRY glTexParameteriv( GLenum target, GLenum pname, const GLint *params );
1273GLAPI void APIENTRY glGetTexParameterfv( GLenum target, GLenum pname, GLfloat *params);
1274GLAPI void APIENTRY glGetTexParameteriv( GLenum target, GLenum pname, GLint *params );
1275GLAPI void APIENTRY glGetTexLevelParameterfv( GLenum target, GLint level, GLenum pname, GLfloat *params );
1276GLAPI void APIENTRY glGetTexLevelParameteriv( GLenum target, GLint level, GLenum pname, GLint *params );
1277GLAPI void APIENTRY glTexImage1D( GLenum target, GLint level, GLint internalFormat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels );
1278GLAPI void APIENTRY glTexImage2D( GLenum target, GLint level, GLint internalFormat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels );
1279GLAPI void APIENTRY glGetTexImage( GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels );
1280
1281/* Evaluators */
1282GLAPI void APIENTRY glMap1d( GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble *points );
1283GLAPI void APIENTRY glMap1f( GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points );
1284GLAPI void APIENTRY glMap2d( GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble *points );
1285GLAPI void APIENTRY glMap2f( GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat *points );
1286GLAPI void APIENTRY glGetMapdv( GLenum target, GLenum query, GLdouble *v );
1287GLAPI void APIENTRY glGetMapfv( GLenum target, GLenum query, GLfloat *v );
1288GLAPI void APIENTRY glGetMapiv( GLenum target, GLenum query, GLint *v );
1289GLAPI void APIENTRY glEvalCoord1d( GLdouble u );
1290GLAPI void APIENTRY glEvalCoord1f( GLfloat u );
1291GLAPI void APIENTRY glEvalCoord1dv( const GLdouble *u );
1292GLAPI void APIENTRY glEvalCoord1fv( const GLfloat *u );
1293GLAPI void APIENTRY glEvalCoord2d( GLdouble u, GLdouble v );
1294GLAPI void APIENTRY glEvalCoord2f( GLfloat u, GLfloat v );
1295GLAPI void APIENTRY glEvalCoord2dv( const GLdouble *u );
1296GLAPI void APIENTRY glEvalCoord2fv( const GLfloat *u );
1297GLAPI void APIENTRY glMapGrid1d( GLint un, GLdouble u1, GLdouble u2 );
1298GLAPI void APIENTRY glMapGrid1f( GLint un, GLfloat u1, GLfloat u2 );
1299GLAPI void APIENTRY glMapGrid2d( GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2 );
1300GLAPI void APIENTRY glMapGrid2f( GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2 );
1301GLAPI void APIENTRY glEvalPoint1( GLint i );
1302GLAPI void APIENTRY glEvalPoint2( GLint i, GLint j );
1303GLAPI void APIENTRY glEvalMesh1( GLenum mode, GLint i1, GLint i2 );
1304GLAPI void APIENTRY glEvalMesh2( GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2 );
1305
1306/* Fog */
1307GLAPI void APIENTRY glFogf( GLenum pname, GLfloat param );
1308GLAPI void APIENTRY glFogi( GLenum pname, GLint param );
1309GLAPI void APIENTRY glFogfv( GLenum pname, const GLfloat *params );
1310GLAPI void APIENTRY glFogiv( GLenum pname, const GLint *params );
1311
1312/* Selection and Feedback */
1313GLAPI void APIENTRY glFeedbackBuffer( GLsizei size, GLenum type, GLfloat *buffer );
1314GLAPI void APIENTRY glPassThrough( GLfloat token );
1315GLAPI void APIENTRY glSelectBuffer( GLsizei size, GLuint *buffer );
1316GLAPI void APIENTRY glInitNames( void );
1317GLAPI void APIENTRY glLoadName( GLuint name );
1318GLAPI void APIENTRY glPushName( GLuint name );
1319GLAPI void APIENTRY glPopName( void );
1320
1321
1322/* 1.1 functions */
1323/* texture objects */
1324GLAPI void APIENTRY glGenTextures( GLsizei n, GLuint *textures );
1325GLAPI void APIENTRY glDeleteTextures( GLsizei n, const GLuint *textures);
1326GLAPI void APIENTRY glBindTexture( GLenum target, GLuint texture );
1327GLAPI void APIENTRY glPrioritizeTextures( GLsizei n, const GLuint *textures, const GLclampf *priorities );
1328GLAPI GLboolean APIENTRY glAreTexturesResident( GLsizei n, const GLuint *textures, GLboolean *residences );
1329GLAPI GLboolean APIENTRY glIsTexture( GLuint texture );
1330/* texture mapping */
1331GLAPI void APIENTRY glTexSubImage1D( GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels );
1332GLAPI void APIENTRY glTexSubImage2D( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels );
1333GLAPI void APIENTRY glCopyTexImage1D( GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border );
1334GLAPI void APIENTRY glCopyTexImage2D( GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border );
1335GLAPI void APIENTRY glCopyTexSubImage1D( GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width );
1336GLAPI void APIENTRY glCopyTexSubImage2D( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height );
1337/* vertex arrays */
1338GLAPI void APIENTRY glVertexPointer( GLint size, GLenum type, GLsizei stride, const GLvoid *ptr );
1339GLAPI void APIENTRY glNormalPointer( GLenum type, GLsizei stride, const GLvoid *ptr );
1340GLAPI void APIENTRY glColorPointer( GLint size, GLenum type, GLsizei stride, const GLvoid *ptr );
1341GLAPI void APIENTRY glIndexPointer( GLenum type, GLsizei stride, const GLvoid *ptr );
1342GLAPI void APIENTRY glTexCoordPointer( GLint size, GLenum type, GLsizei stride, const GLvoid *ptr );
1343GLAPI void APIENTRY glEdgeFlagPointer( GLsizei stride, const GLvoid *ptr );
1344GLAPI void APIENTRY glGetPointerv( GLenum pname, GLvoid **params );
1345GLAPI void APIENTRY glArrayElement( GLint i );
1346GLAPI void APIENTRY glDrawArrays( GLenum mode, GLint first, GLsizei count );
1347GLAPI void APIENTRY glDrawElements( GLenum mode, GLsizei count, GLenum type, const GLvoid *indices );
1348GLAPI void APIENTRY glInterleavedArrays( GLenum format, GLsizei stride, const GLvoid *pointer );
1349
1350
1351
1352/* Under Windows, we do not define OpenGL 1.2 & 1.3 functionality, since
1353 it is treated as extensions (defined in glext.h) */
1354#if !defined(__WIN32__)
1355
1356/* 1.2 functions */
1357GLAPI void APIENTRY glDrawRangeElements( GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices );
1358GLAPI void APIENTRY glTexImage3D( GLenum target, GLint level, GLenum internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels );
1359GLAPI void APIENTRY glTexSubImage3D( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels);
1360GLAPI void APIENTRY glCopyTexSubImage3D( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height );
1361
1362/* 1.2 imaging extension functions */
1363GLAPI void APIENTRY glColorTable( GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *table );
1364GLAPI void APIENTRY glColorSubTable( GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid *data );
1365GLAPI void APIENTRY glColorTableParameteriv(GLenum target, GLenum pname, const GLint *params);
1366GLAPI void APIENTRY glColorTableParameterfv(GLenum target, GLenum pname, const GLfloat *params);
1367GLAPI void APIENTRY glCopyColorSubTable( GLenum target, GLsizei start, GLint x, GLint y, GLsizei width );
1368GLAPI void APIENTRY glCopyColorTable( GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width );
1369GLAPI void APIENTRY glGetColorTable( GLenum target, GLenum format, GLenum type, GLvoid *table );
1370GLAPI void APIENTRY glGetColorTableParameterfv( GLenum target, GLenum pname, GLfloat *params );
1371GLAPI void APIENTRY glGetColorTableParameteriv( GLenum target, GLenum pname, GLint *params );
1372GLAPI void APIENTRY glBlendEquation( GLenum mode );
1373GLAPI void APIENTRY glBlendColor( GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha );
1374GLAPI void APIENTRY glHistogram( GLenum target, GLsizei width, GLenum internalformat, GLboolean sink );
1375GLAPI void APIENTRY glResetHistogram( GLenum target );
1376GLAPI void APIENTRY glGetHistogram( GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values );
1377GLAPI void APIENTRY glGetHistogramParameterfv( GLenum target, GLenum pname, GLfloat *params );
1378GLAPI void APIENTRY glGetHistogramParameteriv( GLenum target, GLenum pname, GLint *params );
1379GLAPI void APIENTRY glMinmax( GLenum target, GLenum internalformat, GLboolean sink );
1380GLAPI void APIENTRY glResetMinmax( GLenum target );
1381GLAPI void APIENTRY glGetMinmax( GLenum target, GLboolean reset, GLenum format, GLenum types, GLvoid *values );
1382GLAPI void APIENTRY glGetMinmaxParameterfv( GLenum target, GLenum pname, GLfloat *params );
1383GLAPI void APIENTRY glGetMinmaxParameteriv( GLenum target, GLenum pname, GLint *params );
1384GLAPI void APIENTRY glConvolutionFilter1D( GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *image );
1385GLAPI void APIENTRY glConvolutionFilter2D( GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *image );
1386GLAPI void APIENTRY glConvolutionParameterf( GLenum target, GLenum pname, GLfloat params );
1387GLAPI void APIENTRY glConvolutionParameterfv( GLenum target, GLenum pname, const GLfloat *params );
1388GLAPI void APIENTRY glConvolutionParameteri( GLenum target, GLenum pname, GLint params );
1389GLAPI void APIENTRY glConvolutionParameteriv( GLenum target, GLenum pname, const GLint *params );
1390GLAPI void APIENTRY glCopyConvolutionFilter1D( GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width );
1391GLAPI void APIENTRY glCopyConvolutionFilter2D( GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height);
1392GLAPI void APIENTRY glGetConvolutionFilter( GLenum target, GLenum format, GLenum type, GLvoid *image );
1393GLAPI void APIENTRY glGetConvolutionParameterfv( GLenum target, GLenum pname, GLfloat *params );
1394GLAPI void APIENTRY glGetConvolutionParameteriv( GLenum target, GLenum pname, GLint *params );
1395GLAPI void APIENTRY glSeparableFilter2D( GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *row, const GLvoid *column );
1396GLAPI void APIENTRY glGetSeparableFilter( GLenum target, GLenum format, GLenum type, GLvoid *row, GLvoid *column, GLvoid *span );
1397
1398/* 1.3 functions */
1399GLAPI void APIENTRY glActiveTexture( GLenum texture );
1400GLAPI void APIENTRY glClientActiveTexture( GLenum texture );
1401GLAPI void APIENTRY glCompressedTexImage1D( GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data );
1402GLAPI void APIENTRY glCompressedTexImage2D( GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data );
1403GLAPI void APIENTRY glCompressedTexImage3D( GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data );
1404GLAPI void APIENTRY glCompressedTexSubImage1D( GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data );
1405GLAPI void APIENTRY glCompressedTexSubImage2D( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data );
1406GLAPI void APIENTRY glCompressedTexSubImage3D( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data );
1407GLAPI void APIENTRY glGetCompressedTexImage( GLenum target, GLint lod, GLvoid *img );
1408GLAPI void APIENTRY glMultiTexCoord1d( GLenum target, GLdouble s );
1409GLAPI void APIENTRY glMultiTexCoord1dv( GLenum target, const GLdouble *v );
1410GLAPI void APIENTRY glMultiTexCoord1f( GLenum target, GLfloat s );
1411GLAPI void APIENTRY glMultiTexCoord1fv( GLenum target, const GLfloat *v );
1412GLAPI void APIENTRY glMultiTexCoord1i( GLenum target, GLint s );
1413GLAPI void APIENTRY glMultiTexCoord1iv( GLenum target, const GLint *v );
1414GLAPI void APIENTRY glMultiTexCoord1s( GLenum target, GLshort s );
1415GLAPI void APIENTRY glMultiTexCoord1sv( GLenum target, const GLshort *v );
1416GLAPI void APIENTRY glMultiTexCoord2d( GLenum target, GLdouble s, GLdouble t );
1417GLAPI void APIENTRY glMultiTexCoord2dv( GLenum target, const GLdouble *v );
1418GLAPI void APIENTRY glMultiTexCoord2f( GLenum target, GLfloat s, GLfloat t );
1419GLAPI void APIENTRY glMultiTexCoord2fv( GLenum target, const GLfloat *v );
1420GLAPI void APIENTRY glMultiTexCoord2i( GLenum target, GLint s, GLint t );
1421GLAPI void APIENTRY glMultiTexCoord2iv( GLenum target, const GLint *v );
1422GLAPI void APIENTRY glMultiTexCoord2s( GLenum target, GLshort s, GLshort t );
1423GLAPI void APIENTRY glMultiTexCoord2sv( GLenum target, const GLshort *v );
1424GLAPI void APIENTRY glMultiTexCoord3d( GLenum target, GLdouble s, GLdouble t, GLdouble r );
1425GLAPI void APIENTRY glMultiTexCoord3dv( GLenum target, const GLdouble *v );
1426GLAPI void APIENTRY glMultiTexCoord3f( GLenum target, GLfloat s, GLfloat t, GLfloat r );
1427GLAPI void APIENTRY glMultiTexCoord3fv( GLenum target, const GLfloat *v );
1428GLAPI void APIENTRY glMultiTexCoord3i( GLenum target, GLint s, GLint t, GLint r );
1429GLAPI void APIENTRY glMultiTexCoord3iv( GLenum target, const GLint *v );
1430GLAPI void APIENTRY glMultiTexCoord3s( GLenum target, GLshort s, GLshort t, GLshort r );
1431GLAPI void APIENTRY glMultiTexCoord3sv( GLenum target, const GLshort *v );
1432GLAPI void APIENTRY glMultiTexCoord4d( GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q );
1433GLAPI void APIENTRY glMultiTexCoord4dv( GLenum target, const GLdouble *v );
1434GLAPI void APIENTRY glMultiTexCoord4f( GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q );
1435GLAPI void APIENTRY glMultiTexCoord4fv( GLenum target, const GLfloat *v );
1436GLAPI void APIENTRY glMultiTexCoord4i( GLenum target, GLint s, GLint t, GLint r, GLint q );
1437GLAPI void APIENTRY glMultiTexCoord4iv( GLenum target, const GLint *v );
1438GLAPI void APIENTRY glMultiTexCoord4s( GLenum target, GLshort s, GLshort t, GLshort r, GLshort q );
1439GLAPI void APIENTRY glMultiTexCoord4sv( GLenum target, const GLshort *v );
1440GLAPI void APIENTRY glLoadTransposeMatrixd( const GLdouble m[16] );
1441GLAPI void APIENTRY glLoadTransposeMatrixf( const GLfloat m[16] );
1442GLAPI void APIENTRY glMultTransposeMatrixd( const GLdouble m[16] );
1443GLAPI void APIENTRY glMultTransposeMatrixf( const GLfloat m[16] );
1444GLAPI void APIENTRY glSampleCoverage( GLclampf value, GLboolean invert );
1445GLAPI void APIENTRY glSamplePass( GLenum pass );
1446
1447#endif /* __WIN32__ */
1448
1449
1450/* Include external definitions of OpenGL extensions */
1451/* Removed, see this bug report for reference:
1452 * http://sourceforge.net/tracker/index.php?func=detail&aid=610178&group_id=2435&atid=102435
1453 *
1454 * #include <GL/glext.h>
1455 */
1456
1457
1458/************************************************************************
1459 * Begin system-specific stuff
1460 */
1461/*
1462 * End system-specific stuff
1463 ************************************************************************/
1464
1465
1466#ifdef __cplusplus
1467}
1468#endif
1469
1470#endif /* __gl_h_ */
Note: See TracBrowser for help on using the repository browser.