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