OLD | NEW |
(Empty) | |
| 1 /* |
| 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. |
| 7 ** |
| 8 ** Redistribution and use in source and binary forms, with or without |
| 9 ** modification, are permitted provided that the following conditions are met: |
| 10 ** |
| 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. |
| 18 ** |
| 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. |
| 30 */ |
| 31 |
| 32 /* |
| 33 * Mesa 3-D graphics library |
| 34 * Version: 7.0 |
| 35 * |
| 36 * Copyright (C) 1999-2007 Brian Paul All Rights Reserved. |
| 37 * |
| 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: |
| 44 * |
| 45 * The above copyright notice and this permission notice shall be included |
| 46 * in all copies or substantial portions of the Software. |
| 47 * |
| 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. |
| 54 */ |
| 55 |
| 56 /* |
| 57 ** Copyright (c) 2007 The Khronos Group Inc. |
| 58 ** |
| 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: |
| 66 ** |
| 67 ** The above copyright notice and this permission notice shall be included |
| 68 ** in all copies or substantial portions of the Materials. |
| 69 ** |
| 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. |
| 77 */ |
| 78 |
| 79 #ifndef __glxew_h__ |
| 80 #define __glxew_h__ |
| 81 #define __GLXEW_H__ |
| 82 |
| 83 #ifdef __glxext_h_ |
| 84 #error glxext.h included before glxew.h |
| 85 #endif |
| 86 #ifdef GLX_H |
| 87 #error glx.h included before glxew.h |
| 88 #endif |
| 89 |
| 90 #define __glxext_h_ |
| 91 #define __GLX_glx_h__ |
| 92 #define GLX_H |
| 93 |
| 94 #include <X11/Xlib.h> |
| 95 #include <X11/Xutil.h> |
| 96 #include <X11/Xmd.h> |
| 97 #include <GL/glew.h> |
| 98 |
| 99 #ifdef __cplusplus |
| 100 extern "C" { |
| 101 #endif |
| 102 |
| 103 /* ---------------------------- GLX_VERSION_1_0 --------------------------- */ |
| 104 |
| 105 #ifndef GLX_VERSION_1_0 |
| 106 #define GLX_VERSION_1_0 1 |
| 107 |
| 108 #define GLX_USE_GL 1 |
| 109 #define GLX_BUFFER_SIZE 2 |
| 110 #define GLX_LEVEL 3 |
| 111 #define GLX_RGBA 4 |
| 112 #define GLX_DOUBLEBUFFER 5 |
| 113 #define GLX_STEREO 6 |
| 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 |
| 132 |
| 133 typedef XID GLXDrawable; |
| 134 typedef XID GLXPixmap; |
| 135 #ifdef __sun |
| 136 typedef struct __glXContextRec *GLXContext; |
| 137 #else |
| 138 typedef struct __GLXcontextRec *GLXContext; |
| 139 #endif |
| 140 |
| 141 typedef unsigned int GLXVideoDeviceNV; |
| 142 |
| 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 pixm
ap); |
| 148 extern void glXDestroyGLXPixmap (Display *dpy, GLXPixmap pix); |
| 149 extern GLXContext glXCreateContext (Display *dpy, XVisualInfo *vis, GLXContext s
hareList, 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, GLulon
g 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); |
| 160 |
| 161 #define GLXEW_VERSION_1_0 GLXEW_GET_VAR(__GLXEW_VERSION_1_0) |
| 162 |
| 163 #endif /* GLX_VERSION_1_0 */ |
| 164 |
| 165 /* ---------------------------- GLX_VERSION_1_1 --------------------------- */ |
| 166 |
| 167 #ifndef GLX_VERSION_1_1 |
| 168 #define GLX_VERSION_1_1 |
| 169 |
| 170 #define GLX_VENDOR 0x1 |
| 171 #define GLX_VERSION 0x2 |
| 172 #define GLX_EXTENSIONS 0x3 |
| 173 |
| 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); |
| 177 |
| 178 #define GLXEW_VERSION_1_1 GLXEW_GET_VAR(__GLXEW_VERSION_1_1) |
| 179 |
| 180 #endif /* GLX_VERSION_1_1 */ |
| 181 |
| 182 /* ---------------------------- GLX_VERSION_1_2 ---------------------------- */ |
| 183 |
| 184 #ifndef GLX_VERSION_1_2 |
| 185 #define GLX_VERSION_1_2 1 |
| 186 |
| 187 typedef Display* ( * PFNGLXGETCURRENTDISPLAYPROC) (void); |
| 188 |
| 189 #define glXGetCurrentDisplay GLXEW_GET_FUN(__glewXGetCurrentDisplay) |
| 190 |
| 191 #define GLXEW_VERSION_1_2 GLXEW_GET_VAR(__GLXEW_VERSION_1_2) |
| 192 |
| 193 #endif /* GLX_VERSION_1_2 */ |
| 194 |
| 195 /* ---------------------------- GLX_VERSION_1_3 ---------------------------- */ |
| 196 |
| 197 #ifndef GLX_VERSION_1_3 |
| 198 #define GLX_VERSION_1_3 1 |
| 199 |
| 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 |
| 256 |
| 257 typedef XID GLXFBConfigID; |
| 258 typedef XID GLXWindow; |
| 259 typedef XID GLXPbuffer; |
| 260 typedef struct __GLXFBConfigRec *GLXFBConfig; |
| 261 |
| 262 typedef struct { |
| 263 int event_type; |
| 264 int draw_type; |
| 265 unsigned long serial; |
| 266 Bool send_event; |
| 267 Display *display; |
| 268 GLXDrawable drawable; |
| 269 unsigned int buffer_mask; |
| 270 unsigned int aux_buffer; |
| 271 int x, y; |
| 272 int width, height; |
| 273 int count; |
| 274 } GLXPbufferClobberEvent; |
| 275 typedef union __GLXEvent { |
| 276 GLXPbufferClobberEvent glxpbufferclobber; |
| 277 long pad[24]; |
| 278 } GLXEvent; |
| 279 |
| 280 typedef GLXFBConfig* ( * PFNGLXCHOOSEFBCONFIGPROC) (Display *dpy, int screen, co
nst int *attrib_list, int *nelements); |
| 281 typedef GLXContext ( * PFNGLXCREATENEWCONTEXTPROC) (Display *dpy, GLXFBConfig co
nfig, int render_type, GLXContext share_list, Bool direct); |
| 282 typedef GLXPbuffer ( * PFNGLXCREATEPBUFFERPROC) (Display *dpy, GLXFBConfig confi
g, 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, un
signed long *event_mask); |
| 292 typedef XVisualInfo* ( * PFNGLXGETVISUALFROMFBCONFIGPROC) (Display *dpy, GLXFBCo
nfig config); |
| 293 typedef Bool ( * PFNGLXMAKECONTEXTCURRENTPROC) (Display *display, GLXDrawable dr
aw, GLXDrawable read, GLXContext ctx); |
| 294 typedef int ( * PFNGLXQUERYCONTEXTPROC) (Display *dpy, GLXContext ctx, int attri
bute, int *value); |
| 295 typedef void ( * PFNGLXQUERYDRAWABLEPROC) (Display *dpy, GLXDrawable draw, int a
ttribute, unsigned int *value); |
| 296 typedef void ( * PFNGLXSELECTEVENTPROC) (Display *dpy, GLXDrawable draw, unsigne
d long event_mask); |
| 297 |
| 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) |
| 315 |
| 316 #define GLXEW_VERSION_1_3 GLXEW_GET_VAR(__GLXEW_VERSION_1_3) |
| 317 |
| 318 #endif /* GLX_VERSION_1_3 */ |
| 319 |
| 320 /* ---------------------------- GLX_VERSION_1_4 ---------------------------- */ |
| 321 |
| 322 #ifndef GLX_VERSION_1_4 |
| 323 #define GLX_VERSION_1_4 1 |
| 324 |
| 325 #define GLX_SAMPLE_BUFFERS 100000 |
| 326 #define GLX_SAMPLES 100001 |
| 327 |
| 328 extern void ( * glXGetProcAddress (const GLubyte *procName)) (void); |
| 329 |
| 330 #define GLXEW_VERSION_1_4 GLXEW_GET_VAR(__GLXEW_VERSION_1_4) |
| 331 |
| 332 #endif /* GLX_VERSION_1_4 */ |
| 333 |
| 334 /* -------------------------- GLX_3DFX_multisample ------------------------- */ |
| 335 |
| 336 #ifndef GLX_3DFX_multisample |
| 337 #define GLX_3DFX_multisample 1 |
| 338 |
| 339 #define GLX_SAMPLE_BUFFERS_3DFX 0x8050 |
| 340 #define GLX_SAMPLES_3DFX 0x8051 |
| 341 |
| 342 #define GLXEW_3DFX_multisample GLXEW_GET_VAR(__GLXEW_3DFX_multisample) |
| 343 |
| 344 #endif /* GLX_3DFX_multisample */ |
| 345 |
| 346 /* ------------------------- GLX_ARB_create_context ------------------------ */ |
| 347 |
| 348 #ifndef GLX_ARB_create_context |
| 349 #define GLX_ARB_create_context 1 |
| 350 |
| 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 |
| 356 |
| 357 typedef GLXContext ( * PFNGLXCREATECONTEXTATTRIBSARBPROC) (Display* dpy, GLXFBCo
nfig config, GLXContext share_context, Bool direct, const int *attrib_list); |
| 358 |
| 359 #define glXCreateContextAttribsARB GLXEW_GET_FUN(__glewXCreateContextAttribsARB) |
| 360 |
| 361 #define GLXEW_ARB_create_context GLXEW_GET_VAR(__GLXEW_ARB_create_context) |
| 362 |
| 363 #endif /* GLX_ARB_create_context */ |
| 364 |
| 365 /* ------------------------- GLX_ARB_fbconfig_float ------------------------ */ |
| 366 |
| 367 #ifndef GLX_ARB_fbconfig_float |
| 368 #define GLX_ARB_fbconfig_float 1 |
| 369 |
| 370 #define GLX_RGBA_FLOAT_BIT 0x00000004 |
| 371 #define GLX_RGBA_FLOAT_TYPE 0x20B9 |
| 372 |
| 373 #define GLXEW_ARB_fbconfig_float GLXEW_GET_VAR(__GLXEW_ARB_fbconfig_float) |
| 374 |
| 375 #endif /* GLX_ARB_fbconfig_float */ |
| 376 |
| 377 /* ------------------------ GLX_ARB_framebuffer_sRGB ----------------------- */ |
| 378 |
| 379 #ifndef GLX_ARB_framebuffer_sRGB |
| 380 #define GLX_ARB_framebuffer_sRGB 1 |
| 381 |
| 382 #define GLX_FRAMEBUFFER_SRGB_CAPABLE_ARB 0x20B2 |
| 383 |
| 384 #define GLXEW_ARB_framebuffer_sRGB GLXEW_GET_VAR(__GLXEW_ARB_framebuffer_sRGB) |
| 385 |
| 386 #endif /* GLX_ARB_framebuffer_sRGB */ |
| 387 |
| 388 /* ------------------------ GLX_ARB_get_proc_address ----------------------- */ |
| 389 |
| 390 #ifndef GLX_ARB_get_proc_address |
| 391 #define GLX_ARB_get_proc_address 1 |
| 392 |
| 393 extern void ( * glXGetProcAddressARB (const GLubyte *procName)) (void); |
| 394 |
| 395 #define GLXEW_ARB_get_proc_address GLXEW_GET_VAR(__GLXEW_ARB_get_proc_address) |
| 396 |
| 397 #endif /* GLX_ARB_get_proc_address */ |
| 398 |
| 399 /* -------------------------- GLX_ARB_multisample -------------------------- */ |
| 400 |
| 401 #ifndef GLX_ARB_multisample |
| 402 #define GLX_ARB_multisample 1 |
| 403 |
| 404 #define GLX_SAMPLE_BUFFERS_ARB 100000 |
| 405 #define GLX_SAMPLES_ARB 100001 |
| 406 |
| 407 #define GLXEW_ARB_multisample GLXEW_GET_VAR(__GLXEW_ARB_multisample) |
| 408 |
| 409 #endif /* GLX_ARB_multisample */ |
| 410 |
| 411 /* ----------------------- GLX_ATI_pixel_format_float ---------------------- */ |
| 412 |
| 413 #ifndef GLX_ATI_pixel_format_float |
| 414 #define GLX_ATI_pixel_format_float 1 |
| 415 |
| 416 #define GLX_RGBA_FLOAT_ATI_BIT 0x00000100 |
| 417 |
| 418 #define GLXEW_ATI_pixel_format_float GLXEW_GET_VAR(__GLXEW_ATI_pixel_format_floa
t) |
| 419 |
| 420 #endif /* GLX_ATI_pixel_format_float */ |
| 421 |
| 422 /* ------------------------- GLX_ATI_render_texture ------------------------ */ |
| 423 |
| 424 #ifndef GLX_ATI_render_texture |
| 425 #define GLX_ATI_render_texture 1 |
| 426 |
| 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 |
| 462 |
| 463 typedef void ( * PFNGLXBINDTEXIMAGEATIPROC) (Display *dpy, GLXPbuffer pbuf, int
buffer); |
| 464 typedef void ( * PFNGLXDRAWABLEATTRIBATIPROC) (Display *dpy, GLXDrawable draw, c
onst int *attrib_list); |
| 465 typedef void ( * PFNGLXRELEASETEXIMAGEATIPROC) (Display *dpy, GLXPbuffer pbuf, i
nt buffer); |
| 466 |
| 467 #define glXBindTexImageATI GLXEW_GET_FUN(__glewXBindTexImageATI) |
| 468 #define glXDrawableAttribATI GLXEW_GET_FUN(__glewXDrawableAttribATI) |
| 469 #define glXReleaseTexImageATI GLXEW_GET_FUN(__glewXReleaseTexImageATI) |
| 470 |
| 471 #define GLXEW_ATI_render_texture GLXEW_GET_VAR(__GLXEW_ATI_render_texture) |
| 472 |
| 473 #endif /* GLX_ATI_render_texture */ |
| 474 |
| 475 /* --------------------- GLX_EXT_fbconfig_packed_float --------------------- */ |
| 476 |
| 477 #ifndef GLX_EXT_fbconfig_packed_float |
| 478 #define GLX_EXT_fbconfig_packed_float 1 |
| 479 |
| 480 #define GLX_RGBA_UNSIGNED_FLOAT_BIT_EXT 0x00000008 |
| 481 #define GLX_RGBA_UNSIGNED_FLOAT_TYPE_EXT 0x20B1 |
| 482 |
| 483 #define GLXEW_EXT_fbconfig_packed_float GLXEW_GET_VAR(__GLXEW_EXT_fbconfig_packe
d_float) |
| 484 |
| 485 #endif /* GLX_EXT_fbconfig_packed_float */ |
| 486 |
| 487 /* ------------------------ GLX_EXT_framebuffer_sRGB ----------------------- */ |
| 488 |
| 489 #ifndef GLX_EXT_framebuffer_sRGB |
| 490 #define GLX_EXT_framebuffer_sRGB 1 |
| 491 |
| 492 #define GLX_FRAMEBUFFER_SRGB_CAPABLE_EXT 0x20B2 |
| 493 |
| 494 #define GLXEW_EXT_framebuffer_sRGB GLXEW_GET_VAR(__GLXEW_EXT_framebuffer_sRGB) |
| 495 |
| 496 #endif /* GLX_EXT_framebuffer_sRGB */ |
| 497 |
| 498 /* ------------------------- GLX_EXT_import_context ------------------------ */ |
| 499 |
| 500 #ifndef GLX_EXT_import_context |
| 501 #define GLX_EXT_import_context 1 |
| 502 |
| 503 #define GLX_SHARE_CONTEXT_EXT 0x800A |
| 504 #define GLX_VISUAL_ID_EXT 0x800B |
| 505 #define GLX_SCREEN_EXT 0x800C |
| 506 |
| 507 typedef XID GLXContextID; |
| 508 |
| 509 typedef void ( * PFNGLXFREECONTEXTEXTPROC) (Display* dpy, GLXContext context); |
| 510 typedef GLXContextID ( * PFNGLXGETCONTEXTIDEXTPROC) (const GLXContext context); |
| 511 typedef GLXContext ( * PFNGLXIMPORTCONTEXTEXTPROC) (Display* dpy, GLXContextID c
ontextID); |
| 512 typedef int ( * PFNGLXQUERYCONTEXTINFOEXTPROC) (Display* dpy, GLXContext context
, int attribute,int *value); |
| 513 |
| 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) |
| 518 |
| 519 #define GLXEW_EXT_import_context GLXEW_GET_VAR(__GLXEW_EXT_import_context) |
| 520 |
| 521 #endif /* GLX_EXT_import_context */ |
| 522 |
| 523 /* -------------------------- GLX_EXT_scene_marker ------------------------- */ |
| 524 |
| 525 #ifndef GLX_EXT_scene_marker |
| 526 #define GLX_EXT_scene_marker 1 |
| 527 |
| 528 #define GLXEW_EXT_scene_marker GLXEW_GET_VAR(__GLXEW_EXT_scene_marker) |
| 529 |
| 530 #endif /* GLX_EXT_scene_marker */ |
| 531 |
| 532 /* ---------------------- GLX_EXT_texture_from_pixmap ---------------------- */ |
| 533 |
| 534 #ifndef GLX_EXT_texture_from_pixmap |
| 535 #define GLX_EXT_texture_from_pixmap 1 |
| 536 |
| 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 |
| 568 |
| 569 typedef void ( * PFNGLXBINDTEXIMAGEEXTPROC) (Display* display, GLXDrawable drawa
ble, int buffer, const int *attrib_list); |
| 570 typedef void ( * PFNGLXRELEASETEXIMAGEEXTPROC) (Display* display, GLXDrawable dr
awable, int buffer); |
| 571 |
| 572 #define glXBindTexImageEXT GLXEW_GET_FUN(__glewXBindTexImageEXT) |
| 573 #define glXReleaseTexImageEXT GLXEW_GET_FUN(__glewXReleaseTexImageEXT) |
| 574 |
| 575 #define GLXEW_EXT_texture_from_pixmap GLXEW_GET_VAR(__GLXEW_EXT_texture_from_pix
map) |
| 576 |
| 577 #endif /* GLX_EXT_texture_from_pixmap */ |
| 578 |
| 579 /* -------------------------- GLX_EXT_visual_info -------------------------- */ |
| 580 |
| 581 #ifndef GLX_EXT_visual_info |
| 582 #define GLX_EXT_visual_info 1 |
| 583 |
| 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 |
| 600 |
| 601 #define GLXEW_EXT_visual_info GLXEW_GET_VAR(__GLXEW_EXT_visual_info) |
| 602 |
| 603 #endif /* GLX_EXT_visual_info */ |
| 604 |
| 605 /* ------------------------- GLX_EXT_visual_rating ------------------------- */ |
| 606 |
| 607 #ifndef GLX_EXT_visual_rating |
| 608 #define GLX_EXT_visual_rating 1 |
| 609 |
| 610 #define GLX_VISUAL_CAVEAT_EXT 0x20 |
| 611 #define GLX_SLOW_VISUAL_EXT 0x8001 |
| 612 #define GLX_NON_CONFORMANT_VISUAL_EXT 0x800D |
| 613 |
| 614 #define GLXEW_EXT_visual_rating GLXEW_GET_VAR(__GLXEW_EXT_visual_rating) |
| 615 |
| 616 #endif /* GLX_EXT_visual_rating */ |
| 617 |
| 618 /* -------------------------- GLX_MESA_agp_offset -------------------------- */ |
| 619 |
| 620 #ifndef GLX_MESA_agp_offset |
| 621 #define GLX_MESA_agp_offset 1 |
| 622 |
| 623 typedef unsigned int ( * PFNGLXGETAGPOFFSETMESAPROC) (const void* pointer); |
| 624 |
| 625 #define glXGetAGPOffsetMESA GLXEW_GET_FUN(__glewXGetAGPOffsetMESA) |
| 626 |
| 627 #define GLXEW_MESA_agp_offset GLXEW_GET_VAR(__GLXEW_MESA_agp_offset) |
| 628 |
| 629 #endif /* GLX_MESA_agp_offset */ |
| 630 |
| 631 /* ------------------------ GLX_MESA_copy_sub_buffer ----------------------- */ |
| 632 |
| 633 #ifndef GLX_MESA_copy_sub_buffer |
| 634 #define GLX_MESA_copy_sub_buffer 1 |
| 635 |
| 636 typedef void ( * PFNGLXCOPYSUBBUFFERMESAPROC) (Display* dpy, GLXDrawable drawabl
e, int x, int y, int width, int height); |
| 637 |
| 638 #define glXCopySubBufferMESA GLXEW_GET_FUN(__glewXCopySubBufferMESA) |
| 639 |
| 640 #define GLXEW_MESA_copy_sub_buffer GLXEW_GET_VAR(__GLXEW_MESA_copy_sub_buffer) |
| 641 |
| 642 #endif /* GLX_MESA_copy_sub_buffer */ |
| 643 |
| 644 /* ------------------------ GLX_MESA_pixmap_colormap ----------------------- */ |
| 645 |
| 646 #ifndef GLX_MESA_pixmap_colormap |
| 647 #define GLX_MESA_pixmap_colormap 1 |
| 648 |
| 649 typedef GLXPixmap ( * PFNGLXCREATEGLXPIXMAPMESAPROC) (Display* dpy, XVisualInfo
*visual, Pixmap pixmap, Colormap cmap); |
| 650 |
| 651 #define glXCreateGLXPixmapMESA GLXEW_GET_FUN(__glewXCreateGLXPixmapMESA) |
| 652 |
| 653 #define GLXEW_MESA_pixmap_colormap GLXEW_GET_VAR(__GLXEW_MESA_pixmap_colormap) |
| 654 |
| 655 #endif /* GLX_MESA_pixmap_colormap */ |
| 656 |
| 657 /* ------------------------ GLX_MESA_release_buffers ----------------------- */ |
| 658 |
| 659 #ifndef GLX_MESA_release_buffers |
| 660 #define GLX_MESA_release_buffers 1 |
| 661 |
| 662 typedef Bool ( * PFNGLXRELEASEBUFFERSMESAPROC) (Display* dpy, GLXDrawable d); |
| 663 |
| 664 #define glXReleaseBuffersMESA GLXEW_GET_FUN(__glewXReleaseBuffersMESA) |
| 665 |
| 666 #define GLXEW_MESA_release_buffers GLXEW_GET_VAR(__GLXEW_MESA_release_buffers) |
| 667 |
| 668 #endif /* GLX_MESA_release_buffers */ |
| 669 |
| 670 /* ------------------------- GLX_MESA_set_3dfx_mode ------------------------ */ |
| 671 |
| 672 #ifndef GLX_MESA_set_3dfx_mode |
| 673 #define GLX_MESA_set_3dfx_mode 1 |
| 674 |
| 675 #define GLX_3DFX_WINDOW_MODE_MESA 0x1 |
| 676 #define GLX_3DFX_FULLSCREEN_MODE_MESA 0x2 |
| 677 |
| 678 typedef GLboolean ( * PFNGLXSET3DFXMODEMESAPROC) (GLint mode); |
| 679 |
| 680 #define glXSet3DfxModeMESA GLXEW_GET_FUN(__glewXSet3DfxModeMESA) |
| 681 |
| 682 #define GLXEW_MESA_set_3dfx_mode GLXEW_GET_VAR(__GLXEW_MESA_set_3dfx_mode) |
| 683 |
| 684 #endif /* GLX_MESA_set_3dfx_mode */ |
| 685 |
| 686 /* -------------------------- GLX_NV_float_buffer -------------------------- */ |
| 687 |
| 688 #ifndef GLX_NV_float_buffer |
| 689 #define GLX_NV_float_buffer 1 |
| 690 |
| 691 #define GLX_FLOAT_COMPONENTS_NV 0x20B0 |
| 692 |
| 693 #define GLXEW_NV_float_buffer GLXEW_GET_VAR(__GLXEW_NV_float_buffer) |
| 694 |
| 695 #endif /* GLX_NV_float_buffer */ |
| 696 |
| 697 /* -------------------------- GLX_NV_present_video ------------------------- */ |
| 698 |
| 699 #ifndef GLX_NV_present_video |
| 700 #define GLX_NV_present_video 1 |
| 701 |
| 702 #define GLX_NUM_VIDEO_SLOTS_NV 0x20F0 |
| 703 |
| 704 typedef int ( * PFNGLXBINDVIDEODEVICENVPROC) (Display* dpy, unsigned int video_s
lot, unsigned int video_device, const int *attrib_list); |
| 705 typedef unsigned int* ( * PFNGLXENUMERATEVIDEODEVICESNVPROC) (Display *dpy, int
screen, int *nelements); |
| 706 |
| 707 #define glXBindVideoDeviceNV GLXEW_GET_FUN(__glewXBindVideoDeviceNV) |
| 708 #define glXEnumerateVideoDevicesNV GLXEW_GET_FUN(__glewXEnumerateVideoDevicesNV) |
| 709 |
| 710 #define GLXEW_NV_present_video GLXEW_GET_VAR(__GLXEW_NV_present_video) |
| 711 |
| 712 #endif /* GLX_NV_present_video */ |
| 713 |
| 714 /* --------------------------- GLX_NV_swap_group --------------------------- */ |
| 715 |
| 716 #ifndef GLX_NV_swap_group |
| 717 #define GLX_NV_swap_group 1 |
| 718 |
| 719 typedef Bool ( * PFNGLXBINDSWAPBARRIERNVPROC) (Display* dpy, GLuint group, GLuin
t 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, GLui
nt *maxGroups, GLuint *maxBarriers); |
| 723 typedef Bool ( * PFNGLXQUERYSWAPGROUPNVPROC) (Display* dpy, GLXDrawable drawable
, GLuint *group, GLuint *barrier); |
| 724 typedef Bool ( * PFNGLXRESETFRAMECOUNTNVPROC) (Display* dpy, int screen); |
| 725 |
| 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) |
| 732 |
| 733 #define GLXEW_NV_swap_group GLXEW_GET_VAR(__GLXEW_NV_swap_group) |
| 734 |
| 735 #endif /* GLX_NV_swap_group */ |
| 736 |
| 737 /* ----------------------- GLX_NV_vertex_array_range ----------------------- */ |
| 738 |
| 739 #ifndef GLX_NV_vertex_array_range |
| 740 #define GLX_NV_vertex_array_range 1 |
| 741 |
| 742 typedef void * ( * PFNGLXALLOCATEMEMORYNVPROC) (GLsizei size, GLfloat readFreque
ncy, GLfloat writeFrequency, GLfloat priority); |
| 743 typedef void ( * PFNGLXFREEMEMORYNVPROC) (void *pointer); |
| 744 |
| 745 #define glXAllocateMemoryNV GLXEW_GET_FUN(__glewXAllocateMemoryNV) |
| 746 #define glXFreeMemoryNV GLXEW_GET_FUN(__glewXFreeMemoryNV) |
| 747 |
| 748 #define GLXEW_NV_vertex_array_range GLXEW_GET_VAR(__GLXEW_NV_vertex_array_range) |
| 749 |
| 750 #endif /* GLX_NV_vertex_array_range */ |
| 751 |
| 752 /* -------------------------- GLX_NV_video_output -------------------------- */ |
| 753 |
| 754 #ifndef GLX_NV_video_output |
| 755 #define GLX_NV_video_output 1 |
| 756 |
| 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 |
| 767 |
| 768 typedef int ( * PFNGLXBINDVIDEOIMAGENVPROC) (Display* dpy, GLXVideoDeviceNV Vide
oDevice, GLXPbuffer pbuf, int iVideoBuffer); |
| 769 typedef int ( * PFNGLXGETVIDEODEVICENVPROC) (Display* dpy, int screen, int numVi
deoDevices, GLXVideoDeviceNV *pVideoDevice); |
| 770 typedef int ( * PFNGLXGETVIDEOINFONVPROC) (Display* dpy, int screen, GLXVideoDev
iceNV VideoDevice, unsigned long *pulCounterOutputPbuffer, unsigned long *pulCou
nterOutputVideo); |
| 771 typedef int ( * PFNGLXRELEASEVIDEODEVICENVPROC) (Display* dpy, int screen, GLXVi
deoDeviceNV VideoDevice); |
| 772 typedef int ( * PFNGLXRELEASEVIDEOIMAGENVPROC) (Display* dpy, GLXPbuffer pbuf); |
| 773 typedef int ( * PFNGLXSENDPBUFFERTOVIDEONVPROC) (Display* dpy, GLXPbuffer pbuf,
int iBufferType, unsigned long *pulCounterPbuffer, GLboolean bBlock); |
| 774 |
| 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) |
| 781 |
| 782 #define GLXEW_NV_video_output GLXEW_GET_VAR(__GLXEW_NV_video_output) |
| 783 |
| 784 #endif /* GLX_NV_video_output */ |
| 785 |
| 786 /* -------------------------- GLX_OML_swap_method -------------------------- */ |
| 787 |
| 788 #ifndef GLX_OML_swap_method |
| 789 #define GLX_OML_swap_method 1 |
| 790 |
| 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 |
| 795 |
| 796 #define GLXEW_OML_swap_method GLXEW_GET_VAR(__GLXEW_OML_swap_method) |
| 797 |
| 798 #endif /* GLX_OML_swap_method */ |
| 799 |
| 800 /* -------------------------- GLX_OML_sync_control ------------------------- */ |
| 801 |
| 802 #if !defined(GLX_OML_sync_control) && defined(__STDC_VERSION__) && (__STDC_VERSI
ON__ >= 199901L) |
| 803 #include <inttypes.h> |
| 804 #define GLX_OML_sync_control 1 |
| 805 |
| 806 typedef Bool ( * PFNGLXGETMSCRATEOMLPROC) (Display* dpy, GLXDrawable drawable, i
nt32_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 draw
able, int64_t target_msc, int64_t divisor, int64_t remainder); |
| 809 typedef Bool ( * PFNGLXWAITFORMSCOMLPROC) (Display* dpy, GLXDrawable drawable, i
nt64_t target_msc, int64_t divisor, int64_t remainder, int64_t* ust, int64_t* ms
c, int64_t* sbc); |
| 810 typedef Bool ( * PFNGLXWAITFORSBCOMLPROC) (Display* dpy, GLXDrawable drawable, i
nt64_t target_sbc, int64_t* ust, int64_t* msc, int64_t* sbc); |
| 811 |
| 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) |
| 817 |
| 818 #define GLXEW_OML_sync_control GLXEW_GET_VAR(__GLXEW_OML_sync_control) |
| 819 |
| 820 #endif /* GLX_OML_sync_control */ |
| 821 |
| 822 /* ------------------------ GLX_SGIS_blended_overlay ----------------------- */ |
| 823 |
| 824 #ifndef GLX_SGIS_blended_overlay |
| 825 #define GLX_SGIS_blended_overlay 1 |
| 826 |
| 827 #define GLX_BLENDED_RGBA_SGIS 0x8025 |
| 828 |
| 829 #define GLXEW_SGIS_blended_overlay GLXEW_GET_VAR(__GLXEW_SGIS_blended_overlay) |
| 830 |
| 831 #endif /* GLX_SGIS_blended_overlay */ |
| 832 |
| 833 /* -------------------------- GLX_SGIS_color_range ------------------------- */ |
| 834 |
| 835 #ifndef GLX_SGIS_color_range |
| 836 #define GLX_SGIS_color_range 1 |
| 837 |
| 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 |
| 847 |
| 848 #define GLXEW_SGIS_color_range GLXEW_GET_VAR(__GLXEW_SGIS_color_range) |
| 849 |
| 850 #endif /* GLX_SGIS_color_range */ |
| 851 |
| 852 /* -------------------------- GLX_SGIS_multisample ------------------------- */ |
| 853 |
| 854 #ifndef GLX_SGIS_multisample |
| 855 #define GLX_SGIS_multisample 1 |
| 856 |
| 857 #define GLX_SAMPLE_BUFFERS_SGIS 100000 |
| 858 #define GLX_SAMPLES_SGIS 100001 |
| 859 |
| 860 #define GLXEW_SGIS_multisample GLXEW_GET_VAR(__GLXEW_SGIS_multisample) |
| 861 |
| 862 #endif /* GLX_SGIS_multisample */ |
| 863 |
| 864 /* ---------------------- GLX_SGIS_shared_multisample ---------------------- */ |
| 865 |
| 866 #ifndef GLX_SGIS_shared_multisample |
| 867 #define GLX_SGIS_shared_multisample 1 |
| 868 |
| 869 #define GLX_MULTISAMPLE_SUB_RECT_WIDTH_SGIS 0x8026 |
| 870 #define GLX_MULTISAMPLE_SUB_RECT_HEIGHT_SGIS 0x8027 |
| 871 |
| 872 #define GLXEW_SGIS_shared_multisample GLXEW_GET_VAR(__GLXEW_SGIS_shared_multisam
ple) |
| 873 |
| 874 #endif /* GLX_SGIS_shared_multisample */ |
| 875 |
| 876 /* --------------------------- GLX_SGIX_fbconfig --------------------------- */ |
| 877 |
| 878 #ifndef GLX_SGIX_fbconfig |
| 879 #define GLX_SGIX_fbconfig 1 |
| 880 |
| 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 |
| 892 |
| 893 typedef XID GLXFBConfigIDSGIX; |
| 894 typedef struct __GLXFBConfigRec *GLXFBConfigSGIX; |
| 895 |
| 896 typedef GLXFBConfigSGIX* ( * PFNGLXCHOOSEFBCONFIGSGIXPROC) (Display *dpy, int sc
reen, const int *attrib_list, int *nelements); |
| 897 typedef GLXContext ( * PFNGLXCREATECONTEXTWITHCONFIGSGIXPROC) (Display* dpy, GLX
FBConfig config, int render_type, GLXContext share_list, Bool direct); |
| 898 typedef GLXPixmap ( * PFNGLXCREATEGLXPIXMAPWITHCONFIGSGIXPROC) (Display* dpy, GL
XFBConfig 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, GLX
FBConfig config); |
| 902 |
| 903 #define glXChooseFBConfigSGIX GLXEW_GET_FUN(__glewXChooseFBConfigSGIX) |
| 904 #define glXCreateContextWithConfigSGIX GLXEW_GET_FUN(__glewXCreateContextWithCon
figSGIX) |
| 905 #define glXCreateGLXPixmapWithConfigSGIX GLXEW_GET_FUN(__glewXCreateGLXPixmapWit
hConfigSGIX) |
| 906 #define glXGetFBConfigAttribSGIX GLXEW_GET_FUN(__glewXGetFBConfigAttribSGIX) |
| 907 #define glXGetFBConfigFromVisualSGIX GLXEW_GET_FUN(__glewXGetFBConfigFromVisualS
GIX) |
| 908 #define glXGetVisualFromFBConfigSGIX GLXEW_GET_FUN(__glewXGetVisualFromFBConfigS
GIX) |
| 909 |
| 910 #define GLXEW_SGIX_fbconfig GLXEW_GET_VAR(__GLXEW_SGIX_fbconfig) |
| 911 |
| 912 #endif /* GLX_SGIX_fbconfig */ |
| 913 |
| 914 /* --------------------------- GLX_SGIX_hyperpipe -------------------------- */ |
| 915 |
| 916 #ifndef GLX_SGIX_hyperpipe |
| 917 #define GLX_SGIX_hyperpipe 1 |
| 918 |
| 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 |
| 929 |
| 930 typedef struct { |
| 931 char pipeName[GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX]; |
| 932 int networkId; |
| 933 } GLXHyperpipeNetworkSGIX; |
| 934 typedef struct { |
| 935 char pipeName[GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX]; |
| 936 int XOrigin; |
| 937 int YOrigin; |
| 938 int maxHeight; |
| 939 int maxWidth; |
| 940 } GLXPipeRectLimits; |
| 941 typedef struct { |
| 942 char pipeName[GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX]; |
| 943 int channel; |
| 944 unsigned int participationType; |
| 945 int timeSlice; |
| 946 } GLXHyperpipeConfigSGIX; |
| 947 typedef struct { |
| 948 char pipeName[GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX]; |
| 949 int srcXOrigin; |
| 950 int srcYOrigin; |
| 951 int srcWidth; |
| 952 int srcHeight; |
| 953 int destXOrigin; |
| 954 int destYOrigin; |
| 955 int destWidth; |
| 956 int destHeight; |
| 957 } GLXPipeRect; |
| 958 |
| 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 timeS
lice, int attrib, int size, void *attribList, void *returnAttribList); |
| 965 typedef GLXHyperpipeConfigSGIX * ( * PFNGLXQUERYHYPERPIPECONFIGSGIXPROC) (Displa
y *dpy, int hpId, int *npipes); |
| 966 typedef GLXHyperpipeNetworkSGIX * ( * PFNGLXQUERYHYPERPIPENETWORKSGIXPROC) (Disp
lay *dpy, int *npipes); |
| 967 |
| 968 #define glXBindHyperpipeSGIX GLXEW_GET_FUN(__glewXBindHyperpipeSGIX) |
| 969 #define glXDestroyHyperpipeConfigSGIX GLXEW_GET_FUN(__glewXDestroyHyperpipeConfi
gSGIX) |
| 970 #define glXHyperpipeAttribSGIX GLXEW_GET_FUN(__glewXHyperpipeAttribSGIX) |
| 971 #define glXHyperpipeConfigSGIX GLXEW_GET_FUN(__glewXHyperpipeConfigSGIX) |
| 972 #define glXQueryHyperpipeAttribSGIX GLXEW_GET_FUN(__glewXQueryHyperpipeAttribSGI
X) |
| 973 #define glXQueryHyperpipeBestAttribSGIX GLXEW_GET_FUN(__glewXQueryHyperpipeBestA
ttribSGIX) |
| 974 #define glXQueryHyperpipeConfigSGIX GLXEW_GET_FUN(__glewXQueryHyperpipeConfigSGI
X) |
| 975 #define glXQueryHyperpipeNetworkSGIX GLXEW_GET_FUN(__glewXQueryHyperpipeNetworkS
GIX) |
| 976 |
| 977 #define GLXEW_SGIX_hyperpipe GLXEW_GET_VAR(__GLXEW_SGIX_hyperpipe) |
| 978 |
| 979 #endif /* GLX_SGIX_hyperpipe */ |
| 980 |
| 981 /* ---------------------------- GLX_SGIX_pbuffer --------------------------- */ |
| 982 |
| 983 #ifndef GLX_SGIX_pbuffer |
| 984 #define GLX_SGIX_pbuffer 1 |
| 985 |
| 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 |
| 1011 |
| 1012 typedef XID GLXPbufferSGIX; |
| 1013 typedef struct { int type; unsigned long serial; Bool send_event; Display *displ
ay; GLXDrawable drawable; int event_type; int draw_type; unsigned int mask; int
x, y; int width, height; int count; } GLXBufferClobberEventSGIX; |
| 1014 |
| 1015 typedef GLXPbuffer ( * PFNGLXCREATEGLXPBUFFERSGIXPROC) (Display* dpy, GLXFBConfi
g 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 draw
able, 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); |
| 1020 |
| 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) |
| 1026 |
| 1027 #define GLXEW_SGIX_pbuffer GLXEW_GET_VAR(__GLXEW_SGIX_pbuffer) |
| 1028 |
| 1029 #endif /* GLX_SGIX_pbuffer */ |
| 1030 |
| 1031 /* ------------------------- GLX_SGIX_swap_barrier ------------------------- */ |
| 1032 |
| 1033 #ifndef GLX_SGIX_swap_barrier |
| 1034 #define GLX_SGIX_swap_barrier 1 |
| 1035 |
| 1036 typedef void ( * PFNGLXBINDSWAPBARRIERSGIXPROC) (Display *dpy, GLXDrawable drawa
ble, int barrier); |
| 1037 typedef Bool ( * PFNGLXQUERYMAXSWAPBARRIERSSGIXPROC) (Display *dpy, int screen,
int *max); |
| 1038 |
| 1039 #define glXBindSwapBarrierSGIX GLXEW_GET_FUN(__glewXBindSwapBarrierSGIX) |
| 1040 #define glXQueryMaxSwapBarriersSGIX GLXEW_GET_FUN(__glewXQueryMaxSwapBarriersSGI
X) |
| 1041 |
| 1042 #define GLXEW_SGIX_swap_barrier GLXEW_GET_VAR(__GLXEW_SGIX_swap_barrier) |
| 1043 |
| 1044 #endif /* GLX_SGIX_swap_barrier */ |
| 1045 |
| 1046 /* -------------------------- GLX_SGIX_swap_group -------------------------- */ |
| 1047 |
| 1048 #ifndef GLX_SGIX_swap_group |
| 1049 #define GLX_SGIX_swap_group 1 |
| 1050 |
| 1051 typedef void ( * PFNGLXJOINSWAPGROUPSGIXPROC) (Display *dpy, GLXDrawable drawabl
e, GLXDrawable member); |
| 1052 |
| 1053 #define glXJoinSwapGroupSGIX GLXEW_GET_FUN(__glewXJoinSwapGroupSGIX) |
| 1054 |
| 1055 #define GLXEW_SGIX_swap_group GLXEW_GET_VAR(__GLXEW_SGIX_swap_group) |
| 1056 |
| 1057 #endif /* GLX_SGIX_swap_group */ |
| 1058 |
| 1059 /* ------------------------- GLX_SGIX_video_resize ------------------------- */ |
| 1060 |
| 1061 #ifndef GLX_SGIX_video_resize |
| 1062 #define GLX_SGIX_video_resize 1 |
| 1063 |
| 1064 #define GLX_SYNC_FRAME_SGIX 0x00000000 |
| 1065 #define GLX_SYNC_SWAP_SGIX 0x00000001 |
| 1066 |
| 1067 typedef int ( * PFNGLXBINDCHANNELTOWINDOWSGIXPROC) (Display* display, int screen
, int channel, Window window); |
| 1068 typedef int ( * PFNGLXCHANNELRECTSGIXPROC) (Display* display, int screen, int ch
annel, int x, int y, int w, int h); |
| 1069 typedef int ( * PFNGLXCHANNELRECTSYNCSGIXPROC) (Display* display, int screen, in
t 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, i
nt channel, int *dx, int *dy, int *dw, int *dh); |
| 1072 |
| 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) |
| 1078 |
| 1079 #define GLXEW_SGIX_video_resize GLXEW_GET_VAR(__GLXEW_SGIX_video_resize) |
| 1080 |
| 1081 #endif /* GLX_SGIX_video_resize */ |
| 1082 |
| 1083 /* ---------------------- GLX_SGIX_visual_select_group --------------------- */ |
| 1084 |
| 1085 #ifndef GLX_SGIX_visual_select_group |
| 1086 #define GLX_SGIX_visual_select_group 1 |
| 1087 |
| 1088 #define GLX_VISUAL_SELECT_GROUP_SGIX 0x8028 |
| 1089 |
| 1090 #define GLXEW_SGIX_visual_select_group GLXEW_GET_VAR(__GLXEW_SGIX_visual_select_
group) |
| 1091 |
| 1092 #endif /* GLX_SGIX_visual_select_group */ |
| 1093 |
| 1094 /* ---------------------------- GLX_SGI_cushion ---------------------------- */ |
| 1095 |
| 1096 #ifndef GLX_SGI_cushion |
| 1097 #define GLX_SGI_cushion 1 |
| 1098 |
| 1099 typedef void ( * PFNGLXCUSHIONSGIPROC) (Display* dpy, Window window, float cushi
on); |
| 1100 |
| 1101 #define glXCushionSGI GLXEW_GET_FUN(__glewXCushionSGI) |
| 1102 |
| 1103 #define GLXEW_SGI_cushion GLXEW_GET_VAR(__GLXEW_SGI_cushion) |
| 1104 |
| 1105 #endif /* GLX_SGI_cushion */ |
| 1106 |
| 1107 /* ----------------------- GLX_SGI_make_current_read ----------------------- */ |
| 1108 |
| 1109 #ifndef GLX_SGI_make_current_read |
| 1110 #define GLX_SGI_make_current_read 1 |
| 1111 |
| 1112 typedef GLXDrawable ( * PFNGLXGETCURRENTREADDRAWABLESGIPROC) (void); |
| 1113 typedef Bool ( * PFNGLXMAKECURRENTREADSGIPROC) (Display* dpy, GLXDrawable draw,
GLXDrawable read, GLXContext ctx); |
| 1114 |
| 1115 #define glXGetCurrentReadDrawableSGI GLXEW_GET_FUN(__glewXGetCurrentReadDrawable
SGI) |
| 1116 #define glXMakeCurrentReadSGI GLXEW_GET_FUN(__glewXMakeCurrentReadSGI) |
| 1117 |
| 1118 #define GLXEW_SGI_make_current_read GLXEW_GET_VAR(__GLXEW_SGI_make_current_read) |
| 1119 |
| 1120 #endif /* GLX_SGI_make_current_read */ |
| 1121 |
| 1122 /* -------------------------- GLX_SGI_swap_control ------------------------- */ |
| 1123 |
| 1124 #ifndef GLX_SGI_swap_control |
| 1125 #define GLX_SGI_swap_control 1 |
| 1126 |
| 1127 typedef int ( * PFNGLXSWAPINTERVALSGIPROC) (int interval); |
| 1128 |
| 1129 #define glXSwapIntervalSGI GLXEW_GET_FUN(__glewXSwapIntervalSGI) |
| 1130 |
| 1131 #define GLXEW_SGI_swap_control GLXEW_GET_VAR(__GLXEW_SGI_swap_control) |
| 1132 |
| 1133 #endif /* GLX_SGI_swap_control */ |
| 1134 |
| 1135 /* --------------------------- GLX_SGI_video_sync -------------------------- */ |
| 1136 |
| 1137 #ifndef GLX_SGI_video_sync |
| 1138 #define GLX_SGI_video_sync 1 |
| 1139 |
| 1140 typedef int ( * PFNGLXGETVIDEOSYNCSGIPROC) (uint* count); |
| 1141 typedef int ( * PFNGLXWAITVIDEOSYNCSGIPROC) (int divisor, int remainder, unsigne
d int* count); |
| 1142 |
| 1143 #define glXGetVideoSyncSGI GLXEW_GET_FUN(__glewXGetVideoSyncSGI) |
| 1144 #define glXWaitVideoSyncSGI GLXEW_GET_FUN(__glewXWaitVideoSyncSGI) |
| 1145 |
| 1146 #define GLXEW_SGI_video_sync GLXEW_GET_VAR(__GLXEW_SGI_video_sync) |
| 1147 |
| 1148 #endif /* GLX_SGI_video_sync */ |
| 1149 |
| 1150 /* --------------------- GLX_SUN_get_transparent_index --------------------- */ |
| 1151 |
| 1152 #ifndef GLX_SUN_get_transparent_index |
| 1153 #define GLX_SUN_get_transparent_index 1 |
| 1154 |
| 1155 typedef Status ( * PFNGLXGETTRANSPARENTINDEXSUNPROC) (Display* dpy, Window overl
ay, Window underlay, unsigned long *pTransparentIndex); |
| 1156 |
| 1157 #define glXGetTransparentIndexSUN GLXEW_GET_FUN(__glewXGetTransparentIndexSUN) |
| 1158 |
| 1159 #define GLXEW_SUN_get_transparent_index GLXEW_GET_VAR(__GLXEW_SUN_get_transparen
t_index) |
| 1160 |
| 1161 #endif /* GLX_SUN_get_transparent_index */ |
| 1162 |
| 1163 /* -------------------------- GLX_SUN_video_resize ------------------------- */ |
| 1164 |
| 1165 #ifndef GLX_SUN_video_resize |
| 1166 #define GLX_SUN_video_resize 1 |
| 1167 |
| 1168 #define GLX_VIDEO_RESIZE_SUN 0x8171 |
| 1169 #define GL_VIDEO_RESIZE_COMPENSATION_SUN 0x85CD |
| 1170 |
| 1171 typedef int ( * PFNGLXGETVIDEORESIZESUNPROC) (Display* display, GLXDrawable wind
ow, float* factor); |
| 1172 typedef int ( * PFNGLXVIDEORESIZESUNPROC) (Display* display, GLXDrawable window,
float factor); |
| 1173 |
| 1174 #define glXGetVideoResizeSUN GLXEW_GET_FUN(__glewXGetVideoResizeSUN) |
| 1175 #define glXVideoResizeSUN GLXEW_GET_FUN(__glewXVideoResizeSUN) |
| 1176 |
| 1177 #define GLXEW_SUN_video_resize GLXEW_GET_VAR(__GLXEW_SUN_video_resize) |
| 1178 |
| 1179 #endif /* GLX_SUN_video_resize */ |
| 1180 |
| 1181 /* ------------------------------------------------------------------------- */ |
| 1182 |
| 1183 #ifdef GLEW_MX |
| 1184 #define GLXEW_EXPORT |
| 1185 #else |
| 1186 #define GLXEW_EXPORT extern |
| 1187 #endif /* GLEW_MX */ |
| 1188 |
| 1189 extern PFNGLXGETCURRENTDISPLAYPROC __glewXGetCurrentDisplay; |
| 1190 |
| 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; |
| 1208 |
| 1209 extern PFNGLXCREATECONTEXTATTRIBSARBPROC __glewXCreateContextAttribsARB; |
| 1210 |
| 1211 extern PFNGLXBINDTEXIMAGEATIPROC __glewXBindTexImageATI; |
| 1212 extern PFNGLXDRAWABLEATTRIBATIPROC __glewXDrawableAttribATI; |
| 1213 extern PFNGLXRELEASETEXIMAGEATIPROC __glewXReleaseTexImageATI; |
| 1214 |
| 1215 extern PFNGLXFREECONTEXTEXTPROC __glewXFreeContextEXT; |
| 1216 extern PFNGLXGETCONTEXTIDEXTPROC __glewXGetContextIDEXT; |
| 1217 extern PFNGLXIMPORTCONTEXTEXTPROC __glewXImportContextEXT; |
| 1218 extern PFNGLXQUERYCONTEXTINFOEXTPROC __glewXQueryContextInfoEXT; |
| 1219 |
| 1220 extern PFNGLXBINDTEXIMAGEEXTPROC __glewXBindTexImageEXT; |
| 1221 extern PFNGLXRELEASETEXIMAGEEXTPROC __glewXReleaseTexImageEXT; |
| 1222 |
| 1223 extern PFNGLXGETAGPOFFSETMESAPROC __glewXGetAGPOffsetMESA; |
| 1224 |
| 1225 extern PFNGLXCOPYSUBBUFFERMESAPROC __glewXCopySubBufferMESA; |
| 1226 |
| 1227 extern PFNGLXCREATEGLXPIXMAPMESAPROC __glewXCreateGLXPixmapMESA; |
| 1228 |
| 1229 extern PFNGLXRELEASEBUFFERSMESAPROC __glewXReleaseBuffersMESA; |
| 1230 |
| 1231 extern PFNGLXSET3DFXMODEMESAPROC __glewXSet3DfxModeMESA; |
| 1232 |
| 1233 extern PFNGLXBINDVIDEODEVICENVPROC __glewXBindVideoDeviceNV; |
| 1234 extern PFNGLXENUMERATEVIDEODEVICESNVPROC __glewXEnumerateVideoDevicesNV; |
| 1235 |
| 1236 extern PFNGLXBINDSWAPBARRIERNVPROC __glewXBindSwapBarrierNV; |
| 1237 extern PFNGLXJOINSWAPGROUPNVPROC __glewXJoinSwapGroupNV; |
| 1238 extern PFNGLXQUERYFRAMECOUNTNVPROC __glewXQueryFrameCountNV; |
| 1239 extern PFNGLXQUERYMAXSWAPGROUPSNVPROC __glewXQueryMaxSwapGroupsNV; |
| 1240 extern PFNGLXQUERYSWAPGROUPNVPROC __glewXQuerySwapGroupNV; |
| 1241 extern PFNGLXRESETFRAMECOUNTNVPROC __glewXResetFrameCountNV; |
| 1242 |
| 1243 extern PFNGLXALLOCATEMEMORYNVPROC __glewXAllocateMemoryNV; |
| 1244 extern PFNGLXFREEMEMORYNVPROC __glewXFreeMemoryNV; |
| 1245 |
| 1246 extern PFNGLXBINDVIDEOIMAGENVPROC __glewXBindVideoImageNV; |
| 1247 extern PFNGLXGETVIDEODEVICENVPROC __glewXGetVideoDeviceNV; |
| 1248 extern PFNGLXGETVIDEOINFONVPROC __glewXGetVideoInfoNV; |
| 1249 extern PFNGLXRELEASEVIDEODEVICENVPROC __glewXReleaseVideoDeviceNV; |
| 1250 extern PFNGLXRELEASEVIDEOIMAGENVPROC __glewXReleaseVideoImageNV; |
| 1251 extern PFNGLXSENDPBUFFERTOVIDEONVPROC __glewXSendPbufferToVideoNV; |
| 1252 |
| 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; |
| 1259 #endif |
| 1260 |
| 1261 extern PFNGLXCHOOSEFBCONFIGSGIXPROC __glewXChooseFBConfigSGIX; |
| 1262 extern PFNGLXCREATECONTEXTWITHCONFIGSGIXPROC __glewXCreateContextWithConfigSGIX; |
| 1263 extern PFNGLXCREATEGLXPIXMAPWITHCONFIGSGIXPROC __glewXCreateGLXPixmapWithConfigS
GIX; |
| 1264 extern PFNGLXGETFBCONFIGATTRIBSGIXPROC __glewXGetFBConfigAttribSGIX; |
| 1265 extern PFNGLXGETFBCONFIGFROMVISUALSGIXPROC __glewXGetFBConfigFromVisualSGIX; |
| 1266 extern PFNGLXGETVISUALFROMFBCONFIGSGIXPROC __glewXGetVisualFromFBConfigSGIX; |
| 1267 |
| 1268 extern PFNGLXBINDHYPERPIPESGIXPROC __glewXBindHyperpipeSGIX; |
| 1269 extern PFNGLXDESTROYHYPERPIPECONFIGSGIXPROC __glewXDestroyHyperpipeConfigSGIX; |
| 1270 extern PFNGLXHYPERPIPEATTRIBSGIXPROC __glewXHyperpipeAttribSGIX; |
| 1271 extern PFNGLXHYPERPIPECONFIGSGIXPROC __glewXHyperpipeConfigSGIX; |
| 1272 extern PFNGLXQUERYHYPERPIPEATTRIBSGIXPROC __glewXQueryHyperpipeAttribSGIX; |
| 1273 extern PFNGLXQUERYHYPERPIPEBESTATTRIBSGIXPROC __glewXQueryHyperpipeBestAttribSGI
X; |
| 1274 extern PFNGLXQUERYHYPERPIPECONFIGSGIXPROC __glewXQueryHyperpipeConfigSGIX; |
| 1275 extern PFNGLXQUERYHYPERPIPENETWORKSGIXPROC __glewXQueryHyperpipeNetworkSGIX; |
| 1276 |
| 1277 extern PFNGLXCREATEGLXPBUFFERSGIXPROC __glewXCreateGLXPbufferSGIX; |
| 1278 extern PFNGLXDESTROYGLXPBUFFERSGIXPROC __glewXDestroyGLXPbufferSGIX; |
| 1279 extern PFNGLXGETSELECTEDEVENTSGIXPROC __glewXGetSelectedEventSGIX; |
| 1280 extern PFNGLXQUERYGLXPBUFFERSGIXPROC __glewXQueryGLXPbufferSGIX; |
| 1281 extern PFNGLXSELECTEVENTSGIXPROC __glewXSelectEventSGIX; |
| 1282 |
| 1283 extern PFNGLXBINDSWAPBARRIERSGIXPROC __glewXBindSwapBarrierSGIX; |
| 1284 extern PFNGLXQUERYMAXSWAPBARRIERSSGIXPROC __glewXQueryMaxSwapBarriersSGIX; |
| 1285 |
| 1286 extern PFNGLXJOINSWAPGROUPSGIXPROC __glewXJoinSwapGroupSGIX; |
| 1287 |
| 1288 extern PFNGLXBINDCHANNELTOWINDOWSGIXPROC __glewXBindChannelToWindowSGIX; |
| 1289 extern PFNGLXCHANNELRECTSGIXPROC __glewXChannelRectSGIX; |
| 1290 extern PFNGLXCHANNELRECTSYNCSGIXPROC __glewXChannelRectSyncSGIX; |
| 1291 extern PFNGLXQUERYCHANNELDELTASSGIXPROC __glewXQueryChannelDeltasSGIX; |
| 1292 extern PFNGLXQUERYCHANNELRECTSGIXPROC __glewXQueryChannelRectSGIX; |
| 1293 |
| 1294 extern PFNGLXCUSHIONSGIPROC __glewXCushionSGI; |
| 1295 |
| 1296 extern PFNGLXGETCURRENTREADDRAWABLESGIPROC __glewXGetCurrentReadDrawableSGI; |
| 1297 extern PFNGLXMAKECURRENTREADSGIPROC __glewXMakeCurrentReadSGI; |
| 1298 |
| 1299 extern PFNGLXSWAPINTERVALSGIPROC __glewXSwapIntervalSGI; |
| 1300 |
| 1301 extern PFNGLXGETVIDEOSYNCSGIPROC __glewXGetVideoSyncSGI; |
| 1302 extern PFNGLXWAITVIDEOSYNCSGIPROC __glewXWaitVideoSyncSGI; |
| 1303 |
| 1304 extern PFNGLXGETTRANSPARENTINDEXSUNPROC __glewXGetTransparentIndexSUN; |
| 1305 |
| 1306 extern PFNGLXGETVIDEORESIZESUNPROC __glewXGetVideoResizeSUN; |
| 1307 extern PFNGLXVIDEORESIZESUNPROC __glewXVideoResizeSUN; |
| 1308 |
| 1309 #if defined(GLEW_MX) |
| 1310 struct GLXEWContextStruct |
| 1311 { |
| 1312 #endif /* GLEW_MX */ |
| 1313 |
| 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; |
| 1363 |
| 1364 #ifdef GLEW_MX |
| 1365 }; /* GLXEWContextStruct */ |
| 1366 #endif /* GLEW_MX */ |
| 1367 |
| 1368 /* ------------------------------------------------------------------------ */ |
| 1369 |
| 1370 #ifdef GLEW_MX |
| 1371 |
| 1372 typedef struct GLXEWContextStruct GLXEWContext; |
| 1373 extern GLenum glxewContextInit (GLXEWContext* ctx); |
| 1374 extern GLboolean glxewContextIsSupported (GLXEWContext* ctx, const char* name); |
| 1375 |
| 1376 #define glxewInit() glxewContextInit(glxewGetContext()) |
| 1377 #define glxewIsSupported(x) glxewContextIsSupported(glxewGetContext(), x) |
| 1378 |
| 1379 #define GLXEW_GET_VAR(x) (*(const GLboolean*)&(glxewGetContext()->x)) |
| 1380 #define GLXEW_GET_FUN(x) x |
| 1381 |
| 1382 #else /* GLEW_MX */ |
| 1383 |
| 1384 #define GLXEW_GET_VAR(x) (*(const GLboolean*)&x) |
| 1385 #define GLXEW_GET_FUN(x) x |
| 1386 |
| 1387 extern GLboolean glxewIsSupported (const char* name); |
| 1388 |
| 1389 #endif /* GLEW_MX */ |
| 1390 |
| 1391 extern GLboolean glxewGetExtension (const char* name); |
| 1392 |
| 1393 #ifdef __cplusplus |
| 1394 } |
| 1395 #endif |
| 1396 |
| 1397 #endif /* __glxew_h__ */ |
OLD | NEW |