| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397 |
- /*
- ** The OpenGL Extension Wrangler Library
- ** Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
- ** Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
- ** Copyright (C) 2002, Lev Povalahev
- ** All rights reserved.
- **
- ** Redistribution and use in source and binary forms, with or without
- ** modification, are permitted provided that the following conditions are met:
- **
- ** * Redistributions of source code must retain the above copyright notice,
- ** this list of conditions and the following disclaimer.
- ** * Redistributions in binary form must reproduce the above copyright notice,
- ** this list of conditions and the following disclaimer in the documentation
- ** and/or other materials provided with the distribution.
- ** * The name of the author may be used to endorse or promote products
- ** derived from this software without specific prior written permission.
- **
- ** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- ** AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- ** IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- ** ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
- ** LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- ** CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- ** SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- ** INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- ** CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- ** ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
- ** THE POSSIBILITY OF SUCH DAMAGE.
- */
-
- /*
- * Mesa 3-D graphics library
- * Version: 7.0
- *
- * Copyright (C) 1999-2007 Brian Paul All Rights Reserved.
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the "Software"),
- * to deal in the Software without restriction, including without limitation
- * the rights to use, copy, modify, merge, publish, distribute, sublicense,
- * and/or sell copies of the Software, and to permit persons to whom the
- * Software is furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included
- * in all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
- * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
- * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
- * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- */
-
- /*
- ** Copyright (c) 2007 The Khronos Group Inc.
- **
- ** Permission is hereby granted, free of charge, to any person obtaining a
- ** copy of this software and/or associated documentation files (the
- ** "Materials"), to deal in the Materials without restriction, including
- ** without limitation the rights to use, copy, modify, merge, publish,
- ** distribute, sublicense, and/or sell copies of the Materials, and to
- ** permit persons to whom the Materials are furnished to do so, subject to
- ** the following conditions:
- **
- ** The above copyright notice and this permission notice shall be included
- ** in all copies or substantial portions of the Materials.
- **
- ** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- ** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- ** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
- ** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
- ** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
- ** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
- ** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
- */
-
- #ifndef __glxew_h__
- #define __glxew_h__
- #define __GLXEW_H__
-
- #ifdef __glxext_h_
- #error glxext.h included before glxew.h
- #endif
- #ifdef GLX_H
- #error glx.h included before glxew.h
- #endif
-
- #define __glxext_h_
- #define __GLX_glx_h__
- #define GLX_H
-
- #include <X11/Xlib.h>
- #include <X11/Xutil.h>
- #include <X11/Xmd.h>
- #include <GL/glew.h>
-
- #ifdef __cplusplus
- extern "C" {
- #endif
-
- /* ---------------------------- GLX_VERSION_1_0 --------------------------- */
-
- #ifndef GLX_VERSION_1_0
- #define GLX_VERSION_1_0 1
-
- #define GLX_USE_GL 1
- #define GLX_BUFFER_SIZE 2
- #define GLX_LEVEL 3
- #define GLX_RGBA 4
- #define GLX_DOUBLEBUFFER 5
- #define GLX_STEREO 6
- #define GLX_AUX_BUFFERS 7
- #define GLX_RED_SIZE 8
- #define GLX_GREEN_SIZE 9
- #define GLX_BLUE_SIZE 10
- #define GLX_ALPHA_SIZE 11
- #define GLX_DEPTH_SIZE 12
- #define GLX_STENCIL_SIZE 13
- #define GLX_ACCUM_RED_SIZE 14
- #define GLX_ACCUM_GREEN_SIZE 15
- #define GLX_ACCUM_BLUE_SIZE 16
- #define GLX_ACCUM_ALPHA_SIZE 17
- #define GLX_BAD_SCREEN 1
- #define GLX_BAD_ATTRIBUTE 2
- #define GLX_NO_EXTENSION 3
- #define GLX_BAD_VISUAL 4
- #define GLX_BAD_CONTEXT 5
- #define GLX_BAD_VALUE 6
- #define GLX_BAD_ENUM 7
-
- typedef XID GLXDrawable;
- typedef XID GLXPixmap;
- #ifdef __sun
- typedef struct __glXContextRec *GLXContext;
- #else
- typedef struct __GLXcontextRec *GLXContext;
- #endif
-
- typedef unsigned int GLXVideoDeviceNV;
-
- extern Bool glXQueryExtension (Display *dpy, int *errorBase, int *eventBase);
- extern Bool glXQueryVersion (Display *dpy, int *major, int *minor);
- extern int glXGetConfig (Display *dpy, XVisualInfo *vis, int attrib, int *value);
- extern XVisualInfo* glXChooseVisual (Display *dpy, int screen, int *attribList);
- extern GLXPixmap glXCreateGLXPixmap (Display *dpy, XVisualInfo *vis, Pixmap pixmap);
- extern void glXDestroyGLXPixmap (Display *dpy, GLXPixmap pix);
- extern GLXContext glXCreateContext (Display *dpy, XVisualInfo *vis, GLXContext shareList, Bool direct);
- extern void glXDestroyContext (Display *dpy, GLXContext ctx);
- extern Bool glXIsDirect (Display *dpy, GLXContext ctx);
- extern void glXCopyContext (Display *dpy, GLXContext src, GLXContext dst, GLulong mask);
- extern Bool glXMakeCurrent (Display *dpy, GLXDrawable drawable, GLXContext ctx);
- extern GLXContext glXGetCurrentContext (void);
- extern GLXDrawable glXGetCurrentDrawable (void);
- extern void glXWaitGL (void);
- extern void glXWaitX (void);
- extern void glXSwapBuffers (Display *dpy, GLXDrawable drawable);
- extern void glXUseXFont (Font font, int first, int count, int listBase);
-
- #define GLXEW_VERSION_1_0 GLXEW_GET_VAR(__GLXEW_VERSION_1_0)
-
- #endif /* GLX_VERSION_1_0 */
-
- /* ---------------------------- GLX_VERSION_1_1 --------------------------- */
-
- #ifndef GLX_VERSION_1_1
- #define GLX_VERSION_1_1
-
- #define GLX_VENDOR 0x1
- #define GLX_VERSION 0x2
- #define GLX_EXTENSIONS 0x3
-
- extern const char* glXQueryExtensionsString (Display *dpy, int screen);
- extern const char* glXGetClientString (Display *dpy, int name);
- extern const char* glXQueryServerString (Display *dpy, int screen, int name);
-
- #define GLXEW_VERSION_1_1 GLXEW_GET_VAR(__GLXEW_VERSION_1_1)
-
- #endif /* GLX_VERSION_1_1 */
-
- /* ---------------------------- GLX_VERSION_1_2 ---------------------------- */
-
- #ifndef GLX_VERSION_1_2
- #define GLX_VERSION_1_2 1
-
- typedef Display* ( * PFNGLXGETCURRENTDISPLAYPROC) (void);
-
- #define glXGetCurrentDisplay GLXEW_GET_FUN(__glewXGetCurrentDisplay)
-
- #define GLXEW_VERSION_1_2 GLXEW_GET_VAR(__GLXEW_VERSION_1_2)
-
- #endif /* GLX_VERSION_1_2 */
-
- /* ---------------------------- GLX_VERSION_1_3 ---------------------------- */
-
- #ifndef GLX_VERSION_1_3
- #define GLX_VERSION_1_3 1
-
- #define GLX_RGBA_BIT 0x00000001
- #define GLX_FRONT_LEFT_BUFFER_BIT 0x00000001
- #define GLX_WINDOW_BIT 0x00000001
- #define GLX_COLOR_INDEX_BIT 0x00000002
- #define GLX_PIXMAP_BIT 0x00000002
- #define GLX_FRONT_RIGHT_BUFFER_BIT 0x00000002
- #define GLX_BACK_LEFT_BUFFER_BIT 0x00000004
- #define GLX_PBUFFER_BIT 0x00000004
- #define GLX_BACK_RIGHT_BUFFER_BIT 0x00000008
- #define GLX_AUX_BUFFERS_BIT 0x00000010
- #define GLX_CONFIG_CAVEAT 0x20
- #define GLX_DEPTH_BUFFER_BIT 0x00000020
- #define GLX_X_VISUAL_TYPE 0x22
- #define GLX_TRANSPARENT_TYPE 0x23
- #define GLX_TRANSPARENT_INDEX_VALUE 0x24
- #define GLX_TRANSPARENT_RED_VALUE 0x25
- #define GLX_TRANSPARENT_GREEN_VALUE 0x26
- #define GLX_TRANSPARENT_BLUE_VALUE 0x27
- #define GLX_TRANSPARENT_ALPHA_VALUE 0x28
- #define GLX_STENCIL_BUFFER_BIT 0x00000040
- #define GLX_ACCUM_BUFFER_BIT 0x00000080
- #define GLX_NONE 0x8000
- #define GLX_SLOW_CONFIG 0x8001
- #define GLX_TRUE_COLOR 0x8002
- #define GLX_DIRECT_COLOR 0x8003
- #define GLX_PSEUDO_COLOR 0x8004
- #define GLX_STATIC_COLOR 0x8005
- #define GLX_GRAY_SCALE 0x8006
- #define GLX_STATIC_GRAY 0x8007
- #define GLX_TRANSPARENT_RGB 0x8008
- #define GLX_TRANSPARENT_INDEX 0x8009
- #define GLX_VISUAL_ID 0x800B
- #define GLX_SCREEN 0x800C
- #define GLX_NON_CONFORMANT_CONFIG 0x800D
- #define GLX_DRAWABLE_TYPE 0x8010
- #define GLX_RENDER_TYPE 0x8011
- #define GLX_X_RENDERABLE 0x8012
- #define GLX_FBCONFIG_ID 0x8013
- #define GLX_RGBA_TYPE 0x8014
- #define GLX_COLOR_INDEX_TYPE 0x8015
- #define GLX_MAX_PBUFFER_WIDTH 0x8016
- #define GLX_MAX_PBUFFER_HEIGHT 0x8017
- #define GLX_MAX_PBUFFER_PIXELS 0x8018
- #define GLX_PRESERVED_CONTENTS 0x801B
- #define GLX_LARGEST_PBUFFER 0x801C
- #define GLX_WIDTH 0x801D
- #define GLX_HEIGHT 0x801E
- #define GLX_EVENT_MASK 0x801F
- #define GLX_DAMAGED 0x8020
- #define GLX_SAVED 0x8021
- #define GLX_WINDOW 0x8022
- #define GLX_PBUFFER 0x8023
- #define GLX_PBUFFER_HEIGHT 0x8040
- #define GLX_PBUFFER_WIDTH 0x8041
- #define GLX_PBUFFER_CLOBBER_MASK 0x08000000
- #define GLX_DONT_CARE 0xFFFFFFFF
-
- typedef XID GLXFBConfigID;
- typedef XID GLXWindow;
- typedef XID GLXPbuffer;
- typedef struct __GLXFBConfigRec *GLXFBConfig;
-
- 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;
- typedef union __GLXEvent {
- GLXPbufferClobberEvent glxpbufferclobber;
- long pad[24];
- } GLXEvent;
-
- typedef GLXFBConfig* ( * PFNGLXCHOOSEFBCONFIGPROC) (Display *dpy, int screen, const int *attrib_list, int *nelements);
- typedef GLXContext ( * PFNGLXCREATENEWCONTEXTPROC) (Display *dpy, GLXFBConfig config, int render_type, GLXContext share_list, Bool direct);
- typedef GLXPbuffer ( * PFNGLXCREATEPBUFFERPROC) (Display *dpy, GLXFBConfig config, const int *attrib_list);
- typedef GLXPixmap ( * PFNGLXCREATEPIXMAPPROC) (Display *dpy, GLXFBConfig config, Pixmap pixmap, const int *attrib_list);
- typedef GLXWindow ( * PFNGLXCREATEWINDOWPROC) (Display *dpy, GLXFBConfig config, Window win, const int *attrib_list);
- typedef void ( * PFNGLXDESTROYPBUFFERPROC) (Display *dpy, GLXPbuffer pbuf);
- typedef void ( * PFNGLXDESTROYPIXMAPPROC) (Display *dpy, GLXPixmap pixmap);
- typedef void ( * PFNGLXDESTROYWINDOWPROC) (Display *dpy, GLXWindow win);
- typedef GLXDrawable ( * PFNGLXGETCURRENTREADDRAWABLEPROC) (void);
- typedef int ( * PFNGLXGETFBCONFIGATTRIBPROC) (Display *dpy, GLXFBConfig config, int attribute, int *value);
- typedef GLXFBConfig* ( * PFNGLXGETFBCONFIGSPROC) (Display *dpy, int screen, int *nelements);
- typedef void ( * PFNGLXGETSELECTEDEVENTPROC) (Display *dpy, GLXDrawable draw, unsigned long *event_mask);
- typedef XVisualInfo* ( * PFNGLXGETVISUALFROMFBCONFIGPROC) (Display *dpy, GLXFBConfig config);
- typedef Bool ( * PFNGLXMAKECONTEXTCURRENTPROC) (Display *display, GLXDrawable draw, GLXDrawable read, GLXContext ctx);
- typedef int ( * PFNGLXQUERYCONTEXTPROC) (Display *dpy, GLXContext ctx, int attribute, int *value);
- typedef void ( * PFNGLXQUERYDRAWABLEPROC) (Display *dpy, GLXDrawable draw, int attribute, unsigned int *value);
- typedef void ( * PFNGLXSELECTEVENTPROC) (Display *dpy, GLXDrawable draw, unsigned long event_mask);
-
- #define glXChooseFBConfig GLXEW_GET_FUN(__glewXChooseFBConfig)
- #define glXCreateNewContext GLXEW_GET_FUN(__glewXCreateNewContext)
- #define glXCreatePbuffer GLXEW_GET_FUN(__glewXCreatePbuffer)
- #define glXCreatePixmap GLXEW_GET_FUN(__glewXCreatePixmap)
- #define glXCreateWindow GLXEW_GET_FUN(__glewXCreateWindow)
- #define glXDestroyPbuffer GLXEW_GET_FUN(__glewXDestroyPbuffer)
- #define glXDestroyPixmap GLXEW_GET_FUN(__glewXDestroyPixmap)
- #define glXDestroyWindow GLXEW_GET_FUN(__glewXDestroyWindow)
- #define glXGetCurrentReadDrawable GLXEW_GET_FUN(__glewXGetCurrentReadDrawable)
- #define glXGetFBConfigAttrib GLXEW_GET_FUN(__glewXGetFBConfigAttrib)
- #define glXGetFBConfigs GLXEW_GET_FUN(__glewXGetFBConfigs)
- #define glXGetSelectedEvent GLXEW_GET_FUN(__glewXGetSelectedEvent)
- #define glXGetVisualFromFBConfig GLXEW_GET_FUN(__glewXGetVisualFromFBConfig)
- #define glXMakeContextCurrent GLXEW_GET_FUN(__glewXMakeContextCurrent)
- #define glXQueryContext GLXEW_GET_FUN(__glewXQueryContext)
- #define glXQueryDrawable GLXEW_GET_FUN(__glewXQueryDrawable)
- #define glXSelectEvent GLXEW_GET_FUN(__glewXSelectEvent)
-
- #define GLXEW_VERSION_1_3 GLXEW_GET_VAR(__GLXEW_VERSION_1_3)
-
- #endif /* GLX_VERSION_1_3 */
-
- /* ---------------------------- GLX_VERSION_1_4 ---------------------------- */
-
- #ifndef GLX_VERSION_1_4
- #define GLX_VERSION_1_4 1
-
- #define GLX_SAMPLE_BUFFERS 100000
- #define GLX_SAMPLES 100001
-
- extern void ( * glXGetProcAddress (const GLubyte *procName)) (void);
-
- #define GLXEW_VERSION_1_4 GLXEW_GET_VAR(__GLXEW_VERSION_1_4)
-
- #endif /* GLX_VERSION_1_4 */
-
- /* -------------------------- GLX_3DFX_multisample ------------------------- */
-
- #ifndef GLX_3DFX_multisample
- #define GLX_3DFX_multisample 1
-
- #define GLX_SAMPLE_BUFFERS_3DFX 0x8050
- #define GLX_SAMPLES_3DFX 0x8051
-
- #define GLXEW_3DFX_multisample GLXEW_GET_VAR(__GLXEW_3DFX_multisample)
-
- #endif /* GLX_3DFX_multisample */
-
- /* ------------------------- GLX_ARB_create_context ------------------------ */
-
- #ifndef GLX_ARB_create_context
- #define GLX_ARB_create_context 1
-
- #define GLX_CONTEXT_DEBUG_BIT_ARB 0x0001
- #define GLX_CONTEXT_FORWARD_COMPATIBLE_BIT_ARB 0x0002
- #define GLX_CONTEXT_MAJOR_VERSION_ARB 0x2091
- #define GLX_CONTEXT_MINOR_VERSION_ARB 0x2092
- #define GLX_CONTEXT_FLAGS_ARB 0x2094
-
- typedef GLXContext ( * PFNGLXCREATECONTEXTATTRIBSARBPROC) (Display* dpy, GLXFBConfig config, GLXContext share_context, Bool direct, const int *attrib_list);
-
- #define glXCreateContextAttribsARB GLXEW_GET_FUN(__glewXCreateContextAttribsARB)
-
- #define GLXEW_ARB_create_context GLXEW_GET_VAR(__GLXEW_ARB_create_context)
-
- #endif /* GLX_ARB_create_context */
-
- /* ------------------------- GLX_ARB_fbconfig_float ------------------------ */
-
- #ifndef GLX_ARB_fbconfig_float
- #define GLX_ARB_fbconfig_float 1
-
- #define GLX_RGBA_FLOAT_BIT 0x00000004
- #define GLX_RGBA_FLOAT_TYPE 0x20B9
-
- #define GLXEW_ARB_fbconfig_float GLXEW_GET_VAR(__GLXEW_ARB_fbconfig_float)
-
- #endif /* GLX_ARB_fbconfig_float */
-
- /* ------------------------ GLX_ARB_framebuffer_sRGB ----------------------- */
-
- #ifndef GLX_ARB_framebuffer_sRGB
- #define GLX_ARB_framebuffer_sRGB 1
-
- #define GLX_FRAMEBUFFER_SRGB_CAPABLE_ARB 0x20B2
-
- #define GLXEW_ARB_framebuffer_sRGB GLXEW_GET_VAR(__GLXEW_ARB_framebuffer_sRGB)
-
- #endif /* GLX_ARB_framebuffer_sRGB */
-
- /* ------------------------ GLX_ARB_get_proc_address ----------------------- */
-
- #ifndef GLX_ARB_get_proc_address
- #define GLX_ARB_get_proc_address 1
-
- extern void ( * glXGetProcAddressARB (const GLubyte *procName)) (void);
-
- #define GLXEW_ARB_get_proc_address GLXEW_GET_VAR(__GLXEW_ARB_get_proc_address)
-
- #endif /* GLX_ARB_get_proc_address */
-
- /* -------------------------- GLX_ARB_multisample -------------------------- */
-
- #ifndef GLX_ARB_multisample
- #define GLX_ARB_multisample 1
-
- #define GLX_SAMPLE_BUFFERS_ARB 100000
- #define GLX_SAMPLES_ARB 100001
-
- #define GLXEW_ARB_multisample GLXEW_GET_VAR(__GLXEW_ARB_multisample)
-
- #endif /* GLX_ARB_multisample */
-
- /* ----------------------- GLX_ATI_pixel_format_float ---------------------- */
-
- #ifndef GLX_ATI_pixel_format_float
- #define GLX_ATI_pixel_format_float 1
-
- #define GLX_RGBA_FLOAT_ATI_BIT 0x00000100
-
- #define GLXEW_ATI_pixel_format_float GLXEW_GET_VAR(__GLXEW_ATI_pixel_format_float)
-
- #endif /* GLX_ATI_pixel_format_float */
-
- /* ------------------------- GLX_ATI_render_texture ------------------------ */
-
- #ifndef GLX_ATI_render_texture
- #define GLX_ATI_render_texture 1
-
- #define GLX_BIND_TO_TEXTURE_RGB_ATI 0x9800
- #define GLX_BIND_TO_TEXTURE_RGBA_ATI 0x9801
- #define GLX_TEXTURE_FORMAT_ATI 0x9802
- #define GLX_TEXTURE_TARGET_ATI 0x9803
- #define GLX_MIPMAP_TEXTURE_ATI 0x9804
- #define GLX_TEXTURE_RGB_ATI 0x9805
- #define GLX_TEXTURE_RGBA_ATI 0x9806
- #define GLX_NO_TEXTURE_ATI 0x9807
- #define GLX_TEXTURE_CUBE_MAP_ATI 0x9808
- #define GLX_TEXTURE_1D_ATI 0x9809
- #define GLX_TEXTURE_2D_ATI 0x980A
- #define GLX_MIPMAP_LEVEL_ATI 0x980B
- #define GLX_CUBE_MAP_FACE_ATI 0x980C
- #define GLX_TEXTURE_CUBE_MAP_POSITIVE_X_ATI 0x980D
- #define GLX_TEXTURE_CUBE_MAP_NEGATIVE_X_ATI 0x980E
- #define GLX_TEXTURE_CUBE_MAP_POSITIVE_Y_ATI 0x980F
- #define GLX_TEXTURE_CUBE_MAP_NEGATIVE_Y_ATI 0x9810
- #define GLX_TEXTURE_CUBE_MAP_POSITIVE_Z_ATI 0x9811
- #define GLX_TEXTURE_CUBE_MAP_NEGATIVE_Z_ATI 0x9812
- #define GLX_FRONT_LEFT_ATI 0x9813
- #define GLX_FRONT_RIGHT_ATI 0x9814
- #define GLX_BACK_LEFT_ATI 0x9815
- #define GLX_BACK_RIGHT_ATI 0x9816
- #define GLX_AUX0_ATI 0x9817
- #define GLX_AUX1_ATI 0x9818
- #define GLX_AUX2_ATI 0x9819
- #define GLX_AUX3_ATI 0x981A
- #define GLX_AUX4_ATI 0x981B
- #define GLX_AUX5_ATI 0x981C
- #define GLX_AUX6_ATI 0x981D
- #define GLX_AUX7_ATI 0x981E
- #define GLX_AUX8_ATI 0x981F
- #define GLX_AUX9_ATI 0x9820
- #define GLX_BIND_TO_TEXTURE_LUMINANCE_ATI 0x9821
- #define GLX_BIND_TO_TEXTURE_INTENSITY_ATI 0x9822
-
- typedef void ( * PFNGLXBINDTEXIMAGEATIPROC) (Display *dpy, GLXPbuffer pbuf, int buffer);
- typedef void ( * PFNGLXDRAWABLEATTRIBATIPROC) (Display *dpy, GLXDrawable draw, const int *attrib_list);
- typedef void ( * PFNGLXRELEASETEXIMAGEATIPROC) (Display *dpy, GLXPbuffer pbuf, int buffer);
-
- #define glXBindTexImageATI GLXEW_GET_FUN(__glewXBindTexImageATI)
- #define glXDrawableAttribATI GLXEW_GET_FUN(__glewXDrawableAttribATI)
- #define glXReleaseTexImageATI GLXEW_GET_FUN(__glewXReleaseTexImageATI)
-
- #define GLXEW_ATI_render_texture GLXEW_GET_VAR(__GLXEW_ATI_render_texture)
-
- #endif /* GLX_ATI_render_texture */
-
- /* --------------------- GLX_EXT_fbconfig_packed_float --------------------- */
-
- #ifndef GLX_EXT_fbconfig_packed_float
- #define GLX_EXT_fbconfig_packed_float 1
-
- #define GLX_RGBA_UNSIGNED_FLOAT_BIT_EXT 0x00000008
- #define GLX_RGBA_UNSIGNED_FLOAT_TYPE_EXT 0x20B1
-
- #define GLXEW_EXT_fbconfig_packed_float GLXEW_GET_VAR(__GLXEW_EXT_fbconfig_packed_float)
-
- #endif /* GLX_EXT_fbconfig_packed_float */
-
- /* ------------------------ GLX_EXT_framebuffer_sRGB ----------------------- */
-
- #ifndef GLX_EXT_framebuffer_sRGB
- #define GLX_EXT_framebuffer_sRGB 1
-
- #define GLX_FRAMEBUFFER_SRGB_CAPABLE_EXT 0x20B2
-
- #define GLXEW_EXT_framebuffer_sRGB GLXEW_GET_VAR(__GLXEW_EXT_framebuffer_sRGB)
-
- #endif /* GLX_EXT_framebuffer_sRGB */
-
- /* ------------------------- GLX_EXT_import_context ------------------------ */
-
- #ifndef GLX_EXT_import_context
- #define GLX_EXT_import_context 1
-
- #define GLX_SHARE_CONTEXT_EXT 0x800A
- #define GLX_VISUAL_ID_EXT 0x800B
- #define GLX_SCREEN_EXT 0x800C
-
- typedef XID GLXContextID;
-
- typedef void ( * PFNGLXFREECONTEXTEXTPROC) (Display* dpy, GLXContext context);
- typedef GLXContextID ( * PFNGLXGETCONTEXTIDEXTPROC) (const GLXContext context);
- typedef GLXContext ( * PFNGLXIMPORTCONTEXTEXTPROC) (Display* dpy, GLXContextID contextID);
- typedef int ( * PFNGLXQUERYCONTEXTINFOEXTPROC) (Display* dpy, GLXContext context, int attribute,int *value);
-
- #define glXFreeContextEXT GLXEW_GET_FUN(__glewXFreeContextEXT)
- #define glXGetContextIDEXT GLXEW_GET_FUN(__glewXGetContextIDEXT)
- #define glXImportContextEXT GLXEW_GET_FUN(__glewXImportContextEXT)
- #define glXQueryContextInfoEXT GLXEW_GET_FUN(__glewXQueryContextInfoEXT)
-
- #define GLXEW_EXT_import_context GLXEW_GET_VAR(__GLXEW_EXT_import_context)
-
- #endif /* GLX_EXT_import_context */
-
- /* -------------------------- GLX_EXT_scene_marker ------------------------- */
-
- #ifndef GLX_EXT_scene_marker
- #define GLX_EXT_scene_marker 1
-
- #define GLXEW_EXT_scene_marker GLXEW_GET_VAR(__GLXEW_EXT_scene_marker)
-
- #endif /* GLX_EXT_scene_marker */
-
- /* ---------------------- GLX_EXT_texture_from_pixmap ---------------------- */
-
- #ifndef GLX_EXT_texture_from_pixmap
- #define GLX_EXT_texture_from_pixmap 1
-
- #define GLX_TEXTURE_1D_BIT_EXT 0x00000001
- #define GLX_TEXTURE_2D_BIT_EXT 0x00000002
- #define GLX_TEXTURE_RECTANGLE_BIT_EXT 0x00000004
- #define GLX_BIND_TO_TEXTURE_RGB_EXT 0x20D0
- #define GLX_BIND_TO_TEXTURE_RGBA_EXT 0x20D1
- #define GLX_BIND_TO_MIPMAP_TEXTURE_EXT 0x20D2
- #define GLX_BIND_TO_TEXTURE_TARGETS_EXT 0x20D3
- #define GLX_Y_INVERTED_EXT 0x20D4
- #define GLX_TEXTURE_FORMAT_EXT 0x20D5
- #define GLX_TEXTURE_TARGET_EXT 0x20D6
- #define GLX_MIPMAP_TEXTURE_EXT 0x20D7
- #define GLX_TEXTURE_FORMAT_NONE_EXT 0x20D8
- #define GLX_TEXTURE_FORMAT_RGB_EXT 0x20D9
- #define GLX_TEXTURE_FORMAT_RGBA_EXT 0x20DA
- #define GLX_TEXTURE_1D_EXT 0x20DB
- #define GLX_TEXTURE_2D_EXT 0x20DC
- #define GLX_TEXTURE_RECTANGLE_EXT 0x20DD
- #define GLX_FRONT_LEFT_EXT 0x20DE
- #define GLX_FRONT_RIGHT_EXT 0x20DF
- #define GLX_BACK_LEFT_EXT 0x20E0
- #define GLX_BACK_RIGHT_EXT 0x20E1
- #define GLX_AUX0_EXT 0x20E2
- #define GLX_AUX1_EXT 0x20E3
- #define GLX_AUX2_EXT 0x20E4
- #define GLX_AUX3_EXT 0x20E5
- #define GLX_AUX4_EXT 0x20E6
- #define GLX_AUX5_EXT 0x20E7
- #define GLX_AUX6_EXT 0x20E8
- #define GLX_AUX7_EXT 0x20E9
- #define GLX_AUX8_EXT 0x20EA
- #define GLX_AUX9_EXT 0x20EB
-
- typedef void ( * PFNGLXBINDTEXIMAGEEXTPROC) (Display* display, GLXDrawable drawable, int buffer, const int *attrib_list);
- typedef void ( * PFNGLXRELEASETEXIMAGEEXTPROC) (Display* display, GLXDrawable drawable, int buffer);
-
- #define glXBindTexImageEXT GLXEW_GET_FUN(__glewXBindTexImageEXT)
- #define glXReleaseTexImageEXT GLXEW_GET_FUN(__glewXReleaseTexImageEXT)
-
- #define GLXEW_EXT_texture_from_pixmap GLXEW_GET_VAR(__GLXEW_EXT_texture_from_pixmap)
-
- #endif /* GLX_EXT_texture_from_pixmap */
-
- /* -------------------------- GLX_EXT_visual_info -------------------------- */
-
- #ifndef GLX_EXT_visual_info
- #define GLX_EXT_visual_info 1
-
- #define GLX_X_VISUAL_TYPE_EXT 0x22
- #define GLX_TRANSPARENT_TYPE_EXT 0x23
- #define GLX_TRANSPARENT_INDEX_VALUE_EXT 0x24
- #define GLX_TRANSPARENT_RED_VALUE_EXT 0x25
- #define GLX_TRANSPARENT_GREEN_VALUE_EXT 0x26
- #define GLX_TRANSPARENT_BLUE_VALUE_EXT 0x27
- #define GLX_TRANSPARENT_ALPHA_VALUE_EXT 0x28
- #define GLX_NONE_EXT 0x8000
- #define GLX_TRUE_COLOR_EXT 0x8002
- #define GLX_DIRECT_COLOR_EXT 0x8003
- #define GLX_PSEUDO_COLOR_EXT 0x8004
- #define GLX_STATIC_COLOR_EXT 0x8005
- #define GLX_GRAY_SCALE_EXT 0x8006
- #define GLX_STATIC_GRAY_EXT 0x8007
- #define GLX_TRANSPARENT_RGB_EXT 0x8008
- #define GLX_TRANSPARENT_INDEX_EXT 0x8009
-
- #define GLXEW_EXT_visual_info GLXEW_GET_VAR(__GLXEW_EXT_visual_info)
-
- #endif /* GLX_EXT_visual_info */
-
- /* ------------------------- GLX_EXT_visual_rating ------------------------- */
-
- #ifndef GLX_EXT_visual_rating
- #define GLX_EXT_visual_rating 1
-
- #define GLX_VISUAL_CAVEAT_EXT 0x20
- #define GLX_SLOW_VISUAL_EXT 0x8001
- #define GLX_NON_CONFORMANT_VISUAL_EXT 0x800D
-
- #define GLXEW_EXT_visual_rating GLXEW_GET_VAR(__GLXEW_EXT_visual_rating)
-
- #endif /* GLX_EXT_visual_rating */
-
- /* -------------------------- GLX_MESA_agp_offset -------------------------- */
-
- #ifndef GLX_MESA_agp_offset
- #define GLX_MESA_agp_offset 1
-
- typedef unsigned int ( * PFNGLXGETAGPOFFSETMESAPROC) (const void* pointer);
-
- #define glXGetAGPOffsetMESA GLXEW_GET_FUN(__glewXGetAGPOffsetMESA)
-
- #define GLXEW_MESA_agp_offset GLXEW_GET_VAR(__GLXEW_MESA_agp_offset)
-
- #endif /* GLX_MESA_agp_offset */
-
- /* ------------------------ GLX_MESA_copy_sub_buffer ----------------------- */
-
- #ifndef GLX_MESA_copy_sub_buffer
- #define GLX_MESA_copy_sub_buffer 1
-
- typedef void ( * PFNGLXCOPYSUBBUFFERMESAPROC) (Display* dpy, GLXDrawable drawable, int x, int y, int width, int height);
-
- #define glXCopySubBufferMESA GLXEW_GET_FUN(__glewXCopySubBufferMESA)
-
- #define GLXEW_MESA_copy_sub_buffer GLXEW_GET_VAR(__GLXEW_MESA_copy_sub_buffer)
-
- #endif /* GLX_MESA_copy_sub_buffer */
-
- /* ------------------------ GLX_MESA_pixmap_colormap ----------------------- */
-
- #ifndef GLX_MESA_pixmap_colormap
- #define GLX_MESA_pixmap_colormap 1
-
- typedef GLXPixmap ( * PFNGLXCREATEGLXPIXMAPMESAPROC) (Display* dpy, XVisualInfo *visual, Pixmap pixmap, Colormap cmap);
-
- #define glXCreateGLXPixmapMESA GLXEW_GET_FUN(__glewXCreateGLXPixmapMESA)
-
- #define GLXEW_MESA_pixmap_colormap GLXEW_GET_VAR(__GLXEW_MESA_pixmap_colormap)
-
- #endif /* GLX_MESA_pixmap_colormap */
-
- /* ------------------------ GLX_MESA_release_buffers ----------------------- */
-
- #ifndef GLX_MESA_release_buffers
- #define GLX_MESA_release_buffers 1
-
- typedef Bool ( * PFNGLXRELEASEBUFFERSMESAPROC) (Display* dpy, GLXDrawable d);
-
- #define glXReleaseBuffersMESA GLXEW_GET_FUN(__glewXReleaseBuffersMESA)
-
- #define GLXEW_MESA_release_buffers GLXEW_GET_VAR(__GLXEW_MESA_release_buffers)
-
- #endif /* GLX_MESA_release_buffers */
-
- /* ------------------------- GLX_MESA_set_3dfx_mode ------------------------ */
-
- #ifndef GLX_MESA_set_3dfx_mode
- #define GLX_MESA_set_3dfx_mode 1
-
- #define GLX_3DFX_WINDOW_MODE_MESA 0x1
- #define GLX_3DFX_FULLSCREEN_MODE_MESA 0x2
-
- typedef GLboolean ( * PFNGLXSET3DFXMODEMESAPROC) (GLint mode);
-
- #define glXSet3DfxModeMESA GLXEW_GET_FUN(__glewXSet3DfxModeMESA)
-
- #define GLXEW_MESA_set_3dfx_mode GLXEW_GET_VAR(__GLXEW_MESA_set_3dfx_mode)
-
- #endif /* GLX_MESA_set_3dfx_mode */
-
- /* -------------------------- GLX_NV_float_buffer -------------------------- */
-
- #ifndef GLX_NV_float_buffer
- #define GLX_NV_float_buffer 1
-
- #define GLX_FLOAT_COMPONENTS_NV 0x20B0
-
- #define GLXEW_NV_float_buffer GLXEW_GET_VAR(__GLXEW_NV_float_buffer)
-
- #endif /* GLX_NV_float_buffer */
-
- /* -------------------------- GLX_NV_present_video ------------------------- */
-
- #ifndef GLX_NV_present_video
- #define GLX_NV_present_video 1
-
- #define GLX_NUM_VIDEO_SLOTS_NV 0x20F0
-
- typedef int ( * PFNGLXBINDVIDEODEVICENVPROC) (Display* dpy, unsigned int video_slot, unsigned int video_device, const int *attrib_list);
- typedef unsigned int* ( * PFNGLXENUMERATEVIDEODEVICESNVPROC) (Display *dpy, int screen, int *nelements);
-
- #define glXBindVideoDeviceNV GLXEW_GET_FUN(__glewXBindVideoDeviceNV)
- #define glXEnumerateVideoDevicesNV GLXEW_GET_FUN(__glewXEnumerateVideoDevicesNV)
-
- #define GLXEW_NV_present_video GLXEW_GET_VAR(__GLXEW_NV_present_video)
-
- #endif /* GLX_NV_present_video */
-
- /* --------------------------- GLX_NV_swap_group --------------------------- */
-
- #ifndef GLX_NV_swap_group
- #define GLX_NV_swap_group 1
-
- typedef Bool ( * PFNGLXBINDSWAPBARRIERNVPROC) (Display* dpy, GLuint group, GLuint barrier);
- typedef Bool ( * PFNGLXJOINSWAPGROUPNVPROC) (Display* dpy, GLXDrawable drawable, GLuint group);
- typedef Bool ( * PFNGLXQUERYFRAMECOUNTNVPROC) (Display* dpy, int screen, GLuint *count);
- typedef Bool ( * PFNGLXQUERYMAXSWAPGROUPSNVPROC) (Display* dpy, int screen, GLuint *maxGroups, GLuint *maxBarriers);
- typedef Bool ( * PFNGLXQUERYSWAPGROUPNVPROC) (Display* dpy, GLXDrawable drawable, GLuint *group, GLuint *barrier);
- typedef Bool ( * PFNGLXRESETFRAMECOUNTNVPROC) (Display* dpy, int screen);
-
- #define glXBindSwapBarrierNV GLXEW_GET_FUN(__glewXBindSwapBarrierNV)
- #define glXJoinSwapGroupNV GLXEW_GET_FUN(__glewXJoinSwapGroupNV)
- #define glXQueryFrameCountNV GLXEW_GET_FUN(__glewXQueryFrameCountNV)
- #define glXQueryMaxSwapGroupsNV GLXEW_GET_FUN(__glewXQueryMaxSwapGroupsNV)
- #define glXQuerySwapGroupNV GLXEW_GET_FUN(__glewXQuerySwapGroupNV)
- #define glXResetFrameCountNV GLXEW_GET_FUN(__glewXResetFrameCountNV)
-
- #define GLXEW_NV_swap_group GLXEW_GET_VAR(__GLXEW_NV_swap_group)
-
- #endif /* GLX_NV_swap_group */
-
- /* ----------------------- GLX_NV_vertex_array_range ----------------------- */
-
- #ifndef GLX_NV_vertex_array_range
- #define GLX_NV_vertex_array_range 1
-
- typedef void * ( * PFNGLXALLOCATEMEMORYNVPROC) (GLsizei size, GLfloat readFrequency, GLfloat writeFrequency, GLfloat priority);
- typedef void ( * PFNGLXFREEMEMORYNVPROC) (void *pointer);
-
- #define glXAllocateMemoryNV GLXEW_GET_FUN(__glewXAllocateMemoryNV)
- #define glXFreeMemoryNV GLXEW_GET_FUN(__glewXFreeMemoryNV)
-
- #define GLXEW_NV_vertex_array_range GLXEW_GET_VAR(__GLXEW_NV_vertex_array_range)
-
- #endif /* GLX_NV_vertex_array_range */
-
- /* -------------------------- GLX_NV_video_output -------------------------- */
-
- #ifndef GLX_NV_video_output
- #define GLX_NV_video_output 1
-
- #define GLX_VIDEO_OUT_COLOR_NV 0x20C3
- #define GLX_VIDEO_OUT_ALPHA_NV 0x20C4
- #define GLX_VIDEO_OUT_DEPTH_NV 0x20C5
- #define GLX_VIDEO_OUT_COLOR_AND_ALPHA_NV 0x20C6
- #define GLX_VIDEO_OUT_COLOR_AND_DEPTH_NV 0x20C7
- #define GLX_VIDEO_OUT_FRAME_NV 0x20C8
- #define GLX_VIDEO_OUT_FIELD_1_NV 0x20C9
- #define GLX_VIDEO_OUT_FIELD_2_NV 0x20CA
- #define GLX_VIDEO_OUT_STACKED_FIELDS_1_2_NV 0x20CB
- #define GLX_VIDEO_OUT_STACKED_FIELDS_2_1_NV 0x20CC
-
- typedef int ( * PFNGLXBINDVIDEOIMAGENVPROC) (Display* dpy, GLXVideoDeviceNV VideoDevice, GLXPbuffer pbuf, int iVideoBuffer);
- typedef int ( * PFNGLXGETVIDEODEVICENVPROC) (Display* dpy, int screen, int numVideoDevices, GLXVideoDeviceNV *pVideoDevice);
- typedef int ( * PFNGLXGETVIDEOINFONVPROC) (Display* dpy, int screen, GLXVideoDeviceNV VideoDevice, unsigned long *pulCounterOutputPbuffer, unsigned long *pulCounterOutputVideo);
- typedef int ( * PFNGLXRELEASEVIDEODEVICENVPROC) (Display* dpy, int screen, GLXVideoDeviceNV VideoDevice);
- typedef int ( * PFNGLXRELEASEVIDEOIMAGENVPROC) (Display* dpy, GLXPbuffer pbuf);
- typedef int ( * PFNGLXSENDPBUFFERTOVIDEONVPROC) (Display* dpy, GLXPbuffer pbuf, int iBufferType, unsigned long *pulCounterPbuffer, GLboolean bBlock);
-
- #define glXBindVideoImageNV GLXEW_GET_FUN(__glewXBindVideoImageNV)
- #define glXGetVideoDeviceNV GLXEW_GET_FUN(__glewXGetVideoDeviceNV)
- #define glXGetVideoInfoNV GLXEW_GET_FUN(__glewXGetVideoInfoNV)
- #define glXReleaseVideoDeviceNV GLXEW_GET_FUN(__glewXReleaseVideoDeviceNV)
- #define glXReleaseVideoImageNV GLXEW_GET_FUN(__glewXReleaseVideoImageNV)
- #define glXSendPbufferToVideoNV GLXEW_GET_FUN(__glewXSendPbufferToVideoNV)
-
- #define GLXEW_NV_video_output GLXEW_GET_VAR(__GLXEW_NV_video_output)
-
- #endif /* GLX_NV_video_output */
-
- /* -------------------------- GLX_OML_swap_method -------------------------- */
-
- #ifndef GLX_OML_swap_method
- #define GLX_OML_swap_method 1
-
- #define GLX_SWAP_METHOD_OML 0x8060
- #define GLX_SWAP_EXCHANGE_OML 0x8061
- #define GLX_SWAP_COPY_OML 0x8062
- #define GLX_SWAP_UNDEFINED_OML 0x8063
-
- #define GLXEW_OML_swap_method GLXEW_GET_VAR(__GLXEW_OML_swap_method)
-
- #endif /* GLX_OML_swap_method */
-
- /* -------------------------- GLX_OML_sync_control ------------------------- */
-
- #if !defined(GLX_OML_sync_control) && defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 199901L)
- #include <inttypes.h>
- #define GLX_OML_sync_control 1
-
- typedef Bool ( * PFNGLXGETMSCRATEOMLPROC) (Display* dpy, GLXDrawable drawable, int32_t* numerator, int32_t* denominator);
- typedef Bool ( * PFNGLXGETSYNCVALUESOMLPROC) (Display* dpy, GLXDrawable drawable, int64_t* ust, int64_t* msc, int64_t* sbc);
- typedef int64_t ( * PFNGLXSWAPBUFFERSMSCOMLPROC) (Display* dpy, GLXDrawable drawable, int64_t target_msc, int64_t divisor, int64_t remainder);
- 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);
- typedef Bool ( * PFNGLXWAITFORSBCOMLPROC) (Display* dpy, GLXDrawable drawable, int64_t target_sbc, int64_t* ust, int64_t* msc, int64_t* sbc);
-
- #define glXGetMscRateOML GLXEW_GET_FUN(__glewXGetMscRateOML)
- #define glXGetSyncValuesOML GLXEW_GET_FUN(__glewXGetSyncValuesOML)
- #define glXSwapBuffersMscOML GLXEW_GET_FUN(__glewXSwapBuffersMscOML)
- #define glXWaitForMscOML GLXEW_GET_FUN(__glewXWaitForMscOML)
- #define glXWaitForSbcOML GLXEW_GET_FUN(__glewXWaitForSbcOML)
-
- #define GLXEW_OML_sync_control GLXEW_GET_VAR(__GLXEW_OML_sync_control)
-
- #endif /* GLX_OML_sync_control */
-
- /* ------------------------ GLX_SGIS_blended_overlay ----------------------- */
-
- #ifndef GLX_SGIS_blended_overlay
- #define GLX_SGIS_blended_overlay 1
-
- #define GLX_BLENDED_RGBA_SGIS 0x8025
-
- #define GLXEW_SGIS_blended_overlay GLXEW_GET_VAR(__GLXEW_SGIS_blended_overlay)
-
- #endif /* GLX_SGIS_blended_overlay */
-
- /* -------------------------- GLX_SGIS_color_range ------------------------- */
-
- #ifndef GLX_SGIS_color_range
- #define GLX_SGIS_color_range 1
-
- #define GLX_MIN_RED_SGIS 0
- #define GLX_MAX_GREEN_SGIS 0
- #define GLX_MIN_BLUE_SGIS 0
- #define GLX_MAX_ALPHA_SGIS 0
- #define GLX_MIN_GREEN_SGIS 0
- #define GLX_MIN_ALPHA_SGIS 0
- #define GLX_MAX_RED_SGIS 0
- #define GLX_EXTENDED_RANGE_SGIS 0
- #define GLX_MAX_BLUE_SGIS 0
-
- #define GLXEW_SGIS_color_range GLXEW_GET_VAR(__GLXEW_SGIS_color_range)
-
- #endif /* GLX_SGIS_color_range */
-
- /* -------------------------- GLX_SGIS_multisample ------------------------- */
-
- #ifndef GLX_SGIS_multisample
- #define GLX_SGIS_multisample 1
-
- #define GLX_SAMPLE_BUFFERS_SGIS 100000
- #define GLX_SAMPLES_SGIS 100001
-
- #define GLXEW_SGIS_multisample GLXEW_GET_VAR(__GLXEW_SGIS_multisample)
-
- #endif /* GLX_SGIS_multisample */
-
- /* ---------------------- GLX_SGIS_shared_multisample ---------------------- */
-
- #ifndef GLX_SGIS_shared_multisample
- #define GLX_SGIS_shared_multisample 1
-
- #define GLX_MULTISAMPLE_SUB_RECT_WIDTH_SGIS 0x8026
- #define GLX_MULTISAMPLE_SUB_RECT_HEIGHT_SGIS 0x8027
-
- #define GLXEW_SGIS_shared_multisample GLXEW_GET_VAR(__GLXEW_SGIS_shared_multisample)
-
- #endif /* GLX_SGIS_shared_multisample */
-
- /* --------------------------- GLX_SGIX_fbconfig --------------------------- */
-
- #ifndef GLX_SGIX_fbconfig
- #define GLX_SGIX_fbconfig 1
-
- #define GLX_WINDOW_BIT_SGIX 0x00000001
- #define GLX_RGBA_BIT_SGIX 0x00000001
- #define GLX_PIXMAP_BIT_SGIX 0x00000002
- #define GLX_COLOR_INDEX_BIT_SGIX 0x00000002
- #define GLX_SCREEN_EXT 0x800C
- #define GLX_DRAWABLE_TYPE_SGIX 0x8010
- #define GLX_RENDER_TYPE_SGIX 0x8011
- #define GLX_X_RENDERABLE_SGIX 0x8012
- #define GLX_FBCONFIG_ID_SGIX 0x8013
- #define GLX_RGBA_TYPE_SGIX 0x8014
- #define GLX_COLOR_INDEX_TYPE_SGIX 0x8015
-
- typedef XID GLXFBConfigIDSGIX;
- typedef struct __GLXFBConfigRec *GLXFBConfigSGIX;
-
- typedef GLXFBConfigSGIX* ( * PFNGLXCHOOSEFBCONFIGSGIXPROC) (Display *dpy, int screen, const int *attrib_list, int *nelements);
- typedef GLXContext ( * PFNGLXCREATECONTEXTWITHCONFIGSGIXPROC) (Display* dpy, GLXFBConfig config, int render_type, GLXContext share_list, Bool direct);
- typedef GLXPixmap ( * PFNGLXCREATEGLXPIXMAPWITHCONFIGSGIXPROC) (Display* dpy, GLXFBConfig config, Pixmap pixmap);
- typedef int ( * PFNGLXGETFBCONFIGATTRIBSGIXPROC) (Display* dpy, GLXFBConfigSGIX config, int attribute, int *value);
- typedef GLXFBConfigSGIX ( * PFNGLXGETFBCONFIGFROMVISUALSGIXPROC) (Display* dpy, XVisualInfo *vis);
- typedef XVisualInfo* ( * PFNGLXGETVISUALFROMFBCONFIGSGIXPROC) (Display *dpy, GLXFBConfig config);
-
- #define glXChooseFBConfigSGIX GLXEW_GET_FUN(__glewXChooseFBConfigSGIX)
- #define glXCreateContextWithConfigSGIX GLXEW_GET_FUN(__glewXCreateContextWithConfigSGIX)
- #define glXCreateGLXPixmapWithConfigSGIX GLXEW_GET_FUN(__glewXCreateGLXPixmapWithConfigSGIX)
- #define glXGetFBConfigAttribSGIX GLXEW_GET_FUN(__glewXGetFBConfigAttribSGIX)
- #define glXGetFBConfigFromVisualSGIX GLXEW_GET_FUN(__glewXGetFBConfigFromVisualSGIX)
- #define glXGetVisualFromFBConfigSGIX GLXEW_GET_FUN(__glewXGetVisualFromFBConfigSGIX)
-
- #define GLXEW_SGIX_fbconfig GLXEW_GET_VAR(__GLXEW_SGIX_fbconfig)
-
- #endif /* GLX_SGIX_fbconfig */
-
- /* --------------------------- GLX_SGIX_hyperpipe -------------------------- */
-
- #ifndef GLX_SGIX_hyperpipe
- #define GLX_SGIX_hyperpipe 1
-
- #define GLX_HYPERPIPE_DISPLAY_PIPE_SGIX 0x00000001
- #define GLX_PIPE_RECT_SGIX 0x00000001
- #define GLX_PIPE_RECT_LIMITS_SGIX 0x00000002
- #define GLX_HYPERPIPE_RENDER_PIPE_SGIX 0x00000002
- #define GLX_HYPERPIPE_STEREO_SGIX 0x00000003
- #define GLX_HYPERPIPE_PIXEL_AVERAGE_SGIX 0x00000004
- #define GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX 80
- #define GLX_BAD_HYPERPIPE_CONFIG_SGIX 91
- #define GLX_BAD_HYPERPIPE_SGIX 92
- #define GLX_HYPERPIPE_ID_SGIX 0x8030
-
- typedef struct {
- char pipeName[GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX];
- int networkId;
- } GLXHyperpipeNetworkSGIX;
- typedef struct {
- char pipeName[GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX];
- int XOrigin;
- int YOrigin;
- int maxHeight;
- int maxWidth;
- } GLXPipeRectLimits;
- typedef struct {
- char pipeName[GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX];
- int channel;
- unsigned int participationType;
- int timeSlice;
- } GLXHyperpipeConfigSGIX;
- typedef struct {
- char pipeName[GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX];
- int srcXOrigin;
- int srcYOrigin;
- int srcWidth;
- int srcHeight;
- int destXOrigin;
- int destYOrigin;
- int destWidth;
- int destHeight;
- } GLXPipeRect;
-
- typedef int ( * PFNGLXBINDHYPERPIPESGIXPROC) (Display *dpy, int hpId);
- typedef int ( * PFNGLXDESTROYHYPERPIPECONFIGSGIXPROC) (Display *dpy, int hpId);
- typedef int ( * PFNGLXHYPERPIPEATTRIBSGIXPROC) (Display *dpy, int timeSlice, int attrib, int size, void *attribList);
- typedef int ( * PFNGLXHYPERPIPECONFIGSGIXPROC) (Display *dpy, int networkId, int npipes, GLXHyperpipeConfigSGIX *cfg, int *hpId);
- typedef int ( * PFNGLXQUERYHYPERPIPEATTRIBSGIXPROC) (Display *dpy, int timeSlice, int attrib, int size, void *returnAttribList);
- typedef int ( * PFNGLXQUERYHYPERPIPEBESTATTRIBSGIXPROC) (Display *dpy, int timeSlice, int attrib, int size, void *attribList, void *returnAttribList);
- typedef GLXHyperpipeConfigSGIX * ( * PFNGLXQUERYHYPERPIPECONFIGSGIXPROC) (Display *dpy, int hpId, int *npipes);
- typedef GLXHyperpipeNetworkSGIX * ( * PFNGLXQUERYHYPERPIPENETWORKSGIXPROC) (Display *dpy, int *npipes);
-
- #define glXBindHyperpipeSGIX GLXEW_GET_FUN(__glewXBindHyperpipeSGIX)
- #define glXDestroyHyperpipeConfigSGIX GLXEW_GET_FUN(__glewXDestroyHyperpipeConfigSGIX)
- #define glXHyperpipeAttribSGIX GLXEW_GET_FUN(__glewXHyperpipeAttribSGIX)
- #define glXHyperpipeConfigSGIX GLXEW_GET_FUN(__glewXHyperpipeConfigSGIX)
- #define glXQueryHyperpipeAttribSGIX GLXEW_GET_FUN(__glewXQueryHyperpipeAttribSGIX)
- #define glXQueryHyperpipeBestAttribSGIX GLXEW_GET_FUN(__glewXQueryHyperpipeBestAttribSGIX)
- #define glXQueryHyperpipeConfigSGIX GLXEW_GET_FUN(__glewXQueryHyperpipeConfigSGIX)
- #define glXQueryHyperpipeNetworkSGIX GLXEW_GET_FUN(__glewXQueryHyperpipeNetworkSGIX)
-
- #define GLXEW_SGIX_hyperpipe GLXEW_GET_VAR(__GLXEW_SGIX_hyperpipe)
-
- #endif /* GLX_SGIX_hyperpipe */
-
- /* ---------------------------- GLX_SGIX_pbuffer --------------------------- */
-
- #ifndef GLX_SGIX_pbuffer
- #define GLX_SGIX_pbuffer 1
-
- #define GLX_FRONT_LEFT_BUFFER_BIT_SGIX 0x00000001
- #define GLX_FRONT_RIGHT_BUFFER_BIT_SGIX 0x00000002
- #define GLX_PBUFFER_BIT_SGIX 0x00000004
- #define GLX_BACK_LEFT_BUFFER_BIT_SGIX 0x00000004
- #define GLX_BACK_RIGHT_BUFFER_BIT_SGIX 0x00000008
- #define GLX_AUX_BUFFERS_BIT_SGIX 0x00000010
- #define GLX_DEPTH_BUFFER_BIT_SGIX 0x00000020
- #define GLX_STENCIL_BUFFER_BIT_SGIX 0x00000040
- #define GLX_ACCUM_BUFFER_BIT_SGIX 0x00000080
- #define GLX_SAMPLE_BUFFERS_BIT_SGIX 0x00000100
- #define GLX_MAX_PBUFFER_WIDTH_SGIX 0x8016
- #define GLX_MAX_PBUFFER_HEIGHT_SGIX 0x8017
- #define GLX_MAX_PBUFFER_PIXELS_SGIX 0x8018
- #define GLX_OPTIMAL_PBUFFER_WIDTH_SGIX 0x8019
- #define GLX_OPTIMAL_PBUFFER_HEIGHT_SGIX 0x801A
- #define GLX_PRESERVED_CONTENTS_SGIX 0x801B
- #define GLX_LARGEST_PBUFFER_SGIX 0x801C
- #define GLX_WIDTH_SGIX 0x801D
- #define GLX_HEIGHT_SGIX 0x801E
- #define GLX_EVENT_MASK_SGIX 0x801F
- #define GLX_DAMAGED_SGIX 0x8020
- #define GLX_SAVED_SGIX 0x8021
- #define GLX_WINDOW_SGIX 0x8022
- #define GLX_PBUFFER_SGIX 0x8023
- #define GLX_BUFFER_CLOBBER_MASK_SGIX 0x08000000
-
- typedef XID GLXPbufferSGIX;
- 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;
-
- typedef GLXPbuffer ( * PFNGLXCREATEGLXPBUFFERSGIXPROC) (Display* dpy, GLXFBConfig config, unsigned int width, unsigned int height, int *attrib_list);
- typedef void ( * PFNGLXDESTROYGLXPBUFFERSGIXPROC) (Display* dpy, GLXPbuffer pbuf);
- typedef void ( * PFNGLXGETSELECTEDEVENTSGIXPROC) (Display* dpy, GLXDrawable drawable, unsigned long *mask);
- typedef void ( * PFNGLXQUERYGLXPBUFFERSGIXPROC) (Display* dpy, GLXPbuffer pbuf, int attribute, unsigned int *value);
- typedef void ( * PFNGLXSELECTEVENTSGIXPROC) (Display* dpy, GLXDrawable drawable, unsigned long mask);
-
- #define glXCreateGLXPbufferSGIX GLXEW_GET_FUN(__glewXCreateGLXPbufferSGIX)
- #define glXDestroyGLXPbufferSGIX GLXEW_GET_FUN(__glewXDestroyGLXPbufferSGIX)
- #define glXGetSelectedEventSGIX GLXEW_GET_FUN(__glewXGetSelectedEventSGIX)
- #define glXQueryGLXPbufferSGIX GLXEW_GET_FUN(__glewXQueryGLXPbufferSGIX)
- #define glXSelectEventSGIX GLXEW_GET_FUN(__glewXSelectEventSGIX)
-
- #define GLXEW_SGIX_pbuffer GLXEW_GET_VAR(__GLXEW_SGIX_pbuffer)
-
- #endif /* GLX_SGIX_pbuffer */
-
- /* ------------------------- GLX_SGIX_swap_barrier ------------------------- */
-
- #ifndef GLX_SGIX_swap_barrier
- #define GLX_SGIX_swap_barrier 1
-
- typedef void ( * PFNGLXBINDSWAPBARRIERSGIXPROC) (Display *dpy, GLXDrawable drawable, int barrier);
- typedef Bool ( * PFNGLXQUERYMAXSWAPBARRIERSSGIXPROC) (Display *dpy, int screen, int *max);
-
- #define glXBindSwapBarrierSGIX GLXEW_GET_FUN(__glewXBindSwapBarrierSGIX)
- #define glXQueryMaxSwapBarriersSGIX GLXEW_GET_FUN(__glewXQueryMaxSwapBarriersSGIX)
-
- #define GLXEW_SGIX_swap_barrier GLXEW_GET_VAR(__GLXEW_SGIX_swap_barrier)
-
- #endif /* GLX_SGIX_swap_barrier */
-
- /* -------------------------- GLX_SGIX_swap_group -------------------------- */
-
- #ifndef GLX_SGIX_swap_group
- #define GLX_SGIX_swap_group 1
-
- typedef void ( * PFNGLXJOINSWAPGROUPSGIXPROC) (Display *dpy, GLXDrawable drawable, GLXDrawable member);
-
- #define glXJoinSwapGroupSGIX GLXEW_GET_FUN(__glewXJoinSwapGroupSGIX)
-
- #define GLXEW_SGIX_swap_group GLXEW_GET_VAR(__GLXEW_SGIX_swap_group)
-
- #endif /* GLX_SGIX_swap_group */
-
- /* ------------------------- GLX_SGIX_video_resize ------------------------- */
-
- #ifndef GLX_SGIX_video_resize
- #define GLX_SGIX_video_resize 1
-
- #define GLX_SYNC_FRAME_SGIX 0x00000000
- #define GLX_SYNC_SWAP_SGIX 0x00000001
-
- typedef int ( * PFNGLXBINDCHANNELTOWINDOWSGIXPROC) (Display* display, int screen, int channel, Window window);
- typedef int ( * PFNGLXCHANNELRECTSGIXPROC) (Display* display, int screen, int channel, int x, int y, int w, int h);
- typedef int ( * PFNGLXCHANNELRECTSYNCSGIXPROC) (Display* display, int screen, int channel, GLenum synctype);
- typedef int ( * PFNGLXQUERYCHANNELDELTASSGIXPROC) (Display* display, int screen, int channel, int *x, int *y, int *w, int *h);
- typedef int ( * PFNGLXQUERYCHANNELRECTSGIXPROC) (Display* display, int screen, int channel, int *dx, int *dy, int *dw, int *dh);
-
- #define glXBindChannelToWindowSGIX GLXEW_GET_FUN(__glewXBindChannelToWindowSGIX)
- #define glXChannelRectSGIX GLXEW_GET_FUN(__glewXChannelRectSGIX)
- #define glXChannelRectSyncSGIX GLXEW_GET_FUN(__glewXChannelRectSyncSGIX)
- #define glXQueryChannelDeltasSGIX GLXEW_GET_FUN(__glewXQueryChannelDeltasSGIX)
- #define glXQueryChannelRectSGIX GLXEW_GET_FUN(__glewXQueryChannelRectSGIX)
-
- #define GLXEW_SGIX_video_resize GLXEW_GET_VAR(__GLXEW_SGIX_video_resize)
-
- #endif /* GLX_SGIX_video_resize */
-
- /* ---------------------- GLX_SGIX_visual_select_group --------------------- */
-
- #ifndef GLX_SGIX_visual_select_group
- #define GLX_SGIX_visual_select_group 1
-
- #define GLX_VISUAL_SELECT_GROUP_SGIX 0x8028
-
- #define GLXEW_SGIX_visual_select_group GLXEW_GET_VAR(__GLXEW_SGIX_visual_select_group)
-
- #endif /* GLX_SGIX_visual_select_group */
-
- /* ---------------------------- GLX_SGI_cushion ---------------------------- */
-
- #ifndef GLX_SGI_cushion
- #define GLX_SGI_cushion 1
-
- typedef void ( * PFNGLXCUSHIONSGIPROC) (Display* dpy, Window window, float cushion);
-
- #define glXCushionSGI GLXEW_GET_FUN(__glewXCushionSGI)
-
- #define GLXEW_SGI_cushion GLXEW_GET_VAR(__GLXEW_SGI_cushion)
-
- #endif /* GLX_SGI_cushion */
-
- /* ----------------------- GLX_SGI_make_current_read ----------------------- */
-
- #ifndef GLX_SGI_make_current_read
- #define GLX_SGI_make_current_read 1
-
- typedef GLXDrawable ( * PFNGLXGETCURRENTREADDRAWABLESGIPROC) (void);
- typedef Bool ( * PFNGLXMAKECURRENTREADSGIPROC) (Display* dpy, GLXDrawable draw, GLXDrawable read, GLXContext ctx);
-
- #define glXGetCurrentReadDrawableSGI GLXEW_GET_FUN(__glewXGetCurrentReadDrawableSGI)
- #define glXMakeCurrentReadSGI GLXEW_GET_FUN(__glewXMakeCurrentReadSGI)
-
- #define GLXEW_SGI_make_current_read GLXEW_GET_VAR(__GLXEW_SGI_make_current_read)
-
- #endif /* GLX_SGI_make_current_read */
-
- /* -------------------------- GLX_SGI_swap_control ------------------------- */
-
- #ifndef GLX_SGI_swap_control
- #define GLX_SGI_swap_control 1
-
- typedef int ( * PFNGLXSWAPINTERVALSGIPROC) (int interval);
-
- #define glXSwapIntervalSGI GLXEW_GET_FUN(__glewXSwapIntervalSGI)
-
- #define GLXEW_SGI_swap_control GLXEW_GET_VAR(__GLXEW_SGI_swap_control)
-
- #endif /* GLX_SGI_swap_control */
-
- /* --------------------------- GLX_SGI_video_sync -------------------------- */
-
- #ifndef GLX_SGI_video_sync
- #define GLX_SGI_video_sync 1
-
- typedef int ( * PFNGLXGETVIDEOSYNCSGIPROC) (uint* count);
- typedef int ( * PFNGLXWAITVIDEOSYNCSGIPROC) (int divisor, int remainder, unsigned int* count);
-
- #define glXGetVideoSyncSGI GLXEW_GET_FUN(__glewXGetVideoSyncSGI)
- #define glXWaitVideoSyncSGI GLXEW_GET_FUN(__glewXWaitVideoSyncSGI)
-
- #define GLXEW_SGI_video_sync GLXEW_GET_VAR(__GLXEW_SGI_video_sync)
-
- #endif /* GLX_SGI_video_sync */
-
- /* --------------------- GLX_SUN_get_transparent_index --------------------- */
-
- #ifndef GLX_SUN_get_transparent_index
- #define GLX_SUN_get_transparent_index 1
-
- typedef Status ( * PFNGLXGETTRANSPARENTINDEXSUNPROC) (Display* dpy, Window overlay, Window underlay, unsigned long *pTransparentIndex);
-
- #define glXGetTransparentIndexSUN GLXEW_GET_FUN(__glewXGetTransparentIndexSUN)
-
- #define GLXEW_SUN_get_transparent_index GLXEW_GET_VAR(__GLXEW_SUN_get_transparent_index)
-
- #endif /* GLX_SUN_get_transparent_index */
-
- /* -------------------------- GLX_SUN_video_resize ------------------------- */
-
- #ifndef GLX_SUN_video_resize
- #define GLX_SUN_video_resize 1
-
- #define GLX_VIDEO_RESIZE_SUN 0x8171
- #define GL_VIDEO_RESIZE_COMPENSATION_SUN 0x85CD
-
- typedef int ( * PFNGLXGETVIDEORESIZESUNPROC) (Display* display, GLXDrawable window, float* factor);
- typedef int ( * PFNGLXVIDEORESIZESUNPROC) (Display* display, GLXDrawable window, float factor);
-
- #define glXGetVideoResizeSUN GLXEW_GET_FUN(__glewXGetVideoResizeSUN)
- #define glXVideoResizeSUN GLXEW_GET_FUN(__glewXVideoResizeSUN)
-
- #define GLXEW_SUN_video_resize GLXEW_GET_VAR(__GLXEW_SUN_video_resize)
-
- #endif /* GLX_SUN_video_resize */
-
- /* ------------------------------------------------------------------------- */
-
- #ifdef GLEW_MX
- #define GLXEW_EXPORT
- #else
- #define GLXEW_EXPORT extern
- #endif /* GLEW_MX */
-
- extern PFNGLXGETCURRENTDISPLAYPROC __glewXGetCurrentDisplay;
-
- extern PFNGLXCHOOSEFBCONFIGPROC __glewXChooseFBConfig;
- extern PFNGLXCREATENEWCONTEXTPROC __glewXCreateNewContext;
- extern PFNGLXCREATEPBUFFERPROC __glewXCreatePbuffer;
- extern PFNGLXCREATEPIXMAPPROC __glewXCreatePixmap;
- extern PFNGLXCREATEWINDOWPROC __glewXCreateWindow;
- extern PFNGLXDESTROYPBUFFERPROC __glewXDestroyPbuffer;
- extern PFNGLXDESTROYPIXMAPPROC __glewXDestroyPixmap;
- extern PFNGLXDESTROYWINDOWPROC __glewXDestroyWindow;
- extern PFNGLXGETCURRENTREADDRAWABLEPROC __glewXGetCurrentReadDrawable;
- extern PFNGLXGETFBCONFIGATTRIBPROC __glewXGetFBConfigAttrib;
- extern PFNGLXGETFBCONFIGSPROC __glewXGetFBConfigs;
- extern PFNGLXGETSELECTEDEVENTPROC __glewXGetSelectedEvent;
- extern PFNGLXGETVISUALFROMFBCONFIGPROC __glewXGetVisualFromFBConfig;
- extern PFNGLXMAKECONTEXTCURRENTPROC __glewXMakeContextCurrent;
- extern PFNGLXQUERYCONTEXTPROC __glewXQueryContext;
- extern PFNGLXQUERYDRAWABLEPROC __glewXQueryDrawable;
- extern PFNGLXSELECTEVENTPROC __glewXSelectEvent;
-
- extern PFNGLXCREATECONTEXTATTRIBSARBPROC __glewXCreateContextAttribsARB;
-
- extern PFNGLXBINDTEXIMAGEATIPROC __glewXBindTexImageATI;
- extern PFNGLXDRAWABLEATTRIBATIPROC __glewXDrawableAttribATI;
- extern PFNGLXRELEASETEXIMAGEATIPROC __glewXReleaseTexImageATI;
-
- extern PFNGLXFREECONTEXTEXTPROC __glewXFreeContextEXT;
- extern PFNGLXGETCONTEXTIDEXTPROC __glewXGetContextIDEXT;
- extern PFNGLXIMPORTCONTEXTEXTPROC __glewXImportContextEXT;
- extern PFNGLXQUERYCONTEXTINFOEXTPROC __glewXQueryContextInfoEXT;
-
- extern PFNGLXBINDTEXIMAGEEXTPROC __glewXBindTexImageEXT;
- extern PFNGLXRELEASETEXIMAGEEXTPROC __glewXReleaseTexImageEXT;
-
- extern PFNGLXGETAGPOFFSETMESAPROC __glewXGetAGPOffsetMESA;
-
- extern PFNGLXCOPYSUBBUFFERMESAPROC __glewXCopySubBufferMESA;
-
- extern PFNGLXCREATEGLXPIXMAPMESAPROC __glewXCreateGLXPixmapMESA;
-
- extern PFNGLXRELEASEBUFFERSMESAPROC __glewXReleaseBuffersMESA;
-
- extern PFNGLXSET3DFXMODEMESAPROC __glewXSet3DfxModeMESA;
-
- extern PFNGLXBINDVIDEODEVICENVPROC __glewXBindVideoDeviceNV;
- extern PFNGLXENUMERATEVIDEODEVICESNVPROC __glewXEnumerateVideoDevicesNV;
-
- extern PFNGLXBINDSWAPBARRIERNVPROC __glewXBindSwapBarrierNV;
- extern PFNGLXJOINSWAPGROUPNVPROC __glewXJoinSwapGroupNV;
- extern PFNGLXQUERYFRAMECOUNTNVPROC __glewXQueryFrameCountNV;
- extern PFNGLXQUERYMAXSWAPGROUPSNVPROC __glewXQueryMaxSwapGroupsNV;
- extern PFNGLXQUERYSWAPGROUPNVPROC __glewXQuerySwapGroupNV;
- extern PFNGLXRESETFRAMECOUNTNVPROC __glewXResetFrameCountNV;
-
- extern PFNGLXALLOCATEMEMORYNVPROC __glewXAllocateMemoryNV;
- extern PFNGLXFREEMEMORYNVPROC __glewXFreeMemoryNV;
-
- extern PFNGLXBINDVIDEOIMAGENVPROC __glewXBindVideoImageNV;
- extern PFNGLXGETVIDEODEVICENVPROC __glewXGetVideoDeviceNV;
- extern PFNGLXGETVIDEOINFONVPROC __glewXGetVideoInfoNV;
- extern PFNGLXRELEASEVIDEODEVICENVPROC __glewXReleaseVideoDeviceNV;
- extern PFNGLXRELEASEVIDEOIMAGENVPROC __glewXReleaseVideoImageNV;
- extern PFNGLXSENDPBUFFERTOVIDEONVPROC __glewXSendPbufferToVideoNV;
-
- #ifdef GLX_OML_sync_control
- extern PFNGLXGETMSCRATEOMLPROC __glewXGetMscRateOML;
- extern PFNGLXGETSYNCVALUESOMLPROC __glewXGetSyncValuesOML;
- extern PFNGLXSWAPBUFFERSMSCOMLPROC __glewXSwapBuffersMscOML;
- extern PFNGLXWAITFORMSCOMLPROC __glewXWaitForMscOML;
- extern PFNGLXWAITFORSBCOMLPROC __glewXWaitForSbcOML;
- #endif
-
- extern PFNGLXCHOOSEFBCONFIGSGIXPROC __glewXChooseFBConfigSGIX;
- extern PFNGLXCREATECONTEXTWITHCONFIGSGIXPROC __glewXCreateContextWithConfigSGIX;
- extern PFNGLXCREATEGLXPIXMAPWITHCONFIGSGIXPROC __glewXCreateGLXPixmapWithConfigSGIX;
- extern PFNGLXGETFBCONFIGATTRIBSGIXPROC __glewXGetFBConfigAttribSGIX;
- extern PFNGLXGETFBCONFIGFROMVISUALSGIXPROC __glewXGetFBConfigFromVisualSGIX;
- extern PFNGLXGETVISUALFROMFBCONFIGSGIXPROC __glewXGetVisualFromFBConfigSGIX;
-
- extern PFNGLXBINDHYPERPIPESGIXPROC __glewXBindHyperpipeSGIX;
- extern PFNGLXDESTROYHYPERPIPECONFIGSGIXPROC __glewXDestroyHyperpipeConfigSGIX;
- extern PFNGLXHYPERPIPEATTRIBSGIXPROC __glewXHyperpipeAttribSGIX;
- extern PFNGLXHYPERPIPECONFIGSGIXPROC __glewXHyperpipeConfigSGIX;
- extern PFNGLXQUERYHYPERPIPEATTRIBSGIXPROC __glewXQueryHyperpipeAttribSGIX;
- extern PFNGLXQUERYHYPERPIPEBESTATTRIBSGIXPROC __glewXQueryHyperpipeBestAttribSGIX;
- extern PFNGLXQUERYHYPERPIPECONFIGSGIXPROC __glewXQueryHyperpipeConfigSGIX;
- extern PFNGLXQUERYHYPERPIPENETWORKSGIXPROC __glewXQueryHyperpipeNetworkSGIX;
-
- extern PFNGLXCREATEGLXPBUFFERSGIXPROC __glewXCreateGLXPbufferSGIX;
- extern PFNGLXDESTROYGLXPBUFFERSGIXPROC __glewXDestroyGLXPbufferSGIX;
- extern PFNGLXGETSELECTEDEVENTSGIXPROC __glewXGetSelectedEventSGIX;
- extern PFNGLXQUERYGLXPBUFFERSGIXPROC __glewXQueryGLXPbufferSGIX;
- extern PFNGLXSELECTEVENTSGIXPROC __glewXSelectEventSGIX;
-
- extern PFNGLXBINDSWAPBARRIERSGIXPROC __glewXBindSwapBarrierSGIX;
- extern PFNGLXQUERYMAXSWAPBARRIERSSGIXPROC __glewXQueryMaxSwapBarriersSGIX;
-
- extern PFNGLXJOINSWAPGROUPSGIXPROC __glewXJoinSwapGroupSGIX;
-
- extern PFNGLXBINDCHANNELTOWINDOWSGIXPROC __glewXBindChannelToWindowSGIX;
- extern PFNGLXCHANNELRECTSGIXPROC __glewXChannelRectSGIX;
- extern PFNGLXCHANNELRECTSYNCSGIXPROC __glewXChannelRectSyncSGIX;
- extern PFNGLXQUERYCHANNELDELTASSGIXPROC __glewXQueryChannelDeltasSGIX;
- extern PFNGLXQUERYCHANNELRECTSGIXPROC __glewXQueryChannelRectSGIX;
-
- extern PFNGLXCUSHIONSGIPROC __glewXCushionSGI;
-
- extern PFNGLXGETCURRENTREADDRAWABLESGIPROC __glewXGetCurrentReadDrawableSGI;
- extern PFNGLXMAKECURRENTREADSGIPROC __glewXMakeCurrentReadSGI;
-
- extern PFNGLXSWAPINTERVALSGIPROC __glewXSwapIntervalSGI;
-
- extern PFNGLXGETVIDEOSYNCSGIPROC __glewXGetVideoSyncSGI;
- extern PFNGLXWAITVIDEOSYNCSGIPROC __glewXWaitVideoSyncSGI;
-
- extern PFNGLXGETTRANSPARENTINDEXSUNPROC __glewXGetTransparentIndexSUN;
-
- extern PFNGLXGETVIDEORESIZESUNPROC __glewXGetVideoResizeSUN;
- extern PFNGLXVIDEORESIZESUNPROC __glewXVideoResizeSUN;
-
- #if defined(GLEW_MX)
- struct GLXEWContextStruct
- {
- #endif /* GLEW_MX */
-
- GLXEW_EXPORT GLboolean __GLXEW_VERSION_1_0;
- GLXEW_EXPORT GLboolean __GLXEW_VERSION_1_1;
- GLXEW_EXPORT GLboolean __GLXEW_VERSION_1_2;
- GLXEW_EXPORT GLboolean __GLXEW_VERSION_1_3;
- GLXEW_EXPORT GLboolean __GLXEW_VERSION_1_4;
- GLXEW_EXPORT GLboolean __GLXEW_3DFX_multisample;
- GLXEW_EXPORT GLboolean __GLXEW_ARB_create_context;
- GLXEW_EXPORT GLboolean __GLXEW_ARB_fbconfig_float;
- GLXEW_EXPORT GLboolean __GLXEW_ARB_framebuffer_sRGB;
- GLXEW_EXPORT GLboolean __GLXEW_ARB_get_proc_address;
- GLXEW_EXPORT GLboolean __GLXEW_ARB_multisample;
- GLXEW_EXPORT GLboolean __GLXEW_ATI_pixel_format_float;
- GLXEW_EXPORT GLboolean __GLXEW_ATI_render_texture;
- GLXEW_EXPORT GLboolean __GLXEW_EXT_fbconfig_packed_float;
- GLXEW_EXPORT GLboolean __GLXEW_EXT_framebuffer_sRGB;
- GLXEW_EXPORT GLboolean __GLXEW_EXT_import_context;
- GLXEW_EXPORT GLboolean __GLXEW_EXT_scene_marker;
- GLXEW_EXPORT GLboolean __GLXEW_EXT_texture_from_pixmap;
- GLXEW_EXPORT GLboolean __GLXEW_EXT_visual_info;
- GLXEW_EXPORT GLboolean __GLXEW_EXT_visual_rating;
- GLXEW_EXPORT GLboolean __GLXEW_MESA_agp_offset;
- GLXEW_EXPORT GLboolean __GLXEW_MESA_copy_sub_buffer;
- GLXEW_EXPORT GLboolean __GLXEW_MESA_pixmap_colormap;
- GLXEW_EXPORT GLboolean __GLXEW_MESA_release_buffers;
- GLXEW_EXPORT GLboolean __GLXEW_MESA_set_3dfx_mode;
- GLXEW_EXPORT GLboolean __GLXEW_NV_float_buffer;
- GLXEW_EXPORT GLboolean __GLXEW_NV_present_video;
- GLXEW_EXPORT GLboolean __GLXEW_NV_swap_group;
- GLXEW_EXPORT GLboolean __GLXEW_NV_vertex_array_range;
- GLXEW_EXPORT GLboolean __GLXEW_NV_video_output;
- GLXEW_EXPORT GLboolean __GLXEW_OML_swap_method;
- GLXEW_EXPORT GLboolean __GLXEW_OML_sync_control;
- GLXEW_EXPORT GLboolean __GLXEW_SGIS_blended_overlay;
- GLXEW_EXPORT GLboolean __GLXEW_SGIS_color_range;
- GLXEW_EXPORT GLboolean __GLXEW_SGIS_multisample;
- GLXEW_EXPORT GLboolean __GLXEW_SGIS_shared_multisample;
- GLXEW_EXPORT GLboolean __GLXEW_SGIX_fbconfig;
- GLXEW_EXPORT GLboolean __GLXEW_SGIX_hyperpipe;
- GLXEW_EXPORT GLboolean __GLXEW_SGIX_pbuffer;
- GLXEW_EXPORT GLboolean __GLXEW_SGIX_swap_barrier;
- GLXEW_EXPORT GLboolean __GLXEW_SGIX_swap_group;
- GLXEW_EXPORT GLboolean __GLXEW_SGIX_video_resize;
- GLXEW_EXPORT GLboolean __GLXEW_SGIX_visual_select_group;
- GLXEW_EXPORT GLboolean __GLXEW_SGI_cushion;
- GLXEW_EXPORT GLboolean __GLXEW_SGI_make_current_read;
- GLXEW_EXPORT GLboolean __GLXEW_SGI_swap_control;
- GLXEW_EXPORT GLboolean __GLXEW_SGI_video_sync;
- GLXEW_EXPORT GLboolean __GLXEW_SUN_get_transparent_index;
- GLXEW_EXPORT GLboolean __GLXEW_SUN_video_resize;
-
- #ifdef GLEW_MX
- }; /* GLXEWContextStruct */
- #endif /* GLEW_MX */
-
- /* ------------------------------------------------------------------------ */
-
- #ifdef GLEW_MX
-
- typedef struct GLXEWContextStruct GLXEWContext;
- extern GLenum glxewContextInit (GLXEWContext* ctx);
- extern GLboolean glxewContextIsSupported (GLXEWContext* ctx, const char* name);
-
- #define glxewInit() glxewContextInit(glxewGetContext())
- #define glxewIsSupported(x) glxewContextIsSupported(glxewGetContext(), x)
-
- #define GLXEW_GET_VAR(x) (*(const GLboolean*)&(glxewGetContext()->x))
- #define GLXEW_GET_FUN(x) x
-
- #else /* GLEW_MX */
-
- #define GLXEW_GET_VAR(x) (*(const GLboolean*)&x)
- #define GLXEW_GET_FUN(x) x
-
- extern GLboolean glxewIsSupported (const char* name);
-
- #endif /* GLEW_MX */
-
- extern GLboolean glxewGetExtension (const char* name);
-
- #ifdef __cplusplus
- }
- #endif
-
- #endif /* __glxew_h__ */
|