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