slightly better font handling, enjoy!
[divverent/netradiant.git] / include / igl.h
1 /*
2 Copyright (C) 2001-2006, William Joseph.
3 All Rights Reserved.
4
5 This file is part of GtkRadiant.
6
7 GtkRadiant is free software; you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by
9 the Free Software Foundation; either version 2 of the License, or
10 (at your option) any later version.
11
12 GtkRadiant is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15 GNU General Public License for more details.
16
17 You should have received a copy of the GNU General Public License
18 along with GtkRadiant; if not, write to the Free Software
19 Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
20 */
21
22 #if !defined(INCLUDED_IGL_H)
23 #define INCLUDED_IGL_H
24
25 #include <cstddef>
26 #include <string.h>
27 #include "generic/constant.h"
28
29 #if defined(WIN32)
30 #define QGL_DLLEXPORT __stdcall
31 #else
32 #define QGL_DLLEXPORT
33 #endif
34
35 typedef unsigned int GLenum;
36 typedef unsigned char GLboolean;
37 typedef unsigned int GLbitfield;
38 typedef signed char GLbyte;
39 typedef short GLshort;
40 typedef int GLint;
41 typedef int GLsizei;
42 typedef unsigned char GLubyte;
43 typedef unsigned short GLushort;
44 typedef unsigned int GLuint;
45 typedef float GLfloat;
46 typedef float GLclampf;
47 typedef double GLdouble;
48 typedef double GLclampd;
49 typedef void GLvoid;
50
51 #if !defined(GL_VERSION_1_1)
52 #define GL_VERSION_1_1 1
53
54 #define GL_ZERO 0
55 #define GL_ONE 1
56 #define GL_TRUE 1
57 #define GL_FALSE 0
58 #define GL_POINTS 0x0000
59 #define GL_LINES 0x0001
60 #define GL_LINE_LOOP 0x0002
61 #define GL_LINE_STRIP 0x0003
62 #define GL_TRIANGLES 0x0004
63 #define GL_TRIANGLE_STRIP 0x0005
64 #define GL_TRIANGLE_FAN 0x0006
65 #define GL_QUADS 0x0007
66 #define GL_QUAD_STRIP 0x0008
67 #define GL_POLYGON 0x0009
68 #define GL_ACCUM 0x0100
69 #define GL_LOAD 0x0101
70 #define GL_RETURN 0x0102
71 #define GL_MULT 0x0103
72 #define GL_ADD 0x0104
73 #define GL_NEVER 0x0200
74 #define GL_LESS 0x0201
75 #define GL_EQUAL 0x0202
76 #define GL_LEQUAL 0x0203
77 #define GL_GREATER 0x0204
78 #define GL_NOTEQUAL 0x0205
79 #define GL_GEQUAL 0x0206
80 #define GL_ALWAYS 0x0207
81 #define GL_SRC_COLOR 0x0300
82 #define GL_ONE_MINUS_SRC_COLOR 0x0301
83 #define GL_SRC_ALPHA 0x0302
84 #define GL_ONE_MINUS_SRC_ALPHA 0x0303
85 #define GL_DST_ALPHA 0x0304
86 #define GL_ONE_MINUS_DST_ALPHA 0x0305
87 #define GL_DST_COLOR 0x0306
88 #define GL_ONE_MINUS_DST_COLOR 0x0307
89 #define GL_SRC_ALPHA_SATURATE 0x0308
90 #define GL_BYTE 0x1400
91 #define GL_UNSIGNED_BYTE 0x1401
92 #define GL_SHORT 0x1402
93 #define GL_UNSIGNED_SHORT 0x1403
94 #define GL_INT 0x1404
95 #define GL_UNSIGNED_INT 0x1405
96 #define GL_FLOAT 0x1406
97 #define GL_2_BYTES 0x1407
98 #define GL_3_BYTES 0x1408
99 #define GL_4_BYTES 0x1409
100 #define GL_DOUBLE 0x140A
101 #define GL_NONE 0
102 #define GL_FRONT_LEFT 0x0400
103 #define GL_FRONT_RIGHT 0x0401
104 #define GL_BACK_LEFT 0x0402
105 #define GL_BACK_RIGHT 0x0403
106 #define GL_FRONT 0x0404
107 #define GL_BACK 0x0405
108 #define GL_LEFT 0x0406
109 #define GL_RIGHT 0x0407
110 #define GL_FRONT_AND_BACK 0x0408
111 #define GL_AUX0 0x0409
112 #define GL_AUX1 0x040A
113 #define GL_AUX2 0x040B
114 #define GL_AUX3 0x040C
115 #define GL_NO_ERROR 0
116 #define GL_INVALID_ENUM 0x0500
117 #define GL_INVALID_VALUE 0x0501
118 #define GL_INVALID_OPERATION 0x0502
119 #define GL_STACK_OVERFLOW 0x0503
120 #define GL_STACK_UNDERFLOW 0x0504
121 #define GL_OUT_OF_MEMORY 0x0505
122 #define GL_2D 0x0600
123 #define GL_3D 0x0601
124 #define GL_3D_COLOR 0x0602
125 #define GL_3D_COLOR_TEXTURE 0x0603
126 #define GL_4D_COLOR_TEXTURE 0x0604
127 #define GL_PASS_THROUGH_TOKEN 0x0700
128 #define GL_POINT_TOKEN 0x0701
129 #define GL_LINE_TOKEN 0x0702
130 #define GL_POLYGON_TOKEN 0x0703
131 #define GL_BITMAP_TOKEN 0x0704
132 #define GL_DRAW_PIXEL_TOKEN 0x0705
133 #define GL_COPY_PIXEL_TOKEN 0x0706
134 #define GL_LINE_RESET_TOKEN 0x0707
135 #define GL_EXP 0x0800
136 #define GL_EXP2 0x0801
137 #define GL_CW 0x0900
138 #define GL_CCW 0x0901
139 #define GL_COEFF 0x0A00
140 #define GL_ORDER 0x0A01
141 #define GL_DOMAIN 0x0A02
142 #define GL_CURRENT_COLOR 0x0B00
143 #define GL_CURRENT_INDEX 0x0B01
144 #define GL_CURRENT_NORMAL 0x0B02
145 #define GL_CURRENT_TEXTURE_COORDS 0x0B03
146 #define GL_CURRENT_RASTER_COLOR 0x0B04
147 #define GL_CURRENT_RASTER_INDEX 0x0B05
148 #define GL_CURRENT_RASTER_TEXTURE_COORDS 0x0B06
149 #define GL_CURRENT_RASTER_POSITION 0x0B07
150 #define GL_CURRENT_RASTER_POSITION_VALID 0x0B08
151 #define GL_CURRENT_RASTER_DISTANCE 0x0B09
152 #define GL_POINT_SMOOTH 0x0B10
153 #define GL_POINT_SIZE 0x0B11
154 #define GL_POINT_SIZE_RANGE 0x0B12
155 #define GL_POINT_SIZE_GRANULARITY 0x0B13
156 #define GL_LINE_SMOOTH 0x0B20
157 #define GL_LINE_WIDTH 0x0B21
158 #define GL_LINE_WIDTH_RANGE 0x0B22
159 #define GL_LINE_WIDTH_GRANULARITY 0x0B23
160 #define GL_LINE_STIPPLE 0x0B24
161 #define GL_LINE_STIPPLE_PATTERN 0x0B25
162 #define GL_LINE_STIPPLE_REPEAT 0x0B26
163 #define GL_LIST_MODE 0x0B30
164 #define GL_MAX_LIST_NESTING 0x0B31
165 #define GL_LIST_BASE 0x0B32
166 #define GL_LIST_INDEX 0x0B33
167 #define GL_POLYGON_MODE 0x0B40
168 #define GL_POLYGON_SMOOTH 0x0B41
169 #define GL_POLYGON_STIPPLE 0x0B42
170 #define GL_EDGE_FLAG 0x0B43
171 #define GL_CULL_FACE 0x0B44
172 #define GL_CULL_FACE_MODE 0x0B45
173 #define GL_FRONT_FACE 0x0B46
174 #define GL_LIGHTING 0x0B50
175 #define GL_LIGHT_MODEL_LOCAL_VIEWER 0x0B51
176 #define GL_LIGHT_MODEL_TWO_SIDE 0x0B52
177 #define GL_LIGHT_MODEL_AMBIENT 0x0B53
178 #define GL_SHADE_MODEL 0x0B54
179 #define GL_COLOR_MATERIAL_FACE 0x0B55
180 #define GL_COLOR_MATERIAL_PARAMETER 0x0B56
181 #define GL_COLOR_MATERIAL 0x0B57
182 #define GL_FOG 0x0B60
183 #define GL_FOG_INDEX 0x0B61
184 #define GL_FOG_DENSITY 0x0B62
185 #define GL_FOG_START 0x0B63
186 #define GL_FOG_END 0x0B64
187 #define GL_FOG_MODE 0x0B65
188 #define GL_FOG_COLOR 0x0B66
189 #define GL_DEPTH_RANGE 0x0B70
190 #define GL_DEPTH_TEST 0x0B71
191 #define GL_DEPTH_WRITEMASK 0x0B72
192 #define GL_DEPTH_CLEAR_VALUE 0x0B73
193 #define GL_DEPTH_FUNC 0x0B74
194 #define GL_ACCUM_CLEAR_VALUE 0x0B80
195 #define GL_STENCIL_TEST 0x0B90
196 #define GL_STENCIL_CLEAR_VALUE 0x0B91
197 #define GL_STENCIL_FUNC 0x0B92
198 #define GL_STENCIL_VALUE_MASK 0x0B93
199 #define GL_STENCIL_FAIL 0x0B94
200 #define GL_STENCIL_PASS_DEPTH_FAIL 0x0B95
201 #define GL_STENCIL_PASS_DEPTH_PASS 0x0B96
202 #define GL_STENCIL_REF 0x0B97
203 #define GL_STENCIL_WRITEMASK 0x0B98
204 #define GL_MATRIX_MODE 0x0BA0
205 #define GL_NORMALIZE 0x0BA1
206 #define GL_VIEWPORT 0x0BA2
207 #define GL_MODELVIEW_STACK_DEPTH 0x0BA3
208 #define GL_PROJECTION_STACK_DEPTH 0x0BA4
209 #define GL_TEXTURE_STACK_DEPTH 0x0BA5
210 #define GL_MODELVIEW_MATRIX 0x0BA6
211 #define GL_PROJECTION_MATRIX 0x0BA7
212 #define GL_TEXTURE_MATRIX 0x0BA8
213 #define GL_ATTRIB_STACK_DEPTH 0x0BB0
214 #define GL_CLIENT_ATTRIB_STACK_DEPTH 0x0BB1
215 #define GL_ALPHA_TEST 0x0BC0
216 #define GL_ALPHA_TEST_FUNC 0x0BC1
217 #define GL_ALPHA_TEST_REF 0x0BC2
218 #define GL_DITHER 0x0BD0
219 #define GL_BLEND_DST 0x0BE0
220 #define GL_BLEND_SRC 0x0BE1
221 #define GL_BLEND 0x0BE2
222 #define GL_LOGIC_OP_MODE 0x0BF0
223 #define GL_INDEX_LOGIC_OP 0x0BF1
224 #define GL_COLOR_LOGIC_OP 0x0BF2
225 #define GL_AUX_BUFFERS 0x0C00
226 #define GL_DRAW_BUFFER 0x0C01
227 #define GL_READ_BUFFER 0x0C02
228 #define GL_SCISSOR_BOX 0x0C10
229 #define GL_SCISSOR_TEST 0x0C11
230 #define GL_INDEX_CLEAR_VALUE 0x0C20
231 #define GL_INDEX_WRITEMASK 0x0C21
232 #define GL_COLOR_CLEAR_VALUE 0x0C22
233 #define GL_COLOR_WRITEMASK 0x0C23
234 #define GL_INDEX_MODE 0x0C30
235 #define GL_RGBA_MODE 0x0C31
236 #define GL_DOUBLEBUFFER 0x0C32
237 #define GL_STEREO 0x0C33
238 #define GL_RENDER_MODE 0x0C40
239 #define GL_PERSPECTIVE_CORRECTION_HINT 0x0C50
240 #define GL_POINT_SMOOTH_HINT 0x0C51
241 #define GL_LINE_SMOOTH_HINT 0x0C52
242 #define GL_POLYGON_SMOOTH_HINT 0x0C53
243 #define GL_FOG_HINT 0x0C54
244 #define GL_TEXTURE_GEN_S 0x0C60
245 #define GL_TEXTURE_GEN_T 0x0C61
246 #define GL_TEXTURE_GEN_R 0x0C62
247 #define GL_TEXTURE_GEN_Q 0x0C63
248 #define GL_PIXEL_MAP_I_TO_I 0x0C70
249 #define GL_PIXEL_MAP_S_TO_S 0x0C71
250 #define GL_PIXEL_MAP_I_TO_R 0x0C72
251 #define GL_PIXEL_MAP_I_TO_G 0x0C73
252 #define GL_PIXEL_MAP_I_TO_B 0x0C74
253 #define GL_PIXEL_MAP_I_TO_A 0x0C75
254 #define GL_PIXEL_MAP_R_TO_R 0x0C76
255 #define GL_PIXEL_MAP_G_TO_G 0x0C77
256 #define GL_PIXEL_MAP_B_TO_B 0x0C78
257 #define GL_PIXEL_MAP_A_TO_A 0x0C79
258 #define GL_PIXEL_MAP_I_TO_I_SIZE 0x0CB0
259 #define GL_PIXEL_MAP_S_TO_S_SIZE 0x0CB1
260 #define GL_PIXEL_MAP_I_TO_R_SIZE 0x0CB2
261 #define GL_PIXEL_MAP_I_TO_G_SIZE 0x0CB3
262 #define GL_PIXEL_MAP_I_TO_B_SIZE 0x0CB4
263 #define GL_PIXEL_MAP_I_TO_A_SIZE 0x0CB5
264 #define GL_PIXEL_MAP_R_TO_R_SIZE 0x0CB6
265 #define GL_PIXEL_MAP_G_TO_G_SIZE 0x0CB7
266 #define GL_PIXEL_MAP_B_TO_B_SIZE 0x0CB8
267 #define GL_PIXEL_MAP_A_TO_A_SIZE 0x0CB9
268 #define GL_UNPACK_SWAP_BYTES 0x0CF0
269 #define GL_UNPACK_LSB_FIRST 0x0CF1
270 #define GL_UNPACK_ROW_LENGTH 0x0CF2
271 #define GL_UNPACK_SKIP_ROWS 0x0CF3
272 #define GL_UNPACK_SKIP_PIXELS 0x0CF4
273 #define GL_UNPACK_ALIGNMENT 0x0CF5
274 #define GL_PACK_SWAP_BYTES 0x0D00
275 #define GL_PACK_LSB_FIRST 0x0D01
276 #define GL_PACK_ROW_LENGTH 0x0D02
277 #define GL_PACK_SKIP_ROWS 0x0D03
278 #define GL_PACK_SKIP_PIXELS 0x0D04
279 #define GL_PACK_ALIGNMENT 0x0D05
280 #define GL_MAP_COLOR 0x0D10
281 #define GL_MAP_STENCIL 0x0D11
282 #define GL_INDEX_SHIFT 0x0D12
283 #define GL_INDEX_OFFSET 0x0D13
284 #define GL_RED_SCALE 0x0D14
285 #define GL_RED_BIAS 0x0D15
286 #define GL_ZOOM_X 0x0D16
287 #define GL_ZOOM_Y 0x0D17
288 #define GL_GREEN_SCALE 0x0D18
289 #define GL_GREEN_BIAS 0x0D19
290 #define GL_BLUE_SCALE 0x0D1A
291 #define GL_BLUE_BIAS 0x0D1B
292 #define GL_ALPHA_SCALE 0x0D1C
293 #define GL_ALPHA_BIAS 0x0D1D
294 #define GL_DEPTH_SCALE 0x0D1E
295 #define GL_DEPTH_BIAS 0x0D1F
296 #define GL_MAX_EVAL_ORDER 0x0D30
297 #define GL_MAX_LIGHTS 0x0D31
298 #define GL_MAX_CLIP_PLANES 0x0D32
299 #define GL_MAX_TEXTURE_SIZE 0x0D33
300 #define GL_MAX_PIXEL_MAP_TABLE 0x0D34
301 #define GL_MAX_ATTRIB_STACK_DEPTH 0x0D35
302 #define GL_MAX_MODELVIEW_STACK_DEPTH 0x0D36
303 #define GL_MAX_NAME_STACK_DEPTH 0x0D37
304 #define GL_MAX_PROJECTION_STACK_DEPTH 0x0D38
305 #define GL_MAX_TEXTURE_STACK_DEPTH 0x0D39
306 #define GL_MAX_VIEWPORT_DIMS 0x0D3A
307 #define GL_MAX_CLIENT_ATTRIB_STACK_DEPTH 0x0D3B
308 #define GL_SUBPIXEL_BITS 0x0D50
309 #define GL_INDEX_BITS 0x0D51
310 #define GL_RED_BITS 0x0D52
311 #define GL_GREEN_BITS 0x0D53
312 #define GL_BLUE_BITS 0x0D54
313 #define GL_ALPHA_BITS 0x0D55
314 #define GL_DEPTH_BITS 0x0D56
315 #define GL_STENCIL_BITS 0x0D57
316 #define GL_ACCUM_RED_BITS 0x0D58
317 #define GL_ACCUM_GREEN_BITS 0x0D59
318 #define GL_ACCUM_BLUE_BITS 0x0D5A
319 #define GL_ACCUM_ALPHA_BITS 0x0D5B
320 #define GL_NAME_STACK_DEPTH 0x0D70
321 #define GL_AUTO_NORMAL 0x0D80
322 #define GL_MAP1_COLOR_4 0x0D90
323 #define GL_MAP1_INDEX 0x0D91
324 #define GL_MAP1_NORMAL 0x0D92
325 #define GL_MAP1_TEXTURE_COORD_1 0x0D93
326 #define GL_MAP1_TEXTURE_COORD_2 0x0D94
327 #define GL_MAP1_TEXTURE_COORD_3 0x0D95
328 #define GL_MAP1_TEXTURE_COORD_4 0x0D96
329 #define GL_MAP1_VERTEX_3 0x0D97
330 #define GL_MAP1_VERTEX_4 0x0D98
331 #define GL_MAP2_COLOR_4 0x0DB0
332 #define GL_MAP2_INDEX 0x0DB1
333 #define GL_MAP2_NORMAL 0x0DB2
334 #define GL_MAP2_TEXTURE_COORD_1 0x0DB3
335 #define GL_MAP2_TEXTURE_COORD_2 0x0DB4
336 #define GL_MAP2_TEXTURE_COORD_3 0x0DB5
337 #define GL_MAP2_TEXTURE_COORD_4 0x0DB6
338 #define GL_MAP2_VERTEX_3 0x0DB7
339 #define GL_MAP2_VERTEX_4 0x0DB8
340 #define GL_MAP1_GRID_DOMAIN 0x0DD0
341 #define GL_MAP1_GRID_SEGMENTS 0x0DD1
342 #define GL_MAP2_GRID_DOMAIN 0x0DD2
343 #define GL_MAP2_GRID_SEGMENTS 0x0DD3
344 #define GL_TEXTURE_1D 0x0DE0
345 #define GL_TEXTURE_2D 0x0DE1
346 #define GL_FEEDBACK_BUFFER_POINTER 0x0DF0
347 #define GL_FEEDBACK_BUFFER_SIZE 0x0DF1
348 #define GL_FEEDBACK_BUFFER_TYPE 0x0DF2
349 #define GL_SELECTION_BUFFER_POINTER 0x0DF3
350 #define GL_SELECTION_BUFFER_SIZE 0x0DF4
351 #define GL_TEXTURE_WIDTH 0x1000
352 #define GL_TEXTURE_HEIGHT 0x1001
353 #define GL_TEXTURE_INTERNAL_FORMAT 0x1003
354 #define GL_TEXTURE_BORDER_COLOR 0x1004
355 #define GL_TEXTURE_BORDER 0x1005
356 #define GL_DONT_CARE 0x1100
357 #define GL_FASTEST 0x1101
358 #define GL_NICEST 0x1102
359 #define GL_LIGHT0 0x4000
360 #define GL_LIGHT1 0x4001
361 #define GL_LIGHT2 0x4002
362 #define GL_LIGHT3 0x4003
363 #define GL_LIGHT4 0x4004
364 #define GL_LIGHT5 0x4005
365 #define GL_LIGHT6 0x4006
366 #define GL_LIGHT7 0x4007
367 #define GL_AMBIENT 0x1200
368 #define GL_DIFFUSE 0x1201
369 #define GL_SPECULAR 0x1202
370 #define GL_POSITION 0x1203
371 #define GL_SPOT_DIRECTION 0x1204
372 #define GL_SPOT_EXPONENT 0x1205
373 #define GL_SPOT_CUTOFF 0x1206
374 #define GL_CONSTANT_ATTENUATION 0x1207
375 #define GL_LINEAR_ATTENUATION 0x1208
376 #define GL_QUADRATIC_ATTENUATION 0x1209
377 #define GL_COMPILE 0x1300
378 #define GL_COMPILE_AND_EXECUTE 0x1301
379 #define GL_CLEAR 0x1500
380 #define GL_AND 0x1501
381 #define GL_AND_REVERSE 0x1502
382 #define GL_COPY 0x1503
383 #define GL_AND_INVERTED 0x1504
384 #define GL_NOOP 0x1505
385 #define GL_XOR 0x1506
386 #define GL_OR 0x1507
387 #define GL_NOR 0x1508
388 #define GL_EQUIV 0x1509
389 #define GL_INVERT 0x150A
390 #define GL_OR_REVERSE 0x150B
391 #define GL_COPY_INVERTED 0x150C
392 #define GL_OR_INVERTED 0x150D
393 #define GL_NAND 0x150E
394 #define GL_SET 0x150F
395 #define GL_EMISSION 0x1600
396 #define GL_SHININESS 0x1601
397 #define GL_AMBIENT_AND_DIFFUSE 0x1602
398 #define GL_COLOR_INDEXES 0x1603
399 #define GL_MODELVIEW 0x1700
400 #define GL_PROJECTION 0x1701
401 #define GL_TEXTURE 0x1702
402 #define GL_COLOR 0x1800
403 #define GL_DEPTH 0x1801
404 #define GL_STENCIL 0x1802
405 #define GL_COLOR_INDEX 0x1900
406 #define GL_STENCIL_INDEX 0x1901
407 #define GL_DEPTH_COMPONENT 0x1902
408 #define GL_RED 0x1903
409 #define GL_GREEN 0x1904
410 #define GL_BLUE 0x1905
411 #define GL_ALPHA 0x1906
412 #define GL_RGB 0x1907
413 #define GL_RGBA 0x1908
414 #define GL_LUMINANCE 0x1909
415 #define GL_LUMINANCE_ALPHA 0x190A
416 #define GL_BITMAP 0x1A00
417 #define GL_POINT 0x1B00
418 #define GL_LINE 0x1B01
419 #define GL_FILL 0x1B02
420 #define GL_RENDER 0x1C00
421 #define GL_FEEDBACK 0x1C01
422 #define GL_SELECT 0x1C02
423 #define GL_FLAT 0x1D00
424 #define GL_SMOOTH 0x1D01
425 #define GL_KEEP 0x1E00
426 #define GL_REPLACE 0x1E01
427 #define GL_INCR 0x1E02
428 #define GL_DECR 0x1E03
429 #define GL_VENDOR 0x1F00
430 #define GL_RENDERER 0x1F01
431 #define GL_VERSION 0x1F02
432 #define GL_EXTENSIONS 0x1F03
433 #define GL_S 0x2000
434 #define GL_T 0x2001
435 #define GL_R 0x2002
436 #define GL_Q 0x2003
437 #define GL_MODULATE 0x2100
438 #define GL_DECAL 0x2101
439 #define GL_TEXTURE_ENV_MODE 0x2200
440 #define GL_TEXTURE_ENV_COLOR 0x2201
441 #define GL_TEXTURE_ENV 0x2300
442 #define GL_EYE_LINEAR 0x2400
443 #define GL_OBJECT_LINEAR 0x2401
444 #define GL_SPHERE_MAP 0x2402
445 #define GL_TEXTURE_GEN_MODE 0x2500
446 #define GL_OBJECT_PLANE 0x2501
447 #define GL_EYE_PLANE 0x2502
448 #define GL_NEAREST 0x2600
449 #define GL_LINEAR 0x2601
450 #define GL_NEAREST_MIPMAP_NEAREST 0x2700
451 #define GL_LINEAR_MIPMAP_NEAREST 0x2701
452 #define GL_NEAREST_MIPMAP_LINEAR 0x2702
453 #define GL_LINEAR_MIPMAP_LINEAR 0x2703
454 #define GL_TEXTURE_MAG_FILTER 0x2800
455 #define GL_TEXTURE_MIN_FILTER 0x2801
456 #define GL_TEXTURE_WRAP_S 0x2802
457 #define GL_TEXTURE_WRAP_T 0x2803
458 #define GL_CLAMP 0x2900
459 #define GL_REPEAT 0x2901
460 #define GL_CLIP_PLANE0 0x3000
461 #define GL_CLIP_PLANE1 0x3001
462 #define GL_CLIP_PLANE2 0x3002
463 #define GL_CLIP_PLANE3 0x3003
464 #define GL_CLIP_PLANE4 0x3004
465 #define GL_CLIP_PLANE5 0x3005
466 #define GL_CURRENT_BIT 0x00000001
467 #define GL_POINT_BIT 0x00000002
468 #define GL_LINE_BIT 0x00000004
469 #define GL_POLYGON_BIT 0x00000008
470 #define GL_POLYGON_STIPPLE_BIT 0x00000010
471 #define GL_PIXEL_MODE_BIT 0x00000020
472 #define GL_LIGHTING_BIT 0x00000040
473 #define GL_FOG_BIT 0x00000080
474 #define GL_DEPTH_BUFFER_BIT 0x00000100
475 #define GL_ACCUM_BUFFER_BIT 0x00000200
476 #define GL_STENCIL_BUFFER_BIT 0x00000400
477 #define GL_VIEWPORT_BIT 0x00000800
478 #define GL_TRANSFORM_BIT 0x00001000
479 #define GL_ENABLE_BIT 0x00002000
480 #define GL_COLOR_BUFFER_BIT 0x00004000
481 #define GL_HINT_BIT 0x00008000
482 #define GL_EVAL_BIT 0x00010000
483 #define GL_LIST_BIT 0x00020000
484 #define GL_TEXTURE_BIT 0x00040000
485 #define GL_SCISSOR_BIT 0x00080000
486 #define GL_ALL_ATTRIB_BITS 0x000fffff
487 #define GL_CLIENT_PIXEL_STORE_BIT 0x00000001
488 #define GL_CLIENT_VERTEX_ARRAY_BIT 0x00000002
489 #define GL_CLIENT_ALL_ATTRIB_BITS 0xffffffff
490 #define GL_POLYGON_OFFSET_UNITS 0x2A00
491 #define GL_POLYGON_OFFSET_POINT 0x2A01
492 #define GL_POLYGON_OFFSET_LINE 0x2A02
493 #define GL_POLYGON_OFFSET_FILL 0x8037
494 #define GL_POLYGON_OFFSET_FACTOR 0x8038
495 #define GL_ALPHA4 0x803B
496 #define GL_ALPHA8 0x803C
497 #define GL_ALPHA12 0x803D
498 #define GL_ALPHA16 0x803E
499 #define GL_LUMINANCE4 0x803F
500 #define GL_LUMINANCE8 0x8040
501 #define GL_LUMINANCE12 0x8041
502 #define GL_LUMINANCE16 0x8042
503 #define GL_LUMINANCE4_ALPHA4 0x8043
504 #define GL_LUMINANCE6_ALPHA2 0x8044
505 #define GL_LUMINANCE8_ALPHA8 0x8045
506 #define GL_LUMINANCE12_ALPHA4 0x8046
507 #define GL_LUMINANCE12_ALPHA12 0x8047
508 #define GL_LUMINANCE16_ALPHA16 0x8048
509 #define GL_INTENSITY 0x8049
510 #define GL_INTENSITY4 0x804A
511 #define GL_INTENSITY8 0x804B
512 #define GL_INTENSITY12 0x804C
513 #define GL_INTENSITY16 0x804D
514 #define GL_R3_G3_B2 0x2A10
515 #define GL_RGB4 0x804F
516 #define GL_RGB5 0x8050
517 #define GL_RGB8 0x8051
518 #define GL_RGB10 0x8052
519 #define GL_RGB12 0x8053
520 #define GL_RGB16 0x8054
521 #define GL_RGBA2 0x8055
522 #define GL_RGBA4 0x8056
523 #define GL_RGB5_A1 0x8057
524 #define GL_RGBA8 0x8058
525 #define GL_RGB10_A2 0x8059
526 #define GL_RGBA12 0x805A
527 #define GL_RGBA16 0x805B
528 #define GL_TEXTURE_RED_SIZE 0x805C
529 #define GL_TEXTURE_GREEN_SIZE 0x805D
530 #define GL_TEXTURE_BLUE_SIZE 0x805E
531 #define GL_TEXTURE_ALPHA_SIZE 0x805F
532 #define GL_TEXTURE_LUMINANCE_SIZE 0x8060
533 #define GL_TEXTURE_INTENSITY_SIZE 0x8061
534 #define GL_PROXY_TEXTURE_1D 0x8063
535 #define GL_PROXY_TEXTURE_2D 0x8064
536 #define GL_TEXTURE_PRIORITY 0x8066
537 #define GL_TEXTURE_RESIDENT 0x8067
538 #define GL_TEXTURE_BINDING_1D 0x8068
539 #define GL_TEXTURE_BINDING_2D 0x8069
540 #define GL_VERTEX_ARRAY 0x8074
541 #define GL_NORMAL_ARRAY 0x8075
542 #define GL_COLOR_ARRAY 0x8076
543 #define GL_INDEX_ARRAY 0x8077
544 #define GL_TEXTURE_COORD_ARRAY 0x8078
545 #define GL_EDGE_FLAG_ARRAY 0x8079
546 #define GL_VERTEX_ARRAY_SIZE 0x807A
547 #define GL_VERTEX_ARRAY_TYPE 0x807B
548 #define GL_VERTEX_ARRAY_STRIDE 0x807C
549 #define GL_NORMAL_ARRAY_TYPE 0x807E
550 #define GL_NORMAL_ARRAY_STRIDE 0x807F
551 #define GL_COLOR_ARRAY_SIZE 0x8081
552 #define GL_COLOR_ARRAY_TYPE 0x8082
553 #define GL_COLOR_ARRAY_STRIDE 0x8083
554 #define GL_INDEX_ARRAY_TYPE 0x8085
555 #define GL_INDEX_ARRAY_STRIDE 0x8086
556 #define GL_TEXTURE_COORD_ARRAY_SIZE 0x8088
557 #define GL_TEXTURE_COORD_ARRAY_TYPE 0x8089
558 #define GL_TEXTURE_COORD_ARRAY_STRIDE 0x808A
559 #define GL_EDGE_FLAG_ARRAY_STRIDE 0x808C
560 #define GL_VERTEX_ARRAY_POINTER 0x808E
561 #define GL_NORMAL_ARRAY_POINTER 0x808F
562 #define GL_COLOR_ARRAY_POINTER 0x8090
563 #define GL_INDEX_ARRAY_POINTER 0x8091
564 #define GL_TEXTURE_COORD_ARRAY_POINTER 0x8092
565 #define GL_EDGE_FLAG_ARRAY_POINTER 0x8093
566 #define GL_V2F 0x2A20
567 #define GL_V3F 0x2A21
568 #define GL_C4UB_V2F 0x2A22
569 #define GL_C4UB_V3F 0x2A23
570 #define GL_C3F_V3F 0x2A24
571 #define GL_N3F_V3F 0x2A25
572 #define GL_C4F_N3F_V3F 0x2A26
573 #define GL_T2F_V3F 0x2A27
574 #define GL_T4F_V4F 0x2A28
575 #define GL_T2F_C4UB_V3F 0x2A29
576 #define GL_T2F_C3F_V3F 0x2A2A
577 #define GL_T2F_N3F_V3F 0x2A2B
578 #define GL_T2F_C4F_N3F_V3F 0x2A2C
579 #define GL_T4F_C4F_N3F_V4F 0x2A2D
580
581 #define glAccum GlobalOpenGL().m_glAccum
582 #define glAlphaFunc GlobalOpenGL().m_glAlphaFunc
583 #define glAreTexturesResident GlobalOpenGL().m_glAreTexturesResident
584 #define glArrayElement GlobalOpenGL().m_glArrayElement
585 #define glBegin GlobalOpenGL().m_glBegin
586 #define glBindTexture GlobalOpenGL().m_glBindTexture
587 #define glBitmap GlobalOpenGL().m_glBitmap
588 #define glBlendFunc GlobalOpenGL().m_glBlendFunc
589 #define glCallList GlobalOpenGL().m_glCallList
590 #define glCallLists GlobalOpenGL().m_glCallLists
591 #define glClear GlobalOpenGL().m_glClear
592 #define glClearAccum GlobalOpenGL().m_glClearAccum
593 #define glClearColor GlobalOpenGL().m_glClearColor
594 #define glClearDepth GlobalOpenGL().m_glClearDepth
595 #define glClearIndex GlobalOpenGL().m_glClearIndex
596 #define glClearStencil GlobalOpenGL().m_glClearStencil
597 #define glClipPlane GlobalOpenGL().m_glClipPlane
598 #define glColor3b GlobalOpenGL().m_glColor3b
599 #define glColor3bv GlobalOpenGL().m_glColor3bv
600 #define glColor3d GlobalOpenGL().m_glColor3d
601 #define glColor3dv GlobalOpenGL().m_glColor3dv
602 #define glColor3f GlobalOpenGL().m_glColor3f
603 #define glColor3fv GlobalOpenGL().m_glColor3fv
604 #define glColor3i GlobalOpenGL().m_glColor3i
605 #define glColor3iv GlobalOpenGL().m_glColor3iv
606 #define glColor3s GlobalOpenGL().m_glColor3s
607 #define glColor3sv GlobalOpenGL().m_glColor3sv
608 #define glColor3ub GlobalOpenGL().m_glColor3ub
609 #define glColor3ubv GlobalOpenGL().m_glColor3ubv
610 #define glColor3ui GlobalOpenGL().m_glColor3ui
611 #define glColor3uiv GlobalOpenGL().m_glColor3uiv
612 #define glColor3us GlobalOpenGL().m_glColor3us
613 #define glColor3usv GlobalOpenGL().m_glColor3usv
614 #define glColor4b GlobalOpenGL().m_glColor4b
615 #define glColor4bv GlobalOpenGL().m_glColor4bv
616 #define glColor4d GlobalOpenGL().m_glColor4d
617 #define glColor4dv GlobalOpenGL().m_glColor4dv
618 #define glColor4f GlobalOpenGL().m_glColor4f
619 #define glColor4fv GlobalOpenGL().m_glColor4fv
620 #define glColor4i GlobalOpenGL().m_glColor4i
621 #define glColor4iv GlobalOpenGL().m_glColor4iv
622 #define glColor4s GlobalOpenGL().m_glColor4s
623 #define glColor4sv GlobalOpenGL().m_glColor4sv
624 #define glColor4ub GlobalOpenGL().m_glColor4ub
625 #define glColor4ubv GlobalOpenGL().m_glColor4ubv
626 #define glColor4ui GlobalOpenGL().m_glColor4ui
627 #define glColor4uiv GlobalOpenGL().m_glColor4uiv
628 #define glColor4us GlobalOpenGL().m_glColor4us
629 #define glColor4usv GlobalOpenGL().m_glColor4usv
630 #define glColorMask GlobalOpenGL().m_glColorMask
631 #define glColorMaterial GlobalOpenGL().m_glColorMaterial
632 #define glColorPointer GlobalOpenGL().m_glColorPointer
633 #define glCopyPixels GlobalOpenGL().m_glCopyPixels
634 #define glCopyTexImage1D GlobalOpenGL().m_glCopyTexImage1D
635 #define glCopyTexImage2D GlobalOpenGL().m_glCopyTexImage2D
636 #define glCopyTexSubImage1D GlobalOpenGL().m_glCopyTexSubImage1D
637 #define glCopyTexSubImage2D GlobalOpenGL().m_glCopyTexSubImage2D
638 #define glCullFace GlobalOpenGL().m_glCullFace
639 #define glDeleteLists GlobalOpenGL().m_glDeleteLists
640 #define glDeleteTextures GlobalOpenGL().m_glDeleteTextures
641 #define glDepthFunc GlobalOpenGL().m_glDepthFunc
642 #define glDepthMask GlobalOpenGL().m_glDepthMask
643 #define glDepthRange GlobalOpenGL().m_glDepthRange
644 #define glDisable GlobalOpenGL().m_glDisable
645 #define glDisableClientState GlobalOpenGL().m_glDisableClientState
646 #define glDrawArrays GlobalOpenGL().m_glDrawArrays
647 #define glDrawBuffer GlobalOpenGL().m_glDrawBuffer
648 #define glDrawElements GlobalOpenGL().m_glDrawElements
649 #define glDrawPixels GlobalOpenGL().m_glDrawPixels
650 #define glEdgeFlag GlobalOpenGL().m_glEdgeFlag
651 #define glEdgeFlagPointer GlobalOpenGL().m_glEdgeFlagPointer
652 #define glEdgeFlagv GlobalOpenGL().m_glEdgeFlagv
653 #define glEnable GlobalOpenGL().m_glEnable
654 #define glEnableClientState GlobalOpenGL().m_glEnableClientState
655 #define glEnd GlobalOpenGL().m_glEnd
656 #define glEndList GlobalOpenGL().m_glEndList
657 #define glEvalCoord1d GlobalOpenGL().m_glEvalCoord1d
658 #define glEvalCoord1dv GlobalOpenGL().m_glEvalCoord1dv
659 #define glEvalCoord1f GlobalOpenGL().m_glEvalCoord1f
660 #define glEvalCoord1fv GlobalOpenGL().m_glEvalCoord1fv
661 #define glEvalCoord2d GlobalOpenGL().m_glEvalCoord2d
662 #define glEvalCoord2dv GlobalOpenGL().m_glEvalCoord2dv
663 #define glEvalCoord2f GlobalOpenGL().m_glEvalCoord2f
664 #define glEvalCoord2fv GlobalOpenGL().m_glEvalCoord2fv
665 #define glEvalMesh1 GlobalOpenGL().m_glEvalMesh1
666 #define glEvalMesh2 GlobalOpenGL().m_glEvalMesh2
667 #define glEvalPoint1 GlobalOpenGL().m_glEvalPoint1
668 #define glEvalPoint2 GlobalOpenGL().m_glEvalPoint2
669 #define glFeedbackBuffer GlobalOpenGL().m_glFeedbackBuffer
670 #define glFinish GlobalOpenGL().m_glFinish
671 #define glFlush GlobalOpenGL().m_glFlush
672 #define glFogf GlobalOpenGL().m_glFogf
673 #define glFogfv GlobalOpenGL().m_glFogfv
674 #define glFogi GlobalOpenGL().m_glFogi
675 #define glFogiv GlobalOpenGL().m_glFogiv
676 #define glFrontFace GlobalOpenGL().m_glFrontFace
677 #define glFrustum GlobalOpenGL().m_glFrustum
678 #define glGenLists GlobalOpenGL().m_glGenLists
679 #define glGenTextures GlobalOpenGL().m_glGenTextures
680 #define glGetBooleanv GlobalOpenGL().m_glGetBooleanv
681 #define glGetClipPlane GlobalOpenGL().m_glGetClipPlane
682 #define glGetDoublev GlobalOpenGL().m_glGetDoublev
683 #define glGetError GlobalOpenGL().m_glGetError
684 #define glGetFloatv GlobalOpenGL().m_glGetFloatv
685 #define glGetIntegerv GlobalOpenGL().m_glGetIntegerv
686 #define glGetLightfv GlobalOpenGL().m_glGetLightfv
687 #define glGetLightiv GlobalOpenGL().m_glGetLightiv
688 #define glGetMapdv GlobalOpenGL().m_glGetMapdv
689 #define glGetMapfv GlobalOpenGL().m_glGetMapfv
690 #define glGetMapiv GlobalOpenGL().m_glGetMapiv
691 #define glGetMaterialfv GlobalOpenGL().m_glGetMaterialfv
692 #define glGetMaterialiv GlobalOpenGL().m_glGetMaterialiv
693 #define glGetPixelMapfv GlobalOpenGL().m_glGetPixelMapfv
694 #define glGetPixelMapuiv GlobalOpenGL().m_glGetPixelMapuiv
695 #define glGetPixelMapusv GlobalOpenGL().m_glGetPixelMapusv
696 #define glGetPointerv GlobalOpenGL().m_glGetPointerv
697 #define glGetPolygonStipple GlobalOpenGL().m_glGetPolygonStipple
698 #define glGetString GlobalOpenGL().m_glGetString
699 #define glGetTexEnvfv GlobalOpenGL().m_glGetTexEnvfv
700 #define glGetTexEnviv GlobalOpenGL().m_glGetTexEnviv
701 #define glGetTexGendv GlobalOpenGL().m_glGetTexGendv
702 #define glGetTexGenfv GlobalOpenGL().m_glGetTexGenfv
703 #define glGetTexGeniv GlobalOpenGL().m_glGetTexGeniv
704 #define glGetTexImage GlobalOpenGL().m_glGetTexImage
705 #define glGetTexLevelParameterfv GlobalOpenGL().m_glGetTexLevelParameter
706 #define glGetTexLevelParameteriv GlobalOpenGL().m_glGetTexLevelParameteriv
707 #define glGetTexParameterfv GlobalOpenGL().m_glGetTexParameterfv
708 #define glGetTexParameteriv GlobalOpenGL().m_glGetTexParameteriv
709 #define glHint GlobalOpenGL().m_glHint
710 #define glIndexMask GlobalOpenGL().m_glIndexMask
711 #define glIndexPointer GlobalOpenGL().m_glIndexPointer
712 #define glIndexd GlobalOpenGL().m_glIndexd
713 #define glIndexdv GlobalOpenGL().m_glIndexdv
714 #define glIndexf GlobalOpenGL().m_glIndexf
715 #define glIndexfv GlobalOpenGL().m_glIndexfv
716 #define glIndexi GlobalOpenGL().m_glIndexi
717 #define glIndexiv GlobalOpenGL().m_glIndexiv
718 #define glIndexs GlobalOpenGL().m_glIndexs
719 #define glIndexsv GlobalOpenGL().m_glIndexsv
720 #define glIndexub GlobalOpenGL().m_glIndexub
721 #define glIndexubv GlobalOpenGL().m_glIndexubv
722 #define glInitNames GlobalOpenGL().m_glInitNames
723 #define glInterleavedArrays GlobalOpenGL().m_glInterleavedArrays
724 #define glIsEnabled GlobalOpenGL().m_glIsEnabled
725 #define glIsList GlobalOpenGL().m_glIsList
726 #define glIsTexture GlobalOpenGL().m_glIsTexture
727 #define glLightModelf GlobalOpenGL().m_glLightModelf
728 #define glLightModelfv GlobalOpenGL().m_glLightModelfv
729 #define glLightModeli GlobalOpenGL().m_glLightModeli
730 #define glLightModeliv GlobalOpenGL().m_glLightModeliv
731 #define glLightf GlobalOpenGL().m_glLightf
732 #define glLightfv GlobalOpenGL().m_glLightfv
733 #define glLighti GlobalOpenGL().m_glLighti
734 #define glLightiv GlobalOpenGL().m_glLightiv
735 #define glLineStipple GlobalOpenGL().m_glLineStipple
736 #define glLineWidth GlobalOpenGL().m_glLineWidth
737 #define glListBase GlobalOpenGL().m_glListBase
738 #define glLoadIdentity GlobalOpenGL().m_glLoadIdentity
739 #define glLoadMatrixd GlobalOpenGL().m_glLoadMatrixd
740 #define glLoadMatrixf GlobalOpenGL().m_glLoadMatrixf
741 #define glLoadName GlobalOpenGL().m_glLoadName
742 #define glLogicOp GlobalOpenGL().m_glLogicOp
743 #define glMap1d GlobalOpenGL().m_glMap1d
744 #define glMap1f GlobalOpenGL().m_glMap1f
745 #define glMap2d GlobalOpenGL().m_glMap2d
746 #define glMap2f GlobalOpenGL().m_glMap2f
747 #define glMapGrid1d GlobalOpenGL().m_glMapGrid1d
748 #define glMapGrid1f GlobalOpenGL().m_glMapGrid1f
749 #define glMapGrid2d GlobalOpenGL().m_glMapGrid2d
750 #define glMapGrid2f GlobalOpenGL().m_glMapGrid2f
751 #define glMaterialf GlobalOpenGL().m_glMaterialf
752 #define glMaterialfv GlobalOpenGL().m_glMaterialfv
753 #define glMateriali GlobalOpenGL().m_glMateriali
754 #define glMaterialiv GlobalOpenGL().m_glMaterialiv
755 #define glMatrixMode GlobalOpenGL().m_glMatrixMode
756 #define glMultMatrixd GlobalOpenGL().m_glMultMatrixd
757 #define glMultMatrixf GlobalOpenGL().m_glMultMatrixf
758 #define glNewList GlobalOpenGL().m_glNewList
759 #define glNormal3b GlobalOpenGL().m_glNormal3b
760 #define glNormal3bv GlobalOpenGL().m_glNormal3bv
761 #define glNormal3d GlobalOpenGL().m_glNormal3d
762 #define glNormal3dv GlobalOpenGL().m_glNormal3dv
763 #define glNormal3f GlobalOpenGL().m_glNormal3f
764 #define glNormal3fv GlobalOpenGL().m_glNormal3fv
765 #define glNormal3i GlobalOpenGL().m_glNormal3i
766 #define glNormal3iv GlobalOpenGL().m_glNormal3iv
767 #define glNormal3s GlobalOpenGL().m_glNormal3s
768 #define glNormal3sv GlobalOpenGL().m_glNormal3sv
769 #define glNormalPointer GlobalOpenGL().m_glNormalPointer
770 #define glOrtho GlobalOpenGL().m_glOrtho
771 #define glPassThrough GlobalOpenGL().m_glPassThrough
772 #define glPixelMapfv GlobalOpenGL().m_glPixelMapfv
773 #define glPixelMapuiv GlobalOpenGL().m_glPixelMapuiv
774 #define glPixelMapusv GlobalOpenGL().m_glPixelMapusv
775 #define glPixelStoref GlobalOpenGL().m_glPixelStoref
776 #define glPixelStorei GlobalOpenGL().m_glPixelStorei
777 #define glPixelTransferf GlobalOpenGL().m_glPixelTransferf
778 #define glPixelTransferi GlobalOpenGL().m_glPixelTransferi
779 #define glPixelZoom GlobalOpenGL().m_glPixelZoom
780 #define glPointSize GlobalOpenGL().m_glPointSize
781 #define glPolygonMode GlobalOpenGL().m_glPolygonMode
782 #define glPolygonOffset GlobalOpenGL().m_glPolygonOffset
783 #define glPolygonStipple GlobalOpenGL().m_glPolygonStipple
784 #define glPopAttrib GlobalOpenGL().m_glPopAttrib
785 #define glPopClientAttrib GlobalOpenGL().m_glPopClientAttrib
786 #define glPopMatrix GlobalOpenGL().m_glPopMatrix
787 #define glPopName GlobalOpenGL().m_glPopName
788 #define glPrioritizeTextures GlobalOpenGL().m_glPrioritizeTextures
789 #define glPushAttrib GlobalOpenGL().m_glPushAttrib
790 #define glPushClientAttrib GlobalOpenGL().m_glPushClientAttrib
791 #define glPushMatrix GlobalOpenGL().m_glPushMatrix
792 #define glPushName GlobalOpenGL().m_glPushName
793 #define glRasterPos2d GlobalOpenGL().m_glRasterPos2d
794 #define glRasterPos2dv GlobalOpenGL().m_glRasterPos2dv
795 #define glRasterPos2f GlobalOpenGL().m_glRasterPos2f
796 #define glRasterPos2fv GlobalOpenGL().m_glRasterPos2fv
797 #define glRasterPos2i GlobalOpenGL().m_glRasterPos2i
798 #define glRasterPos2iv GlobalOpenGL().m_glRasterPos2iv
799 #define glRasterPos2s GlobalOpenGL().m_glRasterPos2s
800 #define glRasterPos2sv GlobalOpenGL().m_glRasterPos2sv
801 #define glRasterPos3d GlobalOpenGL().m_glRasterPos3d
802 #define glRasterPos3dv GlobalOpenGL().m_glRasterPos3dv
803 #define glRasterPos3f GlobalOpenGL().m_glRasterPos3f
804 #define glRasterPos3fv GlobalOpenGL().m_glRasterPos3fv
805 #define glRasterPos3i GlobalOpenGL().m_glRasterPos3i
806 #define glRasterPos3iv GlobalOpenGL().m_glRasterPos3iv
807 #define glRasterPos3s GlobalOpenGL().m_glRasterPos3s
808 #define glRasterPos3sv GlobalOpenGL().m_glRasterPos3sv
809 #define glRasterPos4d GlobalOpenGL().m_glRasterPos4d
810 #define glRasterPos4dv GlobalOpenGL().m_glRasterPos4dv
811 #define glRasterPos4f GlobalOpenGL().m_glRasterPos4f
812 #define glRasterPos4fv GlobalOpenGL().m_glRasterPos4fv
813 #define glRasterPos4i GlobalOpenGL().m_glRasterPos4i
814 #define glRasterPos4iv GlobalOpenGL().m_glRasterPos4iv
815 #define glRasterPos4s GlobalOpenGL().m_glRasterPos4s
816 #define glRasterPos4sv GlobalOpenGL().m_glRasterPos4sv
817 #define glReadBuffer GlobalOpenGL().m_glReadBuffer
818 #define glReadPixels GlobalOpenGL().m_glReadPixels
819 #define glRectd GlobalOpenGL().m_glRectd
820 #define glRectdv GlobalOpenGL().m_glRectdv
821 #define glRectf GlobalOpenGL().m_glRectf
822 #define glRectfv GlobalOpenGL().m_glRectfv
823 #define glRecti GlobalOpenGL().m_glRecti
824 #define glRectiv GlobalOpenGL().m_glRectiv
825 #define glRects GlobalOpenGL().m_glRects
826 #define glRectsv GlobalOpenGL().m_glRectsv
827 #define glRenderMode GlobalOpenGL().m_glRenderMode
828 #define glRotated GlobalOpenGL().m_glRotated
829 #define glRotatef GlobalOpenGL().m_glRotatef
830 #define glScaled GlobalOpenGL().m_glScaled
831 #define glScalef GlobalOpenGL().m_glScalef
832 #define glScissor GlobalOpenGL().m_glScissor
833 #define glSelectBuffer GlobalOpenGL().m_glSelectBuffer
834 #define glShadeModel GlobalOpenGL().m_glShadeModel
835 #define glStencilFunc GlobalOpenGL().m_glStencilFunc
836 #define glStencilMask GlobalOpenGL().m_glStencilMask
837 #define glStencilOp GlobalOpenGL().m_glStencilOp
838 #define glTexCoord1d GlobalOpenGL().m_glTexCoord1d
839 #define glTexCoord1dv GlobalOpenGL().m_glTexCoord1dv
840 #define glTexCoord1f GlobalOpenGL().m_glTexCoord1f
841 #define glTexCoord1fv GlobalOpenGL().m_glTexCoord1fv
842 #define glTexCoord1i GlobalOpenGL().m_glTexCoord1i
843 #define glTexCoord1iv GlobalOpenGL().m_glTexCoord1iv
844 #define glTexCoord1s GlobalOpenGL().m_glTexCoord1s
845 #define glTexCoord1sv GlobalOpenGL().m_glTexCoord1sv
846 #define glTexCoord2d GlobalOpenGL().m_glTexCoord2d
847 #define glTexCoord2dv GlobalOpenGL().m_glTexCoord2dv
848 #define glTexCoord2f GlobalOpenGL().m_glTexCoord2f
849 #define glTexCoord2fv GlobalOpenGL().m_glTexCoord2fv
850 #define glTexCoord2i GlobalOpenGL().m_glTexCoord2i
851 #define glTexCoord2iv GlobalOpenGL().m_glTexCoord2iv
852 #define glTexCoord2s GlobalOpenGL().m_glTexCoord2s
853 #define glTexCoord2sv GlobalOpenGL().m_glTexCoord2sv
854 #define glTexCoord3d GlobalOpenGL().m_glTexCoord3d
855 #define glTexCoord3dv GlobalOpenGL().m_glTexCoord3dv
856 #define glTexCoord3f GlobalOpenGL().m_glTexCoord3f
857 #define glTexCoord3fv GlobalOpenGL().m_glTexCoord3fv
858 #define glTexCoord3i GlobalOpenGL().m_glTexCoord3i
859 #define glTexCoord3iv GlobalOpenGL().m_glTexCoord3iv
860 #define glTexCoord3s GlobalOpenGL().m_glTexCoord3s
861 #define glTexCoord3sv GlobalOpenGL().m_glTexCoord3sv
862 #define glTexCoord4d GlobalOpenGL().m_glTexCoord4d
863 #define glTexCoord4dv GlobalOpenGL().m_glTexCoord4dv
864 #define glTexCoord4f GlobalOpenGL().m_glTexCoord4f
865 #define glTexCoord4fv GlobalOpenGL().m_glTexCoord4fv
866 #define glTexCoord4i GlobalOpenGL().m_glTexCoord4i
867 #define glTexCoord4iv GlobalOpenGL().m_glTexCoord4iv
868 #define glTexCoord4s GlobalOpenGL().m_glTexCoord4s
869 #define glTexCoord4sv GlobalOpenGL().m_glTexCoord4sv
870 #define glTexCoordPointer GlobalOpenGL().m_glTexCoordPointer
871 #define glTexEnvf GlobalOpenGL().m_glTexEnvf
872 #define glTexEnvfv GlobalOpenGL().m_glTexEnvfv
873 #define glTexEnvi GlobalOpenGL().m_glTexEnvi
874 #define glTexEnviv GlobalOpenGL().m_glTexEnviv
875 #define glTexGend GlobalOpenGL().m_glTexGend
876 #define glTexGendv GlobalOpenGL().m_glTexGendv
877 #define glTexGenf GlobalOpenGL().m_glTexGenf
878 #define glTexGenfv GlobalOpenGL().m_glTexGenfv
879 #define glTexGeni GlobalOpenGL().m_glTexGeni
880 #define glTexGeniv GlobalOpenGL().m_glTexGeniv
881 #define glTexImage1D GlobalOpenGL().m_glTexImage1D
882 #define glTexImage2D GlobalOpenGL().m_glTexImage2D
883 #define glTexParameterf GlobalOpenGL().m_glTexParameterf
884 #define glTexParameterfv GlobalOpenGL().m_glTexParameterfv
885 #define glTexParameteri GlobalOpenGL().m_glTexParameteri
886 #define glTexParameteriv GlobalOpenGL().m_glTexParameteriv
887 #define glTexSubImage1D GlobalOpenGL().m_glTexSubImage1D
888 #define glTexSubImage2D GlobalOpenGL().m_glTexSubImage2D
889 #define glTranslated GlobalOpenGL().m_glTranslated
890 #define glTranslatef GlobalOpenGL().m_glTranslatef
891 #define glVertex2d GlobalOpenGL().m_glVertex2d
892 #define glVertex2dv GlobalOpenGL().m_glVertex2dv
893 #define glVertex2f GlobalOpenGL().m_glVertex2f
894 #define glVertex2fv GlobalOpenGL().m_glVertex2fv
895 #define glVertex2i GlobalOpenGL().m_glVertex2i
896 #define glVertex2iv GlobalOpenGL().m_glVertex2iv
897 #define glVertex2s GlobalOpenGL().m_glVertex2s
898 #define glVertex2sv GlobalOpenGL().m_glVertex2sv
899 #define glVertex3d GlobalOpenGL().m_glVertex3d
900 #define glVertex3dv GlobalOpenGL().m_glVertex3dv
901 #define glVertex3f GlobalOpenGL().m_glVertex3f
902 #define glVertex3fv GlobalOpenGL().m_glVertex3fv
903 #define glVertex3i GlobalOpenGL().m_glVertex3i
904 #define glVertex3iv GlobalOpenGL().m_glVertex3iv
905 #define glVertex3s GlobalOpenGL().m_glVertex3s
906 #define glVertex3sv GlobalOpenGL().m_glVertex3sv
907 #define glVertex4d GlobalOpenGL().m_glVertex4d
908 #define glVertex4dv GlobalOpenGL().m_glVertex4dv
909 #define glVertex4f GlobalOpenGL().m_glVertex4f
910 #define glVertex4fv GlobalOpenGL().m_glVertex4fv
911 #define glVertex4i GlobalOpenGL().m_glVertex4i
912 #define glVertex4iv GlobalOpenGL().m_glVertex4iv
913 #define glVertex4s GlobalOpenGL().m_glVertex4s
914 #define glVertex4sv GlobalOpenGL().m_glVertex4sv
915 #define glVertexPointer GlobalOpenGL().m_glVertexPointer
916 #define glViewport GlobalOpenGL().m_glViewport
917
918 #endif
919
920
921 #if !defined(GL_EXT_vertex_array)
922 #define GL_EXT_vertex_array 1
923
924 #define GL_VERTEX_ARRAY_EXT 0x8074
925 #define GL_NORMAL_ARRAY_EXT 0x8075
926 #define GL_COLOR_ARRAY_EXT 0x8076
927 #define GL_INDEX_ARRAY_EXT 0x8077
928 #define GL_TEXTURE_COORD_ARRAY_EXT 0x8078
929 #define GL_EDGE_FLAG_ARRAY_EXT 0x8079
930 #define GL_VERTEX_ARRAY_SIZE_EXT 0x807A
931 #define GL_VERTEX_ARRAY_TYPE_EXT 0x807B
932 #define GL_VERTEX_ARRAY_STRIDE_EXT 0x807C
933 #define GL_VERTEX_ARRAY_COUNT_EXT 0x807D
934 #define GL_NORMAL_ARRAY_TYPE_EXT 0x807E
935 #define GL_NORMAL_ARRAY_STRIDE_EXT 0x807F
936 #define GL_NORMAL_ARRAY_COUNT_EXT 0x8080
937 #define GL_COLOR_ARRAY_SIZE_EXT 0x8081
938 #define GL_COLOR_ARRAY_TYPE_EXT 0x8082
939 #define GL_COLOR_ARRAY_STRIDE_EXT 0x8083
940 #define GL_COLOR_ARRAY_COUNT_EXT 0x8084
941 #define GL_INDEX_ARRAY_TYPE_EXT 0x8085
942 #define GL_INDEX_ARRAY_STRIDE_EXT 0x8086
943 #define GL_INDEX_ARRAY_COUNT_EXT 0x8087
944 #define GL_TEXTURE_COORD_ARRAY_SIZE_EXT 0x8088
945 #define GL_TEXTURE_COORD_ARRAY_TYPE_EXT 0x8089
946 #define GL_TEXTURE_COORD_ARRAY_STRIDE_EXT 0x808A
947 #define GL_TEXTURE_COORD_ARRAY_COUNT_EXT 0x808B
948 #define GL_EDGE_FLAG_ARRAY_STRIDE_EXT 0x808C
949 #define GL_EDGE_FLAG_ARRAY_COUNT_EXT 0x808D
950 #define GL_VERTEX_ARRAY_POINTER_EXT 0x808E
951 #define GL_NORMAL_ARRAY_POINTER_EXT 0x808F
952 #define GL_COLOR_ARRAY_POINTER_EXT 0x8090
953 #define GL_INDEX_ARRAY_POINTER_EXT 0x8091
954 #define GL_TEXTURE_COORD_ARRAY_POINTER_EXT 0x8092
955 #define GL_EDGE_FLAG_ARRAY_POINTER_EXT 0x8093
956 #define GL_DOUBLE_EXT GL_DOUBLE
957
958 #endif
959
960
961 #if !defined(GL_EXT_bgra)
962 #define GL_EXT_bgra 1
963
964 #define GL_BGR_EXT 0x80E0
965 #define GL_BGRA_EXT 0x80E1
966
967 #endif
968
969
970 #if !defined(GL_EXT_paletted_texture)
971 #define GL_EXT_paletted_texture 1
972
973 #define GL_COLOR_TABLE_FORMAT_EXT 0x80D8
974 #define GL_COLOR_TABLE_WIDTH_EXT 0x80D9
975 #define GL_COLOR_TABLE_RED_SIZE_EXT 0x80DA
976 #define GL_COLOR_TABLE_GREEN_SIZE_EXT 0x80DB
977 #define GL_COLOR_TABLE_BLUE_SIZE_EXT 0x80DC
978 #define GL_COLOR_TABLE_ALPHA_SIZE_EXT 0x80DD
979 #define GL_COLOR_TABLE_LUMINANCE_SIZE_EXT 0x80DE
980 #define GL_COLOR_TABLE_INTENSITY_SIZE_EXT 0x80DF
981
982 #define GL_COLOR_INDEX1_EXT 0x80E2
983 #define GL_COLOR_INDEX2_EXT 0x80E3
984 #define GL_COLOR_INDEX4_EXT 0x80E4
985 #define GL_COLOR_INDEX8_EXT 0x80E5
986 #define GL_COLOR_INDEX12_EXT 0x80E6
987 #define GL_COLOR_INDEX16_EXT 0x80E7
988
989 #define GL_LOGIC_OP GL_INDEX_LOGIC_OP
990 #define GL_TEXTURE_COMPONENTS GL_TEXTURE_INTERNAL_FORMAT
991
992 #endif
993
994 #if !defined(GL_ARB_multitexture)
995 #define GL_ARB_multitexture 1
996
997 #define GL_TEXTURE0_ARB 0x84C0
998 #define GL_TEXTURE1_ARB 0x84C1
999 #define GL_TEXTURE2_ARB 0x84C2
1000 #define GL_TEXTURE3_ARB 0x84C3
1001 #define GL_TEXTURE4_ARB 0x84C4
1002 #define GL_TEXTURE5_ARB 0x84C5
1003 #define GL_TEXTURE6_ARB 0x84C6
1004 #define GL_TEXTURE7_ARB 0x84C7
1005 #define GL_TEXTURE8_ARB 0x84C8
1006 #define GL_TEXTURE9_ARB 0x84C9
1007 #define GL_TEXTURE10_ARB 0x84CA
1008 #define GL_TEXTURE11_ARB 0x84CB
1009 #define GL_TEXTURE12_ARB 0x84CC
1010 #define GL_TEXTURE13_ARB 0x84CD
1011 #define GL_TEXTURE14_ARB 0x84CE
1012 #define GL_TEXTURE15_ARB 0x84CF
1013 #define GL_TEXTURE16_ARB 0x84D0
1014 #define GL_TEXTURE17_ARB 0x84D1
1015 #define GL_TEXTURE18_ARB 0x84D2
1016 #define GL_TEXTURE19_ARB 0x84D3
1017 #define GL_TEXTURE20_ARB 0x84D4
1018 #define GL_TEXTURE21_ARB 0x84D5
1019 #define GL_TEXTURE22_ARB 0x84D6
1020 #define GL_TEXTURE23_ARB 0x84D7
1021 #define GL_TEXTURE24_ARB 0x84D8
1022 #define GL_TEXTURE25_ARB 0x84D9
1023 #define GL_TEXTURE26_ARB 0x84DA
1024 #define GL_TEXTURE27_ARB 0x84DB
1025 #define GL_TEXTURE28_ARB 0x84DC
1026 #define GL_TEXTURE29_ARB 0x84DD
1027 #define GL_TEXTURE30_ARB 0x84DE
1028 #define GL_TEXTURE31_ARB 0x84DF
1029 #define GL_ACTIVE_TEXTURE_ARB 0x84E0
1030 #define GL_CLIENT_ACTIVE_TEXTURE_ARB 0x84E1
1031 #define GL_MAX_TEXTURE_UNITS_ARB 0x84E2
1032
1033 #define glActiveTextureARB GlobalOpenGL().m_glActiveTextureARB
1034 #define glClientActiveTextureARB GlobalOpenGL().m_glClientActiveTextureARB
1035 #define glMultiTexCoord1dARB GlobalOpenGL().m_glMultiTexCoord1dARB
1036 #define glMultiTexCoord1dvARB GlobalOpenGL().m_glMultiTexCoord1dvARB
1037 #define glMultiTexCoord1fARB GlobalOpenGL().m_glMultiTexCoord1fARB
1038 #define glMultiTexCoord1fvARB GlobalOpenGL().m_glMultiTexCoord1fvARB
1039 #define glMultiTexCoord1iARB GlobalOpenGL().m_glMultiTexCoord1iARB
1040 #define glMultiTexCoord1ivARB GlobalOpenGL().m_glMultiTexCoord1ivARB
1041 #define glMultiTexCoord1sARB GlobalOpenGL().m_glMultiTexCoord1sARB
1042 #define glMultiTexCoord1svARB GlobalOpenGL().m_glMultiTexCoord1svARB
1043 #define glMultiTexCoord2dARB GlobalOpenGL().m_glMultiTexCoord2dARB
1044 #define glMultiTexCoord2dvARB GlobalOpenGL().m_glMultiTexCoord2dvARB
1045 #define glMultiTexCoord2fARB GlobalOpenGL().m_glMultiTexCoord2fARB
1046 #define glMultiTexCoord2fvARB GlobalOpenGL().m_glMultiTexCoord2fvARB
1047 #define glMultiTexCoord2iARB GlobalOpenGL().m_glMultiTexCoord2iARB
1048 #define glMultiTexCoord2ivARB GlobalOpenGL().m_glMultiTexCoord2ivARB
1049 #define glMultiTexCoord2sARB GlobalOpenGL().m_glMultiTexCoord2sARB
1050 #define glMultiTexCoord2svARB GlobalOpenGL().m_glMultiTexCoord2svARB
1051 #define glMultiTexCoord3dARB GlobalOpenGL().m_glMultiTexCoord3dARB
1052 #define glMultiTexCoord3dvARB GlobalOpenGL().m_glMultiTexCoord3dvARB
1053 #define glMultiTexCoord3fARB GlobalOpenGL().m_glMultiTexCoord3fARB
1054 #define glMultiTexCoord3fvARB GlobalOpenGL().m_glMultiTexCoord3fvARB
1055 #define glMultiTexCoord3iARB GlobalOpenGL().m_glMultiTexCoord3iARB
1056 #define glMultiTexCoord3ivARB GlobalOpenGL().m_glMultiTexCoord3ivARB
1057 #define glMultiTexCoord3sARB GlobalOpenGL().m_glMultiTexCoord3sARB
1058 #define glMultiTexCoord3svARB GlobalOpenGL().m_glMultiTexCoord3svARB
1059 #define glMultiTexCoord4dARB GlobalOpenGL().m_glMultiTexCoord4dARB
1060 #define glMultiTexCoord4dvARB GlobalOpenGL().m_glMultiTexCoord4dvARB
1061 #define glMultiTexCoord4fARB GlobalOpenGL().m_glMultiTexCoord4fARB
1062 #define glMultiTexCoord4fvARB GlobalOpenGL().m_glMultiTexCoord4fvARB
1063 #define glMultiTexCoord4iARB GlobalOpenGL().m_glMultiTexCoord4iARB
1064 #define glMultiTexCoord4ivARB GlobalOpenGL().m_glMultiTexCoord4ivARB
1065 #define glMultiTexCoord4sARB GlobalOpenGL().m_glMultiTexCoord4sARB
1066 #define glMultiTexCoord4svARB GlobalOpenGL().m_glMultiTexCoord4svARB
1067
1068 #endif
1069
1070
1071 // EXT_texture_compression_s3tc
1072 #if !defined(GL_EXT_texture_compression_s3tc)
1073 #define GL_EXT_texture_compression_s3tc 1
1074
1075 #define GL_COMPRESSED_RGB_S3TC_DXT1_EXT 0x83F0
1076 #define GL_COMPRESSED_RGBA_S3TC_DXT1_EXT 0x83F1
1077 #define GL_COMPRESSED_RGBA_S3TC_DXT3_EXT 0x83F2
1078 #define GL_COMPRESSED_RGBA_S3TC_DXT5_EXT 0x83F3
1079
1080 #endif
1081
1082
1083 // ARB_texture_compression
1084 #if !defined(GL_ARB_texture_compression)
1085 #define GL_ARB_texture_compression 1
1086
1087 #define GL_COMPRESSED_ALPHA_ARB 0x84E9
1088 #define GL_COMPRESSED_LUMINANCE_ARB 0x84EA
1089 #define GL_COMPRESSED_LUMINANCE_ALPHA_ARB 0x84EB
1090 #define GL_COMPRESSED_INTENSITY_ARB 0x84EC
1091 #define GL_COMPRESSED_RGB_ARB 0x84ED
1092 #define GL_COMPRESSED_RGBA_ARB 0x84EE
1093 #define GL_TEXTURE_COMPRESSION_HINT_ARB 0x84EF
1094 #define GL_TEXTURE_COMPRESSED_IMAGE_SIZE_ARB 0x86A0
1095 #define GL_TEXTURE_COMPRESSED_ARB 0x86A1
1096 #define GL_NUM_COMPRESSED_TEXTURE_FORMATS_ARB 0x86A2
1097 #define GL_COMPRESSED_TEXTURE_FORMATS_ARB 0x86A3
1098
1099 #define glCompressedTexImage3DARB GlobalOpenGL().m_glCompressedTexImage3DARB
1100 #define glCompressedTexImage2DARB GlobalOpenGL().m_glCompressedTexImage2DARB
1101 #define glCompressedTexImage1DARB GlobalOpenGL().m_glCompressedTexImage1DARB
1102 #define glCompressedTexSubImage3DARB GlobalOpenGL().m_glCompressedTexSubImage3DARB
1103 #define glCompressedTexSubImage2DARB GlobalOpenGL().m_glCompressedTexSubImage2DARB
1104 #define glCompressedTexSubImage1DARB GlobalOpenGL().m_glCompressedTexSubImage1DARB
1105 #define glGetCompressedTexImageARB GlobalOpenGL().m_glGetCompressedTexImageARB
1106
1107 #endif
1108
1109
1110 // GL 1.2
1111
1112 #if !defined(GL_VERSION_1_2)
1113
1114 #define GL_SMOOTH_POINT_SIZE_RANGE 0x0B12
1115 #define GL_SMOOTH_POINT_SIZE_GRANULARITY 0x0B13
1116 #define GL_SMOOTH_LINE_WIDTH_RANGE 0x0B22
1117 #define GL_SMOOTH_LINE_WIDTH_GRANULARITY 0x0B23
1118 #define GL_UNSIGNED_BYTE_3_3_2 0x8032
1119 #define GL_UNSIGNED_SHORT_4_4_4_4 0x8033
1120 #define GL_UNSIGNED_SHORT_5_5_5_1 0x8034
1121 #define GL_UNSIGNED_INT_8_8_8_8 0x8035
1122 #define GL_UNSIGNED_INT_10_10_10_2 0x8036
1123 #define GL_RESCALE_NORMAL 0x803A
1124 #define GL_TEXTURE_BINDING_3D 0x806A
1125 #define GL_PACK_SKIP_IMAGES 0x806B
1126 #define GL_PACK_IMAGE_HEIGHT 0x806C
1127 #define GL_UNPACK_SKIP_IMAGES 0x806D
1128 #define GL_UNPACK_IMAGE_HEIGHT 0x806E
1129 #define GL_TEXTURE_3D 0x806F
1130 #define GL_PROXY_TEXTURE_3D 0x8070
1131 #define GL_TEXTURE_DEPTH 0x8071
1132 #define GL_TEXTURE_WRAP_R 0x8072
1133 #define GL_MAX_3D_TEXTURE_SIZE 0x8073
1134 #define GL_BGR 0x80E0
1135 #define GL_BGRA 0x80E1
1136 #define GL_MAX_ELEMENTS_VERTICES 0x80E8
1137 #define GL_MAX_ELEMENTS_INDICES 0x80E9
1138 #define GL_CLAMP_TO_EDGE 0x812F
1139 #define GL_TEXTURE_MIN_LOD 0x813A
1140 #define GL_TEXTURE_MAX_LOD 0x813B
1141 #define GL_TEXTURE_BASE_LEVEL 0x813C
1142 #define GL_TEXTURE_MAX_LEVEL 0x813D
1143 #define GL_LIGHT_MODEL_COLOR_CONTROL 0x81F8
1144 #define GL_SINGLE_COLOR 0x81F9
1145 #define GL_SEPARATE_SPECULAR_COLOR 0x81FA
1146 #define GL_UNSIGNED_BYTE_2_3_3_REV 0x8362
1147 #define GL_UNSIGNED_SHORT_5_6_5 0x8363
1148 #define GL_UNSIGNED_SHORT_5_6_5_REV 0x8364
1149 #define GL_UNSIGNED_SHORT_4_4_4_4_REV 0x8365
1150 #define GL_UNSIGNED_SHORT_1_5_5_5_REV 0x8366
1151 #define GL_UNSIGNED_INT_8_8_8_8_REV 0x8367
1152 #define GL_UNSIGNED_INT_2_10_10_10_REV 0x8368
1153 #define GL_ALIASED_POINT_SIZE_RANGE 0x846D
1154 #define GL_ALIASED_LINE_WIDTH_RANGE 0x846E
1155
1156 #define glCopyTexSubImage3D GlobalOpenGL().m_glCopyTexSubImage3D
1157 #define glDrawRangeElements GlobalOpenGL().m_glDrawRangeElements
1158 #define glTexImage3D GlobalOpenGL().m_glTexImage3D
1159 #define glTexSubImage3D GlobalOpenGL().m_glTexSubImage3D
1160
1161 #endif
1162
1163
1164 // GL 1.3
1165
1166 #if !defined(GL_VERSION_1_3)
1167 #define GL_VERSION_1_3 1
1168
1169 #define GL_MULTISAMPLE 0x809D
1170 #define GL_SAMPLE_ALPHA_TO_COVERAGE 0x809E
1171 #define GL_SAMPLE_ALPHA_TO_ONE 0x809F
1172 #define GL_SAMPLE_COVERAGE 0x80A0
1173 #define GL_SAMPLE_BUFFERS 0x80A8
1174 #define GL_SAMPLES 0x80A9
1175 #define GL_SAMPLE_COVERAGE_VALUE 0x80AA
1176 #define GL_SAMPLE_COVERAGE_INVERT 0x80AB
1177 #define GL_CLAMP_TO_BORDER 0x812D
1178 #define GL_TEXTURE0 0x84C0
1179 #define GL_TEXTURE1 0x84C1
1180 #define GL_TEXTURE2 0x84C2
1181 #define GL_TEXTURE3 0x84C3
1182 #define GL_TEXTURE4 0x84C4
1183 #define GL_TEXTURE5 0x84C5
1184 #define GL_TEXTURE6 0x84C6
1185 #define GL_TEXTURE7 0x84C7
1186 #define GL_TEXTURE8 0x84C8
1187 #define GL_TEXTURE9 0x84C9
1188 #define GL_TEXTURE10 0x84CA
1189 #define GL_TEXTURE11 0x84CB
1190 #define GL_TEXTURE12 0x84CC
1191 #define GL_TEXTURE13 0x84CD
1192 #define GL_TEXTURE14 0x84CE
1193 #define GL_TEXTURE15 0x84CF
1194 #define GL_TEXTURE16 0x84D0
1195 #define GL_TEXTURE17 0x84D1
1196 #define GL_TEXTURE18 0x84D2
1197 #define GL_TEXTURE19 0x84D3
1198 #define GL_TEXTURE20 0x84D4
1199 #define GL_TEXTURE21 0x84D5
1200 #define GL_TEXTURE22 0x84D6
1201 #define GL_TEXTURE23 0x84D7
1202 #define GL_TEXTURE24 0x84D8
1203 #define GL_TEXTURE25 0x84D9
1204 #define GL_TEXTURE26 0x84DA
1205 #define GL_TEXTURE27 0x84DB
1206 #define GL_TEXTURE28 0x84DC
1207 #define GL_TEXTURE29 0x84DD
1208 #define GL_TEXTURE30 0x84DE
1209 #define GL_TEXTURE31 0x84DF
1210 #define GL_ACTIVE_TEXTURE 0x84E0
1211 #define GL_CLIENT_ACTIVE_TEXTURE 0x84E1
1212 #define GL_MAX_TEXTURE_UNITS 0x84E2
1213 #define GL_TRANSPOSE_MODELVIEW_MATRIX 0x84E3
1214 #define GL_TRANSPOSE_PROJECTION_MATRIX 0x84E4
1215 #define GL_TRANSPOSE_TEXTURE_MATRIX 0x84E5
1216 #define GL_TRANSPOSE_COLOR_MATRIX 0x84E6
1217 #define GL_SUBTRACT 0x84E7
1218 #define GL_COMPRESSED_ALPHA 0x84E9
1219 #define GL_COMPRESSED_LUMINANCE 0x84EA
1220 #define GL_COMPRESSED_LUMINANCE_ALPHA 0x84EB
1221 #define GL_COMPRESSED_INTENSITY 0x84EC
1222 #define GL_COMPRESSED_RGB 0x84ED
1223 #define GL_COMPRESSED_RGBA 0x84EE
1224 #define GL_TEXTURE_COMPRESSION_HINT 0x84EF
1225 #define GL_NORMAL_MAP 0x8511
1226 #define GL_REFLECTION_MAP 0x8512
1227 #define GL_TEXTURE_CUBE_MAP 0x8513
1228 #define GL_TEXTURE_BINDING_CUBE_MAP 0x8514
1229 #define GL_TEXTURE_CUBE_MAP_POSITIVE_X 0x8515
1230 #define GL_TEXTURE_CUBE_MAP_NEGATIVE_X 0x8516
1231 #define GL_TEXTURE_CUBE_MAP_POSITIVE_Y 0x8517
1232 #define GL_TEXTURE_CUBE_MAP_NEGATIVE_Y 0x8518
1233 #define GL_TEXTURE_CUBE_MAP_POSITIVE_Z 0x8519
1234 #define GL_TEXTURE_CUBE_MAP_NEGATIVE_Z 0x851A
1235 #define GL_PROXY_TEXTURE_CUBE_MAP 0x851B
1236 #define GL_MAX_CUBE_MAP_TEXTURE_SIZE 0x851C
1237 #define GL_COMBINE 0x8570
1238 #define GL_COMBINE_RGB 0x8571
1239 #define GL_COMBINE_ALPHA 0x8572
1240 #define GL_RGB_SCALE 0x8573
1241 #define GL_ADD_SIGNED 0x8574
1242 #define GL_INTERPOLATE 0x8575
1243 #define GL_CONSTANT 0x8576
1244 #define GL_PRIMARY_COLOR 0x8577
1245 #define GL_PREVIOUS 0x8578
1246 #define GL_SOURCE0_RGB 0x8580
1247 #define GL_SOURCE1_RGB 0x8581
1248 #define GL_SOURCE2_RGB 0x8582
1249 #define GL_SOURCE0_ALPHA 0x8588
1250 #define GL_SOURCE1_ALPHA 0x8589
1251 #define GL_SOURCE2_ALPHA 0x858A
1252 #define GL_OPERAND0_RGB 0x8590
1253 #define GL_OPERAND1_RGB 0x8591
1254 #define GL_OPERAND2_RGB 0x8592
1255 #define GL_OPERAND0_ALPHA 0x8598
1256 #define GL_OPERAND1_ALPHA 0x8599
1257 #define GL_OPERAND2_ALPHA 0x859A
1258 #define GL_TEXTURE_COMPRESSED_IMAGE_SIZE 0x86A0
1259 #define GL_TEXTURE_COMPRESSED 0x86A1
1260 #define GL_NUM_COMPRESSED_TEXTURE_FORMATS 0x86A2
1261 #define GL_COMPRESSED_TEXTURE_FORMATS 0x86A3
1262 #define GL_DOT3_RGB 0x86AE
1263 #define GL_DOT3_RGBA 0x86AF
1264 #define GL_MULTISAMPLE_BIT 0x20000000
1265
1266 #define glActiveTexture GlobalOpenGL().m_glActiveTexture
1267 #define glClientActiveTexture GlobalOpenGL().m_glClientActiveTexture
1268 #define glCompressedTexImage1D GlobalOpenGL().m_glCompressedTexImage1D
1269 #define glCompressedTexImage2D GlobalOpenGL().m_glCompressedTexImage2D
1270 #define glCompressedTexImage3D GlobalOpenGL().m_glCompressedTexImage3D
1271 #define glCompressedTexSubImage1D GlobalOpenGL().m_glCompressedTexSubImage1D
1272 #define glCompressedTexSubImage2D GlobalOpenGL().m_glCompressedTexSubImage2D
1273 #define glCompressedTexSubImage3D GlobalOpenGL().m_glCompressedTexSubImage3D
1274 #define glGetCompressedTexImage GlobalOpenGL().m_glGetCompressedTexImage
1275 #define glLoadTransposeMatrixd GlobalOpenGL().m_glLoadTransposeMatrixd
1276 #define glLoadTransposeMatrixf GlobalOpenGL().m_glLoadTransposeMatrixf
1277 #define glMultTransposeMatrixd GlobalOpenGL().m_glMultTransposeMatrixd
1278 #define glMultTransposeMatrixf GlobalOpenGL().m_glMultTransposeMatrixf
1279 #define glMultiTexCoord1d GlobalOpenGL().m_glMultiTexCoord1d
1280 #define glMultiTexCoord1dv GlobalOpenGL().m_glMultiTexCoord1dv
1281 #define glMultiTexCoord1f GlobalOpenGL().m_glMultiTexCoord1f
1282 #define glMultiTexCoord1fv GlobalOpenGL().m_glMultiTexCoord1fv
1283 #define glMultiTexCoord1i GlobalOpenGL().m_glMultiTexCoord1i
1284 #define glMultiTexCoord1iv GlobalOpenGL().m_glMultiTexCoord1iv
1285 #define glMultiTexCoord1s GlobalOpenGL().m_glMultiTexCoord1s
1286 #define glMultiTexCoord1sv GlobalOpenGL().m_glMultiTexCoord1sv
1287 #define glMultiTexCoord2d GlobalOpenGL().m_glMultiTexCoord2d
1288 #define glMultiTexCoord2dv GlobalOpenGL().m_glMultiTexCoord2dv
1289 #define glMultiTexCoord2f GlobalOpenGL().m_glMultiTexCoord2f
1290 #define glMultiTexCoord2fv GlobalOpenGL().m_glMultiTexCoord2fv
1291 #define glMultiTexCoord2i GlobalOpenGL().m_glMultiTexCoord2i
1292 #define glMultiTexCoord2iv GlobalOpenGL().m_glMultiTexCoord2iv
1293 #define glMultiTexCoord2s GlobalOpenGL().m_glMultiTexCoord2s
1294 #define glMultiTexCoord2sv GlobalOpenGL().m_glMultiTexCoord2sv
1295 #define glMultiTexCoord3d GlobalOpenGL().m_glMultiTexCoord3d
1296 #define glMultiTexCoord3dv GlobalOpenGL().m_glMultiTexCoord3dv
1297 #define glMultiTexCoord3f GlobalOpenGL().m_glMultiTexCoord3f
1298 #define glMultiTexCoord3fv GlobalOpenGL().m_glMultiTexCoord3fv
1299 #define glMultiTexCoord3i GlobalOpenGL().m_glMultiTexCoord3i
1300 #define glMultiTexCoord3iv GlobalOpenGL().m_glMultiTexCoord3iv
1301 #define glMultiTexCoord3s GlobalOpenGL().m_glMultiTexCoord3s
1302 #define glMultiTexCoord3sv GlobalOpenGL().m_glMultiTexCoord3sv
1303 #define glMultiTexCoord4d GlobalOpenGL().m_glMultiTexCoord4d
1304 #define glMultiTexCoord4dv GlobalOpenGL().m_glMultiTexCoord4dv
1305 #define glMultiTexCoord4f GlobalOpenGL().m_glMultiTexCoord4f
1306 #define glMultiTexCoord4fv GlobalOpenGL().m_glMultiTexCoord4fv
1307 #define glMultiTexCoord4i GlobalOpenGL().m_glMultiTexCoord4i
1308 #define glMultiTexCoord4iv GlobalOpenGL().m_glMultiTexCoord4iv
1309 #define glMultiTexCoord4s GlobalOpenGL().m_glMultiTexCoord4s
1310 #define glMultiTexCoord4sv GlobalOpenGL().m_glMultiTexCoord4sv
1311 #define glSampleCoverage GlobalOpenGL().m_glSampleCoverage
1312
1313 #endif
1314
1315
1316 // GL 1.4
1317 #if !defined(GL_VERSION_1_4)
1318 #define GL_VERSION_1_4 1
1319
1320 #define GL_BLEND_DST_RGB 0x80C8
1321 #define GL_BLEND_SRC_RGB 0x80C9
1322 #define GL_BLEND_DST_ALPHA 0x80CA
1323 #define GL_BLEND_SRC_ALPHA 0x80CB
1324 #define GL_POINT_SIZE_MIN 0x8126
1325 #define GL_POINT_SIZE_MAX 0x8127
1326 #define GL_POINT_FADE_THRESHOLD_SIZE 0x8128
1327 #define GL_POINT_DISTANCE_ATTENUATION 0x8129
1328 #define GL_GENERATE_MIPMAP 0x8191
1329 #define GL_GENERATE_MIPMAP_HINT 0x8192
1330 #define GL_DEPTH_COMPONENT16 0x81A5
1331 #define GL_DEPTH_COMPONENT24 0x81A6
1332 #define GL_DEPTH_COMPONENT32 0x81A7
1333 #define GL_MIRRORED_REPEAT 0x8370
1334 #define GL_FOG_COORDINATE_SOURCE 0x8450
1335 #define GL_FOG_COORDINATE 0x8451
1336 #define GL_FRAGMENT_DEPTH 0x8452
1337 #define GL_CURRENT_FOG_COORDINATE 0x8453
1338 #define GL_FOG_COORDINATE_ARRAY_TYPE 0x8454
1339 #define GL_FOG_COORDINATE_ARRAY_STRIDE 0x8455
1340 #define GL_FOG_COORDINATE_ARRAY_POINTER 0x8456
1341 #define GL_FOG_COORDINATE_ARRAY 0x8457
1342 #define GL_COLOR_SUM 0x8458
1343 #define GL_CURRENT_SECONDARY_COLOR 0x8459
1344 #define GL_SECONDARY_COLOR_ARRAY_SIZE 0x845A
1345 #define GL_SECONDARY_COLOR_ARRAY_TYPE 0x845B
1346 #define GL_SECONDARY_COLOR_ARRAY_STRIDE 0x845C
1347 #define GL_SECONDARY_COLOR_ARRAY_POINTER 0x845D
1348 #define GL_SECONDARY_COLOR_ARRAY 0x845E
1349 #define GL_MAX_TEXTURE_LOD_BIAS 0x84FD
1350 #define GL_TEXTURE_MAX_ANISOTROPY_EXT 0x84FE
1351 #define GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT 0x84FF
1352 #define GL_TEXTURE_FILTER_CONTROL 0x8500
1353 #define GL_TEXTURE_LOD_BIAS 0x8501
1354 #define GL_INCR_WRAP 0x8507
1355 #define GL_DECR_WRAP 0x8508
1356 #define GL_TEXTURE_DEPTH_SIZE 0x884A
1357 #define GL_DEPTH_TEXTURE_MODE 0x884B
1358 #define GL_TEXTURE_COMPARE_MODE 0x884C
1359 #define GL_TEXTURE_COMPARE_FUNC 0x884D
1360 #define GL_COMPARE_R_TO_TEXTURE 0x884E
1361
1362 #define glBlendColor GlobalOpenGL().m_glBlendColor
1363 #define glBlendEquation GlobalOpenGL().m_glBlendEquation
1364 #define glBlendFuncSeparate GlobalOpenGL().m_glBlendFuncSeparate
1365 #define glFogCoordPointer GlobalOpenGL().m_glFogCoordPointer
1366 #define glFogCoordd GlobalOpenGL().m_glFogCoordd
1367 #define glFogCoorddv GlobalOpenGL().m_glFogCoorddv
1368 #define glFogCoordf GlobalOpenGL().m_glFogCoordf
1369 #define glFogCoordfv GlobalOpenGL().m_glFogCoordfv
1370 #define glMultiDrawArrays GlobalOpenGL().m_glMultiDrawArrays
1371 #define glMultiDrawElements GlobalOpenGL().m_glMultiDrawElements
1372 #define glPointParameterf GlobalOpenGL().m_glPointParameterf
1373 #define glPointParameterfv GlobalOpenGL().m_glPointParameterfv
1374 #define glSecondaryColor3b GlobalOpenGL().m_glSecondaryColor3b
1375 #define glSecondaryColor3bv GlobalOpenGL().m_glSecondaryColor3bv
1376 #define glSecondaryColor3d GlobalOpenGL().m_glSecondaryColor3d
1377 #define glSecondaryColor3dv GlobalOpenGL().m_glSecondaryColor3dv
1378 #define glSecondaryColor3f GlobalOpenGL().m_glSecondaryColor3f
1379 #define glSecondaryColor3fv GlobalOpenGL().m_glSecondaryColor3fv
1380 #define glSecondaryColor3i GlobalOpenGL().m_glSecondaryColor3i
1381 #define glSecondaryColor3iv GlobalOpenGL().m_glSecondaryColor3iv
1382 #define glSecondaryColor3s GlobalOpenGL().m_glSecondaryColor3s
1383 #define glSecondaryColor3sv GlobalOpenGL().m_glSecondaryColor3sv
1384 #define glSecondaryColor3ub GlobalOpenGL().m_glSecondaryColor3ub
1385 #define glSecondaryColor3ubv GlobalOpenGL().m_glSecondaryColor3ubv
1386 #define glSecondaryColor3ui GlobalOpenGL().m_glSecondaryColor3ui
1387 #define glSecondaryColor3uiv GlobalOpenGL().m_glSecondaryColor3uiv
1388 #define glSecondaryColor3us GlobalOpenGL().m_glSecondaryColor3us
1389 #define glSecondaryColor3usv GlobalOpenGL().m_glSecondaryColor3usv
1390 #define glSecondaryColorPointer GlobalOpenGL().m_glSecondaryColorPointer
1391 #define glWindowPos2d GlobalOpenGL().m_glWindowPos2d
1392 #define glWindowPos2dv GlobalOpenGL().m_glWindowPos2dv
1393 #define glWindowPos2f GlobalOpenGL().m_glWindowPos2f
1394 #define glWindowPos2fv GlobalOpenGL().m_glWindowPos2fv
1395 #define glWindowPos2i GlobalOpenGL().m_glWindowPos2i
1396 #define glWindowPos2iv GlobalOpenGL().m_glWindowPos2iv
1397 #define glWindowPos2s GlobalOpenGL().m_glWindowPos2s
1398 #define glWindowPos2sv GlobalOpenGL().m_glWindowPos2sv
1399 #define glWindowPos3d GlobalOpenGL().m_glWindowPos3d
1400 #define glWindowPos3dv GlobalOpenGL().m_glWindowPos3dv
1401 #define glWindowPos3f GlobalOpenGL().m_glWindowPos3f
1402 #define glWindowPos3fv GlobalOpenGL().m_glWindowPos3fv
1403 #define glWindowPos3i GlobalOpenGL().m_glWindowPos3i
1404 #define glWindowPos3iv GlobalOpenGL().m_glWindowPos3iv
1405 #define glWindowPos3s GlobalOpenGL().m_glWindowPos3s
1406 #define glWindowPos3sv GlobalOpenGL().m_glWindowPos3sv
1407
1408 #endif
1409
1410
1411 // GL 1.5
1412 #if !defined(GL_VERSION_1_5)
1413 #define GL_VERSION_1_5 1
1414
1415 #define GL_FOG_COORD GL_FOG_COORDINATE
1416 #define GL_FOG_COORD_ARRAY GL_FOG_COORDINATE_ARRAY
1417 #define GL_SRC0_RGB GL_SOURCE0_RGB
1418 #define GL_FOG_COORD_ARRAY_POINTER GL_FOG_COORDINATE_ARRAY_POINTER
1419 #define GL_FOG_COORD_SOURCE GL_FOG_COORDINATE_SOURCE
1420 #define GL_FOG_COORD_ARRAY_TYPE GL_FOG_COORDINATE_ARRAY_TYPE
1421 #define GL_SRC1_ALPHA GL_SOURCE1_ALPHA
1422 #define GL_CURRENT_FOG_COORD GL_CURRENT_FOG_COORDINATE
1423 #define GL_FOG_COORD_ARRAY_STRIDE GL_FOG_COORDINATE_ARRAY_STRIDE
1424 #define GL_SRC0_ALPHA GL_SOURCE0_ALPHA
1425 #define GL_SRC1_RGB GL_SOURCE1_RGB
1426 #define GL_FOG_COORD_ARRAY_BUFFER_BINDING GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING
1427 #define GL_SRC2_ALPHA GL_SOURCE2_ALPHA
1428 #define GL_SRC2_RGB GL_SOURCE2_RGB
1429 #define GL_BUFFER_SIZE 0x8764
1430 #define GL_BUFFER_USAGE 0x8765
1431 #define GL_QUERY_COUNTER_BITS 0x8864
1432 #define GL_CURRENT_QUERY 0x8865
1433 #define GL_QUERY_RESULT 0x8866
1434 #define GL_QUERY_RESULT_AVAILABLE 0x8867
1435 #define GL_ARRAY_BUFFER 0x8892
1436 #define GL_ELEMENT_ARRAY_BUFFER 0x8893
1437 #define GL_ARRAY_BUFFER_BINDING 0x8894
1438 #define GL_ELEMENT_ARRAY_BUFFER_BINDING 0x8895
1439 #define GL_VERTEX_ARRAY_BUFFER_BINDING 0x8896
1440 #define GL_NORMAL_ARRAY_BUFFER_BINDING 0x8897
1441 #define GL_COLOR_ARRAY_BUFFER_BINDING 0x8898
1442 #define GL_INDEX_ARRAY_BUFFER_BINDING 0x8899
1443 #define GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING 0x889A
1444 #define GL_EDGE_FLAG_ARRAY_BUFFER_BINDING 0x889B
1445 #define GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING 0x889C
1446 #define GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING 0x889D
1447 #define GL_WEIGHT_ARRAY_BUFFER_BINDING 0x889E
1448 #define GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING 0x889F
1449 #define GL_READ_ONLY 0x88B8
1450 #define GL_WRITE_ONLY 0x88B9
1451 #define GL_READ_WRITE 0x88BA
1452 #define GL_BUFFER_ACCESS 0x88BB
1453 #define GL_BUFFER_MAPPED 0x88BC
1454 #define GL_BUFFER_MAP_POINTER 0x88BD
1455 #define GL_STREAM_DRAW 0x88E0
1456 #define GL_STREAM_READ 0x88E1
1457 #define GL_STREAM_COPY 0x88E2
1458 #define GL_STATIC_DRAW 0x88E4
1459 #define GL_STATIC_READ 0x88E5
1460 #define GL_STATIC_COPY 0x88E6
1461 #define GL_DYNAMIC_DRAW 0x88E8
1462 #define GL_DYNAMIC_READ 0x88E9
1463 #define GL_DYNAMIC_COPY 0x88EA
1464 #define GL_SAMPLES_PASSED 0x8914
1465
1466 typedef std::ptrdiff_t GLsizeiptr;
1467 typedef std::ptrdiff_t GLintptr;
1468
1469 #define glBeginQuery GlobalOpenGL().m_glBeginQuery
1470 #define glBindBuffer GlobalOpenGL().m_glBindBuffer
1471 #define glBufferData GlobalOpenGL().m_glBufferData
1472 #define glBufferSubData GlobalOpenGL().m_glBufferSubData
1473 #define glDeleteBuffers GlobalOpenGL().m_glDeleteBuffers
1474 #define glDeleteQueries GlobalOpenGL().m_glDeleteQueries
1475 #define glEndQuery GlobalOpenGL().m_glEndQuery
1476 #define glGenBuffers GlobalOpenGL().m_glGenBuffers
1477 #define glGenQueries GlobalOpenGL().m_glGenQueries
1478 #define glGetBufferParameteriv GlobalOpenGL().m_glGetBufferParameteriv
1479 #define glGetBufferPointerv GlobalOpenGL().m_glGetBufferPointerv
1480 #define glGetBufferSubData GlobalOpenGL().m_glGetBufferSubData
1481 #define glGetQueryObjectiv GlobalOpenGL().m_glGetQueryObjectiv
1482 #define glGetQueryObjectuiv GlobalOpenGL().m_glGetQueryObjectuiv
1483 #define glGetQueryiv GlobalOpenGL().m_glGetQueryiv
1484 #define glIsBuffer GlobalOpenGL().m_glIsBuffer
1485 #define glIsQuery GlobalOpenGL().m_glIsQuery
1486 #define glMapBuffer GlobalOpenGL().m_glMapBuffer
1487 #define glUnmapBuffer GlobalOpenGL().m_glUnmapBuffer
1488
1489 #endif
1490
1491
1492 // GL_ARB_vertex_program
1493 #if !defined(GL_ARB_vertex_program)
1494 #define GL_ARB_vertex_program
1495
1496 #define GL_VERTEX_PROGRAM_ARB 0x8620
1497 #define GL_VERTEX_PROGRAM_POINT_SIZE_ARB 0x8642
1498 #define GL_VERTEX_PROGRAM_TWO_SIDE_ARB 0x8643
1499 #define GL_COLOR_SUM_ARB 0x8458
1500 #define GL_PROGRAM_FORMAT_ASCII_ARB 0x8875
1501 #define GL_VERTEX_ATTRIB_ARRAY_ENABLED_ARB 0x8622
1502 #define GL_VERTEX_ATTRIB_ARRAY_SIZE_ARB 0x8623
1503 #define GL_VERTEX_ATTRIB_ARRAY_STRIDE_ARB 0x8624
1504 #define GL_VERTEX_ATTRIB_ARRAY_TYPE_ARB 0x8625
1505 #define GL_VERTEX_ATTRIB_ARRAY_NORMALIZED_ARB 0x886A
1506 #define GL_CURRENT_VERTEX_ATTRIB_ARB 0x8626
1507 #define GL_VERTEX_ATTRIB_ARRAY_POINTER_ARB 0x8645
1508 #define GL_PROGRAM_LENGTH_ARB 0x8627
1509 #define GL_PROGRAM_FORMAT_ARB 0x8876
1510 #define GL_PROGRAM_BINDING_ARB 0x8677
1511 #define GL_PROGRAM_INSTRUCTIONS_ARB 0x88A0
1512 #define GL_MAX_PROGRAM_INSTRUCTIONS_ARB 0x88A1
1513 #define GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB 0x88A2
1514 #define GL_MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB 0x88A3
1515 #define GL_PROGRAM_TEMPORARIES_ARB 0x88A4
1516 #define GL_MAX_PROGRAM_TEMPORARIES_ARB 0x88A5
1517 #define GL_PROGRAM_NATIVE_TEMPORARIES_ARB 0x88A6
1518 #define GL_MAX_PROGRAM_NATIVE_TEMPORARIES_ARB 0x88A7
1519 #define GL_PROGRAM_PARAMETERS_ARB 0x88A8
1520 #define GL_MAX_PROGRAM_PARAMETERS_ARB 0x88A9
1521 #define GL_PROGRAM_NATIVE_PARAMETERS_ARB 0x88AA
1522 #define GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB 0x88AB
1523 #define GL_PROGRAM_ATTRIBS_ARB 0x88AC
1524 #define GL_MAX_PROGRAM_ATTRIBS_ARB 0x88AD
1525 #define GL_PROGRAM_NATIVE_ATTRIBS_ARB 0x88AE
1526 #define GL_MAX_PROGRAM_NATIVE_ATTRIBS_ARB 0x88AF
1527 #define GL_PROGRAM_ADDRESS_REGISTERS_ARB 0x88B0
1528 #define GL_MAX_PROGRAM_ADDRESS_REGISTERS_ARB 0x88B1
1529 #define GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB 0x88B2
1530 #define GL_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB 0x88B3
1531 #define GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB 0x88B4
1532 #define GL_MAX_PROGRAM_ENV_PARAMETERS_ARB 0x88B5
1533 #define GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB 0x88B6
1534 #define GL_PROGRAM_STRING_ARB 0x8628
1535 #define GL_PROGRAM_ERROR_POSITION_ARB 0x864B
1536 #define GL_CURRENT_MATRIX_ARB 0x8641
1537 #define GL_TRANSPOSE_CURRENT_MATRIX_ARB 0x88B7
1538 #define GL_CURRENT_MATRIX_STACK_DEPTH_ARB 0x8640
1539 #define GL_MAX_VERTEX_ATTRIBS_ARB 0x8869
1540 #define GL_MAX_PROGRAM_MATRICES_ARB 0x862F
1541 #define GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB 0x862E
1542 #define GL_PROGRAM_ERROR_STRING_ARB 0x8874
1543 #define GL_MATRIX0_ARB 0x88C0
1544 #define GL_MATRIX1_ARB 0x88C1
1545 #define GL_MATRIX2_ARB 0x88C2
1546 #define GL_MATRIX3_ARB 0x88C3
1547 #define GL_MATRIX4_ARB 0x88C4
1548 #define GL_MATRIX5_ARB 0x88C5
1549 #define GL_MATRIX6_ARB 0x88C6
1550 #define GL_MATRIX7_ARB 0x88C7
1551 #define GL_MATRIX8_ARB 0x88C8
1552 #define GL_MATRIX9_ARB 0x88C9
1553 #define GL_MATRIX10_ARB 0x88CA
1554 #define GL_MATRIX11_ARB 0x88CB
1555 #define GL_MATRIX12_ARB 0x88CC
1556 #define GL_MATRIX13_ARB 0x88CD
1557 #define GL_MATRIX14_ARB 0x88CE
1558 #define GL_MATRIX15_ARB 0x88CF
1559 #define GL_MATRIX16_ARB 0x88D0
1560 #define GL_MATRIX17_ARB 0x88D1
1561 #define GL_MATRIX18_ARB 0x88D2
1562 #define GL_MATRIX19_ARB 0x88D3
1563 #define GL_MATRIX20_ARB 0x88D4
1564 #define GL_MATRIX21_ARB 0x88D5
1565 #define GL_MATRIX22_ARB 0x88D6
1566 #define GL_MATRIX23_ARB 0x88D7
1567 #define GL_MATRIX24_ARB 0x88D8
1568 #define GL_MATRIX25_ARB 0x88D9
1569 #define GL_MATRIX26_ARB 0x88DA
1570 #define GL_MATRIX27_ARB 0x88DB
1571 #define GL_MATRIX28_ARB 0x88DC
1572 #define GL_MATRIX29_ARB 0x88DD
1573 #define GL_MATRIX30_ARB 0x88DE
1574 #define GL_MATRIX31_ARB 0x88DF
1575
1576 #define glVertexAttrib1sARB GlobalOpenGL().m_glVertexAttrib1sARB
1577 #define glVertexAttrib1fARB GlobalOpenGL().m_glVertexAttrib1fARB
1578 #define glVertexAttrib1dARB GlobalOpenGL().m_glVertexAttrib1dARB
1579 #define glVertexAttrib2sARB GlobalOpenGL().m_glVertexAttrib2sARB
1580 #define glVertexAttrib2fARB GlobalOpenGL().m_glVertexAttrib2fARB
1581 #define glVertexAttrib2dARB GlobalOpenGL().m_glVertexAttrib2dARB
1582 #define glVertexAttrib3sARB GlobalOpenGL().m_glVertexAttrib3sARB
1583 #define glVertexAttrib3fARB GlobalOpenGL().m_glVertexAttrib3fARB
1584 #define glVertexAttrib3dARB GlobalOpenGL().m_glVertexAttrib3dARB
1585 #define glVertexAttrib4sARB GlobalOpenGL().m_glVertexAttrib4sARB
1586 #define glVertexAttrib4fARB GlobalOpenGL().m_glVertexAttrib4fARB
1587 #define glVertexAttrib4dARB GlobalOpenGL().m_glVertexAttrib4dARB
1588 #define glVertexAttrib4NubARB GlobalOpenGL().m_glVertexAttrib4NubARB
1589 #define glVertexAttrib1svARB GlobalOpenGL().m_glVertexAttrib1svARB
1590 #define glVertexAttrib1fvARB GlobalOpenGL().m_glVertexAttrib1fvARB
1591 #define glVertexAttrib1dvARB GlobalOpenGL().m_glVertexAttrib1dvARB
1592 #define glVertexAttrib2svARB GlobalOpenGL().m_glVertexAttrib2svARB
1593 #define glVertexAttrib2fvARB GlobalOpenGL().m_glVertexAttrib2fvARB
1594 #define glVertexAttrib2dvARB GlobalOpenGL().m_glVertexAttrib2dvARB
1595 #define glVertexAttrib3svARB GlobalOpenGL().m_glVertexAttrib3svARB
1596 #define glVertexAttrib3fvARB GlobalOpenGL().m_glVertexAttrib3fvARB
1597 #define glVertexAttrib3dvARB GlobalOpenGL().m_glVertexAttrib3dvARB
1598 #define glVertexAttrib4bvARB GlobalOpenGL().m_glVertexAttrib4bvARB
1599 #define glVertexAttrib4svARB GlobalOpenGL().m_glVertexAttrib4svARB
1600 #define glVertexAttrib4ivARB GlobalOpenGL().m_glVertexAttrib4ivARB
1601 #define glVertexAttrib4ubvARB GlobalOpenGL().m_glVertexAttrib4ubvARB
1602 #define glVertexAttrib4usvARB GlobalOpenGL().m_glVertexAttrib4usvARB
1603 #define glVertexAttrib4uivARB GlobalOpenGL().m_glVertexAttrib4uivARB
1604 #define glVertexAttrib4fvARB GlobalOpenGL().m_glVertexAttrib4fvARB
1605 #define glVertexAttrib4dvARB GlobalOpenGL().m_glVertexAttrib4dvARB
1606 #define glVertexAttrib4NbvARB GlobalOpenGL().m_glVertexAttrib4NbvARB
1607 #define glVertexAttrib4NsvARB GlobalOpenGL().m_glVertexAttrib4NsvARB
1608 #define glVertexAttrib4NivARB GlobalOpenGL().m_glVertexAttrib4NivARB
1609 #define glVertexAttrib4NubvARB GlobalOpenGL().m_glVertexAttrib4NubvARB
1610 #define glVertexAttrib4NusvARB GlobalOpenGL().m_glVertexAttrib4NusvARB
1611 #define glVertexAttrib4NuivARB GlobalOpenGL().m_glVertexAttrib4NuivARB
1612 #define glVertexAttribPointerARB GlobalOpenGL().m_glVertexAttribPointerARB
1613 #define glEnableVertexAttribArrayARB GlobalOpenGL().m_glEnableVertexAttribArrayARB
1614 #define glDisableVertexAttribArrayARB GlobalOpenGL().m_glDisableVertexAttribArrayARB
1615 #define glProgramStringARB GlobalOpenGL().m_glProgramStringARB
1616 #define glBindProgramARB GlobalOpenGL().m_glBindProgramARB
1617 #define glDeleteProgramsARB GlobalOpenGL().m_glDeleteProgramsARB
1618 #define glGenProgramsARB GlobalOpenGL().m_glGenProgramsARB
1619 #define glProgramEnvParameter4dARB GlobalOpenGL().m_glProgramEnvParameter4dARB
1620 #define glProgramEnvParameter4dvARB GlobalOpenGL().m_glProgramEnvParameter4dvARB
1621 #define glProgramEnvParameter4fARB GlobalOpenGL().m_glProgramEnvParameter4fARB
1622 #define glProgramEnvParameter4fvARB GlobalOpenGL().m_glProgramEnvParameter4fvARB
1623 #define glProgramLocalParameter4dARB GlobalOpenGL().m_glProgramLocalParameter4dARB
1624 #define glProgramLocalParameter4dvARB GlobalOpenGL().m_glProgramLocalParameter4dvARB
1625 #define glProgramLocalParameter4fARB GlobalOpenGL().m_glProgramLocalParameter4fARB
1626 #define glProgramLocalParameter4fvARB GlobalOpenGL().m_glProgramLocalParameter4fvARB
1627 #define glGetProgramEnvParameterdvARB GlobalOpenGL().m_glGetProgramEnvParameterdvARB
1628 #define glGetProgramEnvParameterfvARB GlobalOpenGL().m_glGetProgramEnvParameterfvARB
1629 #define glGetProgramLocalParameterdvARB GlobalOpenGL().m_glGetProgramLocalParameterdvARB
1630 #define glGetProgramLocalParameterfvARB GlobalOpenGL().m_glGetProgramLocalParameterfvARB
1631 #define glGetProgramivARB GlobalOpenGL().m_glGetProgramivARB
1632 #define glGetProgramStringARB GlobalOpenGL().m_glGetProgramStringARB
1633 #define glGetVertexAttribdvARB GlobalOpenGL().m_glGetVertexAttribdvARB
1634 #define glGetVertexAttribfvARB GlobalOpenGL().m_glGetVertexAttribfvARB
1635 #define glGetVertexAttribivARB GlobalOpenGL().m_glGetVertexAttribivARB
1636 #define glGetVertexAttribPointervARB GlobalOpenGL().m_glGetVertexAttribPointervARB
1637 #define glIsProgramARB GlobalOpenGL().m_glIsProgramARB
1638
1639 #endif
1640
1641
1642 // GL_ARB_fragment_program
1643 #if !defined(GL_ARB_fragment_program)
1644 #define GL_ARB_fragment_program 1
1645
1646 #define GL_FRAGMENT_PROGRAM_ARB 0x8804
1647 #define GL_PROGRAM_ALU_INSTRUCTIONS_ARB 0x8805
1648 #define GL_PROGRAM_TEX_INSTRUCTIONS_ARB 0x8806
1649 #define GL_PROGRAM_TEX_INDIRECTIONS_ARB 0x8807
1650 #define GL_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB 0x8808
1651 #define GL_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB 0x8809
1652 #define GL_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB 0x880A
1653 #define GL_MAX_PROGRAM_ALU_INSTRUCTIONS_ARB 0x880B
1654 #define GL_MAX_PROGRAM_TEX_INSTRUCTIONS_ARB 0x880C
1655 #define GL_MAX_PROGRAM_TEX_INDIRECTIONS_ARB 0x880D
1656 #define GL_MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB 0x880E
1657 #define GL_MAX_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB 0x880F
1658 #define GL_MAX_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB 0x8810
1659 #define GL_MAX_TEXTURE_COORDS_ARB 0x8871
1660 #define GL_MAX_TEXTURE_IMAGE_UNITS_ARB 0x8872
1661
1662 #endif
1663
1664
1665 // GL_ARB_shader_objects
1666 #if !defined(GL_ARB_shader_objects)
1667 #define GL_ARB_shader_objects 1
1668
1669 #define GL_PROGRAM_OBJECT_ARB 0x8B40
1670 #define GL_SHADER_OBJECT_ARB 0x8B48
1671 #define GL_OBJECT_TYPE_ARB 0x8B4E
1672 #define GL_OBJECT_SUBTYPE_ARB 0x8B4F
1673 #define GL_FLOAT_VEC2_ARB 0x8B50
1674 #define GL_FLOAT_VEC3_ARB 0x8B51
1675 #define GL_FLOAT_VEC4_ARB 0x8B52
1676 #define GL_INT_VEC2_ARB 0x8B53
1677 #define GL_INT_VEC3_ARB 0x8B54
1678 #define GL_INT_VEC4_ARB 0x8B55
1679 #define GL_BOOL_ARB 0x8B56
1680 #define GL_BOOL_VEC2_ARB 0x8B57
1681 #define GL_BOOL_VEC3_ARB 0x8B58
1682 #define GL_BOOL_VEC4_ARB 0x8B59
1683 #define GL_FLOAT_MAT2_ARB 0x8B5A
1684 #define GL_FLOAT_MAT3_ARB 0x8B5B
1685 #define GL_FLOAT_MAT4_ARB 0x8B5C
1686 #define GL_SAMPLER_1D_ARB 0x8B5D
1687 #define GL_SAMPLER_2D_ARB 0x8B5E
1688 #define GL_SAMPLER_3D_ARB 0x8B5F
1689 #define GL_SAMPLER_CUBE_ARB 0x8B60
1690 #define GL_SAMPLER_1D_SHADOW_ARB 0x8B61
1691 #define GL_SAMPLER_2D_SHADOW_ARB 0x8B62
1692 #define GL_SAMPLER_2D_RECT_ARB 0x8B63
1693 #define GL_SAMPLER_2D_RECT_SHADOW_ARB 0x8B64
1694 #define GL_OBJECT_DELETE_STATUS_ARB 0x8B80
1695 #define GL_OBJECT_COMPILE_STATUS_ARB 0x8B81
1696 #define GL_OBJECT_LINK_STATUS_ARB 0x8B82
1697 #define GL_OBJECT_VALIDATE_STATUS_ARB 0x8B83
1698 #define GL_OBJECT_INFO_LOG_LENGTH_ARB 0x8B84
1699 #define GL_OBJECT_ATTACHED_OBJECTS_ARB 0x8B85
1700 #define GL_OBJECT_ACTIVE_UNIFORMS_ARB 0x8B86
1701 #define GL_OBJECT_ACTIVE_UNIFORM_MAX_LENGTH_ARB 0x8B87
1702 #define GL_OBJECT_SHADER_SOURCE_LENGTH_ARB 0x8B88
1703
1704 #define glDeleteObjectARB GlobalOpenGL().m_glDeleteObjectARB
1705 #define glGetHandleARB GlobalOpenGL().m_glGetHandleARB
1706 #define glDetachObjectARB GlobalOpenGL().m_glDetachObjectARB
1707 #define glCreateShaderObjectARB GlobalOpenGL().m_glCreateShaderObjectARB
1708 #define glShaderSourceARB GlobalOpenGL().m_glShaderSourceARB
1709 #define glCompileShaderARB GlobalOpenGL().m_glCompileShaderARB
1710 #define glCreateProgramObjectARB GlobalOpenGL().m_glCreateProgramObjectARB
1711 #define glAttachObjectARB GlobalOpenGL().m_glAttachObjectARB
1712 #define glLinkProgramARB GlobalOpenGL().m_glLinkProgramARB
1713 #define glUseProgramObjectARB GlobalOpenGL().m_glUseProgramObjectARB
1714 #define glValidateProgramARB GlobalOpenGL().m_glValidateProgramARB
1715 #define glUniform1fARB GlobalOpenGL().m_glUniform1fARB
1716 #define glUniform2fARB GlobalOpenGL().m_glUniform2fARB
1717 #define glUniform3fARB GlobalOpenGL().m_glUniform3fARB
1718 #define glUniform4fARB GlobalOpenGL().m_glUniform4fARB
1719 #define glUniform1iARB GlobalOpenGL().m_glUniform1iARB
1720 #define glUniform2iARB GlobalOpenGL().m_glUniform2iARB
1721 #define glUniform3iARB GlobalOpenGL().m_glUniform3iARB
1722 #define glUniform4iARB GlobalOpenGL().m_glUniform4iARB
1723 #define glUniform1fvARB GlobalOpenGL().m_glUniform1fvARB
1724 #define glUniform2fvARB GlobalOpenGL().m_glUniform2fvARB
1725 #define glUniform3fvARB GlobalOpenGL().m_glUniform3fvARB
1726 #define glUniform4fvARB GlobalOpenGL().m_glUniform4fvARB
1727 #define glUniform1ivARB GlobalOpenGL().m_glUniform1ivARB
1728 #define glUniform2ivARB GlobalOpenGL().m_glUniform2ivARB
1729 #define glUniform3ivARB GlobalOpenGL().m_glUniform3ivARB
1730 #define glUniform4ivARB GlobalOpenGL().m_glUniform4ivARB
1731 #define glUniformMatrix2fvARB GlobalOpenGL().m_glUniformMatrix2fvARB
1732 #define glUniformMatrix3fvARB GlobalOpenGL().m_glUniformMatrix3fvARB
1733 #define glUniformMatrix4fvARB GlobalOpenGL().m_glUniformMatrix4fvARB
1734 #define glGetObjectParameterfvARB GlobalOpenGL().m_glGetObjectParameterfvARB
1735 #define glGetObjectParameterivARB GlobalOpenGL().m_glGetObjectParameterivARB
1736 #define glGetInfoLogARB GlobalOpenGL().m_glGetInfoLogARB
1737 #define glGetAttachedObjectsARB GlobalOpenGL().m_glGetAttachedObjectsARB
1738 #define glGetUniformLocationARB GlobalOpenGL().m_glGetUniformLocationARB
1739 #define glGetActiveUniformARB GlobalOpenGL().m_glGetActiveUniformARB
1740 #define glGetUniformfvARB GlobalOpenGL().m_glGetUniformfvARB
1741 #define glGetUniformivARB GlobalOpenGL().m_glGetUniformivARB
1742 #define glGetShaderSourceARB GlobalOpenGL().m_glGetShaderSourceARB
1743
1744 typedef char GLcharARB;
1745 typedef unsigned int GLhandleARB;
1746
1747 #endif
1748
1749 // GL_ARB_vertex_shader
1750 #if !defined(GL_ARB_vertex_shader)
1751 #define GL_ARB_vertex_shader 1
1752
1753 #define GL_VERTEX_SHADER_ARB 0x8B31
1754 #define GL_MAX_VERTEX_UNIFORM_COMPONENTS_ARB 0x8B4A
1755 #define GL_MAX_VARYING_FLOATS_ARB 0x8B4B
1756 #define GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS_ARB 0x8B4C
1757 #define GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS_ARB 0x8B4D
1758 #define GL_OBJECT_ACTIVE_ATTRIBUTES_ARB 0x8B89
1759 #define GL_OBJECT_ACTIVE_ATTRIBUTE_MAX_LENGTH_ARB 0x8B8A
1760
1761 #if 0
1762 #define glVertexAttrib1fARB GlobalOpenGL().m_glVertexAttrib1fARB
1763 #define glVertexAttrib1sARB GlobalOpenGL().m_glVertexAttrib1sARB
1764 #define glVertexAttrib1dARB GlobalOpenGL().m_glVertexAttrib1dARB
1765 #define glVertexAttrib2fARB GlobalOpenGL().m_glVertexAttrib2fARB
1766 #define glVertexAttrib2sARB GlobalOpenGL().m_glVertexAttrib2sARB
1767 #define glVertexAttrib2dARB GlobalOpenGL().m_glVertexAttrib2dARB
1768 #define glVertexAttrib3fARB GlobalOpenGL().m_glVertexAttrib3fARB
1769 #define glVertexAttrib3sARB GlobalOpenGL().m_glVertexAttrib3sARB
1770 #define glVertexAttrib3dARB GlobalOpenGL().m_glVertexAttrib3dARB
1771 #define glVertexAttrib4fARB GlobalOpenGL().m_glVertexAttrib4fARB
1772 #define glVertexAttrib4sARB GlobalOpenGL().m_glVertexAttrib4sARB
1773 #define glVertexAttrib4dARB GlobalOpenGL().m_glVertexAttrib4dARB
1774 #define glVertexAttrib4NubARB GlobalOpenGL().m_glVertexAttrib4NubARB
1775 #define glVertexAttrib1fvARB GlobalOpenGL().m_glVertexAttrib1fvARB
1776 #define glVertexAttrib1svARB GlobalOpenGL().m_glVertexAttrib1svARB
1777 #define glVertexAttrib1dvARB GlobalOpenGL().m_glVertexAttrib1dvARB
1778 #define glVertexAttrib2fvARB GlobalOpenGL().m_glVertexAttrib2fvARB
1779 #define glVertexAttrib2svARB GlobalOpenGL().m_glVertexAttrib2svARB
1780 #define glVertexAttrib2dvARB GlobalOpenGL().m_glVertexAttrib2dvARB
1781 #define glVertexAttrib3fvARB GlobalOpenGL().m_glVertexAttrib3fvARB
1782 #define glVertexAttrib3svARB GlobalOpenGL().m_glVertexAttrib3svARB
1783 #define glVertexAttrib3dvARB GlobalOpenGL().m_glVertexAttrib3dvARB
1784 #define glVertexAttrib4fvARB GlobalOpenGL().m_glVertexAttrib4fvARB
1785 #define glVertexAttrib4svARB GlobalOpenGL().m_glVertexAttrib4svARB
1786 #define glVertexAttrib4dvARB GlobalOpenGL().m_glVertexAttrib4dvARB
1787 #define glVertexAttrib4ivARB GlobalOpenGL().m_glVertexAttrib4ivARB
1788 #define glVertexAttrib4bvARB GlobalOpenGL().m_glVertexAttrib4bvARB
1789 #define glVertexAttrib4ubvARB GlobalOpenGL().m_glVertexAttrib4ubvARB
1790 #define glVertexAttrib4usvARB GlobalOpenGL().m_glVertexAttrib4usvARB
1791 #define glVertexAttrib4uivARB GlobalOpenGL().m_glVertexAttrib4uivARB
1792 #define glVertexAttrib4NbvARB GlobalOpenGL().m_glVertexAttrib4NbvARB
1793 #define glVertexAttrib4NsvARB GlobalOpenGL().m_glVertexAttrib4NsvARB
1794 #define glVertexAttrib4NivARB GlobalOpenGL().m_glVertexAttrib4NivARB
1795 #define glVertexAttrib4NubvARB GlobalOpenGL().m_glVertexAttrib4NubvARB
1796 #define glVertexAttrib4NusvARB GlobalOpenGL().m_glVertexAttrib4NusvARB
1797 #define glVertexAttrib4NuivARB GlobalOpenGL().m_glVertexAttrib4NuivARB
1798 #define glVertexAttribPointerARB GlobalOpenGL().m_glVertexAttribPointerARB
1799 #define glEnableVertexAttribArrayARB GlobalOpenGL().m_glEnableVertexAttribArrayARB
1800 #define glDisableVertexAttribArrayARB GlobalOpenGL().m_glDisableVertexAttribArrayARB
1801 #endif
1802 #define glBindAttribLocationARB GlobalOpenGL().m_glBindAttribLocationARB
1803 #define glGetActiveAttribARB GlobalOpenGL().m_glGetActiveAttribARB
1804 #define glGetAttribLocationARB GlobalOpenGL().m_glGetAttribLocationARB
1805 #if 0
1806 #define glGetVertexAttribdvARB GlobalOpenGL().m_glGetVertexAttribdvARB
1807 #define glGetVertexAttribfvARB GlobalOpenGL().m_glGetVertexAttribfvARB
1808 #define glGetVertexAttribivARB GlobalOpenGL().m_glGetVertexAttribivARB
1809 #define glGetVertexAttribPointervARB GlobalOpenGL().m_glGetVertexAttribPointervARB
1810 #endif
1811 #endif
1812
1813
1814
1815 // GL_ARB_fragment_shader
1816 #if !defined(GL_ARB_fragment_shader)
1817 #define GL_ARB_fragment_shader 1
1818
1819 #define GL_FRAGMENT_SHADER_ARB 0x8B30
1820 #define GL_MAX_FRAGMENT_UNIFORM_COMPONENTS_ARB 0x8B49
1821 #define GL_FRAGMENT_SHADER_DERIVATIVE_HINT_ARB 0x8B8B
1822
1823 #endif
1824
1825
1826 // GL_ARB_shading_language_100
1827 #if !defined(GL_ARB_shading_language_100)
1828 #define GL_ARB_shading_language_100 1
1829
1830 #define GL_SHADING_LANGUAGE_VERSION_ARB 0x8B8C
1831
1832 #endif
1833
1834
1835 // GL_NV_vertex_program2
1836 #if !defined(GL_NV_vertex_program)
1837 #define GL_NV_vertex_program 1
1838
1839 #define GL_VERTEX_PROGRAM_NV 0x8620
1840 #define GL_VERTEX_STATE_PROGRAM_NV 0x8621
1841 #define GL_ATTRIB_ARRAY_SIZE_NV 0x8623
1842 #define GL_ATTRIB_ARRAY_STRIDE_NV 0x8624
1843 #define GL_ATTRIB_ARRAY_TYPE_NV 0x8625
1844 #define GL_CURRENT_ATTRIB_NV 0x8626
1845 #define GL_PROGRAM_LENGTH_NV 0x8627
1846 #define GL_PROGRAM_STRING_NV 0x8628
1847 #define GL_MODELVIEW_PROJECTION_NV 0x8629
1848 #define GL_IDENTITY_NV 0x862A
1849 #define GL_INVERSE_NV 0x862B
1850 #define GL_TRANSPOSE_NV 0x862C
1851 #define GL_INVERSE_TRANSPOSE_NV 0x862D
1852 #define GL_MAX_TRACK_MATRIX_STACK_DEPTH_NV 0x862E
1853 #define GL_MAX_TRACK_MATRICES_NV 0x862F
1854 #define GL_MATRIX0_NV 0x8630
1855 #define GL_MATRIX1_NV 0x8631
1856 #define GL_MATRIX2_NV 0x8632
1857 #define GL_MATRIX3_NV 0x8633
1858 #define GL_MATRIX4_NV 0x8634
1859 #define GL_MATRIX5_NV 0x8635
1860 #define GL_MATRIX6_NV 0x8636
1861 #define GL_MATRIX7_NV 0x8637
1862 #define GL_CURRENT_MATRIX_STACK_DEPTH_NV 0x8640
1863 #define GL_CURRENT_MATRIX_NV 0x8641
1864 #define GL_VERTEX_PROGRAM_POINT_SIZE_NV 0x8642
1865 #define GL_VERTEX_PROGRAM_TWO_SIDE_NV 0x8643
1866 #define GL_PROGRAM_PARAMETER_NV 0x8644
1867 #define GL_ATTRIB_ARRAY_POINTER_NV 0x8645
1868 #define GL_PROGRAM_TARGET_NV 0x8646
1869 #define GL_PROGRAM_RESIDENT_NV 0x8647
1870 #define GL_TRACK_MATRIX_NV 0x8648
1871 #define GL_TRACK_MATRIX_TRANSFORM_NV 0x8649
1872 #define GL_VERTEX_PROGRAM_BINDING_NV 0x864A
1873 #define GL_PROGRAM_ERROR_POSITION_NV 0x864B
1874 #define GL_VERTEX_ATTRIB_ARRAY0_NV 0x8650
1875 #define GL_VERTEX_ATTRIB_ARRAY1_NV 0x8651
1876 #define GL_VERTEX_ATTRIB_ARRAY2_NV 0x8652
1877 #define GL_VERTEX_ATTRIB_ARRAY3_NV 0x8653
1878 #define GL_VERTEX_ATTRIB_ARRAY4_NV 0x8654
1879 #define GL_VERTEX_ATTRIB_ARRAY5_NV 0x8655
1880 #define GL_VERTEX_ATTRIB_ARRAY6_NV 0x8656
1881 #define GL_VERTEX_ATTRIB_ARRAY7_NV 0x8657
1882 #define GL_VERTEX_ATTRIB_ARRAY8_NV 0x8658
1883 #define GL_VERTEX_ATTRIB_ARRAY9_NV 0x8659
1884 #define GL_VERTEX_ATTRIB_ARRAY10_NV 0x865A
1885 #define GL_VERTEX_ATTRIB_ARRAY11_NV 0x865B
1886 #define GL_VERTEX_ATTRIB_ARRAY12_NV 0x865C
1887 #define GL_VERTEX_ATTRIB_ARRAY13_NV 0x865D
1888 #define GL_VERTEX_ATTRIB_ARRAY14_NV 0x865E
1889 #define GL_VERTEX_ATTRIB_ARRAY15_NV 0x865F
1890 #define GL_MAP1_VERTEX_ATTRIB0_4_NV 0x8660
1891 #define GL_MAP1_VERTEX_ATTRIB1_4_NV 0x8661
1892 #define GL_MAP1_VERTEX_ATTRIB2_4_NV 0x8662
1893 #define GL_MAP1_VERTEX_ATTRIB3_4_NV 0x8663
1894 #define GL_MAP1_VERTEX_ATTRIB4_4_NV 0x8664
1895 #define GL_MAP1_VERTEX_ATTRIB5_4_NV 0x8665
1896 #define GL_MAP1_VERTEX_ATTRIB6_4_NV 0x8666
1897 #define GL_MAP1_VERTEX_ATTRIB7_4_NV 0x8667
1898 #define GL_MAP1_VERTEX_ATTRIB8_4_NV 0x8668
1899 #define GL_MAP1_VERTEX_ATTRIB9_4_NV 0x8669
1900 #define GL_MAP1_VERTEX_ATTRIB10_4_NV 0x866A
1901 #define GL_MAP1_VERTEX_ATTRIB11_4_NV 0x866B
1902 #define GL_MAP1_VERTEX_ATTRIB12_4_NV 0x866C
1903 #define GL_MAP1_VERTEX_ATTRIB13_4_NV 0x866D
1904 #define GL_MAP1_VERTEX_ATTRIB14_4_NV 0x866E
1905 #define GL_MAP1_VERTEX_ATTRIB15_4_NV 0x866F
1906 #define GL_MAP2_VERTEX_ATTRIB0_4_NV 0x8670
1907 #define GL_MAP2_VERTEX_ATTRIB1_4_NV 0x8671
1908 #define GL_MAP2_VERTEX_ATTRIB2_4_NV 0x8672
1909 #define GL_MAP2_VERTEX_ATTRIB3_4_NV 0x8673
1910 #define GL_MAP2_VERTEX_ATTRIB4_4_NV 0x8674
1911 #define GL_MAP2_VERTEX_ATTRIB5_4_NV 0x8675
1912 #define GL_MAP2_VERTEX_ATTRIB6_4_NV 0x8676
1913 #define GL_MAP2_VERTEX_ATTRIB7_4_NV 0x8677
1914 #define GL_MAP2_VERTEX_ATTRIB8_4_NV 0x8678
1915 #define GL_MAP2_VERTEX_ATTRIB9_4_NV 0x8679
1916 #define GL_MAP2_VERTEX_ATTRIB10_4_NV 0x867A
1917 #define GL_MAP2_VERTEX_ATTRIB11_4_NV 0x867B
1918 #define GL_MAP2_VERTEX_ATTRIB12_4_NV 0x867C
1919 #define GL_MAP2_VERTEX_ATTRIB13_4_NV 0x867D
1920 #define GL_MAP2_VERTEX_ATTRIB14_4_NV 0x867E
1921 #define GL_MAP2_VERTEX_ATTRIB15_4_NV 0x867F
1922
1923 #define glAreProgramsResidentNV GlobalOpenGL().m_glAreProgramsResidentNV
1924 #define glBindProgramNV GlobalOpenGL().m_glBindProgramNV
1925 #define glDeleteProgramsNV GlobalOpenGL().m_glDeleteProgramsNV
1926 #define glExecuteProgramNV GlobalOpenGL().m_glExecuteProgramNV
1927 #define glGenProgramsNV GlobalOpenGL().m_glGenProgramsNV
1928 #define glGetProgramParameterdvNV GlobalOpenGL().m_glGetProgramParameterdvNV
1929 #define glGetProgramParameterfvNV GlobalOpenGL().m_glGetProgramParameterfvNV
1930 #define glGetProgramivNV GlobalOpenGL().m_glGetProgramivNV
1931 #define glGetProgramStringNV GlobalOpenGL().m_glGetProgramStringNV
1932 #define glGetTrackMatrixivNV GlobalOpenGL().m_glGetTrackMatrixivNV
1933 #define glGetVertexAttribdvNV GlobalOpenGL().m_glGetVertexAttribdvNV
1934 #define glGetVertexAttribfvNV GlobalOpenGL().m_glGetVertexAttribfvNV
1935 #define glGetVertexAttribivNV GlobalOpenGL().m_glGetVertexAttribivNV
1936 #define glGetVertexAttribPointervNV GlobalOpenGL().m_glGetVertexAttribPointervNV
1937 #define glIsProgramNV GlobalOpenGL().m_glIsProgramNV
1938 #define glLoadProgramNV GlobalOpenGL().m_glLoadProgramNV
1939 #define glProgramParameter4fNV GlobalOpenGL().m_glProgramParameter4fNV
1940 #define glProgramParameter4fvNV GlobalOpenGL().m_glProgramParameter4fvNV
1941 #define glProgramParameters4fvNV GlobalOpenGL().m_glProgramParameters4fvNV
1942 #define glRequestResidentProgramsNV GlobalOpenGL().m_glRequestResidentProgramsNV
1943 #define glTrackMatrixNV GlobalOpenGL().m_glTrackMatrixNV
1944 #define glVertexAttribPointerNV GlobalOpenGL().m_glVertexAttribPointerNV
1945 #define glVertexAttrib1fNV GlobalOpenGL().m_glVertexAttrib1fNV
1946 #define glVertexAttrib1fvNV GlobalOpenGL().m_glVertexAttrib1fvNV
1947 #define glVertexAttrib2fNV GlobalOpenGL().m_glVertexAttrib2fNV
1948 #define glVertexAttrib2fvNV GlobalOpenGL().m_glVertexAttrib2fvNV
1949 #define glVertexAttrib3fNV GlobalOpenGL().m_glVertexAttrib3fNV
1950 #define glVertexAttrib3fvNV GlobalOpenGL().m_glVertexAttrib3fvNV
1951 #define glVertexAttrib4fNV GlobalOpenGL().m_glVertexAttrib4fNV
1952 #define glVertexAttrib4fvNV GlobalOpenGL().m_glVertexAttrib4fvNV
1953 #define glVertexAttribs1fvNV GlobalOpenGL().m_glVertexAttribs1fvNV
1954 #define glVertexAttribs2fvNV GlobalOpenGL().m_glVertexAttribs2fvNV
1955 #define glVertexAttribs3fvNV GlobalOpenGL().m_glVertexAttribs3fvNV
1956 #define glVertexAttribs4fvNV GlobalOpenGL().m_glVertexAttribs4fvNV
1957
1958 #endif
1959
1960
1961 // GL_NV_fragment_program
1962 #if !defined(GL_NV_fragment_program)
1963
1964 #define GL_NV_fragment_program 1
1965
1966 #define GL_MAX_FRAGMENT_PROGRAM_LOCAL_PARAMETERS_NV 0x8868
1967 #define GL_FRAGMENT_PROGRAM_NV 0x8870
1968 #define GL_MAX_TEXTURE_COORDS_NV 0x8871
1969 #define GL_MAX_TEXTURE_IMAGE_UNITS_NV 0x8872
1970 #define GL_FRAGMENT_PROGRAM_BINDING_NV 0x8873
1971 #define GL_PROGRAM_ERROR_STRING_NV 0x8874
1972
1973 #define glProgramNamedParameter4fNV GlobalOpenGL().m_glProgramNamedParameter4fNV
1974 #define glProgramNamedParameter4fvNV GlobalOpenGL().m_glProgramNamedParameter4fvNV
1975 #define glGetProgramNamedParameterfvNV GlobalOpenGL().m_glGetProgramNamedParameterfvNV
1976
1977 #endif
1978
1979
1980 /// \brief A module which wraps a runtime-binding of the standard OpenGL functions.
1981 /// Provides convenience functions for querying availabiliy of extensions, rendering text and error-checking.
1982 struct OpenGLBinding
1983 {
1984   INTEGER_CONSTANT(Version, 2);
1985   STRING_CONSTANT(Name, "qgl");
1986
1987   /// \brief OpenGL version, extracted from the GL_VERSION string.
1988   int major_version, minor_version;
1989
1990   /// \brief Is true if the global shared OpenGL context is valid.
1991   bool contextValid;
1992
1993   OpenGLBinding() : contextValid(false)
1994   {
1995   }
1996
1997   /// \brief Asserts that there no OpenGL errors have occurred since the last call to glGetError.
1998   void (*assertNoErrors)(const char *file, int line);
1999
2000   GLuint m_font;
2001   int m_fontHeight;
2002   int m_fontAscent;
2003   int m_fontDescent;
2004
2005   /// \brief Renders \p string at the current raster-position of the current context.
2006   void drawString(const char* string) const
2007   {
2008     m_glListBase(m_font);
2009     m_glCallLists(GLsizei(strlen(string)), GL_UNSIGNED_BYTE, reinterpret_cast<const GLubyte*>(string));
2010   }
2011
2012   /// \brief Renders \p character at the current raster-position of the current context.
2013   void drawChar(char character) const
2014   {
2015     m_glListBase(m_font);
2016     m_glCallLists(1, GL_UNSIGNED_BYTE, reinterpret_cast<const GLubyte*>(&character));
2017   }
2018
2019
2020   // GL 1.1
2021   void (QGL_DLLEXPORT *m_glAccum)(GLenum op, GLfloat value);
2022   void (QGL_DLLEXPORT *m_glAlphaFunc)(GLenum func, GLclampf ref);
2023   GLboolean (QGL_DLLEXPORT *m_glAreTexturesResident)(GLsizei n, const GLuint *textures, GLboolean *residences);
2024   void (QGL_DLLEXPORT *m_glArrayElement)(GLint i);
2025   void (QGL_DLLEXPORT *m_glBegin)(GLenum mode);
2026   void (QGL_DLLEXPORT *m_glBindTexture)(GLenum target, GLuint texture);
2027   void (QGL_DLLEXPORT *m_glBitmap)(GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte *bitmap);
2028   void (QGL_DLLEXPORT *m_glBlendFunc)(GLenum sfactor, GLenum dfactor);
2029   void (QGL_DLLEXPORT *m_glCallList)(GLuint list);
2030   void (QGL_DLLEXPORT *m_glCallLists)(GLsizei n, GLenum type, const GLvoid *lists);
2031   void (QGL_DLLEXPORT *m_glClear)(GLbitfield mask);
2032   void (QGL_DLLEXPORT *m_glClearAccum)(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
2033   void (QGL_DLLEXPORT *m_glClearColor)(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);
2034   void (QGL_DLLEXPORT *m_glClearDepth)(GLclampd depth);
2035   void (QGL_DLLEXPORT *m_glClearIndex)(GLfloat c);
2036   void (QGL_DLLEXPORT *m_glClearStencil)(GLint s);
2037   void (QGL_DLLEXPORT *m_glClipPlane)(GLenum plane, const GLdouble *equation);
2038   void (QGL_DLLEXPORT *m_glColor3b)(GLbyte red, GLbyte green, GLbyte blue);
2039   void (QGL_DLLEXPORT *m_glColor3bv)(const GLbyte *v);
2040   void (QGL_DLLEXPORT *m_glColor3d)(GLdouble red, GLdouble green, GLdouble blue);
2041   void (QGL_DLLEXPORT *m_glColor3dv)(const GLdouble *v);
2042   void (QGL_DLLEXPORT *m_glColor3f)(GLfloat red, GLfloat green, GLfloat blue);
2043   void (QGL_DLLEXPORT *m_glColor3fv)(const GLfloat *v);
2044   void (QGL_DLLEXPORT *m_glColor3i)(GLint red, GLint green, GLint blue);
2045   void (QGL_DLLEXPORT *m_glColor3iv)(const GLint *v);
2046   void (QGL_DLLEXPORT *m_glColor3s)(GLshort red, GLshort green, GLshort blue);
2047   void (QGL_DLLEXPORT *m_glColor3sv)(const GLshort *v);
2048   void (QGL_DLLEXPORT *m_glColor3ub)(GLubyte red, GLubyte green, GLubyte blue);
2049   void (QGL_DLLEXPORT *m_glColor3ubv)(const GLubyte *v);
2050   void (QGL_DLLEXPORT *m_glColor3ui)(GLuint red, GLuint green, GLuint blue);
2051   void (QGL_DLLEXPORT *m_glColor3uiv)(const GLuint *v);
2052   void (QGL_DLLEXPORT *m_glColor3us)(GLushort red, GLushort green, GLushort blue);
2053   void (QGL_DLLEXPORT *m_glColor3usv)(const GLushort *v);
2054   void (QGL_DLLEXPORT *m_glColor4b)(GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha);
2055   void (QGL_DLLEXPORT *m_glColor4bv)(const GLbyte *v);
2056   void (QGL_DLLEXPORT *m_glColor4d)(GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha);
2057   void (QGL_DLLEXPORT *m_glColor4dv)(const GLdouble *v);
2058   void (QGL_DLLEXPORT *m_glColor4f)(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
2059   void (QGL_DLLEXPORT *m_glColor4fv)(const GLfloat *v);
2060   void (QGL_DLLEXPORT *m_glColor4i)(GLint red, GLint green, GLint blue, GLint alpha);
2061   void (QGL_DLLEXPORT *m_glColor4iv)(const GLint *v);
2062   void (QGL_DLLEXPORT *m_glColor4s)(GLshort red, GLshort green, GLshort blue, GLshort alpha);
2063   void (QGL_DLLEXPORT *m_glColor4sv)(const GLshort *v);
2064   void (QGL_DLLEXPORT *m_glColor4ub)(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha);
2065   void (QGL_DLLEXPORT *m_glColor4ubv)(const GLubyte *v);
2066   void (QGL_DLLEXPORT *m_glColor4ui)(GLuint red, GLuint green, GLuint blue, GLuint alpha);
2067   void (QGL_DLLEXPORT *m_glColor4uiv)(const GLuint *v);
2068   void (QGL_DLLEXPORT *m_glColor4us)(GLushort red, GLushort green, GLushort blue, GLushort alpha);
2069   void (QGL_DLLEXPORT *m_glColor4usv)(const GLushort *v);
2070   void (QGL_DLLEXPORT *m_glColorMask)(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
2071   void (QGL_DLLEXPORT *m_glColorMaterial)(GLenum face, GLenum mode);
2072   void (QGL_DLLEXPORT *m_glColorPointer)(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
2073   void (QGL_DLLEXPORT *m_glCopyPixels)(GLint x, GLint y, GLsizei width, GLsizei height, GLenum type);
2074   void (QGL_DLLEXPORT *m_glCopyTexImage1D)(GLenum target, GLint level, GLenum internalFormat, GLint x, GLint y, GLsizei width, GLint border);
2075   void (QGL_DLLEXPORT *m_glCopyTexImage2D)(GLenum target, GLint level, GLenum internalFormat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
2076   void (QGL_DLLEXPORT *m_glCopyTexSubImage1D)(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
2077   void (QGL_DLLEXPORT *m_glCopyTexSubImage2D)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
2078   void (QGL_DLLEXPORT *m_glCullFace)(GLenum mode);
2079   void (QGL_DLLEXPORT *m_glDeleteLists)(GLuint list, GLsizei range);
2080   void (QGL_DLLEXPORT *m_glDeleteTextures)(GLsizei n, const GLuint *textures);
2081   void (QGL_DLLEXPORT *m_glDepthFunc)(GLenum func);
2082   void (QGL_DLLEXPORT *m_glDepthMask)(GLboolean flag);
2083   void (QGL_DLLEXPORT *m_glDepthRange)(GLclampd zNear, GLclampd zFar);
2084   void (QGL_DLLEXPORT *m_glDisable)(GLenum cap);
2085   void (QGL_DLLEXPORT *m_glDisableClientState)(GLenum array);
2086   void (QGL_DLLEXPORT *m_glDrawArrays)(GLenum mode, GLint first, GLsizei count);
2087   void (QGL_DLLEXPORT *m_glDrawBuffer)(GLenum mode);
2088   void (QGL_DLLEXPORT *m_glDrawElements)(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices);
2089   void (QGL_DLLEXPORT *m_glDrawPixels)(GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
2090   void (QGL_DLLEXPORT *m_glEdgeFlag)(GLboolean flag);
2091   void (QGL_DLLEXPORT *m_glEdgeFlagPointer)(GLsizei stride, const GLvoid *pointer);
2092   void (QGL_DLLEXPORT *m_glEdgeFlagv)(const GLboolean *flag);
2093   void (QGL_DLLEXPORT *m_glEnable)(GLenum cap);
2094   void (QGL_DLLEXPORT *m_glEnableClientState)(GLenum array);
2095   void (QGL_DLLEXPORT *m_glEnd)(void);
2096   void (QGL_DLLEXPORT *m_glEndList)(void);
2097   void (QGL_DLLEXPORT *m_glEvalCoord1d)(GLdouble u);
2098   void (QGL_DLLEXPORT *m_glEvalCoord1dv)(const GLdouble *u);
2099   void (QGL_DLLEXPORT *m_glEvalCoord1f)(GLfloat u);
2100   void (QGL_DLLEXPORT *m_glEvalCoord1fv)(const GLfloat *u);
2101   void (QGL_DLLEXPORT *m_glEvalCoord2d)(GLdouble u, GLdouble v);
2102   void (QGL_DLLEXPORT *m_glEvalCoord2dv)(const GLdouble *u);
2103   void (QGL_DLLEXPORT *m_glEvalCoord2f)(GLfloat u, GLfloat v);
2104   void (QGL_DLLEXPORT *m_glEvalCoord2fv)(const GLfloat *u);
2105   void (QGL_DLLEXPORT *m_glEvalMesh1)(GLenum mode, GLint i1, GLint i2);
2106   void (QGL_DLLEXPORT *m_glEvalMesh2)(GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2);
2107   void (QGL_DLLEXPORT *m_glEvalPoint1)(GLint i);
2108   void (QGL_DLLEXPORT *m_glEvalPoint2)(GLint i, GLint j);
2109   void (QGL_DLLEXPORT *m_glFeedbackBuffer)(GLsizei size, GLenum type, GLfloat *buffer);
2110   void (QGL_DLLEXPORT *m_glFinish)(void);
2111   void (QGL_DLLEXPORT *m_glFlush)(void);
2112   void (QGL_DLLEXPORT *m_glFogf)(GLenum pname, GLfloat param);
2113   void (QGL_DLLEXPORT *m_glFogfv)(GLenum pname, const GLfloat *params);
2114   void (QGL_DLLEXPORT *m_glFogi)(GLenum pname, GLint param);
2115   void (QGL_DLLEXPORT *m_glFogiv)(GLenum pname, const GLint *params);
2116   void (QGL_DLLEXPORT *m_glFrontFace)(GLenum mode);
2117   void (QGL_DLLEXPORT *m_glFrustum)(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
2118   GLuint (QGL_DLLEXPORT *m_glGenLists)(GLsizei range);
2119   void (QGL_DLLEXPORT *m_glGenTextures)(GLsizei n, GLuint *textures);
2120   void (QGL_DLLEXPORT *m_glGetBooleanv)(GLenum pname, GLboolean *params);
2121   void (QGL_DLLEXPORT *m_glGetClipPlane)(GLenum plane, GLdouble *equation);
2122   void (QGL_DLLEXPORT *m_glGetDoublev)(GLenum pname, GLdouble *params);
2123   GLenum (QGL_DLLEXPORT *m_glGetError)(void);
2124   void (QGL_DLLEXPORT *m_glGetFloatv)(GLenum pname, GLfloat *params);
2125   void (QGL_DLLEXPORT *m_glGetIntegerv)(GLenum pname, GLint *params);
2126   void (QGL_DLLEXPORT *m_glGetLightfv)(GLenum light, GLenum pname, GLfloat *params);
2127   void (QGL_DLLEXPORT *m_glGetLightiv)(GLenum light, GLenum pname, GLint *params);
2128   void (QGL_DLLEXPORT *m_glGetMapdv)(GLenum target, GLenum query, GLdouble *v);
2129   void (QGL_DLLEXPORT *m_glGetMapfv)(GLenum target, GLenum query, GLfloat *v);
2130   void (QGL_DLLEXPORT *m_glGetMapiv)(GLenum target, GLenum query, GLint *v);
2131   void (QGL_DLLEXPORT *m_glGetMaterialfv)(GLenum face, GLenum pname, GLfloat *params);
2132   void (QGL_DLLEXPORT *m_glGetMaterialiv)(GLenum face, GLenum pname, GLint *params);
2133   void (QGL_DLLEXPORT *m_glGetPixelMapfv)(GLenum map, GLfloat *values);
2134   void (QGL_DLLEXPORT *m_glGetPixelMapuiv)(GLenum map, GLuint *values);
2135   void (QGL_DLLEXPORT *m_glGetPixelMapusv)(GLenum map, GLushort *values);
2136   void (QGL_DLLEXPORT *m_glGetPointerv)(GLenum pname, GLvoid* *params);
2137   void (QGL_DLLEXPORT *m_glGetPolygonStipple)(GLubyte *mask);
2138   const GLubyte * (QGL_DLLEXPORT *m_glGetString)(GLenum name);
2139   void (QGL_DLLEXPORT *m_glGetTexEnvfv)(GLenum target, GLenum pname, GLfloat *params);
2140   void (QGL_DLLEXPORT *m_glGetTexEnviv)(GLenum target, GLenum pname, GLint *params);
2141   void (QGL_DLLEXPORT *m_glGetTexGendv)(GLenum coord, GLenum pname, GLdouble *params);
2142   void (QGL_DLLEXPORT *m_glGetTexGenfv)(GLenum coord, GLenum pname, GLfloat *params);
2143   void (QGL_DLLEXPORT *m_glGetTexGeniv)(GLenum coord, GLenum pname, GLint *params);
2144   void (QGL_DLLEXPORT *m_glGetTexImage)(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels);
2145   void (QGL_DLLEXPORT *m_glGetTexLevelParameterfv)(GLenum target, GLint level, GLenum pname, GLfloat *params);
2146   void (QGL_DLLEXPORT *m_glGetTexLevelParameteriv)(GLenum target, GLint level, GLenum pname, GLint *params);
2147   void (QGL_DLLEXPORT *m_glGetTexParameterfv)(GLenum target, GLenum pname, GLfloat *params);
2148   void (QGL_DLLEXPORT *m_glGetTexParameteriv)(GLenum target, GLenum pname, GLint *params);
2149   void (QGL_DLLEXPORT *m_glHint)(GLenum target, GLenum mode);
2150   void (QGL_DLLEXPORT *m_glIndexMask)(GLuint mask);
2151   void (QGL_DLLEXPORT *m_glIndexPointer)(GLenum type, GLsizei stride, const GLvoid *pointer);
2152   void (QGL_DLLEXPORT *m_glIndexd)(GLdouble c);
2153   void (QGL_DLLEXPORT *m_glIndexdv)(const GLdouble *c);
2154   void (QGL_DLLEXPORT *m_glIndexf)(GLfloat c);
2155   void (QGL_DLLEXPORT *m_glIndexfv)(const GLfloat *c);
2156   void (QGL_DLLEXPORT *m_glIndexi)(GLint c);
2157   void (QGL_DLLEXPORT *m_glIndexiv)(const GLint *c);
2158   void (QGL_DLLEXPORT *m_glIndexs)(GLshort c);
2159   void (QGL_DLLEXPORT *m_glIndexsv)(const GLshort *c);
2160   void (QGL_DLLEXPORT *m_glIndexub)(GLubyte c);
2161   void (QGL_DLLEXPORT *m_glIndexubv)(const GLubyte *c);
2162   void (QGL_DLLEXPORT *m_glInitNames)(void);
2163   void (QGL_DLLEXPORT *m_glInterleavedArrays)(GLenum format, GLsizei stride, const GLvoid *pointer);
2164   GLboolean (QGL_DLLEXPORT *m_glIsEnabled)(GLenum cap);
2165   GLboolean (QGL_DLLEXPORT *m_glIsList)(GLuint list);
2166   GLboolean (QGL_DLLEXPORT *m_glIsTexture)(GLuint texture);
2167   void (QGL_DLLEXPORT *m_glLightModelf)(GLenum pname, GLfloat param);
2168   void (QGL_DLLEXPORT *m_glLightModelfv)(GLenum pname, const GLfloat *params);
2169   void (QGL_DLLEXPORT *m_glLightModeli)(GLenum pname, GLint param);
2170   void (QGL_DLLEXPORT *m_glLightModeliv)(GLenum pname, const GLint *params);
2171   void (QGL_DLLEXPORT *m_glLightf)(GLenum light, GLenum pname, GLfloat param);
2172   void (QGL_DLLEXPORT *m_glLightfv)(GLenum light, GLenum pname, const GLfloat *params);
2173   void (QGL_DLLEXPORT *m_glLighti)(GLenum light, GLenum pname, GLint param);
2174   void (QGL_DLLEXPORT *m_glLightiv)(GLenum light, GLenum pname, const GLint *params);
2175   void (QGL_DLLEXPORT *m_glLineStipple)(GLint factor, GLushort pattern);
2176   void (QGL_DLLEXPORT *m_glLineWidth)(GLfloat width);
2177   void (QGL_DLLEXPORT *m_glListBase)(GLuint base);
2178   void (QGL_DLLEXPORT *m_glLoadIdentity)(void);
2179   void (QGL_DLLEXPORT *m_glLoadMatrixd)(const GLdouble *m);
2180   void (QGL_DLLEXPORT *m_glLoadMatrixf)(const GLfloat *m);
2181   void (QGL_DLLEXPORT *m_glLoadName)(GLuint name);
2182   void (QGL_DLLEXPORT *m_glLogicOp)(GLenum opcode);
2183   void (QGL_DLLEXPORT *m_glMap1d)(GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble *points);
2184   void (QGL_DLLEXPORT *m_glMap1f)(GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points);
2185   void (QGL_DLLEXPORT *m_glMap2d)(GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble *points);
2186   void (QGL_DLLEXPORT *m_glMap2f)(GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat *points);
2187   void (QGL_DLLEXPORT *m_glMapGrid1d)(GLint un, GLdouble u1, GLdouble u2);
2188   void (QGL_DLLEXPORT *m_glMapGrid1f)(GLint un, GLfloat u1, GLfloat u2);
2189   void (QGL_DLLEXPORT *m_glMapGrid2d)(GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2);
2190   void (QGL_DLLEXPORT *m_glMapGrid2f)(GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2);
2191   void (QGL_DLLEXPORT *m_glMaterialf)(GLenum face, GLenum pname, GLfloat param);
2192   void (QGL_DLLEXPORT *m_glMaterialfv)(GLenum face, GLenum pname, const GLfloat *params);
2193   void (QGL_DLLEXPORT *m_glMateriali)(GLenum face, GLenum pname, GLint param);
2194   void (QGL_DLLEXPORT *m_glMaterialiv)(GLenum face, GLenum pname, const GLint *params);
2195   void (QGL_DLLEXPORT *m_glMatrixMode)(GLenum mode);
2196   void (QGL_DLLEXPORT *m_glMultMatrixd)(const GLdouble *m);
2197   void (QGL_DLLEXPORT *m_glMultMatrixf)(const GLfloat *m);
2198   void (QGL_DLLEXPORT *m_glNewList)(GLuint list, GLenum mode);
2199   void (QGL_DLLEXPORT *m_glNormal3b)(GLbyte nx, GLbyte ny, GLbyte nz);
2200   void (QGL_DLLEXPORT *m_glNormal3bv)(const GLbyte *v);
2201   void (QGL_DLLEXPORT *m_glNormal3d)(GLdouble nx, GLdouble ny, GLdouble nz);
2202   void (QGL_DLLEXPORT *m_glNormal3dv)(const GLdouble *v);
2203   void (QGL_DLLEXPORT *m_glNormal3f)(GLfloat nx, GLfloat ny, GLfloat nz);
2204   void (QGL_DLLEXPORT *m_glNormal3fv)(const GLfloat *v);
2205   void (QGL_DLLEXPORT *m_glNormal3i)(GLint nx, GLint ny, GLint nz);
2206   void (QGL_DLLEXPORT *m_glNormal3iv)(const GLint *v);
2207   void (QGL_DLLEXPORT *m_glNormal3s)(GLshort nx, GLshort ny, GLshort nz);
2208   void (QGL_DLLEXPORT *m_glNormal3sv)(const GLshort *v);
2209   void (QGL_DLLEXPORT *m_glNormalPointer)(GLenum type, GLsizei stride, const GLvoid *pointer);
2210   void (QGL_DLLEXPORT *m_glOrtho)(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
2211   void (QGL_DLLEXPORT *m_glPassThrough)(GLfloat token);
2212   void (QGL_DLLEXPORT *m_glPixelMapfv)(GLenum map, GLsizei mapsize, const GLfloat *values);
2213   void (QGL_DLLEXPORT *m_glPixelMapuiv)(GLenum map, GLsizei mapsize, const GLuint *values);
2214   void (QGL_DLLEXPORT *m_glPixelMapusv)(GLenum map, GLsizei mapsize, const GLushort *values);
2215   void (QGL_DLLEXPORT *m_glPixelStoref)(GLenum pname, GLfloat param);
2216   void (QGL_DLLEXPORT *m_glPixelStorei)(GLenum pname, GLint param);
2217   void (QGL_DLLEXPORT *m_glPixelTransferf)(GLenum pname, GLfloat param);
2218   void (QGL_DLLEXPORT *m_glPixelTransferi)(GLenum pname, GLint param);
2219   void (QGL_DLLEXPORT *m_glPixelZoom)(GLfloat xfactor, GLfloat yfactor);
2220   void (QGL_DLLEXPORT *m_glPointSize)(GLfloat size);
2221   void (QGL_DLLEXPORT *m_glPolygonMode)(GLenum face, GLenum mode);
2222   void (QGL_DLLEXPORT *m_glPolygonOffset)(GLfloat factor, GLfloat units);
2223   void (QGL_DLLEXPORT *m_glPolygonStipple)(const GLubyte *mask);
2224   void (QGL_DLLEXPORT *m_glPopAttrib)(void);
2225   void (QGL_DLLEXPORT *m_glPopClientAttrib)(void);
2226   void (QGL_DLLEXPORT *m_glPopMatrix)(void);
2227   void (QGL_DLLEXPORT *m_glPopName)(void);
2228   void (QGL_DLLEXPORT *m_glPrioritizeTextures)(GLsizei n, const GLuint *textures, const GLclampf *priorities);
2229   void (QGL_DLLEXPORT *m_glPushAttrib)(GLbitfield mask);
2230   void (QGL_DLLEXPORT *m_glPushClientAttrib)(GLbitfield mask);
2231   void (QGL_DLLEXPORT *m_glPushMatrix)(void);
2232   void (QGL_DLLEXPORT *m_glPushName)(GLuint name);
2233   void (QGL_DLLEXPORT *m_glRasterPos2d)(GLdouble x, GLdouble y);
2234   void (QGL_DLLEXPORT *m_glRasterPos2dv)(const GLdouble *v);
2235   void (QGL_DLLEXPORT *m_glRasterPos2f)(GLfloat x, GLfloat y);
2236   void (QGL_DLLEXPORT *m_glRasterPos2fv)(const GLfloat *v);
2237   void (QGL_DLLEXPORT *m_glRasterPos2i)(GLint x, GLint y);
2238   void (QGL_DLLEXPORT *m_glRasterPos2iv)(const GLint *v);
2239   void (QGL_DLLEXPORT *m_glRasterPos2s)(GLshort x, GLshort y);
2240   void (QGL_DLLEXPORT *m_glRasterPos2sv)(const GLshort *v);
2241   void (QGL_DLLEXPORT *m_glRasterPos3d)(GLdouble x, GLdouble y, GLdouble z);
2242   void (QGL_DLLEXPORT *m_glRasterPos3dv)(const GLdouble *v);
2243   void (QGL_DLLEXPORT *m_glRasterPos3f)(GLfloat x, GLfloat y, GLfloat z);
2244   void (QGL_DLLEXPORT *m_glRasterPos3fv)(const GLfloat *v);
2245   void (QGL_DLLEXPORT *m_glRasterPos3i)(GLint x, GLint y, GLint z);
2246   void (QGL_DLLEXPORT *m_glRasterPos3iv)(const GLint *v);
2247   void (QGL_DLLEXPORT *m_glRasterPos3s)(GLshort x, GLshort y, GLshort z);
2248   void (QGL_DLLEXPORT *m_glRasterPos3sv)(const GLshort *v);
2249   void (QGL_DLLEXPORT *m_glRasterPos4d)(GLdouble x, GLdouble y, GLdouble z, GLdouble w);
2250   void (QGL_DLLEXPORT *m_glRasterPos4dv)(const GLdouble *v);
2251   void (QGL_DLLEXPORT *m_glRasterPos4f)(GLfloat x, GLfloat y, GLfloat z, GLfloat w);
2252   void (QGL_DLLEXPORT *m_glRasterPos4fv)(const GLfloat *v);
2253   void (QGL_DLLEXPORT *m_glRasterPos4i)(GLint x, GLint y, GLint z, GLint w);
2254   void (QGL_DLLEXPORT *m_glRasterPos4iv)(const GLint *v);
2255   void (QGL_DLLEXPORT *m_glRasterPos4s)(GLshort x, GLshort y, GLshort z, GLshort w);
2256   void (QGL_DLLEXPORT *m_glRasterPos4sv)(const GLshort *v);
2257   void (QGL_DLLEXPORT *m_glReadBuffer)(GLenum mode);
2258   void (QGL_DLLEXPORT *m_glReadPixels)(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels);
2259   void (QGL_DLLEXPORT *m_glRectd)(GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2);
2260   void (QGL_DLLEXPORT *m_glRectdv)(const GLdouble *v1, const GLdouble *v2);
2261   void (QGL_DLLEXPORT *m_glRectf)(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2);
2262   void (QGL_DLLEXPORT *m_glRectfv)(const GLfloat *v1, const GLfloat *v2);
2263   void (QGL_DLLEXPORT *m_glRecti)(GLint x1, GLint y1, GLint x2, GLint y2);
2264   void (QGL_DLLEXPORT *m_glRectiv)(const GLint *v1, const GLint *v2);
2265   void (QGL_DLLEXPORT *m_glRects)(GLshort x1, GLshort y1, GLshort x2, GLshort y2);
2266   void (QGL_DLLEXPORT *m_glRectsv)(const GLshort *v1, const GLshort *v2);
2267   GLint (QGL_DLLEXPORT *m_glRenderMode)(GLenum mode);
2268   void (QGL_DLLEXPORT *m_glRotated)(GLdouble anm_gle, GLdouble x, GLdouble y, GLdouble z);
2269   void (QGL_DLLEXPORT *m_glRotatef)(GLfloat anm_gle, GLfloat x, GLfloat y, GLfloat z);
2270   void (QGL_DLLEXPORT *m_glScaled)(GLdouble x, GLdouble y, GLdouble z);
2271   void (QGL_DLLEXPORT *m_glScalef)(GLfloat x, GLfloat y, GLfloat z);
2272   void (QGL_DLLEXPORT *m_glScissor)(GLint x, GLint y, GLsizei width, GLsizei height);
2273   void (QGL_DLLEXPORT *m_glSelectBuffer)(GLsizei size, GLuint *buffer);
2274   void (QGL_DLLEXPORT *m_glShadeModel)(GLenum mode);
2275   void (QGL_DLLEXPORT *m_glStencilFunc)(GLenum func, GLint ref, GLuint mask);
2276   void (QGL_DLLEXPORT *m_glStencilMask)(GLuint mask);
2277   void (QGL_DLLEXPORT *m_glStencilOp)(GLenum fail, GLenum zfail, GLenum zpass);
2278   void (QGL_DLLEXPORT *m_glTexCoord1d)(GLdouble s);
2279   void (QGL_DLLEXPORT *m_glTexCoord1dv)(const GLdouble *v);
2280   void (QGL_DLLEXPORT *m_glTexCoord1f)(GLfloat s);
2281   void (QGL_DLLEXPORT *m_glTexCoord1fv)(const GLfloat *v);
2282   void (QGL_DLLEXPORT *m_glTexCoord1i)(GLint s);
2283   void (QGL_DLLEXPORT *m_glTexCoord1iv)(const GLint *v);
2284   void (QGL_DLLEXPORT *m_glTexCoord1s)(GLshort s);
2285   void (QGL_DLLEXPORT *m_glTexCoord1sv)(const GLshort *v);
2286   void (QGL_DLLEXPORT *m_glTexCoord2d)(GLdouble s, GLdouble t);
2287   void (QGL_DLLEXPORT *m_glTexCoord2dv)(const GLdouble *v);
2288   void (QGL_DLLEXPORT *m_glTexCoord2f)(GLfloat s, GLfloat t);
2289   void (QGL_DLLEXPORT *m_glTexCoord2fv)(const GLfloat *v);
2290   void (QGL_DLLEXPORT *m_glTexCoord2i)(GLint s, GLint t);
2291   void (QGL_DLLEXPORT *m_glTexCoord2iv)(const GLint *v);
2292   void (QGL_DLLEXPORT *m_glTexCoord2s)(GLshort s, GLshort t);
2293   void (QGL_DLLEXPORT *m_glTexCoord2sv)(const GLshort *v);
2294   void (QGL_DLLEXPORT *m_glTexCoord3d)(GLdouble s, GLdouble t, GLdouble r);
2295   void (QGL_DLLEXPORT *m_glTexCoord3dv)(const GLdouble *v);
2296   void (QGL_DLLEXPORT *m_glTexCoord3f)(GLfloat s, GLfloat t, GLfloat r);
2297   void (QGL_DLLEXPORT *m_glTexCoord3fv)(const GLfloat *v);
2298   void (QGL_DLLEXPORT *m_glTexCoord3i)(GLint s, GLint t, GLint r);
2299   void (QGL_DLLEXPORT *m_glTexCoord3iv)(const GLint *v);
2300   void (QGL_DLLEXPORT *m_glTexCoord3s)(GLshort s, GLshort t, GLshort r);
2301   void (QGL_DLLEXPORT *m_glTexCoord3sv)(const GLshort *v);
2302   void (QGL_DLLEXPORT *m_glTexCoord4d)(GLdouble s, GLdouble t, GLdouble r, GLdouble q);
2303   void (QGL_DLLEXPORT *m_glTexCoord4dv)(const GLdouble *v);
2304   void (QGL_DLLEXPORT *m_glTexCoord4f)(GLfloat s, GLfloat t, GLfloat r, GLfloat q);
2305   void (QGL_DLLEXPORT *m_glTexCoord4fv)(const GLfloat *v);
2306   void (QGL_DLLEXPORT *m_glTexCoord4i)(GLint s, GLint t, GLint r, GLint q);
2307   void (QGL_DLLEXPORT *m_glTexCoord4iv)(const GLint *v);
2308   void (QGL_DLLEXPORT *m_glTexCoord4s)(GLshort s, GLshort t, GLshort r, GLshort q);
2309   void (QGL_DLLEXPORT *m_glTexCoord4sv)(const GLshort *v);
2310   void (QGL_DLLEXPORT *m_glTexCoordPointer)(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
2311   void (QGL_DLLEXPORT *m_glTexEnvf)(GLenum target, GLenum pname, GLfloat param);
2312   void (QGL_DLLEXPORT *m_glTexEnvfv)(GLenum target, GLenum pname, const GLfloat *params);
2313   void (QGL_DLLEXPORT *m_glTexEnvi)(GLenum target, GLenum pname, GLint param);
2314   void (QGL_DLLEXPORT *m_glTexEnviv)(GLenum target, GLenum pname, const GLint *params);
2315   void (QGL_DLLEXPORT *m_glTexGend)(GLenum coord, GLenum pname, GLdouble param);
2316   void (QGL_DLLEXPORT *m_glTexGendv)(GLenum coord, GLenum pname, const GLdouble *params);
2317   void (QGL_DLLEXPORT *m_glTexGenf)(GLenum coord, GLenum pname, GLfloat param);
2318   void (QGL_DLLEXPORT *m_glTexGenfv)(GLenum coord, GLenum pname, const GLfloat *params);
2319   void (QGL_DLLEXPORT *m_glTexGeni)(GLenum coord, GLenum pname, GLint param);
2320   void (QGL_DLLEXPORT *m_glTexGeniv)(GLenum coord, GLenum pname, const GLint *params);
2321   void (QGL_DLLEXPORT *m_glTexImage1D)(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
2322   void (QGL_DLLEXPORT *m_glTexImage2D)(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
2323   void (QGL_DLLEXPORT *m_glTexParameterf)(GLenum target, GLenum pname, GLfloat param);
2324   void (QGL_DLLEXPORT *m_glTexParameterfv)(GLenum target, GLenum pname, const GLfloat *params);
2325   void (QGL_DLLEXPORT *m_glTexParameteri)(GLenum target, GLenum pname, GLint param);
2326   void (QGL_DLLEXPORT *m_glTexParameteriv)(GLenum target, GLenum pname, const GLint *params);
2327   void (QGL_DLLEXPORT *m_glTexSubImage1D)(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels);
2328   void (QGL_DLLEXPORT *m_glTexSubImage2D)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
2329   void (QGL_DLLEXPORT *m_glTranslated)(GLdouble x, GLdouble y, GLdouble z);
2330   void (QGL_DLLEXPORT *m_glTranslatef)(GLfloat x, GLfloat y, GLfloat z);
2331   void (QGL_DLLEXPORT *m_glVertex2d)(GLdouble x, GLdouble y);
2332   void (QGL_DLLEXPORT *m_glVertex2dv)(const GLdouble *v);
2333   void (QGL_DLLEXPORT *m_glVertex2f)(GLfloat x, GLfloat y);
2334   void (QGL_DLLEXPORT *m_glVertex2fv)(const GLfloat *v);
2335   void (QGL_DLLEXPORT *m_glVertex2i)(GLint x, GLint y);
2336   void (QGL_DLLEXPORT *m_glVertex2iv)(const GLint *v);
2337   void (QGL_DLLEXPORT *m_glVertex2s)(GLshort x, GLshort y);
2338   void (QGL_DLLEXPORT *m_glVertex2sv)(const GLshort *v);
2339   void (QGL_DLLEXPORT *m_glVertex3d)(GLdouble x, GLdouble y, GLdouble z);
2340   void (QGL_DLLEXPORT *m_glVertex3dv)(const GLdouble *v);
2341   void (QGL_DLLEXPORT *m_glVertex3f)(GLfloat x, GLfloat y, GLfloat z);
2342   void (QGL_DLLEXPORT *m_glVertex3fv)(const GLfloat *v);
2343   void (QGL_DLLEXPORT *m_glVertex3i)(GLint x, GLint y, GLint z);
2344   void (QGL_DLLEXPORT *m_glVertex3iv)(const GLint *v);
2345   void (QGL_DLLEXPORT *m_glVertex3s)(GLshort x, GLshort y, GLshort z);
2346   void (QGL_DLLEXPORT *m_glVertex3sv)(const GLshort *v);
2347   void (QGL_DLLEXPORT *m_glVertex4d)(GLdouble x, GLdouble y, GLdouble z, GLdouble w);
2348   void (QGL_DLLEXPORT *m_glVertex4dv)(const GLdouble *v);
2349   void (QGL_DLLEXPORT *m_glVertex4f)(GLfloat x, GLfloat y, GLfloat z, GLfloat w);
2350   void (QGL_DLLEXPORT *m_glVertex4fv)(const GLfloat *v);
2351   void (QGL_DLLEXPORT *m_glVertex4i)(GLint x, GLint y, GLint z, GLint w);
2352   void (QGL_DLLEXPORT *m_glVertex4iv)(const GLint *v);
2353   void (QGL_DLLEXPORT *m_glVertex4s)(GLshort x, GLshort y, GLshort z, GLshort w);
2354   void (QGL_DLLEXPORT *m_glVertex4sv)(const GLshort *v);
2355   void (QGL_DLLEXPORT *m_glVertexPointer)(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
2356   void (QGL_DLLEXPORT *m_glViewport)(GLint x, GLint y, GLsizei width, GLsizei height);
2357
2358   // GL_ARB_multitexture
2359   bool support_ARB_multitexture;
2360   bool ARB_multitexture()
2361   {
2362     return support_ARB_multitexture;
2363   }
2364   void (QGL_DLLEXPORT *m_glActiveTextureARB)(GLenum texture);
2365   void (QGL_DLLEXPORT *m_glClientActiveTextureARB)(GLenum texture);
2366   void (QGL_DLLEXPORT *m_glMultiTexCoord1dARB)(GLenum target, GLdouble s);
2367   void (QGL_DLLEXPORT *m_glMultiTexCoord1dvARB)(GLenum target, const GLdouble *v);
2368   void (QGL_DLLEXPORT *m_glMultiTexCoord1fARB)(GLenum target, GLfloat s);
2369   void (QGL_DLLEXPORT *m_glMultiTexCoord1fvARB)(GLenum target, const GLfloat *v);
2370   void (QGL_DLLEXPORT *m_glMultiTexCoord1iARB)(GLenum target, GLint s);
2371   void (QGL_DLLEXPORT *m_glMultiTexCoord1ivARB)(GLenum target, const GLint *v);
2372   void (QGL_DLLEXPORT *m_glMultiTexCoord1sARB)(GLenum target, GLshort s);
2373   void (QGL_DLLEXPORT *m_glMultiTexCoord1svARB)(GLenum target, const GLshort *v);
2374   void (QGL_DLLEXPORT *m_glMultiTexCoord2dARB)(GLenum target, GLdouble s);
2375   void (QGL_DLLEXPORT *m_glMultiTexCoord2dvARB)(GLenum target, const GLdouble *v);
2376   void (QGL_DLLEXPORT *m_glMultiTexCoord2fARB)(GLenum target, GLfloat s);
2377   void (QGL_DLLEXPORT *m_glMultiTexCoord2fvARB)(GLenum target, const GLfloat *v);
2378   void (QGL_DLLEXPORT *m_glMultiTexCoord2iARB)(GLenum target, GLint s);
2379   void (QGL_DLLEXPORT *m_glMultiTexCoord2ivARB)(GLenum target, const GLint *v);
2380   void (QGL_DLLEXPORT *m_glMultiTexCoord2sARB)(GLenum target, GLshort s);
2381   void (QGL_DLLEXPORT *m_glMultiTexCoord2svARB)(GLenum target, const GLshort *v);
2382   void (QGL_DLLEXPORT *m_glMultiTexCoord3dARB)(GLenum target, GLdouble s);
2383   void (QGL_DLLEXPORT *m_glMultiTexCoord3dvARB)(GLenum target, const GLdouble *v);
2384   void (QGL_DLLEXPORT *m_glMultiTexCoord3fARB)(GLenum target, GLfloat s);
2385   void (QGL_DLLEXPORT *m_glMultiTexCoord3fvARB)(GLenum target, const GLfloat *v);
2386   void (QGL_DLLEXPORT *m_glMultiTexCoord3iARB)(GLenum target, GLint s);
2387   void (QGL_DLLEXPORT *m_glMultiTexCoord3ivARB)(GLenum target, const GLint *v);
2388   void (QGL_DLLEXPORT *m_glMultiTexCoord3sARB)(GLenum target, GLshort s);
2389   void (QGL_DLLEXPORT *m_glMultiTexCoord3svARB)(GLenum target, const GLshort *v);
2390   void (QGL_DLLEXPORT *m_glMultiTexCoord4dARB)(GLenum target, GLdouble s);
2391   void (QGL_DLLEXPORT *m_glMultiTexCoord4dvARB)(GLenum target, const GLdouble *v);
2392   void (QGL_DLLEXPORT *m_glMultiTexCoord4fARB)(GLenum target, GLfloat s);
2393   void (QGL_DLLEXPORT *m_glMultiTexCoord4fvARB)(GLenum target, const GLfloat *v);
2394   void (QGL_DLLEXPORT *m_glMultiTexCoord4iARB)(GLenum target, GLint s);
2395   void (QGL_DLLEXPORT *m_glMultiTexCoord4ivARB)(GLenum target, const GLint *v);
2396   void (QGL_DLLEXPORT *m_glMultiTexCoord4sARB)(GLenum target, GLshort s);
2397   void (QGL_DLLEXPORT *m_glMultiTexCoord4svARB)(GLenum target, const GLshort *v);
2398
2399   // ARB_texture_compression
2400   bool support_ARB_texture_compression;
2401   bool ARB_texture_compression()
2402   {
2403     return support_ARB_texture_compression;
2404   }
2405   void (QGL_DLLEXPORT *m_glCompressedTexImage3DARB)(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid* data);
2406   void (QGL_DLLEXPORT *m_glCompressedTexImage2DARB)(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid* data);
2407   void (QGL_DLLEXPORT *m_glCompressedTexImage1DARB)(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid* data);
2408   void (QGL_DLLEXPORT *m_glCompressedTexSubImage3DARB)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid* data);
2409   void (QGL_DLLEXPORT *m_glCompressedTexSubImage2DARB)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid* data);
2410   void (QGL_DLLEXPORT *m_glCompressedTexSubImage1DARB)(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid* data);
2411   void (QGL_DLLEXPORT *m_glGetCompressedTexImageARB)(GLenum target, GLint lod, GLvoid* img);
2412
2413   // EXT_texture_compression_s3tc
2414   bool support_EXT_texture_compression_s3tc;
2415   bool EXT_texture_compression_s3tc()
2416   {
2417     return support_EXT_texture_compression_s3tc;
2418   }
2419
2420   // GL 1.2
2421   bool support_GL_1_2;
2422   bool GL_1_2()
2423   {
2424     return support_GL_1_2;
2425   }
2426   void (QGL_DLLEXPORT *m_glCopyTexSubImage3D)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
2427   void (QGL_DLLEXPORT *m_glDrawRangeElements)(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices);
2428   void (QGL_DLLEXPORT *m_glTexImage3D)(GLenum target, GLint level, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
2429   void (QGL_DLLEXPORT *m_glTexSubImage3D)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels);
2430
2431   // GL 1.3
2432   bool support_GL_1_3;
2433   bool GL_1_3()
2434   {
2435     return support_GL_1_3;
2436   }
2437   void (QGL_DLLEXPORT *m_glActiveTexture)(GLenum texture);
2438   void (QGL_DLLEXPORT *m_glClientActiveTexture)(GLenum texture);
2439   void (QGL_DLLEXPORT *m_glCompressedTexImage1D)(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data);
2440   void (QGL_DLLEXPORT *m_glCompressedTexImage2D)(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data);
2441   void (QGL_DLLEXPORT *m_glCompressedTexImage3D)(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data);
2442   void (QGL_DLLEXPORT *m_glCompressedTexSubImage1D)(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data);
2443   void (QGL_DLLEXPORT *m_glCompressedTexSubImage2D)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data);
2444   void (QGL_DLLEXPORT *m_glCompressedTexSubImage3D)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data);
2445   void (QGL_DLLEXPORT *m_glGetCompressedTexImage)(GLenum target, GLint lod, GLvoid *img);
2446   void (QGL_DLLEXPORT *m_glLoadTransposeMatrixd)(const GLdouble m[16]);
2447   void (QGL_DLLEXPORT *m_glLoadTransposeMatrixf)(const GLfloat m[16]);
2448   void (QGL_DLLEXPORT *m_glMultTransposeMatrixd)(const GLdouble m[16]);
2449   void (QGL_DLLEXPORT *m_glMultTransposeMatrixf)(const GLfloat m[16]);
2450   void (QGL_DLLEXPORT *m_glMultiTexCoord1d)(GLenum target, GLdouble s);
2451   void (QGL_DLLEXPORT *m_glMultiTexCoord1dv)(GLenum target, const GLdouble *v);
2452   void (QGL_DLLEXPORT *m_glMultiTexCoord1f)(GLenum target, GLfloat s);
2453   void (QGL_DLLEXPORT *m_glMultiTexCoord1fv)(GLenum target, const GLfloat *v);
2454   void (QGL_DLLEXPORT *m_glMultiTexCoord1i)(GLenum target, GLint s);
2455   void (QGL_DLLEXPORT *m_glMultiTexCoord1iv)(GLenum target, const GLint *v);
2456   void (QGL_DLLEXPORT *m_glMultiTexCoord1s)(GLenum target, GLshort s);
2457   void (QGL_DLLEXPORT *m_glMultiTexCoord1sv)(GLenum target, const GLshort *v);
2458   void (QGL_DLLEXPORT *m_glMultiTexCoord2d)(GLenum target, GLdouble s, GLdouble t);
2459   void (QGL_DLLEXPORT *m_glMultiTexCoord2dv)(GLenum target, const GLdouble *v);
2460   void (QGL_DLLEXPORT *m_glMultiTexCoord2f)(GLenum target, GLfloat s, GLfloat t);
2461   void (QGL_DLLEXPORT *m_glMultiTexCoord2fv)(GLenum target, const GLfloat *v);
2462   void (QGL_DLLEXPORT *m_glMultiTexCoord2i)(GLenum target, GLint s, GLint t);
2463   void (QGL_DLLEXPORT *m_glMultiTexCoord2iv)(GLenum target, const GLint *v);
2464   void (QGL_DLLEXPORT *m_glMultiTexCoord2s)(GLenum target, GLshort s, GLshort t);
2465   void (QGL_DLLEXPORT *m_glMultiTexCoord2sv)(GLenum target, const GLshort *v);
2466   void (QGL_DLLEXPORT *m_glMultiTexCoord3d)(GLenum target, GLdouble s, GLdouble t, GLdouble r);
2467   void (QGL_DLLEXPORT *m_glMultiTexCoord3dv)(GLenum target, const GLdouble *v);
2468   void (QGL_DLLEXPORT *m_glMultiTexCoord3f)(GLenum target, GLfloat s, GLfloat t, GLfloat r);
2469   void (QGL_DLLEXPORT *m_glMultiTexCoord3fv)(GLenum target, const GLfloat *v);
2470   void (QGL_DLLEXPORT *m_glMultiTexCoord3i)(GLenum target, GLint s, GLint t, GLint r);
2471   void (QGL_DLLEXPORT *m_glMultiTexCoord3iv)(GLenum target, const GLint *v);
2472   void (QGL_DLLEXPORT *m_glMultiTexCoord3s)(GLenum target, GLshort s, GLshort t, GLshort r);
2473   void (QGL_DLLEXPORT *m_glMultiTexCoord3sv)(GLenum target, const GLshort *v);
2474   void (QGL_DLLEXPORT *m_glMultiTexCoord4d)(GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q);
2475   void (QGL_DLLEXPORT *m_glMultiTexCoord4dv)(GLenum target, const GLdouble *v);
2476   void (QGL_DLLEXPORT *m_glMultiTexCoord4f)(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q);
2477   void (QGL_DLLEXPORT *m_glMultiTexCoord4fv)(GLenum target, const GLfloat *v);
2478   void (QGL_DLLEXPORT *m_glMultiTexCoord4i)(GLenum target, GLint s, GLint t, GLint r, GLint q);
2479   void (QGL_DLLEXPORT *m_glMultiTexCoord4iv)(GLenum target, const GLint *v);
2480   void (QGL_DLLEXPORT *m_glMultiTexCoord4s)(GLenum target, GLshort s, GLshort t, GLshort r, GLshort q);
2481   void (QGL_DLLEXPORT *m_glMultiTexCoord4sv)(GLenum target, const GLshort *v);
2482   void (QGL_DLLEXPORT *m_glSampleCoverage)(GLclampf value, GLboolean invert);
2483
2484   // GL 1.4
2485   bool support_GL_1_4;
2486   bool GL_1_4()
2487   {
2488     return support_GL_1_4;
2489   }
2490   void (QGL_DLLEXPORT *m_glBlendColor)(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);
2491   void (QGL_DLLEXPORT *m_glBlendEquation)(GLenum mode);
2492   void (QGL_DLLEXPORT *m_glBlendFuncSeparate)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
2493   void (QGL_DLLEXPORT *m_glFogCoordPointer)(GLenum type, GLsizei stride, const GLvoid *pointer);
2494   void (QGL_DLLEXPORT *m_glFogCoordd)(GLdouble coord);
2495   void (QGL_DLLEXPORT *m_glFogCoorddv)(const GLdouble *coord);
2496   void (QGL_DLLEXPORT *m_glFogCoordf)(GLfloat coord);
2497   void (QGL_DLLEXPORT *m_glFogCoordfv)(const GLfloat *coord);
2498   void (QGL_DLLEXPORT *m_glMultiDrawArrays)(GLenum mode, GLint *first, GLsizei *count, GLsizei primcount);
2499   void (QGL_DLLEXPORT *m_glMultiDrawElements)(GLenum mode, GLsizei *count, GLenum type, const GLvoid **indices, GLsizei primcount);
2500   void (QGL_DLLEXPORT *m_glPointParameterf)(GLenum pname, GLfloat param);
2501   void (QGL_DLLEXPORT *m_glPointParameterfv)(GLenum pname, GLfloat *params);
2502   void (QGL_DLLEXPORT *m_glSecondaryColor3b)(GLbyte red, GLbyte green, GLbyte blue);
2503   void (QGL_DLLEXPORT *m_glSecondaryColor3bv)(const GLbyte *v);
2504   void (QGL_DLLEXPORT *m_glSecondaryColor3d)(GLdouble red, GLdouble green, GLdouble blue);
2505   void (QGL_DLLEXPORT *m_glSecondaryColor3dv)(const GLdouble *v);
2506   void (QGL_DLLEXPORT *m_glSecondaryColor3f)(GLfloat red, GLfloat green, GLfloat blue);
2507   void (QGL_DLLEXPORT *m_glSecondaryColor3fv)(const GLfloat *v);
2508   void (QGL_DLLEXPORT *m_glSecondaryColor3i)(GLint red, GLint green, GLint blue);
2509   void (QGL_DLLEXPORT *m_glSecondaryColor3iv)(const GLint *v);
2510   void (QGL_DLLEXPORT *m_glSecondaryColor3s)(GLshort red, GLshort green, GLshort blue);
2511   void (QGL_DLLEXPORT *m_glSecondaryColor3sv)(const GLshort *v);
2512   void (QGL_DLLEXPORT *m_glSecondaryColor3ub)(GLubyte red, GLubyte green, GLubyte blue);
2513   void (QGL_DLLEXPORT *m_glSecondaryColor3ubv)(const GLubyte *v);
2514   void (QGL_DLLEXPORT *m_glSecondaryColor3ui)(GLuint red, GLuint green, GLuint blue);
2515   void (QGL_DLLEXPORT *m_glSecondaryColor3uiv)(const GLuint *v);
2516   void (QGL_DLLEXPORT *m_glSecondaryColor3us)(GLushort red, GLushort green, GLushort blue);
2517   void (QGL_DLLEXPORT *m_glSecondaryColor3usv)(const GLushort *v);
2518   void (QGL_DLLEXPORT *m_glSecondaryColorPointer)(GLint size, GLenum type, GLsizei stride, GLvoid *pointer);
2519   void (QGL_DLLEXPORT *m_glWindowPos2d)(GLdouble x, GLdouble y);
2520   void (QGL_DLLEXPORT *m_glWindowPos2dv)(const GLdouble *p);
2521   void (QGL_DLLEXPORT *m_glWindowPos2f)(GLfloat x, GLfloat y);
2522   void (QGL_DLLEXPORT *m_glWindowPos2fv)(const GLfloat *p);
2523   void (QGL_DLLEXPORT *m_glWindowPos2i)(GLint x, GLint y);
2524   void (QGL_DLLEXPORT *m_glWindowPos2iv)(const GLint *p);
2525   void (QGL_DLLEXPORT *m_glWindowPos2s)(GLshort x, GLshort y);
2526   void (QGL_DLLEXPORT *m_glWindowPos2sv)(const GLshort *p);
2527   void (QGL_DLLEXPORT *m_glWindowPos3d)(GLdouble x, GLdouble y, GLdouble z);
2528   void (QGL_DLLEXPORT *m_glWindowPos3dv)(const GLdouble *p);
2529   void (QGL_DLLEXPORT *m_glWindowPos3f)(GLfloat x, GLfloat y, GLfloat z);
2530   void (QGL_DLLEXPORT *m_glWindowPos3fv)(const GLfloat *p);
2531   void (QGL_DLLEXPORT *m_glWindowPos3i)(GLint x, GLint y, GLint z);
2532   void (QGL_DLLEXPORT *m_glWindowPos3iv)(const GLint *p);
2533   void (QGL_DLLEXPORT *m_glWindowPos3s)(GLshort x, GLshort y, GLshort z);
2534   void (QGL_DLLEXPORT *m_glWindowPos3sv)(const GLshort *p);
2535
2536   // GL 1.5
2537   bool support_GL_1_5;
2538   bool GL_1_5()
2539   {
2540     return support_GL_1_5;
2541   }
2542   void (QGL_DLLEXPORT *m_glBeginQuery)(GLenum target, GLuint id);
2543   void (QGL_DLLEXPORT *m_glBindBuffer)(GLenum target, GLuint buffer);
2544   void (QGL_DLLEXPORT *m_glBufferData)(GLenum target, GLsizeiptr size, const GLvoid* data, GLenum usage);
2545   void (QGL_DLLEXPORT *m_glBufferSubData)(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid* data);
2546   void (QGL_DLLEXPORT *m_glDeleteBuffers)(GLsizei n, const GLuint* buffers);
2547   void (QGL_DLLEXPORT *m_glDeleteQueries)(GLsizei n, const GLuint* ids);
2548   void (QGL_DLLEXPORT *m_glEndQuery)(GLenum target);
2549   void (QGL_DLLEXPORT *m_glGenBuffers)(GLsizei n, GLuint* buffers);
2550   void (QGL_DLLEXPORT *m_glGenQueries)(GLsizei n, GLuint* ids);
2551   void (QGL_DLLEXPORT *m_glGetBufferParameteriv)(GLenum target, GLenum pname, GLint* params);
2552   void (QGL_DLLEXPORT *m_glGetBufferPointerv)(GLenum target, GLenum pname, GLvoid** params);
2553   void (QGL_DLLEXPORT *m_glGetBufferSubData)(GLenum target, GLintptr offset, GLsizeiptr size, GLvoid* data);
2554   void (QGL_DLLEXPORT *m_glGetQueryObjectiv)(GLuint id, GLenum pname, GLint* params);
2555   void (QGL_DLLEXPORT *m_glGetQueryObjectuiv)(GLuint id, GLenum pname, GLuint* params);
2556   void (QGL_DLLEXPORT *m_glGetQueryiv)(GLenum target, GLenum pname, GLint params);
2557   GLboolean (QGL_DLLEXPORT *m_glIsBuffer)(GLuint buffer);
2558   GLboolean (QGL_DLLEXPORT *m_glIsQuery)(GLuint id);
2559   GLvoid* (QGL_DLLEXPORT *m_glMapBuffer)(GLenum target, GLenum access);
2560   GLboolean (QGL_DLLEXPORT *m_glUnmapBuffer)(GLenum target);
2561
2562   // GL_ARB_vertex_program
2563   bool support_ARB_vertex_program;
2564   bool ARB_vertex_program()
2565   {
2566     return support_ARB_vertex_program;
2567   }
2568   void (QGL_DLLEXPORT *m_glVertexAttrib1sARB)(GLuint index, GLshort x);
2569   void (QGL_DLLEXPORT *m_glVertexAttrib1fARB)(GLuint index, GLfloat x);
2570   void (QGL_DLLEXPORT *m_glVertexAttrib1dARB)(GLuint index, GLdouble x);
2571   void (QGL_DLLEXPORT *m_glVertexAttrib2sARB)(GLuint index, GLshort x, GLshort y);
2572   void (QGL_DLLEXPORT *m_glVertexAttrib2fARB)(GLuint index, GLfloat x, GLfloat y);
2573   void (QGL_DLLEXPORT *m_glVertexAttrib2dARB)(GLuint index, GLdouble x, GLdouble y);
2574   void (QGL_DLLEXPORT *m_glVertexAttrib3sARB)(GLuint index, GLshort x, GLshort y, GLshort z);
2575   void (QGL_DLLEXPORT *m_glVertexAttrib3fARB)(GLuint index, GLfloat x, GLfloat y, GLfloat z);
2576   void (QGL_DLLEXPORT *m_glVertexAttrib3dARB)(GLuint index, GLdouble x, GLdouble y, GLdouble z);
2577   void (QGL_DLLEXPORT *m_glVertexAttrib4sARB)(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w);
2578   void (QGL_DLLEXPORT *m_glVertexAttrib4fARB)(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
2579   void (QGL_DLLEXPORT *m_glVertexAttrib4dARB)(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
2580   void (QGL_DLLEXPORT *m_glVertexAttrib4NubARB)(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w);
2581   void (QGL_DLLEXPORT *m_glVertexAttrib1svARB)(GLuint index, const GLshort *v);
2582   void (QGL_DLLEXPORT *m_glVertexAttrib1fvARB)(GLuint index, const GLfloat *v);
2583   void (QGL_DLLEXPORT *m_glVertexAttrib1dvARB)(GLuint index, const GLdouble *v);
2584   void (QGL_DLLEXPORT *m_glVertexAttrib2svARB)(GLuint index, const GLshort *v);
2585   void (QGL_DLLEXPORT *m_glVertexAttrib2fvARB)(GLuint index, const GLfloat *v);
2586   void (QGL_DLLEXPORT *m_glVertexAttrib2dvARB)(GLuint index, const GLdouble *v);
2587   void (QGL_DLLEXPORT *m_glVertexAttrib3svARB)(GLuint index, const GLshort *v);
2588   void (QGL_DLLEXPORT *m_glVertexAttrib3fvARB)(GLuint index, const GLfloat *v);
2589   void (QGL_DLLEXPORT *m_glVertexAttrib3dvARB)(GLuint index, const GLdouble *v);
2590   void (QGL_DLLEXPORT *m_glVertexAttrib4bvARB)(GLuint index, const GLbyte *v);
2591   void (QGL_DLLEXPORT *m_glVertexAttrib4svARB)(GLuint index, const GLshort *v);
2592   void (QGL_DLLEXPORT *m_glVertexAttrib4ivARB)(GLuint index, const GLint *v);
2593   void (QGL_DLLEXPORT *m_glVertexAttrib4ubvARB)(GLuint index, const GLubyte *v);
2594   void (QGL_DLLEXPORT *m_glVertexAttrib4usvARB)(GLuint index, const GLushort *v);
2595   void (QGL_DLLEXPORT *m_glVertexAttrib4uivARB)(GLuint index, const GLuint *v);
2596   void (QGL_DLLEXPORT *m_glVertexAttrib4fvARB)(GLuint index, const GLfloat *v);
2597   void (QGL_DLLEXPORT *m_glVertexAttrib4dvARB)(GLuint index, const GLdouble *v);
2598   void (QGL_DLLEXPORT *m_glVertexAttrib4NbvARB)(GLuint index, const GLbyte *v);
2599   void (QGL_DLLEXPORT *m_glVertexAttrib4NsvARB)(GLuint index, const GLshort *v);
2600   void (QGL_DLLEXPORT *m_glVertexAttrib4NivARB)(GLuint index, const GLint *v);
2601   void (QGL_DLLEXPORT *m_glVertexAttrib4NubvARB)(GLuint index, const GLubyte *v);
2602   void (QGL_DLLEXPORT *m_glVertexAttrib4NusvARB)(GLuint index, const GLushort *v);
2603   void (QGL_DLLEXPORT *m_glVertexAttrib4NuivARB)(GLuint index, const GLuint *v);
2604   void (QGL_DLLEXPORT *m_glVertexAttribPointerARB)(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer);
2605   void (QGL_DLLEXPORT *m_glEnableVertexAttribArrayARB)(GLuint index);
2606   void (QGL_DLLEXPORT *m_glDisableVertexAttribArrayARB)(GLuint index);
2607   void (QGL_DLLEXPORT *m_glProgramStringARB)(GLenum target, GLenum format, GLsizei len, const GLvoid *string); 
2608   void (QGL_DLLEXPORT *m_glBindProgramARB)(GLenum target, GLuint program);
2609   void (QGL_DLLEXPORT *m_glDeleteProgramsARB)(GLsizei n, const GLuint *programs);
2610   void (QGL_DLLEXPORT *m_glGenProgramsARB)(GLsizei n, GLuint *programs);
2611   void (QGL_DLLEXPORT *m_glProgramEnvParameter4dARB)(GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
2612   void (QGL_DLLEXPORT *m_glProgramEnvParameter4dvARB)(GLenum target, GLuint index, const GLdouble *params);
2613   void (QGL_DLLEXPORT *m_glProgramEnvParameter4fARB)(GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
2614   void (QGL_DLLEXPORT *m_glProgramEnvParameter4fvARB)(GLenum target, GLuint index, const GLfloat *params);
2615   void (QGL_DLLEXPORT *m_glProgramLocalParameter4dARB)(GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
2616   void (QGL_DLLEXPORT *m_glProgramLocalParameter4dvARB)(GLenum target, GLuint index, const GLdouble *params);
2617   void (QGL_DLLEXPORT *m_glProgramLocalParameter4fARB)(GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
2618   void (QGL_DLLEXPORT *m_glProgramLocalParameter4fvARB)(GLenum target, GLuint index, const GLfloat *params);
2619   void (QGL_DLLEXPORT *m_glGetProgramEnvParameterdvARB)(GLenum target, GLuint index, GLdouble *params);
2620   void (QGL_DLLEXPORT *m_glGetProgramEnvParameterfvARB)(GLenum target, GLuint index, GLfloat *params);
2621   void (QGL_DLLEXPORT *m_glGetProgramLocalParameterdvARB)(GLenum target, GLuint index, GLdouble *params);
2622   void (QGL_DLLEXPORT *m_glGetProgramLocalParameterfvARB)(GLenum target, GLuint index, GLfloat *params);
2623   void (QGL_DLLEXPORT *m_glGetProgramivARB)(GLenum target, GLenum pname, GLint *params);
2624   void (QGL_DLLEXPORT *m_glGetProgramStringARB)(GLenum target, GLenum pname, GLvoid *string);
2625   void (QGL_DLLEXPORT *m_glGetVertexAttribdvARB)(GLuint index, GLenum pname, GLdouble *params);
2626   void (QGL_DLLEXPORT *m_glGetVertexAttribfvARB)(GLuint index, GLenum pname, GLfloat *params);
2627   void (QGL_DLLEXPORT *m_glGetVertexAttribivARB)(GLuint index, GLenum pname, GLint *params);
2628   void (QGL_DLLEXPORT *m_glGetVertexAttribPointervARB)(GLuint index, GLenum pname, GLvoid **pointer);
2629   GLboolean (QGL_DLLEXPORT *m_glIsProgramARB)(GLuint program);
2630
2631   // GL_ARB_fragment_program
2632   bool support_ARB_fragment_program;
2633   bool ARB_fragment_program()
2634   {
2635     return support_ARB_fragment_program;
2636   }
2637
2638   // GL_ARB_shader_objects
2639   bool support_ARB_shader_objects;
2640   bool ARB_shader_objects()
2641   {
2642     return support_ARB_shader_objects;
2643   }
2644   void (QGL_DLLEXPORT *m_glDeleteObjectARB)(GLhandleARB obj);
2645   GLhandleARB (QGL_DLLEXPORT *m_glGetHandleARB)(GLenum pname);
2646   void (QGL_DLLEXPORT *m_glDetachObjectARB)(GLhandleARB containerObj, GLhandleARB attachedObj);
2647   GLhandleARB (QGL_DLLEXPORT *m_glCreateShaderObjectARB)(GLenum shaderType);
2648   void (QGL_DLLEXPORT *m_glShaderSourceARB)(GLhandleARB shaderObj, GLsizei count, const GLcharARB **string, const GLint *length);
2649   void (QGL_DLLEXPORT *m_glCompileShaderARB)(GLhandleARB shaderObj);
2650   GLhandleARB (QGL_DLLEXPORT *m_glCreateProgramObjectARB)(void);
2651   void (QGL_DLLEXPORT *m_glAttachObjectARB)(GLhandleARB containerObj, GLhandleARB obj);
2652   void (QGL_DLLEXPORT *m_glLinkProgramARB)(GLhandleARB programObj);
2653   void (QGL_DLLEXPORT *m_glUseProgramObjectARB)(GLhandleARB programObj);
2654   void (QGL_DLLEXPORT *m_glValidateProgramARB)(GLhandleARB programObj);
2655   void (QGL_DLLEXPORT *m_glUniform1fARB)(GLint location, GLfloat v0);
2656   void (QGL_DLLEXPORT *m_glUniform2fARB)(GLint location, GLfloat v0, GLfloat v1);
2657   void (QGL_DLLEXPORT *m_glUniform3fARB)(GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
2658   void (QGL_DLLEXPORT *m_glUniform4fARB)(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
2659   void (QGL_DLLEXPORT *m_glUniform1iARB)(GLint location, GLint v0);
2660   void (QGL_DLLEXPORT *m_glUniform2iARB)(GLint location, GLint v0, GLint v1);
2661   void (QGL_DLLEXPORT *m_glUniform3iARB)(GLint location, GLint v0, GLint v1, GLint v2);
2662   void (QGL_DLLEXPORT *m_glUniform4iARB)(GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
2663   void (QGL_DLLEXPORT *m_glUniform1fvARB)(GLint location, GLsizei count, const GLfloat *value);
2664   void (QGL_DLLEXPORT *m_glUniform2fvARB)(GLint location, GLsizei count, const GLfloat *value);
2665   void (QGL_DLLEXPORT *m_glUniform3fvARB)(GLint location, GLsizei count, const GLfloat *value);
2666   void (QGL_DLLEXPORT *m_glUniform4fvARB)(GLint location, GLsizei count, const GLfloat *value);
2667   void (QGL_DLLEXPORT *m_glUniform1ivARB)(GLint location, GLsizei count, const GLint *value);
2668   void (QGL_DLLEXPORT *m_glUniform2ivARB)(GLint location, GLsizei count, const GLint *value);
2669   void (QGL_DLLEXPORT *m_glUniform3ivARB)(GLint location, GLsizei count, const GLint *value);
2670   void (QGL_DLLEXPORT *m_glUniform4ivARB)(GLint location, GLsizei count, const GLint *value);
2671   void (QGL_DLLEXPORT *m_glUniformMatrix2fvARB)(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
2672   void (QGL_DLLEXPORT *m_glUniformMatrix3fvARB)(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
2673   void (QGL_DLLEXPORT *m_glUniformMatrix4fvARB)(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
2674   void (QGL_DLLEXPORT *m_glGetObjectParameterfvARB)(GLhandleARB obj, GLenum pname, GLfloat *params);
2675   void (QGL_DLLEXPORT *m_glGetObjectParameterivARB)(GLhandleARB obj, GLenum pname, GLint *params);
2676   void (QGL_DLLEXPORT *m_glGetInfoLogARB)(GLhandleARB obj, GLsizei maxLength, GLsizei *length, GLcharARB *infoLog);
2677   void (QGL_DLLEXPORT *m_glGetAttachedObjectsARB)(GLhandleARB containerObj, GLsizei maxCount, GLsizei *count, GLhandleARB *obj);
2678   GLint (QGL_DLLEXPORT *m_glGetUniformLocationARB)(GLhandleARB programObj, const GLcharARB *name);
2679   void (QGL_DLLEXPORT *m_glGetActiveUniformARB)(GLhandleARB programObj, GLuint index, GLsizei maxLength, GLsizei *length, GLint *size, GLenum *type, GLcharARB *name);
2680   void (QGL_DLLEXPORT *m_glGetUniformfvARB)(GLhandleARB programObj, GLint location, GLfloat *params);
2681   void (QGL_DLLEXPORT *m_glGetUniformivARB)(GLhandleARB programObj, GLint location, GLint *params);
2682   void (QGL_DLLEXPORT *m_glGetShaderSourceARB)(GLhandleARB obj, GLsizei maxLength, GLsizei *length, GLcharARB *source);
2683
2684   // GL_ARB_vertex_shader
2685   bool support_ARB_vertex_shader;
2686   bool ARB_vertex_shader()
2687   {
2688     return support_ARB_vertex_shader;
2689   }
2690 #if 0
2691   void (QGL_DLLEXPORT *m_glVertexAttrib1fARB)(GLuint index, GLfloat v0);
2692   void (QGL_DLLEXPORT *m_glVertexAttrib1sARB)(GLuint index, GLshort v0);
2693   void (QGL_DLLEXPORT *m_glVertexAttrib1dARB)(GLuint index, GLdouble v0);
2694   void (QGL_DLLEXPORT *m_glVertexAttrib2fARB)(GLuint index, GLfloat v0, GLfloat v1);
2695   void (QGL_DLLEXPORT *m_glVertexAttrib2sARB)(GLuint index, GLshort v0, GLshort v1);
2696   void (QGL_DLLEXPORT *m_glVertexAttrib2dARB)(GLuint index, GLdouble v0, GLdouble v1);
2697   void (QGL_DLLEXPORT *m_glVertexAttrib3fARB)(GLuint index, GLfloat v0, GLfloat v1, GLfloat v2);
2698   void (QGL_DLLEXPORT *m_glVertexAttrib3sARB)(GLuint index, GLshort v0, GLshort v1, GLshort v2);
2699   void (QGL_DLLEXPORT *m_glVertexAttrib3dARB)(GLuint index, GLdouble v0, GLdouble v1, GLdouble v2);
2700   void (QGL_DLLEXPORT *m_glVertexAttrib4fARB)(GLuint index, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
2701   void (QGL_DLLEXPORT *m_glVertexAttrib4sARB)(GLuint index, GLshort v0, GLshort v1, GLshort v2, GLshort v3);
2702   void (QGL_DLLEXPORT *m_glVertexAttrib4dARB)(GLuint index, GLdouble v0, GLdouble v1, GLdouble v2, GLdouble v3);
2703   void (QGL_DLLEXPORT *m_glVertexAttrib4NubARB)(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w);
2704   void (QGL_DLLEXPORT *m_glVertexAttrib1fvARB)(GLuint index, const GLfloat *v);
2705   void (QGL_DLLEXPORT *m_glVertexAttrib1svARB)(GLuint index, const GLshort *v);
2706   void (QGL_DLLEXPORT *m_glVertexAttrib1dvARB)(GLuint index, const GLdouble *v);
2707   void (QGL_DLLEXPORT *m_glVertexAttrib2fvARB)(GLuint index, const GLfloat *v);
2708   void (QGL_DLLEXPORT *m_glVertexAttrib2svARB)(GLuint index, const GLshort *v);
2709   void (QGL_DLLEXPORT *m_glVertexAttrib2dvARB)(GLuint index, const GLdouble *v);
2710   void (QGL_DLLEXPORT *m_glVertexAttrib3fvARB)(GLuint index, const GLfloat *v);
2711   void (QGL_DLLEXPORT *m_glVertexAttrib3svARB)(GLuint index, const GLshort *v);
2712   void (QGL_DLLEXPORT *m_glVertexAttrib3dvARB)(GLuint index, const GLdouble *v);
2713   void (QGL_DLLEXPORT *m_glVertexAttrib4fvARB)(GLuint index, const GLfloat *v);
2714   void (QGL_DLLEXPORT *m_glVertexAttrib4svARB)(GLuint index, const GLshort *v);
2715   void (QGL_DLLEXPORT *m_glVertexAttrib4dvARB)(GLuint index, const GLdouble *v);
2716   void (QGL_DLLEXPORT *m_glVertexAttrib4ivARB)(GLuint index, const GLint *v);
2717   void (QGL_DLLEXPORT *m_glVertexAttrib4bvARB)(GLuint index, const GLbyte *v);
2718   void (QGL_DLLEXPORT *m_glVertexAttrib4ubvARB)(GLuint index, const GLubyte *v);
2719   void (QGL_DLLEXPORT *m_glVertexAttrib4usvARB)(GLuint index, const GLushort *v);
2720   void (QGL_DLLEXPORT *m_glVertexAttrib4uivARB)(GLuint index, const GLuint *v);
2721   void (QGL_DLLEXPORT *m_glVertexAttrib4NbvARB)(GLuint index, const GLbyte *v);
2722   void (QGL_DLLEXPORT *m_glVertexAttrib4NsvARB)(GLuint index, const GLshort *v);
2723   void (QGL_DLLEXPORT *m_glVertexAttrib4NivARB)(GLuint index, const GLint *v);
2724   void (QGL_DLLEXPORT *m_glVertexAttrib4NubvARB)(GLuint index, const GLubyte *v);
2725   void (QGL_DLLEXPORT *m_glVertexAttrib4NusvARB)(GLuint index, const GLushort *v);
2726   void (QGL_DLLEXPORT *m_glVertexAttrib4NuivARB)(GLuint index, const GLuint *v);
2727   void (QGL_DLLEXPORT *m_glVertexAttribPointerARB)(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer);
2728   void (QGL_DLLEXPORT *m_glEnableVertexAttribArrayARB)(GLuint index);
2729   void (QGL_DLLEXPORT *m_glDisableVertexAttribArrayARB)(GLuint index);
2730 #endif
2731   void (QGL_DLLEXPORT *m_glBindAttribLocationARB)(GLhandleARB programObj, GLuint index, const GLcharARB *name);
2732   void (QGL_DLLEXPORT *m_glGetActiveAttribARB)(GLhandleARB programObj, GLuint index, GLsizei maxLength, GLsizei *length, GLint *size, GLenum *type, GLcharARB *name);
2733   GLint (QGL_DLLEXPORT *m_glGetAttribLocationARB)(GLhandleARB programObj, const GLcharARB *name);
2734 #if 0
2735   void (QGL_DLLEXPORT *m_glGetVertexAttribdvARB)(GLuint index, GLenum pname, GLdouble *params);
2736   void (QGL_DLLEXPORT *m_glGetVertexAttribfvARB)(GLuint index, GLenum pname, GLfloat *params);
2737   void (QGL_DLLEXPORT *m_glGetVertexAttribivARB)(GLuint index, GLenum pname, GLint *params);
2738   void (QGL_DLLEXPORT *m_glGetVertexAttribPointervARB)(GLuint index, GLenum pname, GLvoid **pointer);
2739 #endif
2740
2741   // ARB_fragment_shader
2742   bool support_ARB_fragment_shader;
2743   bool ARB_fragment_shader()
2744   {
2745     return support_ARB_fragment_shader;
2746   }
2747
2748   // ARB_shading_language_100
2749   bool support_ARB_shading_language_100;
2750   bool ARB_shading_language_100()
2751   {
2752     return support_ARB_shading_language_100;
2753   }
2754
2755   // GL_NV_vertex_program2
2756   bool support_NV_vertex_program2;
2757   bool NV_vertex_program2()
2758   {
2759     return support_NV_vertex_program2;
2760   }
2761   GLboolean (QGL_DLLEXPORT* m_glAreProgramsResidentNV)(GLsizei, const GLuint *, GLboolean *);
2762   void (QGL_DLLEXPORT* m_glBindProgramNV)(GLenum, GLuint);
2763   void (QGL_DLLEXPORT* m_glDeleteProgramsNV)(GLsizei, const GLuint *);
2764   void (QGL_DLLEXPORT* m_glExecuteProgramNV)(GLenum, GLuint, const GLfloat *);
2765   void (QGL_DLLEXPORT* m_glGenProgramsNV)(GLsizei, GLuint *);
2766   void (QGL_DLLEXPORT* m_glGetProgramParameterdvNV)(GLenum, GLuint, GLenum, GLdouble *);
2767   void (QGL_DLLEXPORT* m_glGetProgramParameterfvNV)(GLenum, GLuint, GLenum, GLfloat *);
2768   void (QGL_DLLEXPORT* m_glGetProgramivNV)(GLuint, GLenum, GLint *);
2769   void (QGL_DLLEXPORT* m_glGetProgramStringNV)(GLuint, GLenum, GLubyte *);
2770   void (QGL_DLLEXPORT* m_glGetTrackMatrixivNV)(GLenum, GLuint, GLenum, GLint *);
2771   void (QGL_DLLEXPORT* m_glGetVertexAttribdvNV)(GLuint, GLenum, GLdouble *);
2772   void (QGL_DLLEXPORT* m_glGetVertexAttribfvNV)(GLuint, GLenum, GLfloat *);
2773   void (QGL_DLLEXPORT* m_glGetVertexAttribivNV)(GLuint, GLenum, GLint *);
2774   void (QGL_DLLEXPORT* m_glGetVertexAttribPointervNV)(GLuint, GLenum, GLvoid* *);
2775   GLboolean (QGL_DLLEXPORT* m_glIsProgramNV)(GLuint);
2776   void (QGL_DLLEXPORT* m_glLoadProgramNV)(GLenum, GLuint, GLsizei, const GLubyte *);
2777   void (QGL_DLLEXPORT* m_glProgramParameter4fNV)(GLenum, GLuint, GLfloat, GLfloat, GLfloat, GLfloat);
2778   void (QGL_DLLEXPORT* m_glProgramParameter4fvNV)(GLenum, GLuint, const GLfloat *);
2779   void (QGL_DLLEXPORT* m_glProgramParameters4fvNV)(GLenum, GLuint, GLuint, const GLfloat *);
2780   void (QGL_DLLEXPORT* m_glRequestResidentProgramsNV)(GLsizei, const GLuint *);
2781   void (QGL_DLLEXPORT* m_glTrackMatrixNV)(GLenum, GLuint, GLenum, GLenum);
2782   void (QGL_DLLEXPORT* m_glVertexAttribPointerNV)(GLuint, GLint, GLenum, GLsizei, const GLvoid *);
2783   void (QGL_DLLEXPORT* m_glVertexAttrib1fNV)(GLuint, GLfloat);
2784   void (QGL_DLLEXPORT* m_glVertexAttrib1fvNV)(GLuint, const GLfloat *);
2785   void (QGL_DLLEXPORT* m_glVertexAttrib2fNV)(GLuint, GLfloat, GLfloat);
2786   void (QGL_DLLEXPORT* m_glVertexAttrib2fvNV)(GLuint, const GLfloat *);
2787   void (QGL_DLLEXPORT* m_glVertexAttrib3fNV)(GLuint, GLfloat, GLfloat, GLfloat);
2788   void (QGL_DLLEXPORT* m_glVertexAttrib3fvNV)(GLuint, const GLfloat *);
2789   void (QGL_DLLEXPORT* m_glVertexAttrib4fNV)(GLuint, GLfloat, GLfloat, GLfloat, GLfloat);
2790   void (QGL_DLLEXPORT* m_glVertexAttrib4fvNV)(GLuint, const GLfloat *);
2791   void (QGL_DLLEXPORT* m_glVertexAttribs1fvNV)(GLuint, GLsizei, const GLfloat *);
2792   void (QGL_DLLEXPORT* m_glVertexAttribs2fvNV)(GLuint, GLsizei, const GLfloat *);
2793   void (QGL_DLLEXPORT* m_glVertexAttribs3fvNV)(GLuint, GLsizei, const GLfloat *);
2794   void (QGL_DLLEXPORT* m_glVertexAttribs4fvNV)(GLuint, GLsizei, const GLfloat *);
2795
2796   // GL_NV_fragment_program
2797   bool support_NV_fragment_program;
2798   bool NV_fragment_program()
2799   {
2800     return support_NV_fragment_program;
2801   }
2802   void (QGL_DLLEXPORT* m_glProgramNamedParameter4fNV)(GLuint, GLsizei, const GLubyte *, GLfloat, GLfloat, GLfloat, GLfloat);
2803   void (QGL_DLLEXPORT* m_glProgramNamedParameter4fvNV)(GLuint, GLsizei, const GLubyte *, const GLfloat *);
2804   void (QGL_DLLEXPORT* m_glGetProgramNamedParameterfvNV)(GLuint, GLsizei, const GLubyte *, GLfloat *);
2805 };
2806
2807 #include "modulesystem.h"
2808
2809 template<typename Type>
2810 class GlobalModule;
2811 typedef GlobalModule<OpenGLBinding> GlobalOpenGLModule;
2812
2813 template<typename Type>
2814 class GlobalModuleRef;
2815 typedef GlobalModuleRef<OpenGLBinding> GlobalOpenGLModuleRef;
2816
2817 inline OpenGLBinding& GlobalOpenGL()
2818 {
2819   return GlobalOpenGLModule::getTable();
2820 }
2821
2822 #if defined(_DEBUG)
2823 #define GlobalOpenGL_debugAssertNoErrors() GlobalOpenGL().assertNoErrors(__FILE__, __LINE__)
2824 #else
2825 #define GlobalOpenGL_debugAssertNoErrors()
2826 #endif
2827
2828
2829 #endif