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