glxew.h

Go to the documentation of this file.
00001 /*
00002 ** The OpenGL Extension Wrangler Library
00003 ** Copyright (C) 2002-2007, Milan Ikits <milan ikits[]ieee org>
00004 ** Copyright (C) 2002-2007, Marcelo E. Magallon <mmagallo[]debian org>
00005 ** Copyright (C) 2002, Lev Povalahev
00006 ** All rights reserved.
00007 ** 
00008 ** Redistribution and use in source and binary forms, with or without 
00009 ** modification, are permitted provided that the following conditions are met:
00010 ** 
00011 ** * Redistributions of source code must retain the above copyright notice, 
00012 **   this list of conditions and the following disclaimer.
00013 ** * Redistributions in binary form must reproduce the above copyright notice, 
00014 **   this list of conditions and the following disclaimer in the documentation 
00015 **   and/or other materials provided with the distribution.
00016 ** * The name of the author may be used to endorse or promote products 
00017 **   derived from this software without specific prior written permission.
00018 **
00019 ** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 
00020 ** AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
00021 ** IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
00022 ** ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
00023 ** LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
00024 ** CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
00025 ** SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
00026 ** INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
00027 ** CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
00028 ** ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
00029 ** THE POSSIBILITY OF SUCH DAMAGE.
00030 */
00031 
00032 /*
00033 ** The contents of this file are subject to the GLX Public License Version 1.0
00034 ** (the "License"). You may not use this file except in compliance with the
00035 ** License. You may obtain a copy of the License at Silicon Graphics, Inc.,
00036 ** attn: Legal Services, 2011 N. Shoreline Blvd., Mountain View, CA 94043
00037 ** or at http://www.sgi.com/software/opensource/glx/license.html.
00038 **
00039 ** Software distributed under the License is distributed on an "AS IS"
00040 ** basis. ALL WARRANTIES ARE DISCLAIMED, INCLUDING, WITHOUT LIMITATION, ANY
00041 ** IMPLIED WARRANTIES OF MERCHANTABILITY, OF FITNESS FOR A PARTICULAR
00042 ** PURPOSE OR OF NON- INFRINGEMENT. See the License for the specific
00043 ** language governing rights and limitations under the License.
00044 **
00045 ** The Original Software is GLX version 1.2 source code, released February,
00046 ** 1999. The developer of the Original Software is Silicon Graphics, Inc.
00047 ** Those portions of the Subject Software created by Silicon Graphics, Inc.
00048 ** are Copyright (c) 1991-9 Silicon Graphics, Inc. All Rights Reserved.
00049 */
00050 
00051 #ifndef __glxew_h__
00052 #define __glxew_h__
00053 #define __GLXEW_H__
00054 
00055 #ifdef __glxext_h_
00056 #error glxext.h included before glxew.h
00057 #endif
00058 #ifdef GLX_H
00059 #error glx.h included before glxew.h
00060 #endif
00061 
00062 #define __glxext_h_
00063 #define __GLX_glx_h__
00064 #define GLX_H
00065 
00066 #include <X11/Xlib.h>
00067 #include <X11/Xutil.h>
00068 #include <X11/Xmd.h>
00069 #include <GLEXT/glew.h>
00070 
00071 #ifdef __cplusplus
00072 extern "C" {
00073 #endif
00074 
00075 /* ---------------------------- GLX_VERSION_1_0 --------------------------- */
00076 
00077 #ifndef GLX_VERSION_1_0
00078 #define GLX_VERSION_1_0 1
00079 
00080 #define GLX_USE_GL 1
00081 #define GLX_BUFFER_SIZE 2
00082 #define GLX_LEVEL 3
00083 #define GLX_RGBA 4
00084 #define GLX_DOUBLEBUFFER 5
00085 #define GLX_STEREO 6
00086 #define GLX_AUX_BUFFERS 7
00087 #define GLX_RED_SIZE 8
00088 #define GLX_GREEN_SIZE 9
00089 #define GLX_BLUE_SIZE 10
00090 #define GLX_ALPHA_SIZE 11
00091 #define GLX_DEPTH_SIZE 12
00092 #define GLX_STENCIL_SIZE 13
00093 #define GLX_ACCUM_RED_SIZE 14
00094 #define GLX_ACCUM_GREEN_SIZE 15
00095 #define GLX_ACCUM_BLUE_SIZE 16
00096 #define GLX_ACCUM_ALPHA_SIZE 17
00097 #define GLX_BAD_SCREEN 1
00098 #define GLX_BAD_ATTRIBUTE 2
00099 #define GLX_NO_EXTENSION 3
00100 #define GLX_BAD_VISUAL 4
00101 #define GLX_BAD_CONTEXT 5
00102 #define GLX_BAD_VALUE 6
00103 #define GLX_BAD_ENUM 7
00104 
00105 typedef XID GLXDrawable;
00106 typedef XID GLXPixmap;
00107 #ifdef __sun
00108 typedef struct __glXContextRec *GLXContext;
00109 #else
00110 typedef struct __GLXcontextRec *GLXContext;
00111 #endif
00112 
00113 extern Bool glXQueryExtension (Display *dpy, int *errorBase, int *eventBase);
00114 extern Bool glXQueryVersion (Display *dpy, int *major, int *minor);
00115 extern int glXGetConfig (Display *dpy, XVisualInfo *vis, int attrib, int *value);
00116 extern XVisualInfo* glXChooseVisual (Display *dpy, int screen, int *attribList);
00117 extern GLXPixmap glXCreateGLXPixmap (Display *dpy, XVisualInfo *vis, Pixmap pixmap);
00118 extern void glXDestroyGLXPixmap (Display *dpy, GLXPixmap pix);
00119 extern GLXContext glXCreateContext (Display *dpy, XVisualInfo *vis, GLXContext shareList, Bool direct);
00120 extern void glXDestroyContext (Display *dpy, GLXContext ctx);
00121 extern Bool glXIsDirect (Display *dpy, GLXContext ctx);
00122 extern void glXCopyContext (Display *dpy, GLXContext src, GLXContext dst, GLuint mask);
00123 extern Bool glXMakeCurrent (Display *dpy, GLXDrawable drawable, GLXContext ctx);
00124 extern GLXContext glXGetCurrentContext (void);
00125 extern GLXDrawable glXGetCurrentDrawable (void);
00126 extern void glXWaitGL (void);
00127 extern void glXWaitX (void);
00128 extern void glXSwapBuffers (Display *dpy, GLXDrawable drawable);
00129 extern void glXUseXFont (Font font, int first, int count, int listBase);
00130 
00131 #define GLXEW_VERSION_1_0 GLXEW_GET_VAR(__GLXEW_VERSION_1_0)
00132 
00133 #endif /* GLX_VERSION_1_0 */
00134 
00135 /* ---------------------------- GLX_VERSION_1_1 --------------------------- */
00136 
00137 #ifndef GLX_VERSION_1_1
00138 #define GLX_VERSION_1_1
00139 
00140 #define GLX_VENDOR 0x1
00141 #define GLX_VERSION 0x2
00142 #define GLX_EXTENSIONS 0x3
00143 
00144 extern const char* glXQueryExtensionsString (Display *dpy, int screen);
00145 extern const char* glXGetClientString (Display *dpy, int name);
00146 extern const char* glXQueryServerString (Display *dpy, int screen, int name);
00147 
00148 #define GLXEW_VERSION_1_1 GLXEW_GET_VAR(__GLXEW_VERSION_1_1)
00149 
00150 #endif /* GLX_VERSION_1_1 */
00151 
00152 /* ---------------------------- GLX_VERSION_1_2 ---------------------------- */
00153 
00154 #ifndef GLX_VERSION_1_2
00155 #define GLX_VERSION_1_2 1
00156 
00157 typedef Display* ( * PFNGLXGETCURRENTDISPLAYPROC) (void);
00158 
00159 #define glXGetCurrentDisplay GLXEW_GET_FUN(__glewXGetCurrentDisplay)
00160 
00161 #define GLXEW_VERSION_1_2 GLXEW_GET_VAR(__GLXEW_VERSION_1_2)
00162 
00163 #endif /* GLX_VERSION_1_2 */
00164 
00165 /* ---------------------------- GLX_VERSION_1_3 ---------------------------- */
00166 
00167 #ifndef GLX_VERSION_1_3
00168 #define GLX_VERSION_1_3 1
00169 
00170 #define GLX_RGBA_BIT 0x00000001
00171 #define GLX_FRONT_LEFT_BUFFER_BIT 0x00000001
00172 #define GLX_WINDOW_BIT 0x00000001
00173 #define GLX_COLOR_INDEX_BIT 0x00000002
00174 #define GLX_PIXMAP_BIT 0x00000002
00175 #define GLX_FRONT_RIGHT_BUFFER_BIT 0x00000002
00176 #define GLX_BACK_LEFT_BUFFER_BIT 0x00000004
00177 #define GLX_PBUFFER_BIT 0x00000004
00178 #define GLX_BACK_RIGHT_BUFFER_BIT 0x00000008
00179 #define GLX_AUX_BUFFERS_BIT 0x00000010
00180 #define GLX_CONFIG_CAVEAT 0x20
00181 #define GLX_DEPTH_BUFFER_BIT 0x00000020
00182 #define GLX_X_VISUAL_TYPE 0x22
00183 #define GLX_TRANSPARENT_TYPE 0x23
00184 #define GLX_TRANSPARENT_INDEX_VALUE 0x24
00185 #define GLX_TRANSPARENT_RED_VALUE 0x25
00186 #define GLX_TRANSPARENT_GREEN_VALUE 0x26
00187 #define GLX_TRANSPARENT_BLUE_VALUE 0x27
00188 #define GLX_TRANSPARENT_ALPHA_VALUE 0x28
00189 #define GLX_STENCIL_BUFFER_BIT 0x00000040
00190 #define GLX_ACCUM_BUFFER_BIT 0x00000080
00191 #define GLX_NONE 0x8000
00192 #define GLX_SLOW_CONFIG 0x8001
00193 #define GLX_TRUE_COLOR 0x8002
00194 #define GLX_DIRECT_COLOR 0x8003
00195 #define GLX_PSEUDO_COLOR 0x8004
00196 #define GLX_STATIC_COLOR 0x8005
00197 #define GLX_GRAY_SCALE 0x8006
00198 #define GLX_STATIC_GRAY 0x8007
00199 #define GLX_TRANSPARENT_RGB 0x8008
00200 #define GLX_TRANSPARENT_INDEX 0x8009
00201 #define GLX_VISUAL_ID 0x800B
00202 #define GLX_SCREEN 0x800C
00203 #define GLX_NON_CONFORMANT_CONFIG 0x800D
00204 #define GLX_DRAWABLE_TYPE 0x8010
00205 #define GLX_RENDER_TYPE 0x8011
00206 #define GLX_X_RENDERABLE 0x8012
00207 #define GLX_FBCONFIG_ID 0x8013
00208 #define GLX_RGBA_TYPE 0x8014
00209 #define GLX_COLOR_INDEX_TYPE 0x8015
00210 #define GLX_MAX_PBUFFER_WIDTH 0x8016
00211 #define GLX_MAX_PBUFFER_HEIGHT 0x8017
00212 #define GLX_MAX_PBUFFER_PIXELS 0x8018
00213 #define GLX_PRESERVED_CONTENTS 0x801B
00214 #define GLX_LARGEST_PBUFFER 0x801C
00215 #define GLX_WIDTH 0x801D
00216 #define GLX_HEIGHT 0x801E
00217 #define GLX_EVENT_MASK 0x801F
00218 #define GLX_DAMAGED 0x8020
00219 #define GLX_SAVED 0x8021
00220 #define GLX_WINDOW 0x8022
00221 #define GLX_PBUFFER 0x8023
00222 #define GLX_PBUFFER_HEIGHT 0x8040
00223 #define GLX_PBUFFER_WIDTH 0x8041
00224 #define GLX_PBUFFER_CLOBBER_MASK 0x08000000
00225 #define GLX_DONT_CARE 0xFFFFFFFF
00226 
00227 typedef XID GLXFBConfigID;
00228 typedef XID GLXWindow;
00229 typedef XID GLXPbuffer;
00230 typedef struct __GLXFBConfigRec *GLXFBConfig;
00231 
00232 typedef struct {
00233   int event_type; 
00234   int draw_type; 
00235   unsigned long serial; 
00236   Bool send_event; 
00237   Display *display; 
00238   GLXDrawable drawable; 
00239   unsigned int buffer_mask; 
00240   unsigned int aux_buffer; 
00241   int x, y; 
00242   int width, height; 
00243   int count; 
00244 } GLXPbufferClobberEvent;
00245 typedef union __GLXEvent {
00246   GLXPbufferClobberEvent glxpbufferclobber; 
00247   long pad[24]; 
00248 } GLXEvent;
00249 
00250 typedef GLXFBConfig* ( * PFNGLXCHOOSEFBCONFIGPROC) (Display *dpy, int screen, const int *attrib_list, int *nelements);
00251 typedef GLXContext ( * PFNGLXCREATENEWCONTEXTPROC) (Display *dpy, GLXFBConfig config, int render_type, GLXContext share_list, Bool direct);
00252 typedef GLXPbuffer ( * PFNGLXCREATEPBUFFERPROC) (Display *dpy, GLXFBConfig config, const int *attrib_list);
00253 typedef GLXPixmap ( * PFNGLXCREATEPIXMAPPROC) (Display *dpy, GLXFBConfig config, Pixmap pixmap, const int *attrib_list);
00254 typedef GLXWindow ( * PFNGLXCREATEWINDOWPROC) (Display *dpy, GLXFBConfig config, Window win, const int *attrib_list);
00255 typedef void ( * PFNGLXDESTROYPBUFFERPROC) (Display *dpy, GLXPbuffer pbuf);
00256 typedef void ( * PFNGLXDESTROYPIXMAPPROC) (Display *dpy, GLXPixmap pixmap);
00257 typedef void ( * PFNGLXDESTROYWINDOWPROC) (Display *dpy, GLXWindow win);
00258 typedef GLXDrawable ( * PFNGLXGETCURRENTREADDRAWABLEPROC) (void);
00259 typedef int ( * PFNGLXGETFBCONFIGATTRIBPROC) (Display *dpy, GLXFBConfig config, int attribute, int *value);
00260 typedef GLXFBConfig* ( * PFNGLXGETFBCONFIGSPROC) (Display *dpy, int screen, int *nelements);
00261 typedef void ( * PFNGLXGETSELECTEDEVENTPROC) (Display *dpy, GLXDrawable draw, unsigned long *event_mask);
00262 typedef XVisualInfo* ( * PFNGLXGETVISUALFROMFBCONFIGPROC) (Display *dpy, GLXFBConfig config);
00263 typedef Bool ( * PFNGLXMAKECONTEXTCURRENTPROC) (Display *display, GLXDrawable draw, GLXDrawable read, GLXContext ctx);
00264 typedef int ( * PFNGLXQUERYCONTEXTPROC) (Display *dpy, GLXContext ctx, int attribute, int *value);
00265 typedef void ( * PFNGLXQUERYDRAWABLEPROC) (Display *dpy, GLXDrawable draw, int attribute, unsigned int *value);
00266 typedef void ( * PFNGLXSELECTEVENTPROC) (Display *dpy, GLXDrawable draw, unsigned long event_mask);
00267 
00268 #define glXChooseFBConfig GLXEW_GET_FUN(__glewXChooseFBConfig)
00269 #define glXCreateNewContext GLXEW_GET_FUN(__glewXCreateNewContext)
00270 #define glXCreatePbuffer GLXEW_GET_FUN(__glewXCreatePbuffer)
00271 #define glXCreatePixmap GLXEW_GET_FUN(__glewXCreatePixmap)
00272 #define glXCreateWindow GLXEW_GET_FUN(__glewXCreateWindow)
00273 #define glXDestroyPbuffer GLXEW_GET_FUN(__glewXDestroyPbuffer)
00274 #define glXDestroyPixmap GLXEW_GET_FUN(__glewXDestroyPixmap)
00275 #define glXDestroyWindow GLXEW_GET_FUN(__glewXDestroyWindow)
00276 #define glXGetCurrentReadDrawable GLXEW_GET_FUN(__glewXGetCurrentReadDrawable)
00277 #define glXGetFBConfigAttrib GLXEW_GET_FUN(__glewXGetFBConfigAttrib)
00278 #define glXGetFBConfigs GLXEW_GET_FUN(__glewXGetFBConfigs)
00279 #define glXGetSelectedEvent GLXEW_GET_FUN(__glewXGetSelectedEvent)
00280 #define glXGetVisualFromFBConfig GLXEW_GET_FUN(__glewXGetVisualFromFBConfig)
00281 #define glXMakeContextCurrent GLXEW_GET_FUN(__glewXMakeContextCurrent)
00282 #define glXQueryContext GLXEW_GET_FUN(__glewXQueryContext)
00283 #define glXQueryDrawable GLXEW_GET_FUN(__glewXQueryDrawable)
00284 #define glXSelectEvent GLXEW_GET_FUN(__glewXSelectEvent)
00285 
00286 #define GLXEW_VERSION_1_3 GLXEW_GET_VAR(__GLXEW_VERSION_1_3)
00287 
00288 #endif /* GLX_VERSION_1_3 */
00289 
00290 /* ---------------------------- GLX_VERSION_1_4 ---------------------------- */
00291 
00292 #ifndef GLX_VERSION_1_4
00293 #define GLX_VERSION_1_4 1
00294 
00295 #define GLX_SAMPLE_BUFFERS 100000
00296 #define GLX_SAMPLES 100001
00297 
00298 extern void ( * glXGetProcAddress (const GLubyte *procName)) (void);
00299 
00300 #define GLXEW_VERSION_1_4 GLXEW_GET_VAR(__GLXEW_VERSION_1_4)
00301 
00302 #endif /* GLX_VERSION_1_4 */
00303 
00304 /* -------------------------- GLX_3DFX_multisample ------------------------- */
00305 
00306 #ifndef GLX_3DFX_multisample
00307 #define GLX_3DFX_multisample 1
00308 
00309 #define GLX_SAMPLE_BUFFERS_3DFX 0x8050
00310 #define GLX_SAMPLES_3DFX 0x8051
00311 
00312 #define GLXEW_3DFX_multisample GLXEW_GET_VAR(__GLXEW_3DFX_multisample)
00313 
00314 #endif /* GLX_3DFX_multisample */
00315 
00316 /* ------------------------- GLX_ARB_fbconfig_float ------------------------ */
00317 
00318 #ifndef GLX_ARB_fbconfig_float
00319 #define GLX_ARB_fbconfig_float 1
00320 
00321 #define GLX_RGBA_FLOAT_BIT 0x00000004
00322 #define GLX_RGBA_FLOAT_TYPE 0x20B9
00323 
00324 #define GLXEW_ARB_fbconfig_float GLXEW_GET_VAR(__GLXEW_ARB_fbconfig_float)
00325 
00326 #endif /* GLX_ARB_fbconfig_float */
00327 
00328 /* ------------------------ GLX_ARB_get_proc_address ----------------------- */
00329 
00330 #ifndef GLX_ARB_get_proc_address
00331 #define GLX_ARB_get_proc_address 1
00332 
00333 extern void ( * glXGetProcAddressARB (const GLubyte *procName)) (void);
00334 
00335 #define GLXEW_ARB_get_proc_address GLXEW_GET_VAR(__GLXEW_ARB_get_proc_address)
00336 
00337 #endif /* GLX_ARB_get_proc_address */
00338 
00339 /* -------------------------- GLX_ARB_multisample -------------------------- */
00340 
00341 #ifndef GLX_ARB_multisample
00342 #define GLX_ARB_multisample 1
00343 
00344 #define GLX_SAMPLE_BUFFERS_ARB 100000
00345 #define GLX_SAMPLES_ARB 100001
00346 
00347 #define GLXEW_ARB_multisample GLXEW_GET_VAR(__GLXEW_ARB_multisample)
00348 
00349 #endif /* GLX_ARB_multisample */
00350 
00351 /* ----------------------- GLX_ATI_pixel_format_float ---------------------- */
00352 
00353 #ifndef GLX_ATI_pixel_format_float
00354 #define GLX_ATI_pixel_format_float 1
00355 
00356 #define GLX_RGBA_FLOAT_ATI_BIT 0x00000100
00357 
00358 #define GLXEW_ATI_pixel_format_float GLXEW_GET_VAR(__GLXEW_ATI_pixel_format_float)
00359 
00360 #endif /* GLX_ATI_pixel_format_float */
00361 
00362 /* ------------------------- GLX_ATI_render_texture ------------------------ */
00363 
00364 #ifndef GLX_ATI_render_texture
00365 #define GLX_ATI_render_texture 1
00366 
00367 #define GLX_BIND_TO_TEXTURE_RGB_ATI 0x9800
00368 #define GLX_BIND_TO_TEXTURE_RGBA_ATI 0x9801
00369 #define GLX_TEXTURE_FORMAT_ATI 0x9802
00370 #define GLX_TEXTURE_TARGET_ATI 0x9803
00371 #define GLX_MIPMAP_TEXTURE_ATI 0x9804
00372 #define GLX_TEXTURE_RGB_ATI 0x9805
00373 #define GLX_TEXTURE_RGBA_ATI 0x9806
00374 #define GLX_NO_TEXTURE_ATI 0x9807
00375 #define GLX_TEXTURE_CUBE_MAP_ATI 0x9808
00376 #define GLX_TEXTURE_1D_ATI 0x9809
00377 #define GLX_TEXTURE_2D_ATI 0x980A
00378 #define GLX_MIPMAP_LEVEL_ATI 0x980B
00379 #define GLX_CUBE_MAP_FACE_ATI 0x980C
00380 #define GLX_TEXTURE_CUBE_MAP_POSITIVE_X_ATI 0x980D
00381 #define GLX_TEXTURE_CUBE_MAP_NEGATIVE_X_ATI 0x980E
00382 #define GLX_TEXTURE_CUBE_MAP_POSITIVE_Y_ATI 0x980F
00383 #define GLX_TEXTURE_CUBE_MAP_NEGATIVE_Y_ATI 0x9810
00384 #define GLX_TEXTURE_CUBE_MAP_POSITIVE_Z_ATI 0x9811
00385 #define GLX_TEXTURE_CUBE_MAP_NEGATIVE_Z_ATI 0x9812
00386 #define GLX_FRONT_LEFT_ATI 0x9813
00387 #define GLX_FRONT_RIGHT_ATI 0x9814
00388 #define GLX_BACK_LEFT_ATI 0x9815
00389 #define GLX_BACK_RIGHT_ATI 0x9816
00390 #define GLX_AUX0_ATI 0x9817
00391 #define GLX_AUX1_ATI 0x9818
00392 #define GLX_AUX2_ATI 0x9819
00393 #define GLX_AUX3_ATI 0x981A
00394 #define GLX_AUX4_ATI 0x981B
00395 #define GLX_AUX5_ATI 0x981C
00396 #define GLX_AUX6_ATI 0x981D
00397 #define GLX_AUX7_ATI 0x981E
00398 #define GLX_AUX8_ATI 0x981F
00399 #define GLX_AUX9_ATI 0x9820
00400 #define GLX_BIND_TO_TEXTURE_LUMINANCE_ATI 0x9821
00401 #define GLX_BIND_TO_TEXTURE_INTENSITY_ATI 0x9822
00402 
00403 typedef void ( * PFNGLXBINDTEXIMAGEATIPROC) (Display *dpy, GLXPbuffer pbuf, int buffer);
00404 typedef void ( * PFNGLXDRAWABLEATTRIBATIPROC) (Display *dpy, GLXDrawable draw, const int *attrib_list);
00405 typedef void ( * PFNGLXRELEASETEXIMAGEATIPROC) (Display *dpy, GLXPbuffer pbuf, int buffer);
00406 
00407 #define glXBindTexImageATI GLXEW_GET_FUN(__glewXBindTexImageATI)
00408 #define glXDrawableAttribATI GLXEW_GET_FUN(__glewXDrawableAttribATI)
00409 #define glXReleaseTexImageATI GLXEW_GET_FUN(__glewXReleaseTexImageATI)
00410 
00411 #define GLXEW_ATI_render_texture GLXEW_GET_VAR(__GLXEW_ATI_render_texture)
00412 
00413 #endif /* GLX_ATI_render_texture */
00414 
00415 /* --------------------- GLX_EXT_fbconfig_packed_float --------------------- */
00416 
00417 #ifndef GLX_EXT_fbconfig_packed_float
00418 #define GLX_EXT_fbconfig_packed_float 1
00419 
00420 #define GLX_RGBA_UNSIGNED_FLOAT_BIT_EXT 0x00000008
00421 #define GLX_RGBA_UNSIGNED_FLOAT_TYPE_EXT 0x20B1
00422 
00423 #define GLXEW_EXT_fbconfig_packed_float GLXEW_GET_VAR(__GLXEW_EXT_fbconfig_packed_float)
00424 
00425 #endif /* GLX_EXT_fbconfig_packed_float */
00426 
00427 /* ------------------------ GLX_EXT_framebuffer_sRGB ----------------------- */
00428 
00429 #ifndef GLX_EXT_framebuffer_sRGB
00430 #define GLX_EXT_framebuffer_sRGB 1
00431 
00432 #define GLX_FRAMEBUFFER_SRGB_CAPABLE_EXT 0x20B2
00433 
00434 #define GLXEW_EXT_framebuffer_sRGB GLXEW_GET_VAR(__GLXEW_EXT_framebuffer_sRGB)
00435 
00436 #endif /* GLX_EXT_framebuffer_sRGB */
00437 
00438 /* ------------------------- GLX_EXT_import_context ------------------------ */
00439 
00440 #ifndef GLX_EXT_import_context
00441 #define GLX_EXT_import_context 1
00442 
00443 #define GLX_SHARE_CONTEXT_EXT 0x800A
00444 #define GLX_VISUAL_ID_EXT 0x800B
00445 #define GLX_SCREEN_EXT 0x800C
00446 
00447 typedef XID GLXContextID;
00448 
00449 typedef void ( * PFNGLXFREECONTEXTEXTPROC) (Display* dpy, GLXContext context);
00450 typedef GLXContextID ( * PFNGLXGETCONTEXTIDEXTPROC) (const GLXContext context);
00451 typedef GLXContext ( * PFNGLXIMPORTCONTEXTEXTPROC) (Display* dpy, GLXContextID contextID);
00452 typedef int ( * PFNGLXQUERYCONTEXTINFOEXTPROC) (Display* dpy, GLXContext context, int attribute,int *value);
00453 
00454 #define glXFreeContextEXT GLXEW_GET_FUN(__glewXFreeContextEXT)
00455 #define glXGetContextIDEXT GLXEW_GET_FUN(__glewXGetContextIDEXT)
00456 #define glXImportContextEXT GLXEW_GET_FUN(__glewXImportContextEXT)
00457 #define glXQueryContextInfoEXT GLXEW_GET_FUN(__glewXQueryContextInfoEXT)
00458 
00459 #define GLXEW_EXT_import_context GLXEW_GET_VAR(__GLXEW_EXT_import_context)
00460 
00461 #endif /* GLX_EXT_import_context */
00462 
00463 /* -------------------------- GLX_EXT_scene_marker ------------------------- */
00464 
00465 #ifndef GLX_EXT_scene_marker
00466 #define GLX_EXT_scene_marker 1
00467 
00468 #define GLXEW_EXT_scene_marker GLXEW_GET_VAR(__GLXEW_EXT_scene_marker)
00469 
00470 #endif /* GLX_EXT_scene_marker */
00471 
00472 /* -------------------------- GLX_EXT_visual_info -------------------------- */
00473 
00474 #ifndef GLX_EXT_visual_info
00475 #define GLX_EXT_visual_info 1
00476 
00477 #define GLX_X_VISUAL_TYPE_EXT 0x22
00478 #define GLX_TRANSPARENT_TYPE_EXT 0x23
00479 #define GLX_TRANSPARENT_INDEX_VALUE_EXT 0x24
00480 #define GLX_TRANSPARENT_RED_VALUE_EXT 0x25
00481 #define GLX_TRANSPARENT_GREEN_VALUE_EXT 0x26
00482 #define GLX_TRANSPARENT_BLUE_VALUE_EXT 0x27
00483 #define GLX_TRANSPARENT_ALPHA_VALUE_EXT 0x28
00484 #define GLX_NONE_EXT 0x8000
00485 #define GLX_TRUE_COLOR_EXT 0x8002
00486 #define GLX_DIRECT_COLOR_EXT 0x8003
00487 #define GLX_PSEUDO_COLOR_EXT 0x8004
00488 #define GLX_STATIC_COLOR_EXT 0x8005
00489 #define GLX_GRAY_SCALE_EXT 0x8006
00490 #define GLX_STATIC_GRAY_EXT 0x8007
00491 #define GLX_TRANSPARENT_RGB_EXT 0x8008
00492 #define GLX_TRANSPARENT_INDEX_EXT 0x8009
00493 
00494 #define GLXEW_EXT_visual_info GLXEW_GET_VAR(__GLXEW_EXT_visual_info)
00495 
00496 #endif /* GLX_EXT_visual_info */
00497 
00498 /* ------------------------- GLX_EXT_visual_rating ------------------------- */
00499 
00500 #ifndef GLX_EXT_visual_rating
00501 #define GLX_EXT_visual_rating 1
00502 
00503 #define GLX_VISUAL_CAVEAT_EXT 0x20
00504 #define GLX_SLOW_VISUAL_EXT 0x8001
00505 #define GLX_NON_CONFORMANT_VISUAL_EXT 0x800D
00506 
00507 #define GLXEW_EXT_visual_rating GLXEW_GET_VAR(__GLXEW_EXT_visual_rating)
00508 
00509 #endif /* GLX_EXT_visual_rating */
00510 
00511 /* -------------------------- GLX_MESA_agp_offset -------------------------- */
00512 
00513 #ifndef GLX_MESA_agp_offset
00514 #define GLX_MESA_agp_offset 1
00515 
00516 typedef unsigned int ( * PFNGLXGETAGPOFFSETMESAPROC) (const void* pointer);
00517 
00518 #define glXGetAGPOffsetMESA GLXEW_GET_FUN(__glewXGetAGPOffsetMESA)
00519 
00520 #define GLXEW_MESA_agp_offset GLXEW_GET_VAR(__GLXEW_MESA_agp_offset)
00521 
00522 #endif /* GLX_MESA_agp_offset */
00523 
00524 /* ------------------------ GLX_MESA_copy_sub_buffer ----------------------- */
00525 
00526 #ifndef GLX_MESA_copy_sub_buffer
00527 #define GLX_MESA_copy_sub_buffer 1
00528 
00529 typedef void ( * PFNGLXCOPYSUBBUFFERMESAPROC) (Display* dpy, GLXDrawable drawable, int x, int y, int width, int height);
00530 
00531 #define glXCopySubBufferMESA GLXEW_GET_FUN(__glewXCopySubBufferMESA)
00532 
00533 #define GLXEW_MESA_copy_sub_buffer GLXEW_GET_VAR(__GLXEW_MESA_copy_sub_buffer)
00534 
00535 #endif /* GLX_MESA_copy_sub_buffer */
00536 
00537 /* ------------------------ GLX_MESA_pixmap_colormap ----------------------- */
00538 
00539 #ifndef GLX_MESA_pixmap_colormap
00540 #define GLX_MESA_pixmap_colormap 1
00541 
00542 typedef GLXPixmap ( * PFNGLXCREATEGLXPIXMAPMESAPROC) (Display* dpy, XVisualInfo *visual, Pixmap pixmap, Colormap cmap);
00543 
00544 #define glXCreateGLXPixmapMESA GLXEW_GET_FUN(__glewXCreateGLXPixmapMESA)
00545 
00546 #define GLXEW_MESA_pixmap_colormap GLXEW_GET_VAR(__GLXEW_MESA_pixmap_colormap)
00547 
00548 #endif /* GLX_MESA_pixmap_colormap */
00549 
00550 /* ------------------------ GLX_MESA_release_buffers ----------------------- */
00551 
00552 #ifndef GLX_MESA_release_buffers
00553 #define GLX_MESA_release_buffers 1
00554 
00555 typedef Bool ( * PFNGLXRELEASEBUFFERSMESAPROC) (Display* dpy, GLXDrawable d);
00556 
00557 #define glXReleaseBuffersMESA GLXEW_GET_FUN(__glewXReleaseBuffersMESA)
00558 
00559 #define GLXEW_MESA_release_buffers GLXEW_GET_VAR(__GLXEW_MESA_release_buffers)
00560 
00561 #endif /* GLX_MESA_release_buffers */
00562 
00563 /* ------------------------- GLX_MESA_set_3dfx_mode ------------------------ */
00564 
00565 #ifndef GLX_MESA_set_3dfx_mode
00566 #define GLX_MESA_set_3dfx_mode 1
00567 
00568 #define GLX_3DFX_WINDOW_MODE_MESA 0x1
00569 #define GLX_3DFX_FULLSCREEN_MODE_MESA 0x2
00570 
00571 typedef GLboolean ( * PFNGLXSET3DFXMODEMESAPROC) (GLint mode);
00572 
00573 #define glXSet3DfxModeMESA GLXEW_GET_FUN(__glewXSet3DfxModeMESA)
00574 
00575 #define GLXEW_MESA_set_3dfx_mode GLXEW_GET_VAR(__GLXEW_MESA_set_3dfx_mode)
00576 
00577 #endif /* GLX_MESA_set_3dfx_mode */
00578 
00579 /* -------------------------- GLX_NV_float_buffer -------------------------- */
00580 
00581 #ifndef GLX_NV_float_buffer
00582 #define GLX_NV_float_buffer 1
00583 
00584 #define GLX_FLOAT_COMPONENTS_NV 0x20B0
00585 
00586 #define GLXEW_NV_float_buffer GLXEW_GET_VAR(__GLXEW_NV_float_buffer)
00587 
00588 #endif /* GLX_NV_float_buffer */
00589 
00590 /* ----------------------- GLX_NV_vertex_array_range ----------------------- */
00591 
00592 #ifndef GLX_NV_vertex_array_range
00593 #define GLX_NV_vertex_array_range 1
00594 
00595 typedef void * ( * PFNGLXALLOCATEMEMORYNVPROC) (GLsizei size, GLfloat readFrequency, GLfloat writeFrequency, GLfloat priority);
00596 typedef void ( * PFNGLXFREEMEMORYNVPROC) (void *pointer);
00597 
00598 #define glXAllocateMemoryNV GLXEW_GET_FUN(__glewXAllocateMemoryNV)
00599 #define glXFreeMemoryNV GLXEW_GET_FUN(__glewXFreeMemoryNV)
00600 
00601 #define GLXEW_NV_vertex_array_range GLXEW_GET_VAR(__GLXEW_NV_vertex_array_range)
00602 
00603 #endif /* GLX_NV_vertex_array_range */
00604 
00605 /* -------------------------- GLX_OML_swap_method -------------------------- */
00606 
00607 #ifndef GLX_OML_swap_method
00608 #define GLX_OML_swap_method 1
00609 
00610 #define GLX_SWAP_METHOD_OML 0x8060
00611 #define GLX_SWAP_EXCHANGE_OML 0x8061
00612 #define GLX_SWAP_COPY_OML 0x8062
00613 #define GLX_SWAP_UNDEFINED_OML 0x8063
00614 
00615 #define GLXEW_OML_swap_method GLXEW_GET_VAR(__GLXEW_OML_swap_method)
00616 
00617 #endif /* GLX_OML_swap_method */
00618 
00619 /* -------------------------- GLX_OML_sync_control ------------------------- */
00620 
00621 #if !defined(GLX_OML_sync_control) && defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 199901L)
00622 #include <inttypes.h>
00623 #define GLX_OML_sync_control 1
00624 
00625 typedef Bool ( * PFNGLXGETMSCRATEOMLPROC) (Display* dpy, GLXDrawable drawable, int32_t* numerator, int32_t* denominator);
00626 typedef Bool ( * PFNGLXGETSYNCVALUESOMLPROC) (Display* dpy, GLXDrawable drawable, int64_t* ust, int64_t* msc, int64_t* sbc);
00627 typedef int64_t ( * PFNGLXSWAPBUFFERSMSCOMLPROC) (Display* dpy, GLXDrawable drawable, int64_t target_msc, int64_t divisor, int64_t remainder);
00628 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);
00629 typedef Bool ( * PFNGLXWAITFORSBCOMLPROC) (Display* dpy, GLXDrawable drawable, int64_t target_sbc, int64_t* ust, int64_t* msc, int64_t* sbc);
00630 
00631 #define glXGetMscRateOML GLXEW_GET_FUN(__glewXGetMscRateOML)
00632 #define glXGetSyncValuesOML GLXEW_GET_FUN(__glewXGetSyncValuesOML)
00633 #define glXSwapBuffersMscOML GLXEW_GET_FUN(__glewXSwapBuffersMscOML)
00634 #define glXWaitForMscOML GLXEW_GET_FUN(__glewXWaitForMscOML)
00635 #define glXWaitForSbcOML GLXEW_GET_FUN(__glewXWaitForSbcOML)
00636 
00637 #define GLXEW_OML_sync_control GLXEW_GET_VAR(__GLXEW_OML_sync_control)
00638 
00639 #endif /* GLX_OML_sync_control */
00640 
00641 /* ------------------------ GLX_SGIS_blended_overlay ----------------------- */
00642 
00643 #ifndef GLX_SGIS_blended_overlay
00644 #define GLX_SGIS_blended_overlay 1
00645 
00646 #define GLX_BLENDED_RGBA_SGIS 0x8025
00647 
00648 #define GLXEW_SGIS_blended_overlay GLXEW_GET_VAR(__GLXEW_SGIS_blended_overlay)
00649 
00650 #endif /* GLX_SGIS_blended_overlay */
00651 
00652 /* -------------------------- GLX_SGIS_color_range ------------------------- */
00653 
00654 #ifndef GLX_SGIS_color_range
00655 #define GLX_SGIS_color_range 1
00656 
00657 #define GLX_MIN_RED_SGIS 0
00658 #define GLX_MAX_GREEN_SGIS 0
00659 #define GLX_MIN_BLUE_SGIS 0
00660 #define GLX_MAX_ALPHA_SGIS 0
00661 #define GLX_MIN_GREEN_SGIS 0
00662 #define GLX_MIN_ALPHA_SGIS 0
00663 #define GLX_MAX_RED_SGIS 0
00664 #define GLX_EXTENDED_RANGE_SGIS 0
00665 #define GLX_MAX_BLUE_SGIS 0
00666 
00667 #define GLXEW_SGIS_color_range GLXEW_GET_VAR(__GLXEW_SGIS_color_range)
00668 
00669 #endif /* GLX_SGIS_color_range */
00670 
00671 /* -------------------------- GLX_SGIS_multisample ------------------------- */
00672 
00673 #ifndef GLX_SGIS_multisample
00674 #define GLX_SGIS_multisample 1
00675 
00676 #define GLX_SAMPLE_BUFFERS_SGIS 100000
00677 #define GLX_SAMPLES_SGIS 100001
00678 
00679 #define GLXEW_SGIS_multisample GLXEW_GET_VAR(__GLXEW_SGIS_multisample)
00680 
00681 #endif /* GLX_SGIS_multisample */
00682 
00683 /* ---------------------- GLX_SGIS_shared_multisample ---------------------- */
00684 
00685 #ifndef GLX_SGIS_shared_multisample
00686 #define GLX_SGIS_shared_multisample 1
00687 
00688 #define GLX_MULTISAMPLE_SUB_RECT_WIDTH_SGIS 0x8026
00689 #define GLX_MULTISAMPLE_SUB_RECT_HEIGHT_SGIS 0x8027
00690 
00691 #define GLXEW_SGIS_shared_multisample GLXEW_GET_VAR(__GLXEW_SGIS_shared_multisample)
00692 
00693 #endif /* GLX_SGIS_shared_multisample */
00694 
00695 /* --------------------------- GLX_SGIX_fbconfig --------------------------- */
00696 
00697 #ifndef GLX_SGIX_fbconfig
00698 #define GLX_SGIX_fbconfig 1
00699 
00700 #define GLX_WINDOW_BIT_SGIX 0x00000001
00701 #define GLX_RGBA_BIT_SGIX 0x00000001
00702 #define GLX_PIXMAP_BIT_SGIX 0x00000002
00703 #define GLX_COLOR_INDEX_BIT_SGIX 0x00000002
00704 #define GLX_SCREEN_EXT 0x800C
00705 #define GLX_DRAWABLE_TYPE_SGIX 0x8010
00706 #define GLX_RENDER_TYPE_SGIX 0x8011
00707 #define GLX_X_RENDERABLE_SGIX 0x8012
00708 #define GLX_FBCONFIG_ID_SGIX 0x8013
00709 #define GLX_RGBA_TYPE_SGIX 0x8014
00710 #define GLX_COLOR_INDEX_TYPE_SGIX 0x8015
00711 
00712 typedef XID GLXFBConfigIDSGIX;
00713 typedef struct __GLXFBConfigRec *GLXFBConfigSGIX;
00714 
00715 typedef GLXFBConfigSGIX* ( * PFNGLXCHOOSEFBCONFIGSGIXPROC) (Display *dpy, int screen, const int *attrib_list, int *nelements);
00716 typedef GLXContext ( * PFNGLXCREATECONTEXTWITHCONFIGSGIXPROC) (Display* dpy, GLXFBConfig config, int render_type, GLXContext share_list, Bool direct);
00717 typedef GLXPixmap ( * PFNGLXCREATEGLXPIXMAPWITHCONFIGSGIXPROC) (Display* dpy, GLXFBConfig config, Pixmap pixmap);
00718 typedef int ( * PFNGLXGETFBCONFIGATTRIBSGIXPROC) (Display* dpy, GLXFBConfigSGIX config, int attribute, int *value);
00719 typedef GLXFBConfigSGIX ( * PFNGLXGETFBCONFIGFROMVISUALSGIXPROC) (Display* dpy, XVisualInfo *vis);
00720 typedef XVisualInfo* ( * PFNGLXGETVISUALFROMFBCONFIGSGIXPROC) (Display *dpy, GLXFBConfig config);
00721 
00722 #define glXChooseFBConfigSGIX GLXEW_GET_FUN(__glewXChooseFBConfigSGIX)
00723 #define glXCreateContextWithConfigSGIX GLXEW_GET_FUN(__glewXCreateContextWithConfigSGIX)
00724 #define glXCreateGLXPixmapWithConfigSGIX GLXEW_GET_FUN(__glewXCreateGLXPixmapWithConfigSGIX)
00725 #define glXGetFBConfigAttribSGIX GLXEW_GET_FUN(__glewXGetFBConfigAttribSGIX)
00726 #define glXGetFBConfigFromVisualSGIX GLXEW_GET_FUN(__glewXGetFBConfigFromVisualSGIX)
00727 #define glXGetVisualFromFBConfigSGIX GLXEW_GET_FUN(__glewXGetVisualFromFBConfigSGIX)
00728 
00729 #define GLXEW_SGIX_fbconfig GLXEW_GET_VAR(__GLXEW_SGIX_fbconfig)
00730 
00731 #endif /* GLX_SGIX_fbconfig */
00732 
00733 /* --------------------------- GLX_SGIX_hyperpipe -------------------------- */
00734 
00735 #ifndef GLX_SGIX_hyperpipe
00736 #define GLX_SGIX_hyperpipe 1
00737 
00738 #define GLX_HYPERPIPE_DISPLAY_PIPE_SGIX 0x00000001
00739 #define GLX_PIPE_RECT_SGIX 0x00000001
00740 #define GLX_PIPE_RECT_LIMITS_SGIX 0x00000002
00741 #define GLX_HYPERPIPE_RENDER_PIPE_SGIX 0x00000002
00742 #define GLX_HYPERPIPE_STEREO_SGIX 0x00000003
00743 #define GLX_HYPERPIPE_PIXEL_AVERAGE_SGIX 0x00000004
00744 #define GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX 80
00745 #define GLX_BAD_HYPERPIPE_CONFIG_SGIX 91
00746 #define GLX_BAD_HYPERPIPE_SGIX 92
00747 #define GLX_HYPERPIPE_ID_SGIX 0x8030
00748 
00749 typedef struct {
00750   char pipeName[GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX]; 
00751   int  networkId; 
00752 } GLXHyperpipeNetworkSGIX;
00753 typedef struct {
00754   char pipeName[GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX]; 
00755   int XOrigin; 
00756   int YOrigin; 
00757   int maxHeight; 
00758   int maxWidth; 
00759 } GLXPipeRectLimits;
00760 typedef struct {
00761   char pipeName[GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX]; 
00762   int channel; 
00763   unsigned int participationType; 
00764   int timeSlice; 
00765 } GLXHyperpipeConfigSGIX;
00766 typedef struct {
00767   char pipeName[GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX]; 
00768   int srcXOrigin; 
00769   int srcYOrigin; 
00770   int srcWidth; 
00771   int srcHeight; 
00772   int destXOrigin; 
00773   int destYOrigin; 
00774   int destWidth; 
00775   int destHeight; 
00776 } GLXPipeRect;
00777 
00778 typedef int ( * PFNGLXBINDHYPERPIPESGIXPROC) (Display *dpy, int hpId);
00779 typedef int ( * PFNGLXDESTROYHYPERPIPECONFIGSGIXPROC) (Display *dpy, int hpId);
00780 typedef int ( * PFNGLXHYPERPIPEATTRIBSGIXPROC) (Display *dpy, int timeSlice, int attrib, int size, void *attribList);
00781 typedef int ( * PFNGLXHYPERPIPECONFIGSGIXPROC) (Display *dpy, int networkId, int npipes, GLXHyperpipeConfigSGIX *cfg, int *hpId);
00782 typedef int ( * PFNGLXQUERYHYPERPIPEATTRIBSGIXPROC) (Display *dpy, int timeSlice, int attrib, int size, void *returnAttribList);
00783 typedef int ( * PFNGLXQUERYHYPERPIPEBESTATTRIBSGIXPROC) (Display *dpy, int timeSlice, int attrib, int size, void *attribList, void *returnAttribList);
00784 typedef GLXHyperpipeConfigSGIX * ( * PFNGLXQUERYHYPERPIPECONFIGSGIXPROC) (Display *dpy, int hpId, int *npipes);
00785 typedef GLXHyperpipeNetworkSGIX * ( * PFNGLXQUERYHYPERPIPENETWORKSGIXPROC) (Display *dpy, int *npipes);
00786 
00787 #define glXBindHyperpipeSGIX GLXEW_GET_FUN(__glewXBindHyperpipeSGIX)
00788 #define glXDestroyHyperpipeConfigSGIX GLXEW_GET_FUN(__glewXDestroyHyperpipeConfigSGIX)
00789 #define glXHyperpipeAttribSGIX GLXEW_GET_FUN(__glewXHyperpipeAttribSGIX)
00790 #define glXHyperpipeConfigSGIX GLXEW_GET_FUN(__glewXHyperpipeConfigSGIX)
00791 #define glXQueryHyperpipeAttribSGIX GLXEW_GET_FUN(__glewXQueryHyperpipeAttribSGIX)
00792 #define glXQueryHyperpipeBestAttribSGIX GLXEW_GET_FUN(__glewXQueryHyperpipeBestAttribSGIX)
00793 #define glXQueryHyperpipeConfigSGIX GLXEW_GET_FUN(__glewXQueryHyperpipeConfigSGIX)
00794 #define glXQueryHyperpipeNetworkSGIX GLXEW_GET_FUN(__glewXQueryHyperpipeNetworkSGIX)
00795 
00796 #define GLXEW_SGIX_hyperpipe GLXEW_GET_VAR(__GLXEW_SGIX_hyperpipe)
00797 
00798 #endif /* GLX_SGIX_hyperpipe */
00799 
00800 /* ---------------------------- GLX_SGIX_pbuffer --------------------------- */
00801 
00802 #ifndef GLX_SGIX_pbuffer
00803 #define GLX_SGIX_pbuffer 1
00804 
00805 #define GLX_FRONT_LEFT_BUFFER_BIT_SGIX 0x00000001
00806 #define GLX_FRONT_RIGHT_BUFFER_BIT_SGIX 0x00000002
00807 #define GLX_PBUFFER_BIT_SGIX 0x00000004
00808 #define GLX_BACK_LEFT_BUFFER_BIT_SGIX 0x00000004
00809 #define GLX_BACK_RIGHT_BUFFER_BIT_SGIX 0x00000008
00810 #define GLX_AUX_BUFFERS_BIT_SGIX 0x00000010
00811 #define GLX_DEPTH_BUFFER_BIT_SGIX 0x00000020
00812 #define GLX_STENCIL_BUFFER_BIT_SGIX 0x00000040
00813 #define GLX_ACCUM_BUFFER_BIT_SGIX 0x00000080
00814 #define GLX_SAMPLE_BUFFERS_BIT_SGIX 0x00000100
00815 #define GLX_MAX_PBUFFER_WIDTH_SGIX 0x8016
00816 #define GLX_MAX_PBUFFER_HEIGHT_SGIX 0x8017
00817 #define GLX_MAX_PBUFFER_PIXELS_SGIX 0x8018
00818 #define GLX_OPTIMAL_PBUFFER_WIDTH_SGIX 0x8019
00819 #define GLX_OPTIMAL_PBUFFER_HEIGHT_SGIX 0x801A
00820 #define GLX_PRESERVED_CONTENTS_SGIX 0x801B
00821 #define GLX_LARGEST_PBUFFER_SGIX 0x801C
00822 #define GLX_WIDTH_SGIX 0x801D
00823 #define GLX_HEIGHT_SGIX 0x801E
00824 #define GLX_EVENT_MASK_SGIX 0x801F
00825 #define GLX_DAMAGED_SGIX 0x8020
00826 #define GLX_SAVED_SGIX 0x8021
00827 #define GLX_WINDOW_SGIX 0x8022
00828 #define GLX_PBUFFER_SGIX 0x8023
00829 #define GLX_BUFFER_CLOBBER_MASK_SGIX 0x08000000
00830 
00831 typedef XID GLXPbufferSGIX;
00832 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;
00833 
00834 typedef GLXPbuffer ( * PFNGLXCREATEGLXPBUFFERSGIXPROC) (Display* dpy, GLXFBConfig config, unsigned int width, unsigned int height, int *attrib_list);
00835 typedef void ( * PFNGLXDESTROYGLXPBUFFERSGIXPROC) (Display* dpy, GLXPbuffer pbuf);
00836 typedef void ( * PFNGLXGETSELECTEDEVENTSGIXPROC) (Display* dpy, GLXDrawable drawable, unsigned long *mask);
00837 typedef void ( * PFNGLXQUERYGLXPBUFFERSGIXPROC) (Display* dpy, GLXPbuffer pbuf, int attribute, unsigned int *value);
00838 typedef void ( * PFNGLXSELECTEVENTSGIXPROC) (Display* dpy, GLXDrawable drawable, unsigned long mask);
00839 
00840 #define glXCreateGLXPbufferSGIX GLXEW_GET_FUN(__glewXCreateGLXPbufferSGIX)
00841 #define glXDestroyGLXPbufferSGIX GLXEW_GET_FUN(__glewXDestroyGLXPbufferSGIX)
00842 #define glXGetSelectedEventSGIX GLXEW_GET_FUN(__glewXGetSelectedEventSGIX)
00843 #define glXQueryGLXPbufferSGIX GLXEW_GET_FUN(__glewXQueryGLXPbufferSGIX)
00844 #define glXSelectEventSGIX GLXEW_GET_FUN(__glewXSelectEventSGIX)
00845 
00846 #define GLXEW_SGIX_pbuffer GLXEW_GET_VAR(__GLXEW_SGIX_pbuffer)
00847 
00848 #endif /* GLX_SGIX_pbuffer */
00849 
00850 /* ------------------------- GLX_SGIX_swap_barrier ------------------------- */
00851 
00852 #ifndef GLX_SGIX_swap_barrier
00853 #define GLX_SGIX_swap_barrier 1
00854 
00855 typedef void ( * PFNGLXBINDSWAPBARRIERSGIXPROC) (Display *dpy, GLXDrawable drawable, int barrier);
00856 typedef Bool ( * PFNGLXQUERYMAXSWAPBARRIERSSGIXPROC) (Display *dpy, int screen, int *max);
00857 
00858 #define glXBindSwapBarrierSGIX GLXEW_GET_FUN(__glewXBindSwapBarrierSGIX)
00859 #define glXQueryMaxSwapBarriersSGIX GLXEW_GET_FUN(__glewXQueryMaxSwapBarriersSGIX)
00860 
00861 #define GLXEW_SGIX_swap_barrier GLXEW_GET_VAR(__GLXEW_SGIX_swap_barrier)
00862 
00863 #endif /* GLX_SGIX_swap_barrier */
00864 
00865 /* -------------------------- GLX_SGIX_swap_group -------------------------- */
00866 
00867 #ifndef GLX_SGIX_swap_group
00868 #define GLX_SGIX_swap_group 1
00869 
00870 typedef void ( * PFNGLXJOINSWAPGROUPSGIXPROC) (Display *dpy, GLXDrawable drawable, GLXDrawable member);
00871 
00872 #define glXJoinSwapGroupSGIX GLXEW_GET_FUN(__glewXJoinSwapGroupSGIX)
00873 
00874 #define GLXEW_SGIX_swap_group GLXEW_GET_VAR(__GLXEW_SGIX_swap_group)
00875 
00876 #endif /* GLX_SGIX_swap_group */
00877 
00878 /* ------------------------- GLX_SGIX_video_resize ------------------------- */
00879 
00880 #ifndef GLX_SGIX_video_resize
00881 #define GLX_SGIX_video_resize 1
00882 
00883 #define GLX_SYNC_FRAME_SGIX 0x00000000
00884 #define GLX_SYNC_SWAP_SGIX 0x00000001
00885 
00886 typedef int ( * PFNGLXBINDCHANNELTOWINDOWSGIXPROC) (Display* display, int screen, int channel, Window window);
00887 typedef int ( * PFNGLXCHANNELRECTSGIXPROC) (Display* display, int screen, int channel, int x, int y, int w, int h);
00888 typedef int ( * PFNGLXCHANNELRECTSYNCSGIXPROC) (Display* display, int screen, int channel, GLenum synctype);
00889 typedef int ( * PFNGLXQUERYCHANNELDELTASSGIXPROC) (Display* display, int screen, int channel, int *x, int *y, int *w, int *h);
00890 typedef int ( * PFNGLXQUERYCHANNELRECTSGIXPROC) (Display* display, int screen, int channel, int *dx, int *dy, int *dw, int *dh);
00891 
00892 #define glXBindChannelToWindowSGIX GLXEW_GET_FUN(__glewXBindChannelToWindowSGIX)
00893 #define glXChannelRectSGIX GLXEW_GET_FUN(__glewXChannelRectSGIX)
00894 #define glXChannelRectSyncSGIX GLXEW_GET_FUN(__glewXChannelRectSyncSGIX)
00895 #define glXQueryChannelDeltasSGIX GLXEW_GET_FUN(__glewXQueryChannelDeltasSGIX)
00896 #define glXQueryChannelRectSGIX GLXEW_GET_FUN(__glewXQueryChannelRectSGIX)
00897 
00898 #define GLXEW_SGIX_video_resize GLXEW_GET_VAR(__GLXEW_SGIX_video_resize)
00899 
00900 #endif /* GLX_SGIX_video_resize */
00901 
00902 /* ---------------------- GLX_SGIX_visual_select_group --------------------- */
00903 
00904 #ifndef GLX_SGIX_visual_select_group
00905 #define GLX_SGIX_visual_select_group 1
00906 
00907 #define GLX_VISUAL_SELECT_GROUP_SGIX 0x8028
00908 
00909 #define GLXEW_SGIX_visual_select_group GLXEW_GET_VAR(__GLXEW_SGIX_visual_select_group)
00910 
00911 #endif /* GLX_SGIX_visual_select_group */
00912 
00913 /* ---------------------------- GLX_SGI_cushion ---------------------------- */
00914 
00915 #ifndef GLX_SGI_cushion
00916 #define GLX_SGI_cushion 1
00917 
00918 typedef void ( * PFNGLXCUSHIONSGIPROC) (Display* dpy, Window window, float cushion);
00919 
00920 #define glXCushionSGI GLXEW_GET_FUN(__glewXCushionSGI)
00921 
00922 #define GLXEW_SGI_cushion GLXEW_GET_VAR(__GLXEW_SGI_cushion)
00923 
00924 #endif /* GLX_SGI_cushion */
00925 
00926 /* ----------------------- GLX_SGI_make_current_read ----------------------- */
00927 
00928 #ifndef GLX_SGI_make_current_read
00929 #define GLX_SGI_make_current_read 1
00930 
00931 typedef GLXDrawable ( * PFNGLXGETCURRENTREADDRAWABLESGIPROC) (void);
00932 typedef Bool ( * PFNGLXMAKECURRENTREADSGIPROC) (Display* dpy, GLXDrawable draw, GLXDrawable read, GLXContext ctx);
00933 
00934 #define glXGetCurrentReadDrawableSGI GLXEW_GET_FUN(__glewXGetCurrentReadDrawableSGI)
00935 #define glXMakeCurrentReadSGI GLXEW_GET_FUN(__glewXMakeCurrentReadSGI)
00936 
00937 #define GLXEW_SGI_make_current_read GLXEW_GET_VAR(__GLXEW_SGI_make_current_read)
00938 
00939 #endif /* GLX_SGI_make_current_read */
00940 
00941 /* -------------------------- GLX_SGI_swap_control ------------------------- */
00942 
00943 #ifndef GLX_SGI_swap_control
00944 #define GLX_SGI_swap_control 1
00945 
00946 typedef int ( * PFNGLXSWAPINTERVALSGIPROC) (int interval);
00947 
00948 #define glXSwapIntervalSGI GLXEW_GET_FUN(__glewXSwapIntervalSGI)
00949 
00950 #define GLXEW_SGI_swap_control GLXEW_GET_VAR(__GLXEW_SGI_swap_control)
00951 
00952 #endif /* GLX_SGI_swap_control */
00953 
00954 /* --------------------------- GLX_SGI_video_sync -------------------------- */
00955 
00956 #ifndef GLX_SGI_video_sync
00957 #define GLX_SGI_video_sync 1
00958 
00959 typedef int ( * PFNGLXGETVIDEOSYNCSGIPROC) (uint* count);
00960 typedef int ( * PFNGLXWAITVIDEOSYNCSGIPROC) (int divisor, int remainder, unsigned int* count);
00961 
00962 #define glXGetVideoSyncSGI GLXEW_GET_FUN(__glewXGetVideoSyncSGI)
00963 #define glXWaitVideoSyncSGI GLXEW_GET_FUN(__glewXWaitVideoSyncSGI)
00964 
00965 #define GLXEW_SGI_video_sync GLXEW_GET_VAR(__GLXEW_SGI_video_sync)
00966 
00967 #endif /* GLX_SGI_video_sync */
00968 
00969 /* --------------------- GLX_SUN_get_transparent_index --------------------- */
00970 
00971 #ifndef GLX_SUN_get_transparent_index
00972 #define GLX_SUN_get_transparent_index 1
00973 
00974 typedef Status ( * PFNGLXGETTRANSPARENTINDEXSUNPROC) (Display* dpy, Window overlay, Window underlay, unsigned long *pTransparentIndex);
00975 
00976 #define glXGetTransparentIndexSUN GLXEW_GET_FUN(__glewXGetTransparentIndexSUN)
00977 
00978 #define GLXEW_SUN_get_transparent_index GLXEW_GET_VAR(__GLXEW_SUN_get_transparent_index)
00979 
00980 #endif /* GLX_SUN_get_transparent_index */
00981 
00982 /* -------------------------- GLX_SUN_video_resize ------------------------- */
00983 
00984 #ifndef GLX_SUN_video_resize
00985 #define GLX_SUN_video_resize 1
00986 
00987 #define GLX_VIDEO_RESIZE_SUN 0x8171
00988 #define GL_VIDEO_RESIZE_COMPENSATION_SUN 0x85CD
00989 
00990 typedef int ( * PFNGLXGETVIDEORESIZESUNPROC) (Display* display, GLXDrawable window, float* factor);
00991 typedef int ( * PFNGLXVIDEORESIZESUNPROC) (Display* display, GLXDrawable window, float factor);
00992 
00993 #define glXGetVideoResizeSUN GLXEW_GET_FUN(__glewXGetVideoResizeSUN)
00994 #define glXVideoResizeSUN GLXEW_GET_FUN(__glewXVideoResizeSUN)
00995 
00996 #define GLXEW_SUN_video_resize GLXEW_GET_VAR(__GLXEW_SUN_video_resize)
00997 
00998 #endif /* GLX_SUN_video_resize */
00999 
01000 /* ------------------------------------------------------------------------- */
01001 
01002 #ifdef GLEW_MX
01003 #define GLXEW_EXPORT
01004 #else
01005 #define GLXEW_EXPORT extern
01006 #endif /* GLEW_MX */
01007 
01008 extern PFNGLXGETCURRENTDISPLAYPROC __glewXGetCurrentDisplay;
01009 
01010 extern PFNGLXCHOOSEFBCONFIGPROC __glewXChooseFBConfig;
01011 extern PFNGLXCREATENEWCONTEXTPROC __glewXCreateNewContext;
01012 extern PFNGLXCREATEPBUFFERPROC __glewXCreatePbuffer;
01013 extern PFNGLXCREATEPIXMAPPROC __glewXCreatePixmap;
01014 extern PFNGLXCREATEWINDOWPROC __glewXCreateWindow;
01015 extern PFNGLXDESTROYPBUFFERPROC __glewXDestroyPbuffer;
01016 extern PFNGLXDESTROYPIXMAPPROC __glewXDestroyPixmap;
01017 extern PFNGLXDESTROYWINDOWPROC __glewXDestroyWindow;
01018 extern PFNGLXGETCURRENTREADDRAWABLEPROC __glewXGetCurrentReadDrawable;
01019 extern PFNGLXGETFBCONFIGATTRIBPROC __glewXGetFBConfigAttrib;
01020 extern PFNGLXGETFBCONFIGSPROC __glewXGetFBConfigs;
01021 extern PFNGLXGETSELECTEDEVENTPROC __glewXGetSelectedEvent;
01022 extern PFNGLXGETVISUALFROMFBCONFIGPROC __glewXGetVisualFromFBConfig;
01023 extern PFNGLXMAKECONTEXTCURRENTPROC __glewXMakeContextCurrent;
01024 extern PFNGLXQUERYCONTEXTPROC __glewXQueryContext;
01025 extern PFNGLXQUERYDRAWABLEPROC __glewXQueryDrawable;
01026 extern PFNGLXSELECTEVENTPROC __glewXSelectEvent;
01027 
01028 extern PFNGLXBINDTEXIMAGEATIPROC __glewXBindTexImageATI;
01029 extern PFNGLXDRAWABLEATTRIBATIPROC __glewXDrawableAttribATI;
01030 extern PFNGLXRELEASETEXIMAGEATIPROC __glewXReleaseTexImageATI;
01031 
01032 extern PFNGLXFREECONTEXTEXTPROC __glewXFreeContextEXT;
01033 extern PFNGLXGETCONTEXTIDEXTPROC __glewXGetContextIDEXT;
01034 extern PFNGLXIMPORTCONTEXTEXTPROC __glewXImportContextEXT;
01035 extern PFNGLXQUERYCONTEXTINFOEXTPROC __glewXQueryContextInfoEXT;
01036 
01037 extern PFNGLXGETAGPOFFSETMESAPROC __glewXGetAGPOffsetMESA;
01038 
01039 extern PFNGLXCOPYSUBBUFFERMESAPROC __glewXCopySubBufferMESA;
01040 
01041 extern PFNGLXCREATEGLXPIXMAPMESAPROC __glewXCreateGLXPixmapMESA;
01042 
01043 extern PFNGLXRELEASEBUFFERSMESAPROC __glewXReleaseBuffersMESA;
01044 
01045 extern PFNGLXSET3DFXMODEMESAPROC __glewXSet3DfxModeMESA;
01046 
01047 extern PFNGLXALLOCATEMEMORYNVPROC __glewXAllocateMemoryNV;
01048 extern PFNGLXFREEMEMORYNVPROC __glewXFreeMemoryNV;
01049 
01050 #ifdef GLX_OML_sync_control
01051 extern PFNGLXGETMSCRATEOMLPROC __glewXGetMscRateOML;
01052 extern PFNGLXGETSYNCVALUESOMLPROC __glewXGetSyncValuesOML;
01053 extern PFNGLXSWAPBUFFERSMSCOMLPROC __glewXSwapBuffersMscOML;
01054 extern PFNGLXWAITFORMSCOMLPROC __glewXWaitForMscOML;
01055 extern PFNGLXWAITFORSBCOMLPROC __glewXWaitForSbcOML;
01056 #endif
01057 
01058 extern PFNGLXCHOOSEFBCONFIGSGIXPROC __glewXChooseFBConfigSGIX;
01059 extern PFNGLXCREATECONTEXTWITHCONFIGSGIXPROC __glewXCreateContextWithConfigSGIX;
01060 extern PFNGLXCREATEGLXPIXMAPWITHCONFIGSGIXPROC __glewXCreateGLXPixmapWithConfigSGIX;
01061 extern PFNGLXGETFBCONFIGATTRIBSGIXPROC __glewXGetFBConfigAttribSGIX;
01062 extern PFNGLXGETFBCONFIGFROMVISUALSGIXPROC __glewXGetFBConfigFromVisualSGIX;
01063 extern PFNGLXGETVISUALFROMFBCONFIGSGIXPROC __glewXGetVisualFromFBConfigSGIX;
01064 
01065 extern PFNGLXBINDHYPERPIPESGIXPROC __glewXBindHyperpipeSGIX;
01066 extern PFNGLXDESTROYHYPERPIPECONFIGSGIXPROC __glewXDestroyHyperpipeConfigSGIX;
01067 extern PFNGLXHYPERPIPEATTRIBSGIXPROC __glewXHyperpipeAttribSGIX;
01068 extern PFNGLXHYPERPIPECONFIGSGIXPROC __glewXHyperpipeConfigSGIX;
01069 extern PFNGLXQUERYHYPERPIPEATTRIBSGIXPROC __glewXQueryHyperpipeAttribSGIX;
01070 extern PFNGLXQUERYHYPERPIPEBESTATTRIBSGIXPROC __glewXQueryHyperpipeBestAttribSGIX;
01071 extern PFNGLXQUERYHYPERPIPECONFIGSGIXPROC __glewXQueryHyperpipeConfigSGIX;
01072 extern PFNGLXQUERYHYPERPIPENETWORKSGIXPROC __glewXQueryHyperpipeNetworkSGIX;
01073 
01074 extern PFNGLXCREATEGLXPBUFFERSGIXPROC __glewXCreateGLXPbufferSGIX;
01075 extern PFNGLXDESTROYGLXPBUFFERSGIXPROC __glewXDestroyGLXPbufferSGIX;
01076 extern PFNGLXGETSELECTEDEVENTSGIXPROC __glewXGetSelectedEventSGIX;
01077 extern PFNGLXQUERYGLXPBUFFERSGIXPROC __glewXQueryGLXPbufferSGIX;
01078 extern PFNGLXSELECTEVENTSGIXPROC __glewXSelectEventSGIX;
01079 
01080 extern PFNGLXBINDSWAPBARRIERSGIXPROC __glewXBindSwapBarrierSGIX;
01081 extern PFNGLXQUERYMAXSWAPBARRIERSSGIXPROC __glewXQueryMaxSwapBarriersSGIX;
01082 
01083 extern PFNGLXJOINSWAPGROUPSGIXPROC __glewXJoinSwapGroupSGIX;
01084 
01085 extern PFNGLXBINDCHANNELTOWINDOWSGIXPROC __glewXBindChannelToWindowSGIX;
01086 extern PFNGLXCHANNELRECTSGIXPROC __glewXChannelRectSGIX;
01087 extern PFNGLXCHANNELRECTSYNCSGIXPROC __glewXChannelRectSyncSGIX;
01088 extern PFNGLXQUERYCHANNELDELTASSGIXPROC __glewXQueryChannelDeltasSGIX;
01089 extern PFNGLXQUERYCHANNELRECTSGIXPROC __glewXQueryChannelRectSGIX;
01090 
01091 extern PFNGLXCUSHIONSGIPROC __glewXCushionSGI;
01092 
01093 extern PFNGLXGETCURRENTREADDRAWABLESGIPROC __glewXGetCurrentReadDrawableSGI;
01094 extern PFNGLXMAKECURRENTREADSGIPROC __glewXMakeCurrentReadSGI;
01095 
01096 extern PFNGLXSWAPINTERVALSGIPROC __glewXSwapIntervalSGI;
01097 
01098 extern PFNGLXGETVIDEOSYNCSGIPROC __glewXGetVideoSyncSGI;
01099 extern PFNGLXWAITVIDEOSYNCSGIPROC __glewXWaitVideoSyncSGI;
01100 
01101 extern PFNGLXGETTRANSPARENTINDEXSUNPROC __glewXGetTransparentIndexSUN;
01102 
01103 extern PFNGLXGETVIDEORESIZESUNPROC __glewXGetVideoResizeSUN;
01104 extern PFNGLXVIDEORESIZESUNPROC __glewXVideoResizeSUN;
01105 
01106 #if defined(GLEW_MX)
01107 struct GLXEWContextStruct
01108 {
01109 #endif /* GLEW_MX */
01110 
01111 GLXEW_EXPORT GLboolean __GLXEW_VERSION_1_0;
01112 GLXEW_EXPORT GLboolean __GLXEW_VERSION_1_1;
01113 GLXEW_EXPORT GLboolean __GLXEW_VERSION_1_2;
01114 GLXEW_EXPORT GLboolean __GLXEW_VERSION_1_3;
01115 GLXEW_EXPORT GLboolean __GLXEW_VERSION_1_4;
01116 GLXEW_EXPORT GLboolean __GLXEW_3DFX_multisample;
01117 GLXEW_EXPORT GLboolean __GLXEW_ARB_fbconfig_float;
01118 GLXEW_EXPORT GLboolean __GLXEW_ARB_get_proc_address;
01119 GLXEW_EXPORT GLboolean __GLXEW_ARB_multisample;
01120 GLXEW_EXPORT GLboolean __GLXEW_ATI_pixel_format_float;
01121 GLXEW_EXPORT GLboolean __GLXEW_ATI_render_texture;
01122 GLXEW_EXPORT GLboolean __GLXEW_EXT_fbconfig_packed_float;
01123 GLXEW_EXPORT GLboolean __GLXEW_EXT_framebuffer_sRGB;
01124 GLXEW_EXPORT GLboolean __GLXEW_EXT_import_context;
01125 GLXEW_EXPORT GLboolean __GLXEW_EXT_scene_marker;
01126 GLXEW_EXPORT GLboolean __GLXEW_EXT_visual_info;
01127 GLXEW_EXPORT GLboolean __GLXEW_EXT_visual_rating;
01128 GLXEW_EXPORT GLboolean __GLXEW_MESA_agp_offset;
01129 GLXEW_EXPORT GLboolean __GLXEW_MESA_copy_sub_buffer;
01130 GLXEW_EXPORT GLboolean __GLXEW_MESA_pixmap_colormap;
01131 GLXEW_EXPORT GLboolean __GLXEW_MESA_release_buffers;
01132 GLXEW_EXPORT GLboolean __GLXEW_MESA_set_3dfx_mode;
01133 GLXEW_EXPORT GLboolean __GLXEW_NV_float_buffer;
01134 GLXEW_EXPORT GLboolean __GLXEW_NV_vertex_array_range;
01135 GLXEW_EXPORT GLboolean __GLXEW_OML_swap_method;
01136 GLXEW_EXPORT GLboolean __GLXEW_OML_sync_control;
01137 GLXEW_EXPORT GLboolean __GLXEW_SGIS_blended_overlay;
01138 GLXEW_EXPORT GLboolean __GLXEW_SGIS_color_range;
01139 GLXEW_EXPORT GLboolean __GLXEW_SGIS_multisample;
01140 GLXEW_EXPORT GLboolean __GLXEW_SGIS_shared_multisample;
01141 GLXEW_EXPORT GLboolean __GLXEW_SGIX_fbconfig;
01142 GLXEW_EXPORT GLboolean __GLXEW_SGIX_hyperpipe;
01143 GLXEW_EXPORT GLboolean __GLXEW_SGIX_pbuffer;
01144 GLXEW_EXPORT GLboolean __GLXEW_SGIX_swap_barrier;
01145 GLXEW_EXPORT GLboolean __GLXEW_SGIX_swap_group;
01146 GLXEW_EXPORT GLboolean __GLXEW_SGIX_video_resize;
01147 GLXEW_EXPORT GLboolean __GLXEW_SGIX_visual_select_group;
01148 GLXEW_EXPORT GLboolean __GLXEW_SGI_cushion;
01149 GLXEW_EXPORT GLboolean __GLXEW_SGI_make_current_read;
01150 GLXEW_EXPORT GLboolean __GLXEW_SGI_swap_control;
01151 GLXEW_EXPORT GLboolean __GLXEW_SGI_video_sync;
01152 GLXEW_EXPORT GLboolean __GLXEW_SUN_get_transparent_index;
01153 GLXEW_EXPORT GLboolean __GLXEW_SUN_video_resize;
01154 
01155 #ifdef GLEW_MX
01156 }; /* GLXEWContextStruct */
01157 #endif /* GLEW_MX */
01158 
01159 /* ------------------------------------------------------------------------ */
01160 
01161 #ifdef GLEW_MX
01162 
01163 typedef struct GLXEWContextStruct GLXEWContext;
01164 extern GLenum glxewContextInit (GLXEWContext* ctx);
01165 extern GLboolean glxewContextIsSupported (GLXEWContext* ctx, const char* name);
01166 
01167 #define glxewInit() glxewContextInit(glxewGetContext())
01168 #define glxewIsSupported(x) glxewContextIsSupported(glxewGetContext(), x)
01169 
01170 #define GLXEW_GET_VAR(x) (*(const GLboolean*)&(glxewGetContext()->x))
01171 #define GLXEW_GET_FUN(x) x
01172 
01173 #else /* GLEW_MX */
01174 
01175 #define GLXEW_GET_VAR(x) (*(const GLboolean*)&x)
01176 #define GLXEW_GET_FUN(x) x
01177 
01178 extern GLboolean glxewIsSupported (const char* name);
01179 
01180 #endif /* GLEW_MX */
01181 
01182 extern GLboolean glxewGetExtension (const char* name);
01183 
01184 #ifdef __cplusplus
01185 }
01186 #endif
01187 
01188 #endif /* __glxew_h__ */

Generated on Mon Feb 16 15:14:45 2009 for Scorched3D by  doxygen 1.5.3