Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

glxew.H

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

Generated on Mon Sep 18 11:39:31 2006 for jot by  doxygen 1.4.4