| |
| /* |
| * Mesa 3-D graphics library |
| * Version: 3.5 |
| * |
| * Copyright (C) 1999-2001 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. |
| */ |
| |
| |
| #ifndef REALGLX_H |
| #define REALGLX_H |
| |
| |
| extern struct _glxapi_table * |
| _real_GetGLXDispatchTable(void); |
| |
| |
| /* |
| * Basically just need these to prevent compiler warnings. |
| */ |
| |
| |
| extern XVisualInfo * |
| _real_glXChooseVisual( Display *dpy, int screen, int *list ); |
| |
| extern GLXContext |
| _real_glXCreateContext( Display *dpy, XVisualInfo *visinfo, |
| GLXContext share_list, Bool direct ); |
| |
| extern GLXPixmap |
| _real_glXCreateGLXPixmap( Display *dpy, XVisualInfo *visinfo, Pixmap pixmap ); |
| |
| extern GLXPixmap |
| _real_glXCreateGLXPixmapMESA( Display *dpy, XVisualInfo *visinfo, |
| Pixmap pixmap, Colormap cmap ); |
| |
| extern void |
| _real_glXDestroyGLXPixmap( Display *dpy, GLXPixmap pixmap ); |
| |
| extern void |
| _real_glXCopyContext( Display *dpy, GLXContext src, GLXContext dst, |
| unsigned long mask ); |
| |
| extern Bool |
| _real_glXMakeCurrent( Display *dpy, GLXDrawable drawable, GLXContext ctx ); |
| |
| extern Bool |
| _real_glXQueryExtension( Display *dpy, int *errorb, int *event ); |
| |
| extern void |
| _real_glXDestroyContext( Display *dpy, GLXContext ctx ); |
| |
| extern Bool |
| _real_glXIsDirect( Display *dpy, GLXContext ctx ); |
| |
| extern void |
| _real_glXSwapBuffers( Display *dpy, GLXDrawable drawable ); |
| |
| extern void |
| _real_glXUseXFont( Font font, int first, int count, int listbase ); |
| |
| extern Bool |
| _real_glXQueryVersion( Display *dpy, int *maj, int *min ); |
| |
| extern int |
| _real_glXGetConfig( Display *dpy, XVisualInfo *visinfo, |
| int attrib, int *value ); |
| |
| extern void |
| _real_glXWaitGL( void ); |
| |
| |
| extern void |
| _real_glXWaitX( void ); |
| |
| /* GLX 1.1 and later */ |
| extern const char * |
| _real_glXQueryExtensionsString( Display *dpy, int screen ); |
| |
| /* GLX 1.1 and later */ |
| extern const char * |
| _real_glXQueryServerString( Display *dpy, int screen, int name ); |
| |
| /* GLX 1.1 and later */ |
| extern const char * |
| _real_glXGetClientString( Display *dpy, int name ); |
| |
| |
| /* |
| * GLX 1.3 and later |
| */ |
| |
| extern GLXFBConfig * |
| _real_glXChooseFBConfig( Display *dpy, int screen, |
| const int *attribList, int *nitems ); |
| |
| extern int |
| _real_glXGetFBConfigAttrib( Display *dpy, GLXFBConfig config, |
| int attribute, int *value ); |
| |
| extern GLXFBConfig * |
| _real_glXGetFBConfigs( Display *dpy, int screen, int *nelements ); |
| |
| extern XVisualInfo * |
| _real_glXGetVisualFromFBConfig( Display *dpy, GLXFBConfig config ); |
| |
| extern GLXWindow |
| _real_glXCreateWindow( Display *dpy, GLXFBConfig config, Window win, |
| const int *attribList ); |
| |
| extern void |
| _real_glXDestroyWindow( Display *dpy, GLXWindow window ); |
| |
| extern GLXPixmap |
| _real_glXCreatePixmap( Display *dpy, GLXFBConfig config, Pixmap pixmap, |
| const int *attribList ); |
| |
| extern void |
| _real_glXDestroyPixmap( Display *dpy, GLXPixmap pixmap ); |
| |
| extern GLXPbuffer |
| _real_glXCreatePbuffer( Display *dpy, GLXFBConfig config, |
| const int *attribList ); |
| |
| extern void |
| _real_glXDestroyPbuffer( Display *dpy, GLXPbuffer pbuf ); |
| |
| extern void |
| _real_glXQueryDrawable( Display *dpy, GLXDrawable draw, int attribute, |
| unsigned int *value ); |
| |
| extern GLXContext |
| _real_glXCreateNewContext( Display *dpy, GLXFBConfig config, |
| int renderType, GLXContext shareList, Bool direct ); |
| |
| |
| extern Bool |
| _real_glXMakeContextCurrent( Display *dpy, GLXDrawable draw, |
| GLXDrawable read, GLXContext ctx ); |
| |
| extern int |
| _real_glXQueryContext( Display *dpy, GLXContext ctx, int attribute, int *value ); |
| |
| extern void |
| _real_glXSelectEvent( Display *dpy, GLXDrawable drawable, unsigned long mask ); |
| |
| extern void |
| _real_glXGetSelectedEvent( Display *dpy, GLXDrawable drawable, |
| unsigned long *mask ); |
| |
| #ifdef GLX_SGI_swap_control |
| extern int |
| _real_glXSwapIntervalSGI(int interval); |
| #endif |
| |
| |
| #ifdef GLX_SGI_video_sync |
| extern int |
| _real_glXGetVideoSyncSGI(unsigned int *count); |
| |
| extern int |
| _real_glXWaitVideoSyncSGI(int divisor, int remainder, unsigned int *count); |
| #endif |
| |
| |
| #ifdef GLX_SGI_make_current_read |
| extern Bool |
| _real_glXMakeCurrentReadSGI(Display *dpy, GLXDrawable draw, GLXDrawable read, GLXContext ctx); |
| |
| extern GLXDrawable |
| _real_glXGetCurrentReadDrawableSGI(void); |
| #endif |
| |
| #if defined(_VL_H) && defined(GLX_SGIX_video_source) |
| extern GLXVideoSourceSGIX |
| _real_glXCreateGLXVideoSourceSGIX(Display *dpy, int screen, VLServer server, VLPath path, int nodeClass, VLNode drainNode); |
| |
| extern void |
| _real_glXDestroyGLXVideoSourceSGIX(Display *dpy, GLXVideoSourceSGIX src); |
| #endif |
| |
| #ifdef GLX_EXT_import_context |
| extern void |
| _real_glXFreeContextEXT(Display *dpy, GLXContext context); |
| |
| extern GLXContextID |
| _real_glXGetContextIDEXT(const GLXContext context); |
| |
| extern Display * |
| _real_glXGetCurrentDisplayEXT(void); |
| |
| extern GLXContext |
| _real_glXImportContextEXT(Display *dpy, GLXContextID contextID); |
| |
| extern int |
| _real_glXQueryContextInfoEXT(Display *dpy, GLXContext context, int attribute, int *value); |
| #endif |
| |
| #ifdef GLX_SGIX_fbconfig |
| extern int |
| _real_glXGetFBConfigAttribSGIX(Display *dpy, GLXFBConfigSGIX config, int attribute, int *value); |
| |
| extern GLXFBConfigSGIX * |
| _real_glXChooseFBConfigSGIX(Display *dpy, int screen, int *attrib_list, int *nelements); |
| |
| extern GLXPixmap |
| _real_glXCreateGLXPixmapWithConfigSGIX(Display *dpy, GLXFBConfigSGIX config, Pixmap pixmap); |
| |
| extern GLXContext |
| _real_glXCreateContextWithConfigSGIX(Display *dpy, GLXFBConfigSGIX config, int render_type, GLXContext share_list, Bool direct); |
| |
| extern XVisualInfo * |
| _real_glXGetVisualFromFBConfigSGIX(Display *dpy, GLXFBConfigSGIX config); |
| |
| extern GLXFBConfigSGIX |
| _real_glXGetFBConfigFromVisualSGIX(Display *dpy, XVisualInfo *vis); |
| #endif |
| |
| #ifdef GLX_SGIX_pbuffer |
| extern GLXPbufferSGIX |
| _real_glXCreateGLXPbufferSGIX(Display *dpy, GLXFBConfigSGIX config, unsigned int width, unsigned int height, int *attrib_list); |
| |
| extern void |
| _real_glXDestroyGLXPbufferSGIX(Display *dpy, GLXPbufferSGIX pbuf); |
| |
| extern int |
| _real_glXQueryGLXPbufferSGIX(Display *dpy, GLXPbufferSGIX pbuf, int attribute, unsigned int *value); |
| |
| extern void |
| _real_glXSelectEventSGIX(Display *dpy, GLXDrawable drawable, unsigned long mask); |
| |
| extern void |
| _real_glXGetSelectedEventSGIX(Display *dpy, GLXDrawable drawable, unsigned long *mask); |
| #endif |
| |
| #ifdef GLX_SGI_cushion |
| extern void |
| _real_glXCushionSGI(Display *dpy, Window win, float cushion); |
| #endif |
| |
| #ifdef GLX_SGIX_video_resize |
| extern int |
| _real_glXBindChannelToWindowSGIX(Display *dpy, int screen, int channel , Window window); |
| |
| extern int |
| _real_glXChannelRectSGIX(Display *dpy, int screen, int channel, int x, int y, int w, int h); |
| |
| extern int |
| _real_glXQueryChannelRectSGIX(Display *dpy, int screen, int channel, int *x, int *y, int *w, int *h); |
| |
| extern int |
| _real_glXQueryChannelDeltasSGIX(Display *dpy, int screen, int channel, int *dx, int *dy, int *dw, int *dh); |
| |
| extern int |
| _real_glXChannelRectSyncSGIX(Display *dpy, int screen, int channel, GLenum synctype); |
| #endif |
| |
| #if defined(_DM_BUFFER_H_) && defined(GLX_SGIX_dmbuffer) |
| extern Bool |
| _real_glXAssociateDMPbufferSGIX(Display *dpy, GLXPbufferSGIX pbuffer, DMparams *params, DMbuffer dmbuffer); |
| #endif |
| |
| #ifdef GLX_SGIX_swap_group |
| extern void |
| _real_glXJoinSwapGroupSGIX(Display *dpy, GLXDrawable drawable, GLXDrawable member); |
| #endif |
| |
| #ifdef GLX_SGIX_swap_barrier |
| extern void |
| _real_glXBindSwapBarrierSGIX(Display *dpy, GLXDrawable drawable, int barrier); |
| |
| extern Bool |
| _real_glXQueryMaxSwapBarriersSGIX(Display *dpy, int screen, int *max); |
| #endif |
| |
| #ifdef GLX_SUN_get_transparent_index |
| extern Status |
| _real_glXGetTransparentIndexSUN(Display *dpy, Window overlay, Window underlay, long *pTransparent); |
| #endif |
| |
| #ifdef GLX_MESA_release_buffers |
| extern Bool |
| _real_glXReleaseBuffersMESA( Display *dpy, GLXDrawable d ); |
| #endif |
| |
| #ifdef GLX_MESA_set_3dfx_mode |
| extern Bool |
| _real_glXSet3DfxModeMESA( int mode ); |
| #endif |
| |
| #ifdef GLX_NV_vertex_array_range |
| extern void * |
| _real_glXAllocateMemoryNV(GLsizei size, GLfloat readfreq, GLfloat writefreq, GLfloat priority); |
| extern void |
| _real_glXFreeMemoryNV(GLvoid *pointer); |
| #endif |
| |
| #ifdef GLX_MESA_agp_offset |
| extern GLuint |
| _real_glXGetAGPOffsetMESA(const GLvoid *pointer); |
| #endif |
| |
| #ifdef GLX_MESA_copy_sub_buffer |
| extern void |
| _real_glXCopySubBufferMESA( Display *dpy, GLXDrawable drawable, |
| int x, int y, int width, int height ); |
| #endif |
| |
| #endif /* REALGLX_H */ |