2
** The OpenGL Extension Wrangler Library
3
** Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
4
** Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
5
** Copyright (C) 2002, Lev Povalahev
6
** All rights reserved.
8
** Redistribution and use in source and binary forms, with or without
9
** modification, are permitted provided that the following conditions are met:
11
** * Redistributions of source code must retain the above copyright notice,
12
** this list of conditions and the following disclaimer.
13
** * Redistributions in binary form must reproduce the above copyright notice,
14
** this list of conditions and the following disclaimer in the documentation
15
** and/or other materials provided with the distribution.
16
** * The name of the author may be used to endorse or promote products
17
** derived from this software without specific prior written permission.
19
** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
20
** AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
21
** IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
22
** ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
23
** LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
24
** CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
25
** SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
26
** INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
27
** CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
28
** ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
29
** THE POSSIBILITY OF SUCH DAMAGE.
33
* Mesa 3-D graphics library
36
* Copyright (C) 1999-2007 Brian Paul All Rights Reserved.
38
* Permission is hereby granted, free of charge, to any person obtaining a
39
* copy of this software and associated documentation files (the "Software"),
40
* to deal in the Software without restriction, including without limitation
41
* the rights to use, copy, modify, merge, publish, distribute, sublicense,
42
* and/or sell copies of the Software, and to permit persons to whom the
43
* Software is furnished to do so, subject to the following conditions:
45
* The above copyright notice and this permission notice shall be included
46
* in all copies or substantial portions of the Software.
48
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
49
* OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
50
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
51
* BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
52
* AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
53
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
57
** Copyright (c) 2007 The Khronos Group Inc.
59
** Permission is hereby granted, free of charge, to any person obtaining a
60
** copy of this software and/or associated documentation files (the
61
** "Materials"), to deal in the Materials without restriction, including
62
** without limitation the rights to use, copy, modify, merge, publish,
63
** distribute, sublicense, and/or sell copies of the Materials, and to
64
** permit persons to whom the Materials are furnished to do so, subject to
65
** the following conditions:
67
** The above copyright notice and this permission notice shall be included
68
** in all copies or substantial portions of the Materials.
70
** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
71
** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
72
** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
73
** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
74
** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
75
** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
76
** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
84
#error glxext.h included before glxew.h
87
#error glx.h included before glxew.h
95
#include <X11/Xutil.h>
103
/* ---------------------------- GLX_VERSION_1_0 --------------------------- */
105
#ifndef GLX_VERSION_1_0
106
#define GLX_VERSION_1_0 1
109
#define GLX_BUFFER_SIZE 2
112
#define GLX_DOUBLEBUFFER 5
114
#define GLX_AUX_BUFFERS 7
115
#define GLX_RED_SIZE 8
116
#define GLX_GREEN_SIZE 9
117
#define GLX_BLUE_SIZE 10
118
#define GLX_ALPHA_SIZE 11
119
#define GLX_DEPTH_SIZE 12
120
#define GLX_STENCIL_SIZE 13
121
#define GLX_ACCUM_RED_SIZE 14
122
#define GLX_ACCUM_GREEN_SIZE 15
123
#define GLX_ACCUM_BLUE_SIZE 16
124
#define GLX_ACCUM_ALPHA_SIZE 17
125
#define GLX_BAD_SCREEN 1
126
#define GLX_BAD_ATTRIBUTE 2
127
#define GLX_NO_EXTENSION 3
128
#define GLX_BAD_VISUAL 4
129
#define GLX_BAD_CONTEXT 5
130
#define GLX_BAD_VALUE 6
131
#define GLX_BAD_ENUM 7
133
typedef XID GLXDrawable;
134
typedef XID GLXPixmap;
136
typedef struct __glXContextRec *GLXContext;
138
typedef struct __GLXcontextRec *GLXContext;
141
extern Bool glXQueryExtension (Display *dpy, int *errorBase, int *eventBase);
142
extern Bool glXQueryVersion (Display *dpy, int *major, int *minor);
143
extern int glXGetConfig (Display *dpy, XVisualInfo *vis, int attrib, int *value);
144
extern XVisualInfo* glXChooseVisual (Display *dpy, int screen, int *attribList);
145
extern GLXPixmap glXCreateGLXPixmap (Display *dpy, XVisualInfo *vis, Pixmap pixmap);
146
extern void glXDestroyGLXPixmap (Display *dpy, GLXPixmap pix);
147
extern GLXContext glXCreateContext (Display *dpy, XVisualInfo *vis, GLXContext shareList, Bool direct);
148
extern void glXDestroyContext (Display *dpy, GLXContext ctx);
149
extern Bool glXIsDirect (Display *dpy, GLXContext ctx);
150
extern void glXCopyContext (Display *dpy, GLXContext src, GLXContext dst, GLulong mask);
151
extern Bool glXMakeCurrent (Display *dpy, GLXDrawable drawable, GLXContext ctx);
152
extern GLXContext glXGetCurrentContext (void);
153
extern GLXDrawable glXGetCurrentDrawable (void);
154
extern void glXWaitGL (void);
155
extern void glXWaitX (void);
156
extern void glXSwapBuffers (Display *dpy, GLXDrawable drawable);
157
extern void glXUseXFont (Font font, int first, int count, int listBase);
159
#define GLXEW_VERSION_1_0 GLXEW_GET_VAR(__GLXEW_VERSION_1_0)
161
#endif /* GLX_VERSION_1_0 */
163
/* ---------------------------- GLX_VERSION_1_1 --------------------------- */
165
#ifndef GLX_VERSION_1_1
166
#define GLX_VERSION_1_1
168
#define GLX_VENDOR 0x1
169
#define GLX_VERSION 0x2
170
#define GLX_EXTENSIONS 0x3
172
extern const char* glXQueryExtensionsString (Display *dpy, int screen);
173
extern const char* glXGetClientString (Display *dpy, int name);
174
extern const char* glXQueryServerString (Display *dpy, int screen, int name);
176
#define GLXEW_VERSION_1_1 GLXEW_GET_VAR(__GLXEW_VERSION_1_1)
178
#endif /* GLX_VERSION_1_1 */
180
/* ---------------------------- GLX_VERSION_1_2 ---------------------------- */
182
#ifndef GLX_VERSION_1_2
183
#define GLX_VERSION_1_2 1
185
typedef Display* ( * PFNGLXGETCURRENTDISPLAYPROC) (void);
187
#define glXGetCurrentDisplay GLXEW_GET_FUN(__glewXGetCurrentDisplay)
189
#define GLXEW_VERSION_1_2 GLXEW_GET_VAR(__GLXEW_VERSION_1_2)
191
#endif /* GLX_VERSION_1_2 */
193
/* ---------------------------- GLX_VERSION_1_3 ---------------------------- */
195
#ifndef GLX_VERSION_1_3
196
#define GLX_VERSION_1_3 1
198
#define GLX_RGBA_BIT 0x00000001
199
#define GLX_FRONT_LEFT_BUFFER_BIT 0x00000001
200
#define GLX_WINDOW_BIT 0x00000001
201
#define GLX_COLOR_INDEX_BIT 0x00000002
202
#define GLX_PIXMAP_BIT 0x00000002
203
#define GLX_FRONT_RIGHT_BUFFER_BIT 0x00000002
204
#define GLX_BACK_LEFT_BUFFER_BIT 0x00000004
205
#define GLX_PBUFFER_BIT 0x00000004
206
#define GLX_BACK_RIGHT_BUFFER_BIT 0x00000008
207
#define GLX_AUX_BUFFERS_BIT 0x00000010
208
#define GLX_CONFIG_CAVEAT 0x20
209
#define GLX_DEPTH_BUFFER_BIT 0x00000020
210
#define GLX_X_VISUAL_TYPE 0x22
211
#define GLX_TRANSPARENT_TYPE 0x23
212
#define GLX_TRANSPARENT_INDEX_VALUE 0x24
213
#define GLX_TRANSPARENT_RED_VALUE 0x25
214
#define GLX_TRANSPARENT_GREEN_VALUE 0x26
215
#define GLX_TRANSPARENT_BLUE_VALUE 0x27
216
#define GLX_TRANSPARENT_ALPHA_VALUE 0x28
217
#define GLX_STENCIL_BUFFER_BIT 0x00000040
218
#define GLX_ACCUM_BUFFER_BIT 0x00000080
219
#define GLX_NONE 0x8000
220
#define GLX_SLOW_CONFIG 0x8001
221
#define GLX_TRUE_COLOR 0x8002
222
#define GLX_DIRECT_COLOR 0x8003
223
#define GLX_PSEUDO_COLOR 0x8004
224
#define GLX_STATIC_COLOR 0x8005
225
#define GLX_GRAY_SCALE 0x8006
226
#define GLX_STATIC_GRAY 0x8007
227
#define GLX_TRANSPARENT_RGB 0x8008
228
#define GLX_TRANSPARENT_INDEX 0x8009
229
#define GLX_VISUAL_ID 0x800B
230
#define GLX_SCREEN 0x800C
231
#define GLX_NON_CONFORMANT_CONFIG 0x800D
232
#define GLX_DRAWABLE_TYPE 0x8010
233
#define GLX_RENDER_TYPE 0x8011
234
#define GLX_X_RENDERABLE 0x8012
235
#define GLX_FBCONFIG_ID 0x8013
236
#define GLX_RGBA_TYPE 0x8014
237
#define GLX_COLOR_INDEX_TYPE 0x8015
238
#define GLX_MAX_PBUFFER_WIDTH 0x8016
239
#define GLX_MAX_PBUFFER_HEIGHT 0x8017
240
#define GLX_MAX_PBUFFER_PIXELS 0x8018
241
#define GLX_PRESERVED_CONTENTS 0x801B
242
#define GLX_LARGEST_PBUFFER 0x801C
243
#define GLX_WIDTH 0x801D
244
#define GLX_HEIGHT 0x801E
245
#define GLX_EVENT_MASK 0x801F
246
#define GLX_DAMAGED 0x8020
247
#define GLX_SAVED 0x8021
248
#define GLX_WINDOW 0x8022
249
#define GLX_PBUFFER 0x8023
250
#define GLX_PBUFFER_HEIGHT 0x8040
251
#define GLX_PBUFFER_WIDTH 0x8041
252
#define GLX_PBUFFER_CLOBBER_MASK 0x08000000
253
#define GLX_DONT_CARE 0xFFFFFFFF
255
typedef XID GLXFBConfigID;
256
typedef XID GLXWindow;
257
typedef XID GLXPbuffer;
258
typedef struct __GLXFBConfigRec *GLXFBConfig;
263
unsigned long serial;
266
GLXDrawable drawable;
267
unsigned int buffer_mask;
268
unsigned int aux_buffer;
272
} GLXPbufferClobberEvent;
273
typedef union __GLXEvent {
274
GLXPbufferClobberEvent glxpbufferclobber;
278
typedef GLXFBConfig* ( * PFNGLXCHOOSEFBCONFIGPROC) (Display *dpy, int screen, const int *attrib_list, int *nelements);
279
typedef GLXContext ( * PFNGLXCREATENEWCONTEXTPROC) (Display *dpy, GLXFBConfig config, int render_type, GLXContext share_list, Bool direct);
280
typedef GLXPbuffer ( * PFNGLXCREATEPBUFFERPROC) (Display *dpy, GLXFBConfig config, const int *attrib_list);
281
typedef GLXPixmap ( * PFNGLXCREATEPIXMAPPROC) (Display *dpy, GLXFBConfig config, Pixmap pixmap, const int *attrib_list);
282
typedef GLXWindow ( * PFNGLXCREATEWINDOWPROC) (Display *dpy, GLXFBConfig config, Window win, const int *attrib_list);
283
typedef void ( * PFNGLXDESTROYPBUFFERPROC) (Display *dpy, GLXPbuffer pbuf);
284
typedef void ( * PFNGLXDESTROYPIXMAPPROC) (Display *dpy, GLXPixmap pixmap);
285
typedef void ( * PFNGLXDESTROYWINDOWPROC) (Display *dpy, GLXWindow win);
286
typedef GLXDrawable ( * PFNGLXGETCURRENTREADDRAWABLEPROC) (void);
287
typedef int ( * PFNGLXGETFBCONFIGATTRIBPROC) (Display *dpy, GLXFBConfig config, int attribute, int *value);
288
typedef GLXFBConfig* ( * PFNGLXGETFBCONFIGSPROC) (Display *dpy, int screen, int *nelements);
289
typedef void ( * PFNGLXGETSELECTEDEVENTPROC) (Display *dpy, GLXDrawable draw, unsigned long *event_mask);
290
typedef XVisualInfo* ( * PFNGLXGETVISUALFROMFBCONFIGPROC) (Display *dpy, GLXFBConfig config);
291
typedef Bool ( * PFNGLXMAKECONTEXTCURRENTPROC) (Display *display, GLXDrawable draw, GLXDrawable read, GLXContext ctx);
292
typedef int ( * PFNGLXQUERYCONTEXTPROC) (Display *dpy, GLXContext ctx, int attribute, int *value);
293
typedef void ( * PFNGLXQUERYDRAWABLEPROC) (Display *dpy, GLXDrawable draw, int attribute, unsigned int *value);
294
typedef void ( * PFNGLXSELECTEVENTPROC) (Display *dpy, GLXDrawable draw, unsigned long event_mask);
296
#define glXChooseFBConfig GLXEW_GET_FUN(__glewXChooseFBConfig)
297
#define glXCreateNewContext GLXEW_GET_FUN(__glewXCreateNewContext)
298
#define glXCreatePbuffer GLXEW_GET_FUN(__glewXCreatePbuffer)
299
#define glXCreatePixmap GLXEW_GET_FUN(__glewXCreatePixmap)
300
#define glXCreateWindow GLXEW_GET_FUN(__glewXCreateWindow)
301
#define glXDestroyPbuffer GLXEW_GET_FUN(__glewXDestroyPbuffer)
302
#define glXDestroyPixmap GLXEW_GET_FUN(__glewXDestroyPixmap)
303
#define glXDestroyWindow GLXEW_GET_FUN(__glewXDestroyWindow)
304
#define glXGetCurrentReadDrawable GLXEW_GET_FUN(__glewXGetCurrentReadDrawable)
305
#define glXGetFBConfigAttrib GLXEW_GET_FUN(__glewXGetFBConfigAttrib)
306
#define glXGetFBConfigs GLXEW_GET_FUN(__glewXGetFBConfigs)
307
#define glXGetSelectedEvent GLXEW_GET_FUN(__glewXGetSelectedEvent)
308
#define glXGetVisualFromFBConfig GLXEW_GET_FUN(__glewXGetVisualFromFBConfig)
309
#define glXMakeContextCurrent GLXEW_GET_FUN(__glewXMakeContextCurrent)
310
#define glXQueryContext GLXEW_GET_FUN(__glewXQueryContext)
311
#define glXQueryDrawable GLXEW_GET_FUN(__glewXQueryDrawable)
312
#define glXSelectEvent GLXEW_GET_FUN(__glewXSelectEvent)
314
#define GLXEW_VERSION_1_3 GLXEW_GET_VAR(__GLXEW_VERSION_1_3)
316
#endif /* GLX_VERSION_1_3 */
318
/* ---------------------------- GLX_VERSION_1_4 ---------------------------- */
320
#ifndef GLX_VERSION_1_4
321
#define GLX_VERSION_1_4 1
323
#define GLX_SAMPLE_BUFFERS 100000
324
#define GLX_SAMPLES 100001
326
extern void ( * glXGetProcAddress (const GLubyte *procName)) (void);
328
#define GLXEW_VERSION_1_4 GLXEW_GET_VAR(__GLXEW_VERSION_1_4)
330
#endif /* GLX_VERSION_1_4 */
332
/* -------------------------- GLX_3DFX_multisample ------------------------- */
334
#ifndef GLX_3DFX_multisample
335
#define GLX_3DFX_multisample 1
337
#define GLX_SAMPLE_BUFFERS_3DFX 0x8050
338
#define GLX_SAMPLES_3DFX 0x8051
340
#define GLXEW_3DFX_multisample GLXEW_GET_VAR(__GLXEW_3DFX_multisample)
342
#endif /* GLX_3DFX_multisample */
344
/* ------------------------- GLX_ARB_fbconfig_float ------------------------ */
346
#ifndef GLX_ARB_fbconfig_float
347
#define GLX_ARB_fbconfig_float 1
349
#define GLX_RGBA_FLOAT_BIT 0x00000004
350
#define GLX_RGBA_FLOAT_TYPE 0x20B9
352
#define GLXEW_ARB_fbconfig_float GLXEW_GET_VAR(__GLXEW_ARB_fbconfig_float)
354
#endif /* GLX_ARB_fbconfig_float */
356
/* ------------------------ GLX_ARB_get_proc_address ----------------------- */
358
#ifndef GLX_ARB_get_proc_address
359
#define GLX_ARB_get_proc_address 1
361
extern void ( * glXGetProcAddressARB (const GLubyte *procName)) (void);
363
#define GLXEW_ARB_get_proc_address GLXEW_GET_VAR(__GLXEW_ARB_get_proc_address)
365
#endif /* GLX_ARB_get_proc_address */
367
/* -------------------------- GLX_ARB_multisample -------------------------- */
369
#ifndef GLX_ARB_multisample
370
#define GLX_ARB_multisample 1
372
#define GLX_SAMPLE_BUFFERS_ARB 100000
373
#define GLX_SAMPLES_ARB 100001
375
#define GLXEW_ARB_multisample GLXEW_GET_VAR(__GLXEW_ARB_multisample)
377
#endif /* GLX_ARB_multisample */
379
/* ----------------------- GLX_ATI_pixel_format_float ---------------------- */
381
#ifndef GLX_ATI_pixel_format_float
382
#define GLX_ATI_pixel_format_float 1
384
#define GLX_RGBA_FLOAT_ATI_BIT 0x00000100
386
#define GLXEW_ATI_pixel_format_float GLXEW_GET_VAR(__GLXEW_ATI_pixel_format_float)
388
#endif /* GLX_ATI_pixel_format_float */
390
/* ------------------------- GLX_ATI_render_texture ------------------------ */
392
#ifndef GLX_ATI_render_texture
393
#define GLX_ATI_render_texture 1
395
#define GLX_BIND_TO_TEXTURE_RGB_ATI 0x9800
396
#define GLX_BIND_TO_TEXTURE_RGBA_ATI 0x9801
397
#define GLX_TEXTURE_FORMAT_ATI 0x9802
398
#define GLX_TEXTURE_TARGET_ATI 0x9803
399
#define GLX_MIPMAP_TEXTURE_ATI 0x9804
400
#define GLX_TEXTURE_RGB_ATI 0x9805
401
#define GLX_TEXTURE_RGBA_ATI 0x9806
402
#define GLX_NO_TEXTURE_ATI 0x9807
403
#define GLX_TEXTURE_CUBE_MAP_ATI 0x9808
404
#define GLX_TEXTURE_1D_ATI 0x9809
405
#define GLX_TEXTURE_2D_ATI 0x980A
406
#define GLX_MIPMAP_LEVEL_ATI 0x980B
407
#define GLX_CUBE_MAP_FACE_ATI 0x980C
408
#define GLX_TEXTURE_CUBE_MAP_POSITIVE_X_ATI 0x980D
409
#define GLX_TEXTURE_CUBE_MAP_NEGATIVE_X_ATI 0x980E
410
#define GLX_TEXTURE_CUBE_MAP_POSITIVE_Y_ATI 0x980F
411
#define GLX_TEXTURE_CUBE_MAP_NEGATIVE_Y_ATI 0x9810
412
#define GLX_TEXTURE_CUBE_MAP_POSITIVE_Z_ATI 0x9811
413
#define GLX_TEXTURE_CUBE_MAP_NEGATIVE_Z_ATI 0x9812
414
#define GLX_FRONT_LEFT_ATI 0x9813
415
#define GLX_FRONT_RIGHT_ATI 0x9814
416
#define GLX_BACK_LEFT_ATI 0x9815
417
#define GLX_BACK_RIGHT_ATI 0x9816
418
#define GLX_AUX0_ATI 0x9817
419
#define GLX_AUX1_ATI 0x9818
420
#define GLX_AUX2_ATI 0x9819
421
#define GLX_AUX3_ATI 0x981A
422
#define GLX_AUX4_ATI 0x981B
423
#define GLX_AUX5_ATI 0x981C
424
#define GLX_AUX6_ATI 0x981D
425
#define GLX_AUX7_ATI 0x981E
426
#define GLX_AUX8_ATI 0x981F
427
#define GLX_AUX9_ATI 0x9820
428
#define GLX_BIND_TO_TEXTURE_LUMINANCE_ATI 0x9821
429
#define GLX_BIND_TO_TEXTURE_INTENSITY_ATI 0x9822
431
typedef void ( * PFNGLXBINDTEXIMAGEATIPROC) (Display *dpy, GLXPbuffer pbuf, int buffer);
432
typedef void ( * PFNGLXDRAWABLEATTRIBATIPROC) (Display *dpy, GLXDrawable draw, const int *attrib_list);
433
typedef void ( * PFNGLXRELEASETEXIMAGEATIPROC) (Display *dpy, GLXPbuffer pbuf, int buffer);
435
#define glXBindTexImageATI GLXEW_GET_FUN(__glewXBindTexImageATI)
436
#define glXDrawableAttribATI GLXEW_GET_FUN(__glewXDrawableAttribATI)
437
#define glXReleaseTexImageATI GLXEW_GET_FUN(__glewXReleaseTexImageATI)
439
#define GLXEW_ATI_render_texture GLXEW_GET_VAR(__GLXEW_ATI_render_texture)
441
#endif /* GLX_ATI_render_texture */
443
/* --------------------- GLX_EXT_fbconfig_packed_float --------------------- */
445
#ifndef GLX_EXT_fbconfig_packed_float
446
#define GLX_EXT_fbconfig_packed_float 1
448
#define GLX_RGBA_UNSIGNED_FLOAT_BIT_EXT 0x00000008
449
#define GLX_RGBA_UNSIGNED_FLOAT_TYPE_EXT 0x20B1
451
#define GLXEW_EXT_fbconfig_packed_float GLXEW_GET_VAR(__GLXEW_EXT_fbconfig_packed_float)
453
#endif /* GLX_EXT_fbconfig_packed_float */
455
/* ------------------------ GLX_EXT_framebuffer_sRGB ----------------------- */
457
#ifndef GLX_EXT_framebuffer_sRGB
458
#define GLX_EXT_framebuffer_sRGB 1
460
#define GLX_FRAMEBUFFER_SRGB_CAPABLE_EXT 0x20B2
462
#define GLXEW_EXT_framebuffer_sRGB GLXEW_GET_VAR(__GLXEW_EXT_framebuffer_sRGB)
464
#endif /* GLX_EXT_framebuffer_sRGB */
466
/* ------------------------- GLX_EXT_import_context ------------------------ */
468
#ifndef GLX_EXT_import_context
469
#define GLX_EXT_import_context 1
471
#define GLX_SHARE_CONTEXT_EXT 0x800A
472
#define GLX_VISUAL_ID_EXT 0x800B
473
#define GLX_SCREEN_EXT 0x800C
475
typedef XID GLXContextID;
477
typedef void ( * PFNGLXFREECONTEXTEXTPROC) (Display* dpy, GLXContext context);
478
typedef GLXContextID ( * PFNGLXGETCONTEXTIDEXTPROC) (const GLXContext context);
479
typedef GLXContext ( * PFNGLXIMPORTCONTEXTEXTPROC) (Display* dpy, GLXContextID contextID);
480
typedef int ( * PFNGLXQUERYCONTEXTINFOEXTPROC) (Display* dpy, GLXContext context, int attribute,int *value);
482
#define glXFreeContextEXT GLXEW_GET_FUN(__glewXFreeContextEXT)
483
#define glXGetContextIDEXT GLXEW_GET_FUN(__glewXGetContextIDEXT)
484
#define glXImportContextEXT GLXEW_GET_FUN(__glewXImportContextEXT)
485
#define glXQueryContextInfoEXT GLXEW_GET_FUN(__glewXQueryContextInfoEXT)
487
#define GLXEW_EXT_import_context GLXEW_GET_VAR(__GLXEW_EXT_import_context)
489
#endif /* GLX_EXT_import_context */
491
/* -------------------------- GLX_EXT_scene_marker ------------------------- */
493
#ifndef GLX_EXT_scene_marker
494
#define GLX_EXT_scene_marker 1
496
#define GLXEW_EXT_scene_marker GLXEW_GET_VAR(__GLXEW_EXT_scene_marker)
498
#endif /* GLX_EXT_scene_marker */
500
/* ---------------------- GLX_EXT_texture_from_pixmap ---------------------- */
502
#ifndef GLX_EXT_texture_from_pixmap
503
#define GLX_EXT_texture_from_pixmap 1
505
#define GLX_TEXTURE_1D_BIT_EXT 0x00000001
506
#define GLX_TEXTURE_2D_BIT_EXT 0x00000002
507
#define GLX_TEXTURE_RECTANGLE_BIT_EXT 0x00000004
508
#define GLX_BIND_TO_TEXTURE_RGB_EXT 0x20D0
509
#define GLX_BIND_TO_TEXTURE_RGBA_EXT 0x20D1
510
#define GLX_BIND_TO_MIPMAP_TEXTURE_EXT 0x20D2
511
#define GLX_BIND_TO_TEXTURE_TARGETS_EXT 0x20D3
512
#define GLX_Y_INVERTED_EXT 0x20D4
513
#define GLX_TEXTURE_FORMAT_EXT 0x20D5
514
#define GLX_TEXTURE_TARGET_EXT 0x20D6
515
#define GLX_MIPMAP_TEXTURE_EXT 0x20D7
516
#define GLX_TEXTURE_FORMAT_NONE_EXT 0x20D8
517
#define GLX_TEXTURE_FORMAT_RGB_EXT 0x20D9
518
#define GLX_TEXTURE_FORMAT_RGBA_EXT 0x20DA
519
#define GLX_TEXTURE_1D_EXT 0x20DB
520
#define GLX_TEXTURE_2D_EXT 0x20DC
521
#define GLX_TEXTURE_RECTANGLE_EXT 0x20DD
522
#define GLX_FRONT_LEFT_EXT 0x20DE
523
#define GLX_FRONT_RIGHT_EXT 0x20DF
524
#define GLX_BACK_LEFT_EXT 0x20E0
525
#define GLX_BACK_RIGHT_EXT 0x20E1
526
#define GLX_AUX0_EXT 0x20E2
527
#define GLX_AUX1_EXT 0x20E3
528
#define GLX_AUX2_EXT 0x20E4
529
#define GLX_AUX3_EXT 0x20E5
530
#define GLX_AUX4_EXT 0x20E6
531
#define GLX_AUX5_EXT 0x20E7
532
#define GLX_AUX6_EXT 0x20E8
533
#define GLX_AUX7_EXT 0x20E9
534
#define GLX_AUX8_EXT 0x20EA
535
#define GLX_AUX9_EXT 0x20EB
537
typedef void ( * PFNGLXBINDTEXIMAGEEXTPROC) (Display* display, GLXDrawable drawable, int buffer, const int *attrib_list);
538
typedef void ( * PFNGLXRELEASETEXIMAGEEXTPROC) (Display* display, GLXDrawable drawable, int buffer);
540
#define glXBindTexImageEXT GLXEW_GET_FUN(__glewXBindTexImageEXT)
541
#define glXReleaseTexImageEXT GLXEW_GET_FUN(__glewXReleaseTexImageEXT)
543
#define GLXEW_EXT_texture_from_pixmap GLXEW_GET_VAR(__GLXEW_EXT_texture_from_pixmap)
545
#endif /* GLX_EXT_texture_from_pixmap */
547
/* -------------------------- GLX_EXT_visual_info -------------------------- */
549
#ifndef GLX_EXT_visual_info
550
#define GLX_EXT_visual_info 1
552
#define GLX_X_VISUAL_TYPE_EXT 0x22
553
#define GLX_TRANSPARENT_TYPE_EXT 0x23
554
#define GLX_TRANSPARENT_INDEX_VALUE_EXT 0x24
555
#define GLX_TRANSPARENT_RED_VALUE_EXT 0x25
556
#define GLX_TRANSPARENT_GREEN_VALUE_EXT 0x26
557
#define GLX_TRANSPARENT_BLUE_VALUE_EXT 0x27
558
#define GLX_TRANSPARENT_ALPHA_VALUE_EXT 0x28
559
#define GLX_NONE_EXT 0x8000
560
#define GLX_TRUE_COLOR_EXT 0x8002
561
#define GLX_DIRECT_COLOR_EXT 0x8003
562
#define GLX_PSEUDO_COLOR_EXT 0x8004
563
#define GLX_STATIC_COLOR_EXT 0x8005
564
#define GLX_GRAY_SCALE_EXT 0x8006
565
#define GLX_STATIC_GRAY_EXT 0x8007
566
#define GLX_TRANSPARENT_RGB_EXT 0x8008
567
#define GLX_TRANSPARENT_INDEX_EXT 0x8009
569
#define GLXEW_EXT_visual_info GLXEW_GET_VAR(__GLXEW_EXT_visual_info)
571
#endif /* GLX_EXT_visual_info */
573
/* ------------------------- GLX_EXT_visual_rating ------------------------- */
575
#ifndef GLX_EXT_visual_rating
576
#define GLX_EXT_visual_rating 1
578
#define GLX_VISUAL_CAVEAT_EXT 0x20
579
#define GLX_SLOW_VISUAL_EXT 0x8001
580
#define GLX_NON_CONFORMANT_VISUAL_EXT 0x800D
582
#define GLXEW_EXT_visual_rating GLXEW_GET_VAR(__GLXEW_EXT_visual_rating)
584
#endif /* GLX_EXT_visual_rating */
586
/* -------------------------- GLX_MESA_agp_offset -------------------------- */
588
#ifndef GLX_MESA_agp_offset
589
#define GLX_MESA_agp_offset 1
591
typedef unsigned int ( * PFNGLXGETAGPOFFSETMESAPROC) (const void* pointer);
593
#define glXGetAGPOffsetMESA GLXEW_GET_FUN(__glewXGetAGPOffsetMESA)
595
#define GLXEW_MESA_agp_offset GLXEW_GET_VAR(__GLXEW_MESA_agp_offset)
597
#endif /* GLX_MESA_agp_offset */
599
/* ------------------------ GLX_MESA_copy_sub_buffer ----------------------- */
601
#ifndef GLX_MESA_copy_sub_buffer
602
#define GLX_MESA_copy_sub_buffer 1
604
typedef void ( * PFNGLXCOPYSUBBUFFERMESAPROC) (Display* dpy, GLXDrawable drawable, int x, int y, int width, int height);
606
#define glXCopySubBufferMESA GLXEW_GET_FUN(__glewXCopySubBufferMESA)
608
#define GLXEW_MESA_copy_sub_buffer GLXEW_GET_VAR(__GLXEW_MESA_copy_sub_buffer)
610
#endif /* GLX_MESA_copy_sub_buffer */
612
/* ------------------------ GLX_MESA_pixmap_colormap ----------------------- */
614
#ifndef GLX_MESA_pixmap_colormap
615
#define GLX_MESA_pixmap_colormap 1
617
typedef GLXPixmap ( * PFNGLXCREATEGLXPIXMAPMESAPROC) (Display* dpy, XVisualInfo *visual, Pixmap pixmap, Colormap cmap);
619
#define glXCreateGLXPixmapMESA GLXEW_GET_FUN(__glewXCreateGLXPixmapMESA)
621
#define GLXEW_MESA_pixmap_colormap GLXEW_GET_VAR(__GLXEW_MESA_pixmap_colormap)
623
#endif /* GLX_MESA_pixmap_colormap */
625
/* ------------------------ GLX_MESA_release_buffers ----------------------- */
627
#ifndef GLX_MESA_release_buffers
628
#define GLX_MESA_release_buffers 1
630
typedef Bool ( * PFNGLXRELEASEBUFFERSMESAPROC) (Display* dpy, GLXDrawable d);
632
#define glXReleaseBuffersMESA GLXEW_GET_FUN(__glewXReleaseBuffersMESA)
634
#define GLXEW_MESA_release_buffers GLXEW_GET_VAR(__GLXEW_MESA_release_buffers)
636
#endif /* GLX_MESA_release_buffers */
638
/* ------------------------- GLX_MESA_set_3dfx_mode ------------------------ */
640
#ifndef GLX_MESA_set_3dfx_mode
641
#define GLX_MESA_set_3dfx_mode 1
643
#define GLX_3DFX_WINDOW_MODE_MESA 0x1
644
#define GLX_3DFX_FULLSCREEN_MODE_MESA 0x2
646
typedef GLboolean ( * PFNGLXSET3DFXMODEMESAPROC) (GLint mode);
648
#define glXSet3DfxModeMESA GLXEW_GET_FUN(__glewXSet3DfxModeMESA)
650
#define GLXEW_MESA_set_3dfx_mode GLXEW_GET_VAR(__GLXEW_MESA_set_3dfx_mode)
652
#endif /* GLX_MESA_set_3dfx_mode */
654
/* -------------------------- GLX_NV_float_buffer -------------------------- */
656
#ifndef GLX_NV_float_buffer
657
#define GLX_NV_float_buffer 1
659
#define GLX_FLOAT_COMPONENTS_NV 0x20B0
661
#define GLXEW_NV_float_buffer GLXEW_GET_VAR(__GLXEW_NV_float_buffer)
663
#endif /* GLX_NV_float_buffer */
665
/* ----------------------- GLX_NV_vertex_array_range ----------------------- */
667
#ifndef GLX_NV_vertex_array_range
668
#define GLX_NV_vertex_array_range 1
670
typedef void * ( * PFNGLXALLOCATEMEMORYNVPROC) (GLsizei size, GLfloat readFrequency, GLfloat writeFrequency, GLfloat priority);
671
typedef void ( * PFNGLXFREEMEMORYNVPROC) (void *pointer);
673
#define glXAllocateMemoryNV GLXEW_GET_FUN(__glewXAllocateMemoryNV)
674
#define glXFreeMemoryNV GLXEW_GET_FUN(__glewXFreeMemoryNV)
676
#define GLXEW_NV_vertex_array_range GLXEW_GET_VAR(__GLXEW_NV_vertex_array_range)
678
#endif /* GLX_NV_vertex_array_range */
680
/* -------------------------- GLX_OML_swap_method -------------------------- */
682
#ifndef GLX_OML_swap_method
683
#define GLX_OML_swap_method 1
685
#define GLX_SWAP_METHOD_OML 0x8060
686
#define GLX_SWAP_EXCHANGE_OML 0x8061
687
#define GLX_SWAP_COPY_OML 0x8062
688
#define GLX_SWAP_UNDEFINED_OML 0x8063
690
#define GLXEW_OML_swap_method GLXEW_GET_VAR(__GLXEW_OML_swap_method)
692
#endif /* GLX_OML_swap_method */
694
/* -------------------------- GLX_OML_sync_control ------------------------- */
696
#if !defined(GLX_OML_sync_control) && defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 199901L)
697
#include <inttypes.h>
698
#define GLX_OML_sync_control 1
700
typedef Bool ( * PFNGLXGETMSCRATEOMLPROC) (Display* dpy, GLXDrawable drawable, int32_t* numerator, int32_t* denominator);
701
typedef Bool ( * PFNGLXGETSYNCVALUESOMLPROC) (Display* dpy, GLXDrawable drawable, int64_t* ust, int64_t* msc, int64_t* sbc);
702
typedef int64_t ( * PFNGLXSWAPBUFFERSMSCOMLPROC) (Display* dpy, GLXDrawable drawable, int64_t target_msc, int64_t divisor, int64_t remainder);
703
typedef Bool ( * PFNGLXWAITFORMSCOMLPROC) (Display* dpy, GLXDrawable drawable, int64_t target_msc, int64_t divisor, int64_t remainder, int64_t* ust, int64_t* msc, int64_t* sbc);
704
typedef Bool ( * PFNGLXWAITFORSBCOMLPROC) (Display* dpy, GLXDrawable drawable, int64_t target_sbc, int64_t* ust, int64_t* msc, int64_t* sbc);
706
#define glXGetMscRateOML GLXEW_GET_FUN(__glewXGetMscRateOML)
707
#define glXGetSyncValuesOML GLXEW_GET_FUN(__glewXGetSyncValuesOML)
708
#define glXSwapBuffersMscOML GLXEW_GET_FUN(__glewXSwapBuffersMscOML)
709
#define glXWaitForMscOML GLXEW_GET_FUN(__glewXWaitForMscOML)
710
#define glXWaitForSbcOML GLXEW_GET_FUN(__glewXWaitForSbcOML)
712
#define GLXEW_OML_sync_control GLXEW_GET_VAR(__GLXEW_OML_sync_control)
714
#endif /* GLX_OML_sync_control */
716
/* ------------------------ GLX_SGIS_blended_overlay ----------------------- */
718
#ifndef GLX_SGIS_blended_overlay
719
#define GLX_SGIS_blended_overlay 1
721
#define GLX_BLENDED_RGBA_SGIS 0x8025
723
#define GLXEW_SGIS_blended_overlay GLXEW_GET_VAR(__GLXEW_SGIS_blended_overlay)
725
#endif /* GLX_SGIS_blended_overlay */
727
/* -------------------------- GLX_SGIS_color_range ------------------------- */
729
#ifndef GLX_SGIS_color_range
730
#define GLX_SGIS_color_range 1
732
#define GLX_MIN_RED_SGIS 0
733
#define GLX_MAX_GREEN_SGIS 0
734
#define GLX_MIN_BLUE_SGIS 0
735
#define GLX_MAX_ALPHA_SGIS 0
736
#define GLX_MIN_GREEN_SGIS 0
737
#define GLX_MIN_ALPHA_SGIS 0
738
#define GLX_MAX_RED_SGIS 0
739
#define GLX_EXTENDED_RANGE_SGIS 0
740
#define GLX_MAX_BLUE_SGIS 0
742
#define GLXEW_SGIS_color_range GLXEW_GET_VAR(__GLXEW_SGIS_color_range)
744
#endif /* GLX_SGIS_color_range */
746
/* -------------------------- GLX_SGIS_multisample ------------------------- */
748
#ifndef GLX_SGIS_multisample
749
#define GLX_SGIS_multisample 1
751
#define GLX_SAMPLE_BUFFERS_SGIS 100000
752
#define GLX_SAMPLES_SGIS 100001
754
#define GLXEW_SGIS_multisample GLXEW_GET_VAR(__GLXEW_SGIS_multisample)
756
#endif /* GLX_SGIS_multisample */
758
/* ---------------------- GLX_SGIS_shared_multisample ---------------------- */
760
#ifndef GLX_SGIS_shared_multisample
761
#define GLX_SGIS_shared_multisample 1
763
#define GLX_MULTISAMPLE_SUB_RECT_WIDTH_SGIS 0x8026
764
#define GLX_MULTISAMPLE_SUB_RECT_HEIGHT_SGIS 0x8027
766
#define GLXEW_SGIS_shared_multisample GLXEW_GET_VAR(__GLXEW_SGIS_shared_multisample)
768
#endif /* GLX_SGIS_shared_multisample */
770
/* --------------------------- GLX_SGIX_fbconfig --------------------------- */
772
#ifndef GLX_SGIX_fbconfig
773
#define GLX_SGIX_fbconfig 1
775
#define GLX_WINDOW_BIT_SGIX 0x00000001
776
#define GLX_RGBA_BIT_SGIX 0x00000001
777
#define GLX_PIXMAP_BIT_SGIX 0x00000002
778
#define GLX_COLOR_INDEX_BIT_SGIX 0x00000002
779
#define GLX_SCREEN_EXT 0x800C
780
#define GLX_DRAWABLE_TYPE_SGIX 0x8010
781
#define GLX_RENDER_TYPE_SGIX 0x8011
782
#define GLX_X_RENDERABLE_SGIX 0x8012
783
#define GLX_FBCONFIG_ID_SGIX 0x8013
784
#define GLX_RGBA_TYPE_SGIX 0x8014
785
#define GLX_COLOR_INDEX_TYPE_SGIX 0x8015
787
typedef XID GLXFBConfigIDSGIX;
788
typedef struct __GLXFBConfigRec *GLXFBConfigSGIX;
790
typedef GLXFBConfigSGIX* ( * PFNGLXCHOOSEFBCONFIGSGIXPROC) (Display *dpy, int screen, const int *attrib_list, int *nelements);
791
typedef GLXContext ( * PFNGLXCREATECONTEXTWITHCONFIGSGIXPROC) (Display* dpy, GLXFBConfig config, int render_type, GLXContext share_list, Bool direct);
792
typedef GLXPixmap ( * PFNGLXCREATEGLXPIXMAPWITHCONFIGSGIXPROC) (Display* dpy, GLXFBConfig config, Pixmap pixmap);
793
typedef int ( * PFNGLXGETFBCONFIGATTRIBSGIXPROC) (Display* dpy, GLXFBConfigSGIX config, int attribute, int *value);
794
typedef GLXFBConfigSGIX ( * PFNGLXGETFBCONFIGFROMVISUALSGIXPROC) (Display* dpy, XVisualInfo *vis);
795
typedef XVisualInfo* ( * PFNGLXGETVISUALFROMFBCONFIGSGIXPROC) (Display *dpy, GLXFBConfig config);
797
#define glXChooseFBConfigSGIX GLXEW_GET_FUN(__glewXChooseFBConfigSGIX)
798
#define glXCreateContextWithConfigSGIX GLXEW_GET_FUN(__glewXCreateContextWithConfigSGIX)
799
#define glXCreateGLXPixmapWithConfigSGIX GLXEW_GET_FUN(__glewXCreateGLXPixmapWithConfigSGIX)
800
#define glXGetFBConfigAttribSGIX GLXEW_GET_FUN(__glewXGetFBConfigAttribSGIX)
801
#define glXGetFBConfigFromVisualSGIX GLXEW_GET_FUN(__glewXGetFBConfigFromVisualSGIX)
802
#define glXGetVisualFromFBConfigSGIX GLXEW_GET_FUN(__glewXGetVisualFromFBConfigSGIX)
804
#define GLXEW_SGIX_fbconfig GLXEW_GET_VAR(__GLXEW_SGIX_fbconfig)
806
#endif /* GLX_SGIX_fbconfig */
808
/* --------------------------- GLX_SGIX_hyperpipe -------------------------- */
810
#ifndef GLX_SGIX_hyperpipe
811
#define GLX_SGIX_hyperpipe 1
813
#define GLX_HYPERPIPE_DISPLAY_PIPE_SGIX 0x00000001
814
#define GLX_PIPE_RECT_SGIX 0x00000001
815
#define GLX_PIPE_RECT_LIMITS_SGIX 0x00000002
816
#define GLX_HYPERPIPE_RENDER_PIPE_SGIX 0x00000002
817
#define GLX_HYPERPIPE_STEREO_SGIX 0x00000003
818
#define GLX_HYPERPIPE_PIXEL_AVERAGE_SGIX 0x00000004
819
#define GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX 80
820
#define GLX_BAD_HYPERPIPE_CONFIG_SGIX 91
821
#define GLX_BAD_HYPERPIPE_SGIX 92
822
#define GLX_HYPERPIPE_ID_SGIX 0x8030
825
char pipeName[GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX];
827
} GLXHyperpipeNetworkSGIX;
829
char pipeName[GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX];
836
char pipeName[GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX];
838
unsigned int participationType;
840
} GLXHyperpipeConfigSGIX;
842
char pipeName[GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX];
853
typedef int ( * PFNGLXBINDHYPERPIPESGIXPROC) (Display *dpy, int hpId);
854
typedef int ( * PFNGLXDESTROYHYPERPIPECONFIGSGIXPROC) (Display *dpy, int hpId);
855
typedef int ( * PFNGLXHYPERPIPEATTRIBSGIXPROC) (Display *dpy, int timeSlice, int attrib, int size, void *attribList);
856
typedef int ( * PFNGLXHYPERPIPECONFIGSGIXPROC) (Display *dpy, int networkId, int npipes, GLXHyperpipeConfigSGIX *cfg, int *hpId);
857
typedef int ( * PFNGLXQUERYHYPERPIPEATTRIBSGIXPROC) (Display *dpy, int timeSlice, int attrib, int size, void *returnAttribList);
858
typedef int ( * PFNGLXQUERYHYPERPIPEBESTATTRIBSGIXPROC) (Display *dpy, int timeSlice, int attrib, int size, void *attribList, void *returnAttribList);
859
typedef GLXHyperpipeConfigSGIX * ( * PFNGLXQUERYHYPERPIPECONFIGSGIXPROC) (Display *dpy, int hpId, int *npipes);
860
typedef GLXHyperpipeNetworkSGIX * ( * PFNGLXQUERYHYPERPIPENETWORKSGIXPROC) (Display *dpy, int *npipes);
862
#define glXBindHyperpipeSGIX GLXEW_GET_FUN(__glewXBindHyperpipeSGIX)
863
#define glXDestroyHyperpipeConfigSGIX GLXEW_GET_FUN(__glewXDestroyHyperpipeConfigSGIX)
864
#define glXHyperpipeAttribSGIX GLXEW_GET_FUN(__glewXHyperpipeAttribSGIX)
865
#define glXHyperpipeConfigSGIX GLXEW_GET_FUN(__glewXHyperpipeConfigSGIX)
866
#define glXQueryHyperpipeAttribSGIX GLXEW_GET_FUN(__glewXQueryHyperpipeAttribSGIX)
867
#define glXQueryHyperpipeBestAttribSGIX GLXEW_GET_FUN(__glewXQueryHyperpipeBestAttribSGIX)
868
#define glXQueryHyperpipeConfigSGIX GLXEW_GET_FUN(__glewXQueryHyperpipeConfigSGIX)
869
#define glXQueryHyperpipeNetworkSGIX GLXEW_GET_FUN(__glewXQueryHyperpipeNetworkSGIX)
871
#define GLXEW_SGIX_hyperpipe GLXEW_GET_VAR(__GLXEW_SGIX_hyperpipe)
873
#endif /* GLX_SGIX_hyperpipe */
875
/* ---------------------------- GLX_SGIX_pbuffer --------------------------- */
877
#ifndef GLX_SGIX_pbuffer
878
#define GLX_SGIX_pbuffer 1
880
#define GLX_FRONT_LEFT_BUFFER_BIT_SGIX 0x00000001
881
#define GLX_FRONT_RIGHT_BUFFER_BIT_SGIX 0x00000002
882
#define GLX_PBUFFER_BIT_SGIX 0x00000004
883
#define GLX_BACK_LEFT_BUFFER_BIT_SGIX 0x00000004
884
#define GLX_BACK_RIGHT_BUFFER_BIT_SGIX 0x00000008
885
#define GLX_AUX_BUFFERS_BIT_SGIX 0x00000010
886
#define GLX_DEPTH_BUFFER_BIT_SGIX 0x00000020
887
#define GLX_STENCIL_BUFFER_BIT_SGIX 0x00000040
888
#define GLX_ACCUM_BUFFER_BIT_SGIX 0x00000080
889
#define GLX_SAMPLE_BUFFERS_BIT_SGIX 0x00000100
890
#define GLX_MAX_PBUFFER_WIDTH_SGIX 0x8016
891
#define GLX_MAX_PBUFFER_HEIGHT_SGIX 0x8017
892
#define GLX_MAX_PBUFFER_PIXELS_SGIX 0x8018
893
#define GLX_OPTIMAL_PBUFFER_WIDTH_SGIX 0x8019
894
#define GLX_OPTIMAL_PBUFFER_HEIGHT_SGIX 0x801A
895
#define GLX_PRESERVED_CONTENTS_SGIX 0x801B
896
#define GLX_LARGEST_PBUFFER_SGIX 0x801C
897
#define GLX_WIDTH_SGIX 0x801D
898
#define GLX_HEIGHT_SGIX 0x801E
899
#define GLX_EVENT_MASK_SGIX 0x801F
900
#define GLX_DAMAGED_SGIX 0x8020
901
#define GLX_SAVED_SGIX 0x8021
902
#define GLX_WINDOW_SGIX 0x8022
903
#define GLX_PBUFFER_SGIX 0x8023
904
#define GLX_BUFFER_CLOBBER_MASK_SGIX 0x08000000
906
typedef XID GLXPbufferSGIX;
907
typedef struct { int type; unsigned long serial; Bool send_event; Display *display; GLXDrawable drawable; int event_type; int draw_type; unsigned int mask; int x, y; int width, height; int count; } GLXBufferClobberEventSGIX;
909
typedef GLXPbuffer ( * PFNGLXCREATEGLXPBUFFERSGIXPROC) (Display* dpy, GLXFBConfig config, unsigned int width, unsigned int height, int *attrib_list);
910
typedef void ( * PFNGLXDESTROYGLXPBUFFERSGIXPROC) (Display* dpy, GLXPbuffer pbuf);
911
typedef void ( * PFNGLXGETSELECTEDEVENTSGIXPROC) (Display* dpy, GLXDrawable drawable, unsigned long *mask);
912
typedef void ( * PFNGLXQUERYGLXPBUFFERSGIXPROC) (Display* dpy, GLXPbuffer pbuf, int attribute, unsigned int *value);
913
typedef void ( * PFNGLXSELECTEVENTSGIXPROC) (Display* dpy, GLXDrawable drawable, unsigned long mask);
915
#define glXCreateGLXPbufferSGIX GLXEW_GET_FUN(__glewXCreateGLXPbufferSGIX)
916
#define glXDestroyGLXPbufferSGIX GLXEW_GET_FUN(__glewXDestroyGLXPbufferSGIX)
917
#define glXGetSelectedEventSGIX GLXEW_GET_FUN(__glewXGetSelectedEventSGIX)
918
#define glXQueryGLXPbufferSGIX GLXEW_GET_FUN(__glewXQueryGLXPbufferSGIX)
919
#define glXSelectEventSGIX GLXEW_GET_FUN(__glewXSelectEventSGIX)
921
#define GLXEW_SGIX_pbuffer GLXEW_GET_VAR(__GLXEW_SGIX_pbuffer)
923
#endif /* GLX_SGIX_pbuffer */
925
/* ------------------------- GLX_SGIX_swap_barrier ------------------------- */
927
#ifndef GLX_SGIX_swap_barrier
928
#define GLX_SGIX_swap_barrier 1
930
typedef void ( * PFNGLXBINDSWAPBARRIERSGIXPROC) (Display *dpy, GLXDrawable drawable, int barrier);
931
typedef Bool ( * PFNGLXQUERYMAXSWAPBARRIERSSGIXPROC) (Display *dpy, int screen, int *max);
933
#define glXBindSwapBarrierSGIX GLXEW_GET_FUN(__glewXBindSwapBarrierSGIX)
934
#define glXQueryMaxSwapBarriersSGIX GLXEW_GET_FUN(__glewXQueryMaxSwapBarriersSGIX)
936
#define GLXEW_SGIX_swap_barrier GLXEW_GET_VAR(__GLXEW_SGIX_swap_barrier)
938
#endif /* GLX_SGIX_swap_barrier */
940
/* -------------------------- GLX_SGIX_swap_group -------------------------- */
942
#ifndef GLX_SGIX_swap_group
943
#define GLX_SGIX_swap_group 1
945
typedef void ( * PFNGLXJOINSWAPGROUPSGIXPROC) (Display *dpy, GLXDrawable drawable, GLXDrawable member);
947
#define glXJoinSwapGroupSGIX GLXEW_GET_FUN(__glewXJoinSwapGroupSGIX)
949
#define GLXEW_SGIX_swap_group GLXEW_GET_VAR(__GLXEW_SGIX_swap_group)
951
#endif /* GLX_SGIX_swap_group */
953
/* ------------------------- GLX_SGIX_video_resize ------------------------- */
955
#ifndef GLX_SGIX_video_resize
956
#define GLX_SGIX_video_resize 1
958
#define GLX_SYNC_FRAME_SGIX 0x00000000
959
#define GLX_SYNC_SWAP_SGIX 0x00000001
961
typedef int ( * PFNGLXBINDCHANNELTOWINDOWSGIXPROC) (Display* display, int screen, int channel, Window window);
962
typedef int ( * PFNGLXCHANNELRECTSGIXPROC) (Display* display, int screen, int channel, int x, int y, int w, int h);
963
typedef int ( * PFNGLXCHANNELRECTSYNCSGIXPROC) (Display* display, int screen, int channel, GLenum synctype);
964
typedef int ( * PFNGLXQUERYCHANNELDELTASSGIXPROC) (Display* display, int screen, int channel, int *x, int *y, int *w, int *h);
965
typedef int ( * PFNGLXQUERYCHANNELRECTSGIXPROC) (Display* display, int screen, int channel, int *dx, int *dy, int *dw, int *dh);
967
#define glXBindChannelToWindowSGIX GLXEW_GET_FUN(__glewXBindChannelToWindowSGIX)
968
#define glXChannelRectSGIX GLXEW_GET_FUN(__glewXChannelRectSGIX)
969
#define glXChannelRectSyncSGIX GLXEW_GET_FUN(__glewXChannelRectSyncSGIX)
970
#define glXQueryChannelDeltasSGIX GLXEW_GET_FUN(__glewXQueryChannelDeltasSGIX)
971
#define glXQueryChannelRectSGIX GLXEW_GET_FUN(__glewXQueryChannelRectSGIX)
973
#define GLXEW_SGIX_video_resize GLXEW_GET_VAR(__GLXEW_SGIX_video_resize)
975
#endif /* GLX_SGIX_video_resize */
977
/* ---------------------- GLX_SGIX_visual_select_group --------------------- */
979
#ifndef GLX_SGIX_visual_select_group
980
#define GLX_SGIX_visual_select_group 1
982
#define GLX_VISUAL_SELECT_GROUP_SGIX 0x8028
984
#define GLXEW_SGIX_visual_select_group GLXEW_GET_VAR(__GLXEW_SGIX_visual_select_group)
986
#endif /* GLX_SGIX_visual_select_group */
988
/* ---------------------------- GLX_SGI_cushion ---------------------------- */
990
#ifndef GLX_SGI_cushion
991
#define GLX_SGI_cushion 1
993
typedef void ( * PFNGLXCUSHIONSGIPROC) (Display* dpy, Window window, float cushion);
995
#define glXCushionSGI GLXEW_GET_FUN(__glewXCushionSGI)
997
#define GLXEW_SGI_cushion GLXEW_GET_VAR(__GLXEW_SGI_cushion)
999
#endif /* GLX_SGI_cushion */
1001
/* ----------------------- GLX_SGI_make_current_read ----------------------- */
1003
#ifndef GLX_SGI_make_current_read
1004
#define GLX_SGI_make_current_read 1
1006
typedef GLXDrawable ( * PFNGLXGETCURRENTREADDRAWABLESGIPROC) (void);
1007
typedef Bool ( * PFNGLXMAKECURRENTREADSGIPROC) (Display* dpy, GLXDrawable draw, GLXDrawable read, GLXContext ctx);
1009
#define glXGetCurrentReadDrawableSGI GLXEW_GET_FUN(__glewXGetCurrentReadDrawableSGI)
1010
#define glXMakeCurrentReadSGI GLXEW_GET_FUN(__glewXMakeCurrentReadSGI)
1012
#define GLXEW_SGI_make_current_read GLXEW_GET_VAR(__GLXEW_SGI_make_current_read)
1014
#endif /* GLX_SGI_make_current_read */
1016
/* -------------------------- GLX_SGI_swap_control ------------------------- */
1018
#ifndef GLX_SGI_swap_control
1019
#define GLX_SGI_swap_control 1
1021
typedef int ( * PFNGLXSWAPINTERVALSGIPROC) (int interval);
1023
#define glXSwapIntervalSGI GLXEW_GET_FUN(__glewXSwapIntervalSGI)
1025
#define GLXEW_SGI_swap_control GLXEW_GET_VAR(__GLXEW_SGI_swap_control)
1027
#endif /* GLX_SGI_swap_control */
1029
/* --------------------------- GLX_SGI_video_sync -------------------------- */
1031
#ifndef GLX_SGI_video_sync
1032
#define GLX_SGI_video_sync 1
1034
typedef int ( * PFNGLXGETVIDEOSYNCSGIPROC) (uint* count);
1035
typedef int ( * PFNGLXWAITVIDEOSYNCSGIPROC) (int divisor, int remainder, unsigned int* count);
1037
#define glXGetVideoSyncSGI GLXEW_GET_FUN(__glewXGetVideoSyncSGI)
1038
#define glXWaitVideoSyncSGI GLXEW_GET_FUN(__glewXWaitVideoSyncSGI)
1040
#define GLXEW_SGI_video_sync GLXEW_GET_VAR(__GLXEW_SGI_video_sync)
1042
#endif /* GLX_SGI_video_sync */
1044
/* --------------------- GLX_SUN_get_transparent_index --------------------- */
1046
#ifndef GLX_SUN_get_transparent_index
1047
#define GLX_SUN_get_transparent_index 1
1049
typedef Status ( * PFNGLXGETTRANSPARENTINDEXSUNPROC) (Display* dpy, Window overlay, Window underlay, unsigned long *pTransparentIndex);
1051
#define glXGetTransparentIndexSUN GLXEW_GET_FUN(__glewXGetTransparentIndexSUN)
1053
#define GLXEW_SUN_get_transparent_index GLXEW_GET_VAR(__GLXEW_SUN_get_transparent_index)
1055
#endif /* GLX_SUN_get_transparent_index */
1057
/* -------------------------- GLX_SUN_video_resize ------------------------- */
1059
#ifndef GLX_SUN_video_resize
1060
#define GLX_SUN_video_resize 1
1062
#define GLX_VIDEO_RESIZE_SUN 0x8171
1063
#define GL_VIDEO_RESIZE_COMPENSATION_SUN 0x85CD
1065
typedef int ( * PFNGLXGETVIDEORESIZESUNPROC) (Display* display, GLXDrawable window, float* factor);
1066
typedef int ( * PFNGLXVIDEORESIZESUNPROC) (Display* display, GLXDrawable window, float factor);
1068
#define glXGetVideoResizeSUN GLXEW_GET_FUN(__glewXGetVideoResizeSUN)
1069
#define glXVideoResizeSUN GLXEW_GET_FUN(__glewXVideoResizeSUN)
1071
#define GLXEW_SUN_video_resize GLXEW_GET_VAR(__GLXEW_SUN_video_resize)
1073
#endif /* GLX_SUN_video_resize */
1075
/* ------------------------------------------------------------------------- */
1078
#define GLXEW_EXPORT
1080
#define GLXEW_EXPORT extern
1081
#endif /* GLEW_MX */
1083
extern PFNGLXGETCURRENTDISPLAYPROC __glewXGetCurrentDisplay;
1085
extern PFNGLXCHOOSEFBCONFIGPROC __glewXChooseFBConfig;
1086
extern PFNGLXCREATENEWCONTEXTPROC __glewXCreateNewContext;
1087
extern PFNGLXCREATEPBUFFERPROC __glewXCreatePbuffer;
1088
extern PFNGLXCREATEPIXMAPPROC __glewXCreatePixmap;
1089
extern PFNGLXCREATEWINDOWPROC __glewXCreateWindow;
1090
extern PFNGLXDESTROYPBUFFERPROC __glewXDestroyPbuffer;
1091
extern PFNGLXDESTROYPIXMAPPROC __glewXDestroyPixmap;
1092
extern PFNGLXDESTROYWINDOWPROC __glewXDestroyWindow;
1093
extern PFNGLXGETCURRENTREADDRAWABLEPROC __glewXGetCurrentReadDrawable;
1094
extern PFNGLXGETFBCONFIGATTRIBPROC __glewXGetFBConfigAttrib;
1095
extern PFNGLXGETFBCONFIGSPROC __glewXGetFBConfigs;
1096
extern PFNGLXGETSELECTEDEVENTPROC __glewXGetSelectedEvent;
1097
extern PFNGLXGETVISUALFROMFBCONFIGPROC __glewXGetVisualFromFBConfig;
1098
extern PFNGLXMAKECONTEXTCURRENTPROC __glewXMakeContextCurrent;
1099
extern PFNGLXQUERYCONTEXTPROC __glewXQueryContext;
1100
extern PFNGLXQUERYDRAWABLEPROC __glewXQueryDrawable;
1101
extern PFNGLXSELECTEVENTPROC __glewXSelectEvent;
1103
extern PFNGLXBINDTEXIMAGEATIPROC __glewXBindTexImageATI;
1104
extern PFNGLXDRAWABLEATTRIBATIPROC __glewXDrawableAttribATI;
1105
extern PFNGLXRELEASETEXIMAGEATIPROC __glewXReleaseTexImageATI;
1107
extern PFNGLXFREECONTEXTEXTPROC __glewXFreeContextEXT;
1108
extern PFNGLXGETCONTEXTIDEXTPROC __glewXGetContextIDEXT;
1109
extern PFNGLXIMPORTCONTEXTEXTPROC __glewXImportContextEXT;
1110
extern PFNGLXQUERYCONTEXTINFOEXTPROC __glewXQueryContextInfoEXT;
1112
extern PFNGLXBINDTEXIMAGEEXTPROC __glewXBindTexImageEXT;
1113
extern PFNGLXRELEASETEXIMAGEEXTPROC __glewXReleaseTexImageEXT;
1115
extern PFNGLXGETAGPOFFSETMESAPROC __glewXGetAGPOffsetMESA;
1117
extern PFNGLXCOPYSUBBUFFERMESAPROC __glewXCopySubBufferMESA;
1119
extern PFNGLXCREATEGLXPIXMAPMESAPROC __glewXCreateGLXPixmapMESA;
1121
extern PFNGLXRELEASEBUFFERSMESAPROC __glewXReleaseBuffersMESA;
1123
extern PFNGLXSET3DFXMODEMESAPROC __glewXSet3DfxModeMESA;
1125
extern PFNGLXALLOCATEMEMORYNVPROC __glewXAllocateMemoryNV;
1126
extern PFNGLXFREEMEMORYNVPROC __glewXFreeMemoryNV;
1128
#ifdef GLX_OML_sync_control
1129
extern PFNGLXGETMSCRATEOMLPROC __glewXGetMscRateOML;
1130
extern PFNGLXGETSYNCVALUESOMLPROC __glewXGetSyncValuesOML;
1131
extern PFNGLXSWAPBUFFERSMSCOMLPROC __glewXSwapBuffersMscOML;
1132
extern PFNGLXWAITFORMSCOMLPROC __glewXWaitForMscOML;
1133
extern PFNGLXWAITFORSBCOMLPROC __glewXWaitForSbcOML;
1136
extern PFNGLXCHOOSEFBCONFIGSGIXPROC __glewXChooseFBConfigSGIX;
1137
extern PFNGLXCREATECONTEXTWITHCONFIGSGIXPROC __glewXCreateContextWithConfigSGIX;
1138
extern PFNGLXCREATEGLXPIXMAPWITHCONFIGSGIXPROC __glewXCreateGLXPixmapWithConfigSGIX;
1139
extern PFNGLXGETFBCONFIGATTRIBSGIXPROC __glewXGetFBConfigAttribSGIX;
1140
extern PFNGLXGETFBCONFIGFROMVISUALSGIXPROC __glewXGetFBConfigFromVisualSGIX;
1141
extern PFNGLXGETVISUALFROMFBCONFIGSGIXPROC __glewXGetVisualFromFBConfigSGIX;
1143
extern PFNGLXBINDHYPERPIPESGIXPROC __glewXBindHyperpipeSGIX;
1144
extern PFNGLXDESTROYHYPERPIPECONFIGSGIXPROC __glewXDestroyHyperpipeConfigSGIX;
1145
extern PFNGLXHYPERPIPEATTRIBSGIXPROC __glewXHyperpipeAttribSGIX;
1146
extern PFNGLXHYPERPIPECONFIGSGIXPROC __glewXHyperpipeConfigSGIX;
1147
extern PFNGLXQUERYHYPERPIPEATTRIBSGIXPROC __glewXQueryHyperpipeAttribSGIX;
1148
extern PFNGLXQUERYHYPERPIPEBESTATTRIBSGIXPROC __glewXQueryHyperpipeBestAttribSGIX;
1149
extern PFNGLXQUERYHYPERPIPECONFIGSGIXPROC __glewXQueryHyperpipeConfigSGIX;
1150
extern PFNGLXQUERYHYPERPIPENETWORKSGIXPROC __glewXQueryHyperpipeNetworkSGIX;
1152
extern PFNGLXCREATEGLXPBUFFERSGIXPROC __glewXCreateGLXPbufferSGIX;
1153
extern PFNGLXDESTROYGLXPBUFFERSGIXPROC __glewXDestroyGLXPbufferSGIX;
1154
extern PFNGLXGETSELECTEDEVENTSGIXPROC __glewXGetSelectedEventSGIX;
1155
extern PFNGLXQUERYGLXPBUFFERSGIXPROC __glewXQueryGLXPbufferSGIX;
1156
extern PFNGLXSELECTEVENTSGIXPROC __glewXSelectEventSGIX;
1158
extern PFNGLXBINDSWAPBARRIERSGIXPROC __glewXBindSwapBarrierSGIX;
1159
extern PFNGLXQUERYMAXSWAPBARRIERSSGIXPROC __glewXQueryMaxSwapBarriersSGIX;
1161
extern PFNGLXJOINSWAPGROUPSGIXPROC __glewXJoinSwapGroupSGIX;
1163
extern PFNGLXBINDCHANNELTOWINDOWSGIXPROC __glewXBindChannelToWindowSGIX;
1164
extern PFNGLXCHANNELRECTSGIXPROC __glewXChannelRectSGIX;
1165
extern PFNGLXCHANNELRECTSYNCSGIXPROC __glewXChannelRectSyncSGIX;
1166
extern PFNGLXQUERYCHANNELDELTASSGIXPROC __glewXQueryChannelDeltasSGIX;
1167
extern PFNGLXQUERYCHANNELRECTSGIXPROC __glewXQueryChannelRectSGIX;
1169
extern PFNGLXCUSHIONSGIPROC __glewXCushionSGI;
1171
extern PFNGLXGETCURRENTREADDRAWABLESGIPROC __glewXGetCurrentReadDrawableSGI;
1172
extern PFNGLXMAKECURRENTREADSGIPROC __glewXMakeCurrentReadSGI;
1174
extern PFNGLXSWAPINTERVALSGIPROC __glewXSwapIntervalSGI;
1176
extern PFNGLXGETVIDEOSYNCSGIPROC __glewXGetVideoSyncSGI;
1177
extern PFNGLXWAITVIDEOSYNCSGIPROC __glewXWaitVideoSyncSGI;
1179
extern PFNGLXGETTRANSPARENTINDEXSUNPROC __glewXGetTransparentIndexSUN;
1181
extern PFNGLXGETVIDEORESIZESUNPROC __glewXGetVideoResizeSUN;
1182
extern PFNGLXVIDEORESIZESUNPROC __glewXVideoResizeSUN;
1184
#if defined(GLEW_MX)
1185
struct GLXEWContextStruct
1187
#endif /* GLEW_MX */
1189
GLXEW_EXPORT GLboolean __GLXEW_VERSION_1_0;
1190
GLXEW_EXPORT GLboolean __GLXEW_VERSION_1_1;
1191
GLXEW_EXPORT GLboolean __GLXEW_VERSION_1_2;
1192
GLXEW_EXPORT GLboolean __GLXEW_VERSION_1_3;
1193
GLXEW_EXPORT GLboolean __GLXEW_VERSION_1_4;
1194
GLXEW_EXPORT GLboolean __GLXEW_3DFX_multisample;
1195
GLXEW_EXPORT GLboolean __GLXEW_ARB_fbconfig_float;
1196
GLXEW_EXPORT GLboolean __GLXEW_ARB_get_proc_address;
1197
GLXEW_EXPORT GLboolean __GLXEW_ARB_multisample;
1198
GLXEW_EXPORT GLboolean __GLXEW_ATI_pixel_format_float;
1199
GLXEW_EXPORT GLboolean __GLXEW_ATI_render_texture;
1200
GLXEW_EXPORT GLboolean __GLXEW_EXT_fbconfig_packed_float;
1201
GLXEW_EXPORT GLboolean __GLXEW_EXT_framebuffer_sRGB;
1202
GLXEW_EXPORT GLboolean __GLXEW_EXT_import_context;
1203
GLXEW_EXPORT GLboolean __GLXEW_EXT_scene_marker;
1204
GLXEW_EXPORT GLboolean __GLXEW_EXT_texture_from_pixmap;
1205
GLXEW_EXPORT GLboolean __GLXEW_EXT_visual_info;
1206
GLXEW_EXPORT GLboolean __GLXEW_EXT_visual_rating;
1207
GLXEW_EXPORT GLboolean __GLXEW_MESA_agp_offset;
1208
GLXEW_EXPORT GLboolean __GLXEW_MESA_copy_sub_buffer;
1209
GLXEW_EXPORT GLboolean __GLXEW_MESA_pixmap_colormap;
1210
GLXEW_EXPORT GLboolean __GLXEW_MESA_release_buffers;
1211
GLXEW_EXPORT GLboolean __GLXEW_MESA_set_3dfx_mode;
1212
GLXEW_EXPORT GLboolean __GLXEW_NV_float_buffer;
1213
GLXEW_EXPORT GLboolean __GLXEW_NV_vertex_array_range;
1214
GLXEW_EXPORT GLboolean __GLXEW_OML_swap_method;
1215
GLXEW_EXPORT GLboolean __GLXEW_OML_sync_control;
1216
GLXEW_EXPORT GLboolean __GLXEW_SGIS_blended_overlay;
1217
GLXEW_EXPORT GLboolean __GLXEW_SGIS_color_range;
1218
GLXEW_EXPORT GLboolean __GLXEW_SGIS_multisample;
1219
GLXEW_EXPORT GLboolean __GLXEW_SGIS_shared_multisample;
1220
GLXEW_EXPORT GLboolean __GLXEW_SGIX_fbconfig;
1221
GLXEW_EXPORT GLboolean __GLXEW_SGIX_hyperpipe;
1222
GLXEW_EXPORT GLboolean __GLXEW_SGIX_pbuffer;
1223
GLXEW_EXPORT GLboolean __GLXEW_SGIX_swap_barrier;
1224
GLXEW_EXPORT GLboolean __GLXEW_SGIX_swap_group;
1225
GLXEW_EXPORT GLboolean __GLXEW_SGIX_video_resize;
1226
GLXEW_EXPORT GLboolean __GLXEW_SGIX_visual_select_group;
1227
GLXEW_EXPORT GLboolean __GLXEW_SGI_cushion;
1228
GLXEW_EXPORT GLboolean __GLXEW_SGI_make_current_read;
1229
GLXEW_EXPORT GLboolean __GLXEW_SGI_swap_control;
1230
GLXEW_EXPORT GLboolean __GLXEW_SGI_video_sync;
1231
GLXEW_EXPORT GLboolean __GLXEW_SUN_get_transparent_index;
1232
GLXEW_EXPORT GLboolean __GLXEW_SUN_video_resize;
1235
}; /* GLXEWContextStruct */
1236
#endif /* GLEW_MX */
1238
/* ------------------------------------------------------------------------ */
1242
typedef struct GLXEWContextStruct GLXEWContext;
1243
extern GLenum glxewContextInit (GLXEWContext* ctx);
1244
extern GLboolean glxewContextIsSupported (GLXEWContext* ctx, const char* name);
1246
#define glxewInit() glxewContextInit(glxewGetContext())
1247
#define glxewIsSupported(x) glxewContextIsSupported(glxewGetContext(), x)
1249
#define GLXEW_GET_VAR(x) (*(const GLboolean*)&(glxewGetContext()->x))
1250
#define GLXEW_GET_FUN(x) x
1254
#define GLXEW_GET_VAR(x) (*(const GLboolean*)&x)
1255
#define GLXEW_GET_FUN(x) x
1257
extern GLboolean glxewIsSupported (const char* name);
1259
#endif /* GLEW_MX */
1261
extern GLboolean glxewGetExtension (const char* name);
1267
#endif /* __glxew_h__ */
2
** The OpenGL Extension Wrangler Library
3
** Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
4
** Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
5
** Copyright (C) 2002, Lev Povalahev
6
** All rights reserved.
8
** Redistribution and use in source and binary forms, with or without
9
** modification, are permitted provided that the following conditions are met:
11
** * Redistributions of source code must retain the above copyright notice,
12
** this list of conditions and the following disclaimer.
13
** * Redistributions in binary form must reproduce the above copyright notice,
14
** this list of conditions and the following disclaimer in the documentation
15
** and/or other materials provided with the distribution.
16
** * The name of the author may be used to endorse or promote products
17
** derived from this software without specific prior written permission.
19
** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
20
** AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
21
** IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
22
** ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
23
** LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
24
** CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
25
** SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
26
** INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
27
** CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
28
** ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
29
** THE POSSIBILITY OF SUCH DAMAGE.
33
* Mesa 3-D graphics library
36
* Copyright (C) 1999-2007 Brian Paul All Rights Reserved.
38
* Permission is hereby granted, free of charge, to any person obtaining a
39
* copy of this software and associated documentation files (the "Software"),
40
* to deal in the Software without restriction, including without limitation
41
* the rights to use, copy, modify, merge, publish, distribute, sublicense,
42
* and/or sell copies of the Software, and to permit persons to whom the
43
* Software is furnished to do so, subject to the following conditions:
45
* The above copyright notice and this permission notice shall be included
46
* in all copies or substantial portions of the Software.
48
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
49
* OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
50
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
51
* BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
52
* AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
53
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
57
** Copyright (c) 2007 The Khronos Group Inc.
59
** Permission is hereby granted, free of charge, to any person obtaining a
60
** copy of this software and/or associated documentation files (the
61
** "Materials"), to deal in the Materials without restriction, including
62
** without limitation the rights to use, copy, modify, merge, publish,
63
** distribute, sublicense, and/or sell copies of the Materials, and to
64
** permit persons to whom the Materials are furnished to do so, subject to
65
** the following conditions:
67
** The above copyright notice and this permission notice shall be included
68
** in all copies or substantial portions of the Materials.
70
** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
71
** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
72
** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
73
** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
74
** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
75
** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
76
** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
84
#error glxext.h included before glxew.h
87
#error glx.h included before glxew.h
95
#include <X11/Xutil.h>
103
/* ---------------------------- GLX_VERSION_1_0 --------------------------- */
105
#ifndef GLX_VERSION_1_0
106
#define GLX_VERSION_1_0 1
109
#define GLX_BUFFER_SIZE 2
112
#define GLX_DOUBLEBUFFER 5
114
#define GLX_AUX_BUFFERS 7
115
#define GLX_RED_SIZE 8
116
#define GLX_GREEN_SIZE 9
117
#define GLX_BLUE_SIZE 10
118
#define GLX_ALPHA_SIZE 11
119
#define GLX_DEPTH_SIZE 12
120
#define GLX_STENCIL_SIZE 13
121
#define GLX_ACCUM_RED_SIZE 14
122
#define GLX_ACCUM_GREEN_SIZE 15
123
#define GLX_ACCUM_BLUE_SIZE 16
124
#define GLX_ACCUM_ALPHA_SIZE 17
125
#define GLX_BAD_SCREEN 1
126
#define GLX_BAD_ATTRIBUTE 2
127
#define GLX_NO_EXTENSION 3
128
#define GLX_BAD_VISUAL 4
129
#define GLX_BAD_CONTEXT 5
130
#define GLX_BAD_VALUE 6
131
#define GLX_BAD_ENUM 7
133
typedef XID GLXDrawable;
134
typedef XID GLXPixmap;
136
typedef struct __glXContextRec *GLXContext;
138
typedef struct __GLXcontextRec *GLXContext;
141
typedef unsigned int GLXVideoDeviceNV;
143
extern Bool glXQueryExtension (Display *dpy, int *errorBase, int *eventBase);
144
extern Bool glXQueryVersion (Display *dpy, int *major, int *minor);
145
extern int glXGetConfig (Display *dpy, XVisualInfo *vis, int attrib, int *value);
146
extern XVisualInfo* glXChooseVisual (Display *dpy, int screen, int *attribList);
147
extern GLXPixmap glXCreateGLXPixmap (Display *dpy, XVisualInfo *vis, Pixmap pixmap);
148
extern void glXDestroyGLXPixmap (Display *dpy, GLXPixmap pix);
149
extern GLXContext glXCreateContext (Display *dpy, XVisualInfo *vis, GLXContext shareList, Bool direct);
150
extern void glXDestroyContext (Display *dpy, GLXContext ctx);
151
extern Bool glXIsDirect (Display *dpy, GLXContext ctx);
152
extern void glXCopyContext (Display *dpy, GLXContext src, GLXContext dst, GLulong mask);
153
extern Bool glXMakeCurrent (Display *dpy, GLXDrawable drawable, GLXContext ctx);
154
extern GLXContext glXGetCurrentContext (void);
155
extern GLXDrawable glXGetCurrentDrawable (void);
156
extern void glXWaitGL (void);
157
extern void glXWaitX (void);
158
extern void glXSwapBuffers (Display *dpy, GLXDrawable drawable);
159
extern void glXUseXFont (Font font, int first, int count, int listBase);
161
#define GLXEW_VERSION_1_0 GLXEW_GET_VAR(__GLXEW_VERSION_1_0)
163
#endif /* GLX_VERSION_1_0 */
165
/* ---------------------------- GLX_VERSION_1_1 --------------------------- */
167
#ifndef GLX_VERSION_1_1
168
#define GLX_VERSION_1_1
170
#define GLX_VENDOR 0x1
171
#define GLX_VERSION 0x2
172
#define GLX_EXTENSIONS 0x3
174
extern const char* glXQueryExtensionsString (Display *dpy, int screen);
175
extern const char* glXGetClientString (Display *dpy, int name);
176
extern const char* glXQueryServerString (Display *dpy, int screen, int name);
178
#define GLXEW_VERSION_1_1 GLXEW_GET_VAR(__GLXEW_VERSION_1_1)
180
#endif /* GLX_VERSION_1_1 */
182
/* ---------------------------- GLX_VERSION_1_2 ---------------------------- */
184
#ifndef GLX_VERSION_1_2
185
#define GLX_VERSION_1_2 1
187
typedef Display* ( * PFNGLXGETCURRENTDISPLAYPROC) (void);
189
#define glXGetCurrentDisplay GLXEW_GET_FUN(__glewXGetCurrentDisplay)
191
#define GLXEW_VERSION_1_2 GLXEW_GET_VAR(__GLXEW_VERSION_1_2)
193
#endif /* GLX_VERSION_1_2 */
195
/* ---------------------------- GLX_VERSION_1_3 ---------------------------- */
197
#ifndef GLX_VERSION_1_3
198
#define GLX_VERSION_1_3 1
200
#define GLX_RGBA_BIT 0x00000001
201
#define GLX_FRONT_LEFT_BUFFER_BIT 0x00000001
202
#define GLX_WINDOW_BIT 0x00000001
203
#define GLX_COLOR_INDEX_BIT 0x00000002
204
#define GLX_PIXMAP_BIT 0x00000002
205
#define GLX_FRONT_RIGHT_BUFFER_BIT 0x00000002
206
#define GLX_BACK_LEFT_BUFFER_BIT 0x00000004
207
#define GLX_PBUFFER_BIT 0x00000004
208
#define GLX_BACK_RIGHT_BUFFER_BIT 0x00000008
209
#define GLX_AUX_BUFFERS_BIT 0x00000010
210
#define GLX_CONFIG_CAVEAT 0x20
211
#define GLX_DEPTH_BUFFER_BIT 0x00000020
212
#define GLX_X_VISUAL_TYPE 0x22
213
#define GLX_TRANSPARENT_TYPE 0x23
214
#define GLX_TRANSPARENT_INDEX_VALUE 0x24
215
#define GLX_TRANSPARENT_RED_VALUE 0x25
216
#define GLX_TRANSPARENT_GREEN_VALUE 0x26
217
#define GLX_TRANSPARENT_BLUE_VALUE 0x27
218
#define GLX_TRANSPARENT_ALPHA_VALUE 0x28
219
#define GLX_STENCIL_BUFFER_BIT 0x00000040
220
#define GLX_ACCUM_BUFFER_BIT 0x00000080
221
#define GLX_NONE 0x8000
222
#define GLX_SLOW_CONFIG 0x8001
223
#define GLX_TRUE_COLOR 0x8002
224
#define GLX_DIRECT_COLOR 0x8003
225
#define GLX_PSEUDO_COLOR 0x8004
226
#define GLX_STATIC_COLOR 0x8005
227
#define GLX_GRAY_SCALE 0x8006
228
#define GLX_STATIC_GRAY 0x8007
229
#define GLX_TRANSPARENT_RGB 0x8008
230
#define GLX_TRANSPARENT_INDEX 0x8009
231
#define GLX_VISUAL_ID 0x800B
232
#define GLX_SCREEN 0x800C
233
#define GLX_NON_CONFORMANT_CONFIG 0x800D
234
#define GLX_DRAWABLE_TYPE 0x8010
235
#define GLX_RENDER_TYPE 0x8011
236
#define GLX_X_RENDERABLE 0x8012
237
#define GLX_FBCONFIG_ID 0x8013
238
#define GLX_RGBA_TYPE 0x8014
239
#define GLX_COLOR_INDEX_TYPE 0x8015
240
#define GLX_MAX_PBUFFER_WIDTH 0x8016
241
#define GLX_MAX_PBUFFER_HEIGHT 0x8017
242
#define GLX_MAX_PBUFFER_PIXELS 0x8018
243
#define GLX_PRESERVED_CONTENTS 0x801B
244
#define GLX_LARGEST_PBUFFER 0x801C
245
#define GLX_WIDTH 0x801D
246
#define GLX_HEIGHT 0x801E
247
#define GLX_EVENT_MASK 0x801F
248
#define GLX_DAMAGED 0x8020
249
#define GLX_SAVED 0x8021
250
#define GLX_WINDOW 0x8022
251
#define GLX_PBUFFER 0x8023
252
#define GLX_PBUFFER_HEIGHT 0x8040
253
#define GLX_PBUFFER_WIDTH 0x8041
254
#define GLX_PBUFFER_CLOBBER_MASK 0x08000000
255
#define GLX_DONT_CARE 0xFFFFFFFF
257
typedef XID GLXFBConfigID;
258
typedef XID GLXWindow;
259
typedef XID GLXPbuffer;
260
typedef struct __GLXFBConfigRec *GLXFBConfig;
265
unsigned long serial;
268
GLXDrawable drawable;
269
unsigned int buffer_mask;
270
unsigned int aux_buffer;
274
} GLXPbufferClobberEvent;
275
typedef union __GLXEvent {
276
GLXPbufferClobberEvent glxpbufferclobber;
280
typedef GLXFBConfig* ( * PFNGLXCHOOSEFBCONFIGPROC) (Display *dpy, int screen, const int *attrib_list, int *nelements);
281
typedef GLXContext ( * PFNGLXCREATENEWCONTEXTPROC) (Display *dpy, GLXFBConfig config, int render_type, GLXContext share_list, Bool direct);
282
typedef GLXPbuffer ( * PFNGLXCREATEPBUFFERPROC) (Display *dpy, GLXFBConfig config, const int *attrib_list);
283
typedef GLXPixmap ( * PFNGLXCREATEPIXMAPPROC) (Display *dpy, GLXFBConfig config, Pixmap pixmap, const int *attrib_list);
284
typedef GLXWindow ( * PFNGLXCREATEWINDOWPROC) (Display *dpy, GLXFBConfig config, Window win, const int *attrib_list);
285
typedef void ( * PFNGLXDESTROYPBUFFERPROC) (Display *dpy, GLXPbuffer pbuf);
286
typedef void ( * PFNGLXDESTROYPIXMAPPROC) (Display *dpy, GLXPixmap pixmap);
287
typedef void ( * PFNGLXDESTROYWINDOWPROC) (Display *dpy, GLXWindow win);
288
typedef GLXDrawable ( * PFNGLXGETCURRENTREADDRAWABLEPROC) (void);
289
typedef int ( * PFNGLXGETFBCONFIGATTRIBPROC) (Display *dpy, GLXFBConfig config, int attribute, int *value);
290
typedef GLXFBConfig* ( * PFNGLXGETFBCONFIGSPROC) (Display *dpy, int screen, int *nelements);
291
typedef void ( * PFNGLXGETSELECTEDEVENTPROC) (Display *dpy, GLXDrawable draw, unsigned long *event_mask);
292
typedef XVisualInfo* ( * PFNGLXGETVISUALFROMFBCONFIGPROC) (Display *dpy, GLXFBConfig config);
293
typedef Bool ( * PFNGLXMAKECONTEXTCURRENTPROC) (Display *display, GLXDrawable draw, GLXDrawable read, GLXContext ctx);
294
typedef int ( * PFNGLXQUERYCONTEXTPROC) (Display *dpy, GLXContext ctx, int attribute, int *value);
295
typedef void ( * PFNGLXQUERYDRAWABLEPROC) (Display *dpy, GLXDrawable draw, int attribute, unsigned int *value);
296
typedef void ( * PFNGLXSELECTEVENTPROC) (Display *dpy, GLXDrawable draw, unsigned long event_mask);
298
#define glXChooseFBConfig GLXEW_GET_FUN(__glewXChooseFBConfig)
299
#define glXCreateNewContext GLXEW_GET_FUN(__glewXCreateNewContext)
300
#define glXCreatePbuffer GLXEW_GET_FUN(__glewXCreatePbuffer)
301
#define glXCreatePixmap GLXEW_GET_FUN(__glewXCreatePixmap)
302
#define glXCreateWindow GLXEW_GET_FUN(__glewXCreateWindow)
303
#define glXDestroyPbuffer GLXEW_GET_FUN(__glewXDestroyPbuffer)
304
#define glXDestroyPixmap GLXEW_GET_FUN(__glewXDestroyPixmap)
305
#define glXDestroyWindow GLXEW_GET_FUN(__glewXDestroyWindow)
306
#define glXGetCurrentReadDrawable GLXEW_GET_FUN(__glewXGetCurrentReadDrawable)
307
#define glXGetFBConfigAttrib GLXEW_GET_FUN(__glewXGetFBConfigAttrib)
308
#define glXGetFBConfigs GLXEW_GET_FUN(__glewXGetFBConfigs)
309
#define glXGetSelectedEvent GLXEW_GET_FUN(__glewXGetSelectedEvent)
310
#define glXGetVisualFromFBConfig GLXEW_GET_FUN(__glewXGetVisualFromFBConfig)
311
#define glXMakeContextCurrent GLXEW_GET_FUN(__glewXMakeContextCurrent)
312
#define glXQueryContext GLXEW_GET_FUN(__glewXQueryContext)
313
#define glXQueryDrawable GLXEW_GET_FUN(__glewXQueryDrawable)
314
#define glXSelectEvent GLXEW_GET_FUN(__glewXSelectEvent)
316
#define GLXEW_VERSION_1_3 GLXEW_GET_VAR(__GLXEW_VERSION_1_3)
318
#endif /* GLX_VERSION_1_3 */
320
/* ---------------------------- GLX_VERSION_1_4 ---------------------------- */
322
#ifndef GLX_VERSION_1_4
323
#define GLX_VERSION_1_4 1
325
#define GLX_SAMPLE_BUFFERS 100000
326
#define GLX_SAMPLES 100001
328
extern void ( * glXGetProcAddress (const GLubyte *procName)) (void);
330
#define GLXEW_VERSION_1_4 GLXEW_GET_VAR(__GLXEW_VERSION_1_4)
332
#endif /* GLX_VERSION_1_4 */
334
/* -------------------------- GLX_3DFX_multisample ------------------------- */
336
#ifndef GLX_3DFX_multisample
337
#define GLX_3DFX_multisample 1
339
#define GLX_SAMPLE_BUFFERS_3DFX 0x8050
340
#define GLX_SAMPLES_3DFX 0x8051
342
#define GLXEW_3DFX_multisample GLXEW_GET_VAR(__GLXEW_3DFX_multisample)
344
#endif /* GLX_3DFX_multisample */
346
/* ------------------------- GLX_ARB_create_context ------------------------ */
348
#ifndef GLX_ARB_create_context
349
#define GLX_ARB_create_context 1
351
#define GLX_CONTEXT_DEBUG_BIT_ARB 0x0001
352
#define GLX_CONTEXT_FORWARD_COMPATIBLE_BIT_ARB 0x0002
353
#define GLX_CONTEXT_MAJOR_VERSION_ARB 0x2091
354
#define GLX_CONTEXT_MINOR_VERSION_ARB 0x2092
355
#define GLX_CONTEXT_FLAGS_ARB 0x2094
357
typedef GLXContext ( * PFNGLXCREATECONTEXTATTRIBSARBPROC) (Display* dpy, GLXFBConfig config, GLXContext share_context, Bool direct, const int *attrib_list);
359
#define glXCreateContextAttribsARB GLXEW_GET_FUN(__glewXCreateContextAttribsARB)
361
#define GLXEW_ARB_create_context GLXEW_GET_VAR(__GLXEW_ARB_create_context)
363
#endif /* GLX_ARB_create_context */
365
/* ------------------------- GLX_ARB_fbconfig_float ------------------------ */
367
#ifndef GLX_ARB_fbconfig_float
368
#define GLX_ARB_fbconfig_float 1
370
#define GLX_RGBA_FLOAT_BIT 0x00000004
371
#define GLX_RGBA_FLOAT_TYPE 0x20B9
373
#define GLXEW_ARB_fbconfig_float GLXEW_GET_VAR(__GLXEW_ARB_fbconfig_float)
375
#endif /* GLX_ARB_fbconfig_float */
377
/* ------------------------ GLX_ARB_framebuffer_sRGB ----------------------- */
379
#ifndef GLX_ARB_framebuffer_sRGB
380
#define GLX_ARB_framebuffer_sRGB 1
382
#define GLX_FRAMEBUFFER_SRGB_CAPABLE_ARB 0x20B2
384
#define GLXEW_ARB_framebuffer_sRGB GLXEW_GET_VAR(__GLXEW_ARB_framebuffer_sRGB)
386
#endif /* GLX_ARB_framebuffer_sRGB */
388
/* ------------------------ GLX_ARB_get_proc_address ----------------------- */
390
#ifndef GLX_ARB_get_proc_address
391
#define GLX_ARB_get_proc_address 1
393
extern void ( * glXGetProcAddressARB (const GLubyte *procName)) (void);
395
#define GLXEW_ARB_get_proc_address GLXEW_GET_VAR(__GLXEW_ARB_get_proc_address)
397
#endif /* GLX_ARB_get_proc_address */
399
/* -------------------------- GLX_ARB_multisample -------------------------- */
401
#ifndef GLX_ARB_multisample
402
#define GLX_ARB_multisample 1
404
#define GLX_SAMPLE_BUFFERS_ARB 100000
405
#define GLX_SAMPLES_ARB 100001
407
#define GLXEW_ARB_multisample GLXEW_GET_VAR(__GLXEW_ARB_multisample)
409
#endif /* GLX_ARB_multisample */
411
/* ----------------------- GLX_ATI_pixel_format_float ---------------------- */
413
#ifndef GLX_ATI_pixel_format_float
414
#define GLX_ATI_pixel_format_float 1
416
#define GLX_RGBA_FLOAT_ATI_BIT 0x00000100
418
#define GLXEW_ATI_pixel_format_float GLXEW_GET_VAR(__GLXEW_ATI_pixel_format_float)
420
#endif /* GLX_ATI_pixel_format_float */
422
/* ------------------------- GLX_ATI_render_texture ------------------------ */
424
#ifndef GLX_ATI_render_texture
425
#define GLX_ATI_render_texture 1
427
#define GLX_BIND_TO_TEXTURE_RGB_ATI 0x9800
428
#define GLX_BIND_TO_TEXTURE_RGBA_ATI 0x9801
429
#define GLX_TEXTURE_FORMAT_ATI 0x9802
430
#define GLX_TEXTURE_TARGET_ATI 0x9803
431
#define GLX_MIPMAP_TEXTURE_ATI 0x9804
432
#define GLX_TEXTURE_RGB_ATI 0x9805
433
#define GLX_TEXTURE_RGBA_ATI 0x9806
434
#define GLX_NO_TEXTURE_ATI 0x9807
435
#define GLX_TEXTURE_CUBE_MAP_ATI 0x9808
436
#define GLX_TEXTURE_1D_ATI 0x9809
437
#define GLX_TEXTURE_2D_ATI 0x980A
438
#define GLX_MIPMAP_LEVEL_ATI 0x980B
439
#define GLX_CUBE_MAP_FACE_ATI 0x980C
440
#define GLX_TEXTURE_CUBE_MAP_POSITIVE_X_ATI 0x980D
441
#define GLX_TEXTURE_CUBE_MAP_NEGATIVE_X_ATI 0x980E
442
#define GLX_TEXTURE_CUBE_MAP_POSITIVE_Y_ATI 0x980F
443
#define GLX_TEXTURE_CUBE_MAP_NEGATIVE_Y_ATI 0x9810
444
#define GLX_TEXTURE_CUBE_MAP_POSITIVE_Z_ATI 0x9811
445
#define GLX_TEXTURE_CUBE_MAP_NEGATIVE_Z_ATI 0x9812
446
#define GLX_FRONT_LEFT_ATI 0x9813
447
#define GLX_FRONT_RIGHT_ATI 0x9814
448
#define GLX_BACK_LEFT_ATI 0x9815
449
#define GLX_BACK_RIGHT_ATI 0x9816
450
#define GLX_AUX0_ATI 0x9817
451
#define GLX_AUX1_ATI 0x9818
452
#define GLX_AUX2_ATI 0x9819
453
#define GLX_AUX3_ATI 0x981A
454
#define GLX_AUX4_ATI 0x981B
455
#define GLX_AUX5_ATI 0x981C
456
#define GLX_AUX6_ATI 0x981D
457
#define GLX_AUX7_ATI 0x981E
458
#define GLX_AUX8_ATI 0x981F
459
#define GLX_AUX9_ATI 0x9820
460
#define GLX_BIND_TO_TEXTURE_LUMINANCE_ATI 0x9821
461
#define GLX_BIND_TO_TEXTURE_INTENSITY_ATI 0x9822
463
typedef void ( * PFNGLXBINDTEXIMAGEATIPROC) (Display *dpy, GLXPbuffer pbuf, int buffer);
464
typedef void ( * PFNGLXDRAWABLEATTRIBATIPROC) (Display *dpy, GLXDrawable draw, const int *attrib_list);
465
typedef void ( * PFNGLXRELEASETEXIMAGEATIPROC) (Display *dpy, GLXPbuffer pbuf, int buffer);
467
#define glXBindTexImageATI GLXEW_GET_FUN(__glewXBindTexImageATI)
468
#define glXDrawableAttribATI GLXEW_GET_FUN(__glewXDrawableAttribATI)
469
#define glXReleaseTexImageATI GLXEW_GET_FUN(__glewXReleaseTexImageATI)
471
#define GLXEW_ATI_render_texture GLXEW_GET_VAR(__GLXEW_ATI_render_texture)
473
#endif /* GLX_ATI_render_texture */
475
/* --------------------- GLX_EXT_fbconfig_packed_float --------------------- */
477
#ifndef GLX_EXT_fbconfig_packed_float
478
#define GLX_EXT_fbconfig_packed_float 1
480
#define GLX_RGBA_UNSIGNED_FLOAT_BIT_EXT 0x00000008
481
#define GLX_RGBA_UNSIGNED_FLOAT_TYPE_EXT 0x20B1
483
#define GLXEW_EXT_fbconfig_packed_float GLXEW_GET_VAR(__GLXEW_EXT_fbconfig_packed_float)
485
#endif /* GLX_EXT_fbconfig_packed_float */
487
/* ------------------------ GLX_EXT_framebuffer_sRGB ----------------------- */
489
#ifndef GLX_EXT_framebuffer_sRGB
490
#define GLX_EXT_framebuffer_sRGB 1
492
#define GLX_FRAMEBUFFER_SRGB_CAPABLE_EXT 0x20B2
494
#define GLXEW_EXT_framebuffer_sRGB GLXEW_GET_VAR(__GLXEW_EXT_framebuffer_sRGB)
496
#endif /* GLX_EXT_framebuffer_sRGB */
498
/* ------------------------- GLX_EXT_import_context ------------------------ */
500
#ifndef GLX_EXT_import_context
501
#define GLX_EXT_import_context 1
503
#define GLX_SHARE_CONTEXT_EXT 0x800A
504
#define GLX_VISUAL_ID_EXT 0x800B
505
#define GLX_SCREEN_EXT 0x800C
507
typedef XID GLXContextID;
509
typedef void ( * PFNGLXFREECONTEXTEXTPROC) (Display* dpy, GLXContext context);
510
typedef GLXContextID ( * PFNGLXGETCONTEXTIDEXTPROC) (const GLXContext context);
511
typedef GLXContext ( * PFNGLXIMPORTCONTEXTEXTPROC) (Display* dpy, GLXContextID contextID);
512
typedef int ( * PFNGLXQUERYCONTEXTINFOEXTPROC) (Display* dpy, GLXContext context, int attribute,int *value);
514
#define glXFreeContextEXT GLXEW_GET_FUN(__glewXFreeContextEXT)
515
#define glXGetContextIDEXT GLXEW_GET_FUN(__glewXGetContextIDEXT)
516
#define glXImportContextEXT GLXEW_GET_FUN(__glewXImportContextEXT)
517
#define glXQueryContextInfoEXT GLXEW_GET_FUN(__glewXQueryContextInfoEXT)
519
#define GLXEW_EXT_import_context GLXEW_GET_VAR(__GLXEW_EXT_import_context)
521
#endif /* GLX_EXT_import_context */
523
/* -------------------------- GLX_EXT_scene_marker ------------------------- */
525
#ifndef GLX_EXT_scene_marker
526
#define GLX_EXT_scene_marker 1
528
#define GLXEW_EXT_scene_marker GLXEW_GET_VAR(__GLXEW_EXT_scene_marker)
530
#endif /* GLX_EXT_scene_marker */
532
/* ---------------------- GLX_EXT_texture_from_pixmap ---------------------- */
534
#ifndef GLX_EXT_texture_from_pixmap
535
#define GLX_EXT_texture_from_pixmap 1
537
#define GLX_TEXTURE_1D_BIT_EXT 0x00000001
538
#define GLX_TEXTURE_2D_BIT_EXT 0x00000002
539
#define GLX_TEXTURE_RECTANGLE_BIT_EXT 0x00000004
540
#define GLX_BIND_TO_TEXTURE_RGB_EXT 0x20D0
541
#define GLX_BIND_TO_TEXTURE_RGBA_EXT 0x20D1
542
#define GLX_BIND_TO_MIPMAP_TEXTURE_EXT 0x20D2
543
#define GLX_BIND_TO_TEXTURE_TARGETS_EXT 0x20D3
544
#define GLX_Y_INVERTED_EXT 0x20D4
545
#define GLX_TEXTURE_FORMAT_EXT 0x20D5
546
#define GLX_TEXTURE_TARGET_EXT 0x20D6
547
#define GLX_MIPMAP_TEXTURE_EXT 0x20D7
548
#define GLX_TEXTURE_FORMAT_NONE_EXT 0x20D8
549
#define GLX_TEXTURE_FORMAT_RGB_EXT 0x20D9
550
#define GLX_TEXTURE_FORMAT_RGBA_EXT 0x20DA
551
#define GLX_TEXTURE_1D_EXT 0x20DB
552
#define GLX_TEXTURE_2D_EXT 0x20DC
553
#define GLX_TEXTURE_RECTANGLE_EXT 0x20DD
554
#define GLX_FRONT_LEFT_EXT 0x20DE
555
#define GLX_FRONT_RIGHT_EXT 0x20DF
556
#define GLX_BACK_LEFT_EXT 0x20E0
557
#define GLX_BACK_RIGHT_EXT 0x20E1
558
#define GLX_AUX0_EXT 0x20E2
559
#define GLX_AUX1_EXT 0x20E3
560
#define GLX_AUX2_EXT 0x20E4
561
#define GLX_AUX3_EXT 0x20E5
562
#define GLX_AUX4_EXT 0x20E6
563
#define GLX_AUX5_EXT 0x20E7
564
#define GLX_AUX6_EXT 0x20E8
565
#define GLX_AUX7_EXT 0x20E9
566
#define GLX_AUX8_EXT 0x20EA
567
#define GLX_AUX9_EXT 0x20EB
569
typedef void ( * PFNGLXBINDTEXIMAGEEXTPROC) (Display* display, GLXDrawable drawable, int buffer, const int *attrib_list);
570
typedef void ( * PFNGLXRELEASETEXIMAGEEXTPROC) (Display* display, GLXDrawable drawable, int buffer);
572
#define glXBindTexImageEXT GLXEW_GET_FUN(__glewXBindTexImageEXT)
573
#define glXReleaseTexImageEXT GLXEW_GET_FUN(__glewXReleaseTexImageEXT)
575
#define GLXEW_EXT_texture_from_pixmap GLXEW_GET_VAR(__GLXEW_EXT_texture_from_pixmap)
577
#endif /* GLX_EXT_texture_from_pixmap */
579
/* -------------------------- GLX_EXT_visual_info -------------------------- */
581
#ifndef GLX_EXT_visual_info
582
#define GLX_EXT_visual_info 1
584
#define GLX_X_VISUAL_TYPE_EXT 0x22
585
#define GLX_TRANSPARENT_TYPE_EXT 0x23
586
#define GLX_TRANSPARENT_INDEX_VALUE_EXT 0x24
587
#define GLX_TRANSPARENT_RED_VALUE_EXT 0x25
588
#define GLX_TRANSPARENT_GREEN_VALUE_EXT 0x26
589
#define GLX_TRANSPARENT_BLUE_VALUE_EXT 0x27
590
#define GLX_TRANSPARENT_ALPHA_VALUE_EXT 0x28
591
#define GLX_NONE_EXT 0x8000
592
#define GLX_TRUE_COLOR_EXT 0x8002
593
#define GLX_DIRECT_COLOR_EXT 0x8003
594
#define GLX_PSEUDO_COLOR_EXT 0x8004
595
#define GLX_STATIC_COLOR_EXT 0x8005
596
#define GLX_GRAY_SCALE_EXT 0x8006
597
#define GLX_STATIC_GRAY_EXT 0x8007
598
#define GLX_TRANSPARENT_RGB_EXT 0x8008
599
#define GLX_TRANSPARENT_INDEX_EXT 0x8009
601
#define GLXEW_EXT_visual_info GLXEW_GET_VAR(__GLXEW_EXT_visual_info)
603
#endif /* GLX_EXT_visual_info */
605
/* ------------------------- GLX_EXT_visual_rating ------------------------- */
607
#ifndef GLX_EXT_visual_rating
608
#define GLX_EXT_visual_rating 1
610
#define GLX_VISUAL_CAVEAT_EXT 0x20
611
#define GLX_SLOW_VISUAL_EXT 0x8001
612
#define GLX_NON_CONFORMANT_VISUAL_EXT 0x800D
614
#define GLXEW_EXT_visual_rating GLXEW_GET_VAR(__GLXEW_EXT_visual_rating)
616
#endif /* GLX_EXT_visual_rating */
618
/* -------------------------- GLX_MESA_agp_offset -------------------------- */
620
#ifndef GLX_MESA_agp_offset
621
#define GLX_MESA_agp_offset 1
623
typedef unsigned int ( * PFNGLXGETAGPOFFSETMESAPROC) (const void* pointer);
625
#define glXGetAGPOffsetMESA GLXEW_GET_FUN(__glewXGetAGPOffsetMESA)
627
#define GLXEW_MESA_agp_offset GLXEW_GET_VAR(__GLXEW_MESA_agp_offset)
629
#endif /* GLX_MESA_agp_offset */
631
/* ------------------------ GLX_MESA_copy_sub_buffer ----------------------- */
633
#ifndef GLX_MESA_copy_sub_buffer
634
#define GLX_MESA_copy_sub_buffer 1
636
typedef void ( * PFNGLXCOPYSUBBUFFERMESAPROC) (Display* dpy, GLXDrawable drawable, int x, int y, int width, int height);
638
#define glXCopySubBufferMESA GLXEW_GET_FUN(__glewXCopySubBufferMESA)
640
#define GLXEW_MESA_copy_sub_buffer GLXEW_GET_VAR(__GLXEW_MESA_copy_sub_buffer)
642
#endif /* GLX_MESA_copy_sub_buffer */
644
/* ------------------------ GLX_MESA_pixmap_colormap ----------------------- */
646
#ifndef GLX_MESA_pixmap_colormap
647
#define GLX_MESA_pixmap_colormap 1
649
typedef GLXPixmap ( * PFNGLXCREATEGLXPIXMAPMESAPROC) (Display* dpy, XVisualInfo *visual, Pixmap pixmap, Colormap cmap);
651
#define glXCreateGLXPixmapMESA GLXEW_GET_FUN(__glewXCreateGLXPixmapMESA)
653
#define GLXEW_MESA_pixmap_colormap GLXEW_GET_VAR(__GLXEW_MESA_pixmap_colormap)
655
#endif /* GLX_MESA_pixmap_colormap */
657
/* ------------------------ GLX_MESA_release_buffers ----------------------- */
659
#ifndef GLX_MESA_release_buffers
660
#define GLX_MESA_release_buffers 1
662
typedef Bool ( * PFNGLXRELEASEBUFFERSMESAPROC) (Display* dpy, GLXDrawable d);
664
#define glXReleaseBuffersMESA GLXEW_GET_FUN(__glewXReleaseBuffersMESA)
666
#define GLXEW_MESA_release_buffers GLXEW_GET_VAR(__GLXEW_MESA_release_buffers)
668
#endif /* GLX_MESA_release_buffers */
670
/* ------------------------- GLX_MESA_set_3dfx_mode ------------------------ */
672
#ifndef GLX_MESA_set_3dfx_mode
673
#define GLX_MESA_set_3dfx_mode 1
675
#define GLX_3DFX_WINDOW_MODE_MESA 0x1
676
#define GLX_3DFX_FULLSCREEN_MODE_MESA 0x2
678
typedef GLboolean ( * PFNGLXSET3DFXMODEMESAPROC) (GLint mode);
680
#define glXSet3DfxModeMESA GLXEW_GET_FUN(__glewXSet3DfxModeMESA)
682
#define GLXEW_MESA_set_3dfx_mode GLXEW_GET_VAR(__GLXEW_MESA_set_3dfx_mode)
684
#endif /* GLX_MESA_set_3dfx_mode */
686
/* -------------------------- GLX_NV_float_buffer -------------------------- */
688
#ifndef GLX_NV_float_buffer
689
#define GLX_NV_float_buffer 1
691
#define GLX_FLOAT_COMPONENTS_NV 0x20B0
693
#define GLXEW_NV_float_buffer GLXEW_GET_VAR(__GLXEW_NV_float_buffer)
695
#endif /* GLX_NV_float_buffer */
697
/* -------------------------- GLX_NV_present_video ------------------------- */
699
#ifndef GLX_NV_present_video
700
#define GLX_NV_present_video 1
702
#define GLX_NUM_VIDEO_SLOTS_NV 0x20F0
704
typedef int ( * PFNGLXBINDVIDEODEVICENVPROC) (Display* dpy, unsigned int video_slot, unsigned int video_device, const int *attrib_list);
705
typedef unsigned int* ( * PFNGLXENUMERATEVIDEODEVICESNVPROC) (Display *dpy, int screen, int *nelements);
707
#define glXBindVideoDeviceNV GLXEW_GET_FUN(__glewXBindVideoDeviceNV)
708
#define glXEnumerateVideoDevicesNV GLXEW_GET_FUN(__glewXEnumerateVideoDevicesNV)
710
#define GLXEW_NV_present_video GLXEW_GET_VAR(__GLXEW_NV_present_video)
712
#endif /* GLX_NV_present_video */
714
/* --------------------------- GLX_NV_swap_group --------------------------- */
716
#ifndef GLX_NV_swap_group
717
#define GLX_NV_swap_group 1
719
typedef Bool ( * PFNGLXBINDSWAPBARRIERNVPROC) (Display* dpy, GLuint group, GLuint barrier);
720
typedef Bool ( * PFNGLXJOINSWAPGROUPNVPROC) (Display* dpy, GLXDrawable drawable, GLuint group);
721
typedef Bool ( * PFNGLXQUERYFRAMECOUNTNVPROC) (Display* dpy, int screen, GLuint *count);
722
typedef Bool ( * PFNGLXQUERYMAXSWAPGROUPSNVPROC) (Display* dpy, int screen, GLuint *maxGroups, GLuint *maxBarriers);
723
typedef Bool ( * PFNGLXQUERYSWAPGROUPNVPROC) (Display* dpy, GLXDrawable drawable, GLuint *group, GLuint *barrier);
724
typedef Bool ( * PFNGLXRESETFRAMECOUNTNVPROC) (Display* dpy, int screen);
726
#define glXBindSwapBarrierNV GLXEW_GET_FUN(__glewXBindSwapBarrierNV)
727
#define glXJoinSwapGroupNV GLXEW_GET_FUN(__glewXJoinSwapGroupNV)
728
#define glXQueryFrameCountNV GLXEW_GET_FUN(__glewXQueryFrameCountNV)
729
#define glXQueryMaxSwapGroupsNV GLXEW_GET_FUN(__glewXQueryMaxSwapGroupsNV)
730
#define glXQuerySwapGroupNV GLXEW_GET_FUN(__glewXQuerySwapGroupNV)
731
#define glXResetFrameCountNV GLXEW_GET_FUN(__glewXResetFrameCountNV)
733
#define GLXEW_NV_swap_group GLXEW_GET_VAR(__GLXEW_NV_swap_group)
735
#endif /* GLX_NV_swap_group */
737
/* ----------------------- GLX_NV_vertex_array_range ----------------------- */
739
#ifndef GLX_NV_vertex_array_range
740
#define GLX_NV_vertex_array_range 1
742
typedef void * ( * PFNGLXALLOCATEMEMORYNVPROC) (GLsizei size, GLfloat readFrequency, GLfloat writeFrequency, GLfloat priority);
743
typedef void ( * PFNGLXFREEMEMORYNVPROC) (void *pointer);
745
#define glXAllocateMemoryNV GLXEW_GET_FUN(__glewXAllocateMemoryNV)
746
#define glXFreeMemoryNV GLXEW_GET_FUN(__glewXFreeMemoryNV)
748
#define GLXEW_NV_vertex_array_range GLXEW_GET_VAR(__GLXEW_NV_vertex_array_range)
750
#endif /* GLX_NV_vertex_array_range */
752
/* -------------------------- GLX_NV_video_output -------------------------- */
754
#ifndef GLX_NV_video_output
755
#define GLX_NV_video_output 1
757
#define GLX_VIDEO_OUT_COLOR_NV 0x20C3
758
#define GLX_VIDEO_OUT_ALPHA_NV 0x20C4
759
#define GLX_VIDEO_OUT_DEPTH_NV 0x20C5
760
#define GLX_VIDEO_OUT_COLOR_AND_ALPHA_NV 0x20C6
761
#define GLX_VIDEO_OUT_COLOR_AND_DEPTH_NV 0x20C7
762
#define GLX_VIDEO_OUT_FRAME_NV 0x20C8
763
#define GLX_VIDEO_OUT_FIELD_1_NV 0x20C9
764
#define GLX_VIDEO_OUT_FIELD_2_NV 0x20CA
765
#define GLX_VIDEO_OUT_STACKED_FIELDS_1_2_NV 0x20CB
766
#define GLX_VIDEO_OUT_STACKED_FIELDS_2_1_NV 0x20CC
768
typedef int ( * PFNGLXBINDVIDEOIMAGENVPROC) (Display* dpy, GLXVideoDeviceNV VideoDevice, GLXPbuffer pbuf, int iVideoBuffer);
769
typedef int ( * PFNGLXGETVIDEODEVICENVPROC) (Display* dpy, int screen, int numVideoDevices, GLXVideoDeviceNV *pVideoDevice);
770
typedef int ( * PFNGLXGETVIDEOINFONVPROC) (Display* dpy, int screen, GLXVideoDeviceNV VideoDevice, unsigned long *pulCounterOutputPbuffer, unsigned long *pulCounterOutputVideo);
771
typedef int ( * PFNGLXRELEASEVIDEODEVICENVPROC) (Display* dpy, int screen, GLXVideoDeviceNV VideoDevice);
772
typedef int ( * PFNGLXRELEASEVIDEOIMAGENVPROC) (Display* dpy, GLXPbuffer pbuf);
773
typedef int ( * PFNGLXSENDPBUFFERTOVIDEONVPROC) (Display* dpy, GLXPbuffer pbuf, int iBufferType, unsigned long *pulCounterPbuffer, GLboolean bBlock);
775
#define glXBindVideoImageNV GLXEW_GET_FUN(__glewXBindVideoImageNV)
776
#define glXGetVideoDeviceNV GLXEW_GET_FUN(__glewXGetVideoDeviceNV)
777
#define glXGetVideoInfoNV GLXEW_GET_FUN(__glewXGetVideoInfoNV)
778
#define glXReleaseVideoDeviceNV GLXEW_GET_FUN(__glewXReleaseVideoDeviceNV)
779
#define glXReleaseVideoImageNV GLXEW_GET_FUN(__glewXReleaseVideoImageNV)
780
#define glXSendPbufferToVideoNV GLXEW_GET_FUN(__glewXSendPbufferToVideoNV)
782
#define GLXEW_NV_video_output GLXEW_GET_VAR(__GLXEW_NV_video_output)
784
#endif /* GLX_NV_video_output */
786
/* -------------------------- GLX_OML_swap_method -------------------------- */
788
#ifndef GLX_OML_swap_method
789
#define GLX_OML_swap_method 1
791
#define GLX_SWAP_METHOD_OML 0x8060
792
#define GLX_SWAP_EXCHANGE_OML 0x8061
793
#define GLX_SWAP_COPY_OML 0x8062
794
#define GLX_SWAP_UNDEFINED_OML 0x8063
796
#define GLXEW_OML_swap_method GLXEW_GET_VAR(__GLXEW_OML_swap_method)
798
#endif /* GLX_OML_swap_method */
800
/* -------------------------- GLX_OML_sync_control ------------------------- */
802
#if !defined(GLX_OML_sync_control) && defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 199901L)
803
#include <inttypes.h>
804
#define GLX_OML_sync_control 1
806
typedef Bool ( * PFNGLXGETMSCRATEOMLPROC) (Display* dpy, GLXDrawable drawable, int32_t* numerator, int32_t* denominator);
807
typedef Bool ( * PFNGLXGETSYNCVALUESOMLPROC) (Display* dpy, GLXDrawable drawable, int64_t* ust, int64_t* msc, int64_t* sbc);
808
typedef int64_t ( * PFNGLXSWAPBUFFERSMSCOMLPROC) (Display* dpy, GLXDrawable drawable, int64_t target_msc, int64_t divisor, int64_t remainder);
809
typedef Bool ( * PFNGLXWAITFORMSCOMLPROC) (Display* dpy, GLXDrawable drawable, int64_t target_msc, int64_t divisor, int64_t remainder, int64_t* ust, int64_t* msc, int64_t* sbc);
810
typedef Bool ( * PFNGLXWAITFORSBCOMLPROC) (Display* dpy, GLXDrawable drawable, int64_t target_sbc, int64_t* ust, int64_t* msc, int64_t* sbc);
812
#define glXGetMscRateOML GLXEW_GET_FUN(__glewXGetMscRateOML)
813
#define glXGetSyncValuesOML GLXEW_GET_FUN(__glewXGetSyncValuesOML)
814
#define glXSwapBuffersMscOML GLXEW_GET_FUN(__glewXSwapBuffersMscOML)
815
#define glXWaitForMscOML GLXEW_GET_FUN(__glewXWaitForMscOML)
816
#define glXWaitForSbcOML GLXEW_GET_FUN(__glewXWaitForSbcOML)
818
#define GLXEW_OML_sync_control GLXEW_GET_VAR(__GLXEW_OML_sync_control)
820
#endif /* GLX_OML_sync_control */
822
/* ------------------------ GLX_SGIS_blended_overlay ----------------------- */
824
#ifndef GLX_SGIS_blended_overlay
825
#define GLX_SGIS_blended_overlay 1
827
#define GLX_BLENDED_RGBA_SGIS 0x8025
829
#define GLXEW_SGIS_blended_overlay GLXEW_GET_VAR(__GLXEW_SGIS_blended_overlay)
831
#endif /* GLX_SGIS_blended_overlay */
833
/* -------------------------- GLX_SGIS_color_range ------------------------- */
835
#ifndef GLX_SGIS_color_range
836
#define GLX_SGIS_color_range 1
838
#define GLX_MIN_RED_SGIS 0
839
#define GLX_MAX_GREEN_SGIS 0
840
#define GLX_MIN_BLUE_SGIS 0
841
#define GLX_MAX_ALPHA_SGIS 0
842
#define GLX_MIN_GREEN_SGIS 0
843
#define GLX_MIN_ALPHA_SGIS 0
844
#define GLX_MAX_RED_SGIS 0
845
#define GLX_EXTENDED_RANGE_SGIS 0
846
#define GLX_MAX_BLUE_SGIS 0
848
#define GLXEW_SGIS_color_range GLXEW_GET_VAR(__GLXEW_SGIS_color_range)
850
#endif /* GLX_SGIS_color_range */
852
/* -------------------------- GLX_SGIS_multisample ------------------------- */
854
#ifndef GLX_SGIS_multisample
855
#define GLX_SGIS_multisample 1
857
#define GLX_SAMPLE_BUFFERS_SGIS 100000
858
#define GLX_SAMPLES_SGIS 100001
860
#define GLXEW_SGIS_multisample GLXEW_GET_VAR(__GLXEW_SGIS_multisample)
862
#endif /* GLX_SGIS_multisample */
864
/* ---------------------- GLX_SGIS_shared_multisample ---------------------- */
866
#ifndef GLX_SGIS_shared_multisample
867
#define GLX_SGIS_shared_multisample 1
869
#define GLX_MULTISAMPLE_SUB_RECT_WIDTH_SGIS 0x8026
870
#define GLX_MULTISAMPLE_SUB_RECT_HEIGHT_SGIS 0x8027
872
#define GLXEW_SGIS_shared_multisample GLXEW_GET_VAR(__GLXEW_SGIS_shared_multisample)
874
#endif /* GLX_SGIS_shared_multisample */
876
/* --------------------------- GLX_SGIX_fbconfig --------------------------- */
878
#ifndef GLX_SGIX_fbconfig
879
#define GLX_SGIX_fbconfig 1
881
#define GLX_WINDOW_BIT_SGIX 0x00000001
882
#define GLX_RGBA_BIT_SGIX 0x00000001
883
#define GLX_PIXMAP_BIT_SGIX 0x00000002
884
#define GLX_COLOR_INDEX_BIT_SGIX 0x00000002
885
#define GLX_SCREEN_EXT 0x800C
886
#define GLX_DRAWABLE_TYPE_SGIX 0x8010
887
#define GLX_RENDER_TYPE_SGIX 0x8011
888
#define GLX_X_RENDERABLE_SGIX 0x8012
889
#define GLX_FBCONFIG_ID_SGIX 0x8013
890
#define GLX_RGBA_TYPE_SGIX 0x8014
891
#define GLX_COLOR_INDEX_TYPE_SGIX 0x8015
893
typedef XID GLXFBConfigIDSGIX;
894
typedef struct __GLXFBConfigRec *GLXFBConfigSGIX;
896
typedef GLXFBConfigSGIX* ( * PFNGLXCHOOSEFBCONFIGSGIXPROC) (Display *dpy, int screen, const int *attrib_list, int *nelements);
897
typedef GLXContext ( * PFNGLXCREATECONTEXTWITHCONFIGSGIXPROC) (Display* dpy, GLXFBConfig config, int render_type, GLXContext share_list, Bool direct);
898
typedef GLXPixmap ( * PFNGLXCREATEGLXPIXMAPWITHCONFIGSGIXPROC) (Display* dpy, GLXFBConfig config, Pixmap pixmap);
899
typedef int ( * PFNGLXGETFBCONFIGATTRIBSGIXPROC) (Display* dpy, GLXFBConfigSGIX config, int attribute, int *value);
900
typedef GLXFBConfigSGIX ( * PFNGLXGETFBCONFIGFROMVISUALSGIXPROC) (Display* dpy, XVisualInfo *vis);
901
typedef XVisualInfo* ( * PFNGLXGETVISUALFROMFBCONFIGSGIXPROC) (Display *dpy, GLXFBConfig config);
903
#define glXChooseFBConfigSGIX GLXEW_GET_FUN(__glewXChooseFBConfigSGIX)
904
#define glXCreateContextWithConfigSGIX GLXEW_GET_FUN(__glewXCreateContextWithConfigSGIX)
905
#define glXCreateGLXPixmapWithConfigSGIX GLXEW_GET_FUN(__glewXCreateGLXPixmapWithConfigSGIX)
906
#define glXGetFBConfigAttribSGIX GLXEW_GET_FUN(__glewXGetFBConfigAttribSGIX)
907
#define glXGetFBConfigFromVisualSGIX GLXEW_GET_FUN(__glewXGetFBConfigFromVisualSGIX)
908
#define glXGetVisualFromFBConfigSGIX GLXEW_GET_FUN(__glewXGetVisualFromFBConfigSGIX)
910
#define GLXEW_SGIX_fbconfig GLXEW_GET_VAR(__GLXEW_SGIX_fbconfig)
912
#endif /* GLX_SGIX_fbconfig */
914
/* --------------------------- GLX_SGIX_hyperpipe -------------------------- */
916
#ifndef GLX_SGIX_hyperpipe
917
#define GLX_SGIX_hyperpipe 1
919
#define GLX_HYPERPIPE_DISPLAY_PIPE_SGIX 0x00000001
920
#define GLX_PIPE_RECT_SGIX 0x00000001
921
#define GLX_PIPE_RECT_LIMITS_SGIX 0x00000002
922
#define GLX_HYPERPIPE_RENDER_PIPE_SGIX 0x00000002
923
#define GLX_HYPERPIPE_STEREO_SGIX 0x00000003
924
#define GLX_HYPERPIPE_PIXEL_AVERAGE_SGIX 0x00000004
925
#define GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX 80
926
#define GLX_BAD_HYPERPIPE_CONFIG_SGIX 91
927
#define GLX_BAD_HYPERPIPE_SGIX 92
928
#define GLX_HYPERPIPE_ID_SGIX 0x8030
931
char pipeName[GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX];
933
} GLXHyperpipeNetworkSGIX;
935
char pipeName[GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX];
942
char pipeName[GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX];
944
unsigned int participationType;
946
} GLXHyperpipeConfigSGIX;
948
char pipeName[GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX];
959
typedef int ( * PFNGLXBINDHYPERPIPESGIXPROC) (Display *dpy, int hpId);
960
typedef int ( * PFNGLXDESTROYHYPERPIPECONFIGSGIXPROC) (Display *dpy, int hpId);
961
typedef int ( * PFNGLXHYPERPIPEATTRIBSGIXPROC) (Display *dpy, int timeSlice, int attrib, int size, void *attribList);
962
typedef int ( * PFNGLXHYPERPIPECONFIGSGIXPROC) (Display *dpy, int networkId, int npipes, GLXHyperpipeConfigSGIX *cfg, int *hpId);
963
typedef int ( * PFNGLXQUERYHYPERPIPEATTRIBSGIXPROC) (Display *dpy, int timeSlice, int attrib, int size, void *returnAttribList);
964
typedef int ( * PFNGLXQUERYHYPERPIPEBESTATTRIBSGIXPROC) (Display *dpy, int timeSlice, int attrib, int size, void *attribList, void *returnAttribList);
965
typedef GLXHyperpipeConfigSGIX * ( * PFNGLXQUERYHYPERPIPECONFIGSGIXPROC) (Display *dpy, int hpId, int *npipes);
966
typedef GLXHyperpipeNetworkSGIX * ( * PFNGLXQUERYHYPERPIPENETWORKSGIXPROC) (Display *dpy, int *npipes);
968
#define glXBindHyperpipeSGIX GLXEW_GET_FUN(__glewXBindHyperpipeSGIX)
969
#define glXDestroyHyperpipeConfigSGIX GLXEW_GET_FUN(__glewXDestroyHyperpipeConfigSGIX)
970
#define glXHyperpipeAttribSGIX GLXEW_GET_FUN(__glewXHyperpipeAttribSGIX)
971
#define glXHyperpipeConfigSGIX GLXEW_GET_FUN(__glewXHyperpipeConfigSGIX)
972
#define glXQueryHyperpipeAttribSGIX GLXEW_GET_FUN(__glewXQueryHyperpipeAttribSGIX)
973
#define glXQueryHyperpipeBestAttribSGIX GLXEW_GET_FUN(__glewXQueryHyperpipeBestAttribSGIX)
974
#define glXQueryHyperpipeConfigSGIX GLXEW_GET_FUN(__glewXQueryHyperpipeConfigSGIX)
975
#define glXQueryHyperpipeNetworkSGIX GLXEW_GET_FUN(__glewXQueryHyperpipeNetworkSGIX)
977
#define GLXEW_SGIX_hyperpipe GLXEW_GET_VAR(__GLXEW_SGIX_hyperpipe)
979
#endif /* GLX_SGIX_hyperpipe */
981
/* ---------------------------- GLX_SGIX_pbuffer --------------------------- */
983
#ifndef GLX_SGIX_pbuffer
984
#define GLX_SGIX_pbuffer 1
986
#define GLX_FRONT_LEFT_BUFFER_BIT_SGIX 0x00000001
987
#define GLX_FRONT_RIGHT_BUFFER_BIT_SGIX 0x00000002
988
#define GLX_PBUFFER_BIT_SGIX 0x00000004
989
#define GLX_BACK_LEFT_BUFFER_BIT_SGIX 0x00000004
990
#define GLX_BACK_RIGHT_BUFFER_BIT_SGIX 0x00000008
991
#define GLX_AUX_BUFFERS_BIT_SGIX 0x00000010
992
#define GLX_DEPTH_BUFFER_BIT_SGIX 0x00000020
993
#define GLX_STENCIL_BUFFER_BIT_SGIX 0x00000040
994
#define GLX_ACCUM_BUFFER_BIT_SGIX 0x00000080
995
#define GLX_SAMPLE_BUFFERS_BIT_SGIX 0x00000100
996
#define GLX_MAX_PBUFFER_WIDTH_SGIX 0x8016
997
#define GLX_MAX_PBUFFER_HEIGHT_SGIX 0x8017
998
#define GLX_MAX_PBUFFER_PIXELS_SGIX 0x8018
999
#define GLX_OPTIMAL_PBUFFER_WIDTH_SGIX 0x8019
1000
#define GLX_OPTIMAL_PBUFFER_HEIGHT_SGIX 0x801A
1001
#define GLX_PRESERVED_CONTENTS_SGIX 0x801B
1002
#define GLX_LARGEST_PBUFFER_SGIX 0x801C
1003
#define GLX_WIDTH_SGIX 0x801D
1004
#define GLX_HEIGHT_SGIX 0x801E
1005
#define GLX_EVENT_MASK_SGIX 0x801F
1006
#define GLX_DAMAGED_SGIX 0x8020
1007
#define GLX_SAVED_SGIX 0x8021
1008
#define GLX_WINDOW_SGIX 0x8022
1009
#define GLX_PBUFFER_SGIX 0x8023
1010
#define GLX_BUFFER_CLOBBER_MASK_SGIX 0x08000000
1012
typedef XID GLXPbufferSGIX;
1013
typedef struct { int type; unsigned long serial; Bool send_event; Display *display; GLXDrawable drawable; int event_type; int draw_type; unsigned int mask; int x, y; int width, height; int count; } GLXBufferClobberEventSGIX;
1015
typedef GLXPbuffer ( * PFNGLXCREATEGLXPBUFFERSGIXPROC) (Display* dpy, GLXFBConfig config, unsigned int width, unsigned int height, int *attrib_list);
1016
typedef void ( * PFNGLXDESTROYGLXPBUFFERSGIXPROC) (Display* dpy, GLXPbuffer pbuf);
1017
typedef void ( * PFNGLXGETSELECTEDEVENTSGIXPROC) (Display* dpy, GLXDrawable drawable, unsigned long *mask);
1018
typedef void ( * PFNGLXQUERYGLXPBUFFERSGIXPROC) (Display* dpy, GLXPbuffer pbuf, int attribute, unsigned int *value);
1019
typedef void ( * PFNGLXSELECTEVENTSGIXPROC) (Display* dpy, GLXDrawable drawable, unsigned long mask);
1021
#define glXCreateGLXPbufferSGIX GLXEW_GET_FUN(__glewXCreateGLXPbufferSGIX)
1022
#define glXDestroyGLXPbufferSGIX GLXEW_GET_FUN(__glewXDestroyGLXPbufferSGIX)
1023
#define glXGetSelectedEventSGIX GLXEW_GET_FUN(__glewXGetSelectedEventSGIX)
1024
#define glXQueryGLXPbufferSGIX GLXEW_GET_FUN(__glewXQueryGLXPbufferSGIX)
1025
#define glXSelectEventSGIX GLXEW_GET_FUN(__glewXSelectEventSGIX)
1027
#define GLXEW_SGIX_pbuffer GLXEW_GET_VAR(__GLXEW_SGIX_pbuffer)
1029
#endif /* GLX_SGIX_pbuffer */
1031
/* ------------------------- GLX_SGIX_swap_barrier ------------------------- */
1033
#ifndef GLX_SGIX_swap_barrier
1034
#define GLX_SGIX_swap_barrier 1
1036
typedef void ( * PFNGLXBINDSWAPBARRIERSGIXPROC) (Display *dpy, GLXDrawable drawable, int barrier);
1037
typedef Bool ( * PFNGLXQUERYMAXSWAPBARRIERSSGIXPROC) (Display *dpy, int screen, int *max);
1039
#define glXBindSwapBarrierSGIX GLXEW_GET_FUN(__glewXBindSwapBarrierSGIX)
1040
#define glXQueryMaxSwapBarriersSGIX GLXEW_GET_FUN(__glewXQueryMaxSwapBarriersSGIX)
1042
#define GLXEW_SGIX_swap_barrier GLXEW_GET_VAR(__GLXEW_SGIX_swap_barrier)
1044
#endif /* GLX_SGIX_swap_barrier */
1046
/* -------------------------- GLX_SGIX_swap_group -------------------------- */
1048
#ifndef GLX_SGIX_swap_group
1049
#define GLX_SGIX_swap_group 1
1051
typedef void ( * PFNGLXJOINSWAPGROUPSGIXPROC) (Display *dpy, GLXDrawable drawable, GLXDrawable member);
1053
#define glXJoinSwapGroupSGIX GLXEW_GET_FUN(__glewXJoinSwapGroupSGIX)
1055
#define GLXEW_SGIX_swap_group GLXEW_GET_VAR(__GLXEW_SGIX_swap_group)
1057
#endif /* GLX_SGIX_swap_group */
1059
/* ------------------------- GLX_SGIX_video_resize ------------------------- */
1061
#ifndef GLX_SGIX_video_resize
1062
#define GLX_SGIX_video_resize 1
1064
#define GLX_SYNC_FRAME_SGIX 0x00000000
1065
#define GLX_SYNC_SWAP_SGIX 0x00000001
1067
typedef int ( * PFNGLXBINDCHANNELTOWINDOWSGIXPROC) (Display* display, int screen, int channel, Window window);
1068
typedef int ( * PFNGLXCHANNELRECTSGIXPROC) (Display* display, int screen, int channel, int x, int y, int w, int h);
1069
typedef int ( * PFNGLXCHANNELRECTSYNCSGIXPROC) (Display* display, int screen, int channel, GLenum synctype);
1070
typedef int ( * PFNGLXQUERYCHANNELDELTASSGIXPROC) (Display* display, int screen, int channel, int *x, int *y, int *w, int *h);
1071
typedef int ( * PFNGLXQUERYCHANNELRECTSGIXPROC) (Display* display, int screen, int channel, int *dx, int *dy, int *dw, int *dh);
1073
#define glXBindChannelToWindowSGIX GLXEW_GET_FUN(__glewXBindChannelToWindowSGIX)
1074
#define glXChannelRectSGIX GLXEW_GET_FUN(__glewXChannelRectSGIX)
1075
#define glXChannelRectSyncSGIX GLXEW_GET_FUN(__glewXChannelRectSyncSGIX)
1076
#define glXQueryChannelDeltasSGIX GLXEW_GET_FUN(__glewXQueryChannelDeltasSGIX)
1077
#define glXQueryChannelRectSGIX GLXEW_GET_FUN(__glewXQueryChannelRectSGIX)
1079
#define GLXEW_SGIX_video_resize GLXEW_GET_VAR(__GLXEW_SGIX_video_resize)
1081
#endif /* GLX_SGIX_video_resize */
1083
/* ---------------------- GLX_SGIX_visual_select_group --------------------- */
1085
#ifndef GLX_SGIX_visual_select_group
1086
#define GLX_SGIX_visual_select_group 1
1088
#define GLX_VISUAL_SELECT_GROUP_SGIX 0x8028
1090
#define GLXEW_SGIX_visual_select_group GLXEW_GET_VAR(__GLXEW_SGIX_visual_select_group)
1092
#endif /* GLX_SGIX_visual_select_group */
1094
/* ---------------------------- GLX_SGI_cushion ---------------------------- */
1096
#ifndef GLX_SGI_cushion
1097
#define GLX_SGI_cushion 1
1099
typedef void ( * PFNGLXCUSHIONSGIPROC) (Display* dpy, Window window, float cushion);
1101
#define glXCushionSGI GLXEW_GET_FUN(__glewXCushionSGI)
1103
#define GLXEW_SGI_cushion GLXEW_GET_VAR(__GLXEW_SGI_cushion)
1105
#endif /* GLX_SGI_cushion */
1107
/* ----------------------- GLX_SGI_make_current_read ----------------------- */
1109
#ifndef GLX_SGI_make_current_read
1110
#define GLX_SGI_make_current_read 1
1112
typedef GLXDrawable ( * PFNGLXGETCURRENTREADDRAWABLESGIPROC) (void);
1113
typedef Bool ( * PFNGLXMAKECURRENTREADSGIPROC) (Display* dpy, GLXDrawable draw, GLXDrawable read, GLXContext ctx);
1115
#define glXGetCurrentReadDrawableSGI GLXEW_GET_FUN(__glewXGetCurrentReadDrawableSGI)
1116
#define glXMakeCurrentReadSGI GLXEW_GET_FUN(__glewXMakeCurrentReadSGI)
1118
#define GLXEW_SGI_make_current_read GLXEW_GET_VAR(__GLXEW_SGI_make_current_read)
1120
#endif /* GLX_SGI_make_current_read */
1122
/* -------------------------- GLX_SGI_swap_control ------------------------- */
1124
#ifndef GLX_SGI_swap_control
1125
#define GLX_SGI_swap_control 1
1127
typedef int ( * PFNGLXSWAPINTERVALSGIPROC) (int interval);
1129
#define glXSwapIntervalSGI GLXEW_GET_FUN(__glewXSwapIntervalSGI)
1131
#define GLXEW_SGI_swap_control GLXEW_GET_VAR(__GLXEW_SGI_swap_control)
1133
#endif /* GLX_SGI_swap_control */
1135
/* --------------------------- GLX_SGI_video_sync -------------------------- */
1137
#ifndef GLX_SGI_video_sync
1138
#define GLX_SGI_video_sync 1
1140
typedef int ( * PFNGLXGETVIDEOSYNCSGIPROC) (uint* count);
1141
typedef int ( * PFNGLXWAITVIDEOSYNCSGIPROC) (int divisor, int remainder, unsigned int* count);
1143
#define glXGetVideoSyncSGI GLXEW_GET_FUN(__glewXGetVideoSyncSGI)
1144
#define glXWaitVideoSyncSGI GLXEW_GET_FUN(__glewXWaitVideoSyncSGI)
1146
#define GLXEW_SGI_video_sync GLXEW_GET_VAR(__GLXEW_SGI_video_sync)
1148
#endif /* GLX_SGI_video_sync */
1150
/* --------------------- GLX_SUN_get_transparent_index --------------------- */
1152
#ifndef GLX_SUN_get_transparent_index
1153
#define GLX_SUN_get_transparent_index 1
1155
typedef Status ( * PFNGLXGETTRANSPARENTINDEXSUNPROC) (Display* dpy, Window overlay, Window underlay, unsigned long *pTransparentIndex);
1157
#define glXGetTransparentIndexSUN GLXEW_GET_FUN(__glewXGetTransparentIndexSUN)
1159
#define GLXEW_SUN_get_transparent_index GLXEW_GET_VAR(__GLXEW_SUN_get_transparent_index)
1161
#endif /* GLX_SUN_get_transparent_index */
1163
/* -------------------------- GLX_SUN_video_resize ------------------------- */
1165
#ifndef GLX_SUN_video_resize
1166
#define GLX_SUN_video_resize 1
1168
#define GLX_VIDEO_RESIZE_SUN 0x8171
1169
#define GL_VIDEO_RESIZE_COMPENSATION_SUN 0x85CD
1171
typedef int ( * PFNGLXGETVIDEORESIZESUNPROC) (Display* display, GLXDrawable window, float* factor);
1172
typedef int ( * PFNGLXVIDEORESIZESUNPROC) (Display* display, GLXDrawable window, float factor);
1174
#define glXGetVideoResizeSUN GLXEW_GET_FUN(__glewXGetVideoResizeSUN)
1175
#define glXVideoResizeSUN GLXEW_GET_FUN(__glewXVideoResizeSUN)
1177
#define GLXEW_SUN_video_resize GLXEW_GET_VAR(__GLXEW_SUN_video_resize)
1179
#endif /* GLX_SUN_video_resize */
1181
/* ------------------------------------------------------------------------- */
1184
#define GLXEW_EXPORT
1186
#define GLXEW_EXPORT extern
1187
#endif /* GLEW_MX */
1189
extern PFNGLXGETCURRENTDISPLAYPROC __glewXGetCurrentDisplay;
1191
extern PFNGLXCHOOSEFBCONFIGPROC __glewXChooseFBConfig;
1192
extern PFNGLXCREATENEWCONTEXTPROC __glewXCreateNewContext;
1193
extern PFNGLXCREATEPBUFFERPROC __glewXCreatePbuffer;
1194
extern PFNGLXCREATEPIXMAPPROC __glewXCreatePixmap;
1195
extern PFNGLXCREATEWINDOWPROC __glewXCreateWindow;
1196
extern PFNGLXDESTROYPBUFFERPROC __glewXDestroyPbuffer;
1197
extern PFNGLXDESTROYPIXMAPPROC __glewXDestroyPixmap;
1198
extern PFNGLXDESTROYWINDOWPROC __glewXDestroyWindow;
1199
extern PFNGLXGETCURRENTREADDRAWABLEPROC __glewXGetCurrentReadDrawable;
1200
extern PFNGLXGETFBCONFIGATTRIBPROC __glewXGetFBConfigAttrib;
1201
extern PFNGLXGETFBCONFIGSPROC __glewXGetFBConfigs;
1202
extern PFNGLXGETSELECTEDEVENTPROC __glewXGetSelectedEvent;
1203
extern PFNGLXGETVISUALFROMFBCONFIGPROC __glewXGetVisualFromFBConfig;
1204
extern PFNGLXMAKECONTEXTCURRENTPROC __glewXMakeContextCurrent;
1205
extern PFNGLXQUERYCONTEXTPROC __glewXQueryContext;
1206
extern PFNGLXQUERYDRAWABLEPROC __glewXQueryDrawable;
1207
extern PFNGLXSELECTEVENTPROC __glewXSelectEvent;
1209
extern PFNGLXCREATECONTEXTATTRIBSARBPROC __glewXCreateContextAttribsARB;
1211
extern PFNGLXBINDTEXIMAGEATIPROC __glewXBindTexImageATI;
1212
extern PFNGLXDRAWABLEATTRIBATIPROC __glewXDrawableAttribATI;
1213
extern PFNGLXRELEASETEXIMAGEATIPROC __glewXReleaseTexImageATI;
1215
extern PFNGLXFREECONTEXTEXTPROC __glewXFreeContextEXT;
1216
extern PFNGLXGETCONTEXTIDEXTPROC __glewXGetContextIDEXT;
1217
extern PFNGLXIMPORTCONTEXTEXTPROC __glewXImportContextEXT;
1218
extern PFNGLXQUERYCONTEXTINFOEXTPROC __glewXQueryContextInfoEXT;
1220
extern PFNGLXBINDTEXIMAGEEXTPROC __glewXBindTexImageEXT;
1221
extern PFNGLXRELEASETEXIMAGEEXTPROC __glewXReleaseTexImageEXT;
1223
extern PFNGLXGETAGPOFFSETMESAPROC __glewXGetAGPOffsetMESA;
1225
extern PFNGLXCOPYSUBBUFFERMESAPROC __glewXCopySubBufferMESA;
1227
extern PFNGLXCREATEGLXPIXMAPMESAPROC __glewXCreateGLXPixmapMESA;
1229
extern PFNGLXRELEASEBUFFERSMESAPROC __glewXReleaseBuffersMESA;
1231
extern PFNGLXSET3DFXMODEMESAPROC __glewXSet3DfxModeMESA;
1233
extern PFNGLXBINDVIDEODEVICENVPROC __glewXBindVideoDeviceNV;
1234
extern PFNGLXENUMERATEVIDEODEVICESNVPROC __glewXEnumerateVideoDevicesNV;
1236
extern PFNGLXBINDSWAPBARRIERNVPROC __glewXBindSwapBarrierNV;
1237
extern PFNGLXJOINSWAPGROUPNVPROC __glewXJoinSwapGroupNV;
1238
extern PFNGLXQUERYFRAMECOUNTNVPROC __glewXQueryFrameCountNV;
1239
extern PFNGLXQUERYMAXSWAPGROUPSNVPROC __glewXQueryMaxSwapGroupsNV;
1240
extern PFNGLXQUERYSWAPGROUPNVPROC __glewXQuerySwapGroupNV;
1241
extern PFNGLXRESETFRAMECOUNTNVPROC __glewXResetFrameCountNV;
1243
extern PFNGLXALLOCATEMEMORYNVPROC __glewXAllocateMemoryNV;
1244
extern PFNGLXFREEMEMORYNVPROC __glewXFreeMemoryNV;
1246
extern PFNGLXBINDVIDEOIMAGENVPROC __glewXBindVideoImageNV;
1247
extern PFNGLXGETVIDEODEVICENVPROC __glewXGetVideoDeviceNV;
1248
extern PFNGLXGETVIDEOINFONVPROC __glewXGetVideoInfoNV;
1249
extern PFNGLXRELEASEVIDEODEVICENVPROC __glewXReleaseVideoDeviceNV;
1250
extern PFNGLXRELEASEVIDEOIMAGENVPROC __glewXReleaseVideoImageNV;
1251
extern PFNGLXSENDPBUFFERTOVIDEONVPROC __glewXSendPbufferToVideoNV;
1253
#ifdef GLX_OML_sync_control
1254
extern PFNGLXGETMSCRATEOMLPROC __glewXGetMscRateOML;
1255
extern PFNGLXGETSYNCVALUESOMLPROC __glewXGetSyncValuesOML;
1256
extern PFNGLXSWAPBUFFERSMSCOMLPROC __glewXSwapBuffersMscOML;
1257
extern PFNGLXWAITFORMSCOMLPROC __glewXWaitForMscOML;
1258
extern PFNGLXWAITFORSBCOMLPROC __glewXWaitForSbcOML;
1261
extern PFNGLXCHOOSEFBCONFIGSGIXPROC __glewXChooseFBConfigSGIX;
1262
extern PFNGLXCREATECONTEXTWITHCONFIGSGIXPROC __glewXCreateContextWithConfigSGIX;
1263
extern PFNGLXCREATEGLXPIXMAPWITHCONFIGSGIXPROC __glewXCreateGLXPixmapWithConfigSGIX;
1264
extern PFNGLXGETFBCONFIGATTRIBSGIXPROC __glewXGetFBConfigAttribSGIX;
1265
extern PFNGLXGETFBCONFIGFROMVISUALSGIXPROC __glewXGetFBConfigFromVisualSGIX;
1266
extern PFNGLXGETVISUALFROMFBCONFIGSGIXPROC __glewXGetVisualFromFBConfigSGIX;
1268
extern PFNGLXBINDHYPERPIPESGIXPROC __glewXBindHyperpipeSGIX;
1269
extern PFNGLXDESTROYHYPERPIPECONFIGSGIXPROC __glewXDestroyHyperpipeConfigSGIX;
1270
extern PFNGLXHYPERPIPEATTRIBSGIXPROC __glewXHyperpipeAttribSGIX;
1271
extern PFNGLXHYPERPIPECONFIGSGIXPROC __glewXHyperpipeConfigSGIX;
1272
extern PFNGLXQUERYHYPERPIPEATTRIBSGIXPROC __glewXQueryHyperpipeAttribSGIX;
1273
extern PFNGLXQUERYHYPERPIPEBESTATTRIBSGIXPROC __glewXQueryHyperpipeBestAttribSGIX;
1274
extern PFNGLXQUERYHYPERPIPECONFIGSGIXPROC __glewXQueryHyperpipeConfigSGIX;
1275
extern PFNGLXQUERYHYPERPIPENETWORKSGIXPROC __glewXQueryHyperpipeNetworkSGIX;
1277
extern PFNGLXCREATEGLXPBUFFERSGIXPROC __glewXCreateGLXPbufferSGIX;
1278
extern PFNGLXDESTROYGLXPBUFFERSGIXPROC __glewXDestroyGLXPbufferSGIX;
1279
extern PFNGLXGETSELECTEDEVENTSGIXPROC __glewXGetSelectedEventSGIX;
1280
extern PFNGLXQUERYGLXPBUFFERSGIXPROC __glewXQueryGLXPbufferSGIX;
1281
extern PFNGLXSELECTEVENTSGIXPROC __glewXSelectEventSGIX;
1283
extern PFNGLXBINDSWAPBARRIERSGIXPROC __glewXBindSwapBarrierSGIX;
1284
extern PFNGLXQUERYMAXSWAPBARRIERSSGIXPROC __glewXQueryMaxSwapBarriersSGIX;
1286
extern PFNGLXJOINSWAPGROUPSGIXPROC __glewXJoinSwapGroupSGIX;
1288
extern PFNGLXBINDCHANNELTOWINDOWSGIXPROC __glewXBindChannelToWindowSGIX;
1289
extern PFNGLXCHANNELRECTSGIXPROC __glewXChannelRectSGIX;
1290
extern PFNGLXCHANNELRECTSYNCSGIXPROC __glewXChannelRectSyncSGIX;
1291
extern PFNGLXQUERYCHANNELDELTASSGIXPROC __glewXQueryChannelDeltasSGIX;
1292
extern PFNGLXQUERYCHANNELRECTSGIXPROC __glewXQueryChannelRectSGIX;
1294
extern PFNGLXCUSHIONSGIPROC __glewXCushionSGI;
1296
extern PFNGLXGETCURRENTREADDRAWABLESGIPROC __glewXGetCurrentReadDrawableSGI;
1297
extern PFNGLXMAKECURRENTREADSGIPROC __glewXMakeCurrentReadSGI;
1299
extern PFNGLXSWAPINTERVALSGIPROC __glewXSwapIntervalSGI;
1301
extern PFNGLXGETVIDEOSYNCSGIPROC __glewXGetVideoSyncSGI;
1302
extern PFNGLXWAITVIDEOSYNCSGIPROC __glewXWaitVideoSyncSGI;
1304
extern PFNGLXGETTRANSPARENTINDEXSUNPROC __glewXGetTransparentIndexSUN;
1306
extern PFNGLXGETVIDEORESIZESUNPROC __glewXGetVideoResizeSUN;
1307
extern PFNGLXVIDEORESIZESUNPROC __glewXVideoResizeSUN;
1309
#if defined(GLEW_MX)
1310
struct GLXEWContextStruct
1312
#endif /* GLEW_MX */
1314
GLXEW_EXPORT GLboolean __GLXEW_VERSION_1_0;
1315
GLXEW_EXPORT GLboolean __GLXEW_VERSION_1_1;
1316
GLXEW_EXPORT GLboolean __GLXEW_VERSION_1_2;
1317
GLXEW_EXPORT GLboolean __GLXEW_VERSION_1_3;
1318
GLXEW_EXPORT GLboolean __GLXEW_VERSION_1_4;
1319
GLXEW_EXPORT GLboolean __GLXEW_3DFX_multisample;
1320
GLXEW_EXPORT GLboolean __GLXEW_ARB_create_context;
1321
GLXEW_EXPORT GLboolean __GLXEW_ARB_fbconfig_float;
1322
GLXEW_EXPORT GLboolean __GLXEW_ARB_framebuffer_sRGB;
1323
GLXEW_EXPORT GLboolean __GLXEW_ARB_get_proc_address;
1324
GLXEW_EXPORT GLboolean __GLXEW_ARB_multisample;
1325
GLXEW_EXPORT GLboolean __GLXEW_ATI_pixel_format_float;
1326
GLXEW_EXPORT GLboolean __GLXEW_ATI_render_texture;
1327
GLXEW_EXPORT GLboolean __GLXEW_EXT_fbconfig_packed_float;
1328
GLXEW_EXPORT GLboolean __GLXEW_EXT_framebuffer_sRGB;
1329
GLXEW_EXPORT GLboolean __GLXEW_EXT_import_context;
1330
GLXEW_EXPORT GLboolean __GLXEW_EXT_scene_marker;
1331
GLXEW_EXPORT GLboolean __GLXEW_EXT_texture_from_pixmap;
1332
GLXEW_EXPORT GLboolean __GLXEW_EXT_visual_info;
1333
GLXEW_EXPORT GLboolean __GLXEW_EXT_visual_rating;
1334
GLXEW_EXPORT GLboolean __GLXEW_MESA_agp_offset;
1335
GLXEW_EXPORT GLboolean __GLXEW_MESA_copy_sub_buffer;
1336
GLXEW_EXPORT GLboolean __GLXEW_MESA_pixmap_colormap;
1337
GLXEW_EXPORT GLboolean __GLXEW_MESA_release_buffers;
1338
GLXEW_EXPORT GLboolean __GLXEW_MESA_set_3dfx_mode;
1339
GLXEW_EXPORT GLboolean __GLXEW_NV_float_buffer;
1340
GLXEW_EXPORT GLboolean __GLXEW_NV_present_video;
1341
GLXEW_EXPORT GLboolean __GLXEW_NV_swap_group;
1342
GLXEW_EXPORT GLboolean __GLXEW_NV_vertex_array_range;
1343
GLXEW_EXPORT GLboolean __GLXEW_NV_video_output;
1344
GLXEW_EXPORT GLboolean __GLXEW_OML_swap_method;
1345
GLXEW_EXPORT GLboolean __GLXEW_OML_sync_control;
1346
GLXEW_EXPORT GLboolean __GLXEW_SGIS_blended_overlay;
1347
GLXEW_EXPORT GLboolean __GLXEW_SGIS_color_range;
1348
GLXEW_EXPORT GLboolean __GLXEW_SGIS_multisample;
1349
GLXEW_EXPORT GLboolean __GLXEW_SGIS_shared_multisample;
1350
GLXEW_EXPORT GLboolean __GLXEW_SGIX_fbconfig;
1351
GLXEW_EXPORT GLboolean __GLXEW_SGIX_hyperpipe;
1352
GLXEW_EXPORT GLboolean __GLXEW_SGIX_pbuffer;
1353
GLXEW_EXPORT GLboolean __GLXEW_SGIX_swap_barrier;
1354
GLXEW_EXPORT GLboolean __GLXEW_SGIX_swap_group;
1355
GLXEW_EXPORT GLboolean __GLXEW_SGIX_video_resize;
1356
GLXEW_EXPORT GLboolean __GLXEW_SGIX_visual_select_group;
1357
GLXEW_EXPORT GLboolean __GLXEW_SGI_cushion;
1358
GLXEW_EXPORT GLboolean __GLXEW_SGI_make_current_read;
1359
GLXEW_EXPORT GLboolean __GLXEW_SGI_swap_control;
1360
GLXEW_EXPORT GLboolean __GLXEW_SGI_video_sync;
1361
GLXEW_EXPORT GLboolean __GLXEW_SUN_get_transparent_index;
1362
GLXEW_EXPORT GLboolean __GLXEW_SUN_video_resize;
1365
}; /* GLXEWContextStruct */
1366
#endif /* GLEW_MX */
1368
/* ------------------------------------------------------------------------ */
1372
typedef struct GLXEWContextStruct GLXEWContext;
1373
extern GLenum glxewContextInit (GLXEWContext* ctx);
1374
extern GLboolean glxewContextIsSupported (GLXEWContext* ctx, const char* name);
1376
#define glxewInit() glxewContextInit(glxewGetContext())
1377
#define glxewIsSupported(x) glxewContextIsSupported(glxewGetContext(), x)
1379
#define GLXEW_GET_VAR(x) (*(const GLboolean*)&(glxewGetContext()->x))
1380
#define GLXEW_GET_FUN(x) x
1384
#define GLXEW_GET_VAR(x) (*(const GLboolean*)&x)
1385
#define GLXEW_GET_FUN(x) x
1387
extern GLboolean glxewIsSupported (const char* name);
1389
#endif /* GLEW_MX */
1391
extern GLboolean glxewGetExtension (const char* name);
1397
#endif /* __glxew_h__ */