3 * Mesa 3-D graphics library
6 * Copyright (C) 1999-2001 Brian Paul All Rights Reserved.
8 * Permission is hereby granted, free of charge, to any person obtaining a
9 * copy of this software and associated documentation files (the "Software"),
10 * to deal in the Software without restriction, including without limitation
11 * the rights to use, copy, modify, merge, publish, distribute, sublicense,
12 * and/or sell copies of the Software, and to permit persons to whom the
13 * Software is furnished to do so, subject to the following conditions:
15 * The above copyright notice and this permission notice shall be included
16 * in all copies or substantial portions of the Software.
18 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
19 * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
20 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
21 * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
22 * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
23 * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
31 extern struct _glxapi_table *
32 _real_GetGLXDispatchTable(void);
36 * Basically just need these to prevent compiler warnings.
41 _real_glXChooseVisual( Display *dpy, int screen, int *list );
44 _real_glXCreateContext( Display *dpy, XVisualInfo *visinfo,
45 GLXContext share_list, Bool direct );
48 _real_glXCreateGLXPixmap( Display *dpy, XVisualInfo *visinfo, Pixmap pixmap );
51 _real_glXCreateGLXPixmapMESA( Display *dpy, XVisualInfo *visinfo,
52 Pixmap pixmap, Colormap cmap );
55 _real_glXDestroyGLXPixmap( Display *dpy, GLXPixmap pixmap );
58 _real_glXCopyContext( Display *dpy, GLXContext src, GLXContext dst,
62 _real_glXMakeCurrent( Display *dpy, GLXDrawable drawable, GLXContext ctx );
65 _real_glXQueryExtension( Display *dpy, int *errorb, int *event );
68 _real_glXDestroyContext( Display *dpy, GLXContext ctx );
71 _real_glXIsDirect( Display *dpy, GLXContext ctx );
74 _real_glXSwapBuffers( Display *dpy, GLXDrawable drawable );
77 _real_glXUseXFont( Font font, int first, int count, int listbase );
80 _real_glXQueryVersion( Display *dpy, int *maj, int *min );
83 _real_glXGetConfig( Display *dpy, XVisualInfo *visinfo,
84 int attrib, int *value );
87 _real_glXWaitGL( void );
91 _real_glXWaitX( void );
93 /* GLX 1.1 and later */
95 _real_glXQueryExtensionsString( Display *dpy, int screen );
97 /* GLX 1.1 and later */
99 _real_glXQueryServerString( Display *dpy, int screen, int name );
101 /* GLX 1.1 and later */
103 _real_glXGetClientString( Display *dpy, int name );
111 _real_glXChooseFBConfig( Display *dpy, int screen,
112 const int *attribList, int *nitems );
115 _real_glXGetFBConfigAttrib( Display *dpy, GLXFBConfig config,
116 int attribute, int *value );
119 _real_glXGetFBConfigs( Display *dpy, int screen, int *nelements );
122 _real_glXGetVisualFromFBConfig( Display *dpy, GLXFBConfig config );
125 _real_glXCreateWindow( Display *dpy, GLXFBConfig config, Window win,
126 const int *attribList );
129 _real_glXDestroyWindow( Display *dpy, GLXWindow window );
132 _real_glXCreatePixmap( Display *dpy, GLXFBConfig config, Pixmap pixmap,
133 const int *attribList );
136 _real_glXDestroyPixmap( Display *dpy, GLXPixmap pixmap );
139 _real_glXCreatePbuffer( Display *dpy, GLXFBConfig config,
140 const int *attribList );
143 _real_glXDestroyPbuffer( Display *dpy, GLXPbuffer pbuf );
146 _real_glXQueryDrawable( Display *dpy, GLXDrawable draw, int attribute,
147 unsigned int *value );
150 _real_glXCreateNewContext( Display *dpy, GLXFBConfig config,
151 int renderType, GLXContext shareList, Bool direct );
155 _real_glXMakeContextCurrent( Display *dpy, GLXDrawable draw,
156 GLXDrawable read, GLXContext ctx );
159 _real_glXQueryContext( Display *dpy, GLXContext ctx, int attribute, int *value );
162 _real_glXSelectEvent( Display *dpy, GLXDrawable drawable, unsigned long mask );
165 _real_glXGetSelectedEvent( Display *dpy, GLXDrawable drawable,
166 unsigned long *mask );
168 #ifdef GLX_SGI_swap_control
170 _real_glXSwapIntervalSGI(int interval);
174 #ifdef GLX_SGI_video_sync
176 _real_glXGetVideoSyncSGI(unsigned int *count);
179 _real_glXWaitVideoSyncSGI(int divisor, int remainder, unsigned int *count);
183 #ifdef GLX_SGI_make_current_read
185 _real_glXMakeCurrentReadSGI(Display *dpy, GLXDrawable draw, GLXDrawable read, GLXContext ctx);
188 _real_glXGetCurrentReadDrawableSGI(void);
191 #if defined(_VL_H) && defined(GLX_SGIX_video_source)
192 extern GLXVideoSourceSGIX
193 _real_glXCreateGLXVideoSourceSGIX(Display *dpy, int screen, VLServer server, VLPath path, int nodeClass, VLNode drainNode);
196 _real_glXDestroyGLXVideoSourceSGIX(Display *dpy, GLXVideoSourceSGIX src);
199 #ifdef GLX_EXT_import_context
201 _real_glXFreeContextEXT(Display *dpy, GLXContext context);
204 _real_glXGetContextIDEXT(const GLXContext context);
207 _real_glXGetCurrentDisplayEXT(void);
210 _real_glXImportContextEXT(Display *dpy, GLXContextID contextID);
213 _real_glXQueryContextInfoEXT(Display *dpy, GLXContext context, int attribute, int *value);
216 #ifdef GLX_SGIX_fbconfig
218 _real_glXGetFBConfigAttribSGIX(Display *dpy, GLXFBConfigSGIX config, int attribute, int *value);
220 extern GLXFBConfigSGIX *
221 _real_glXChooseFBConfigSGIX(Display *dpy, int screen, int *attrib_list, int *nelements);
224 _real_glXCreateGLXPixmapWithConfigSGIX(Display *dpy, GLXFBConfigSGIX config, Pixmap pixmap);
227 _real_glXCreateContextWithConfigSGIX(Display *dpy, GLXFBConfigSGIX config, int render_type, GLXContext share_list, Bool direct);
230 _real_glXGetVisualFromFBConfigSGIX(Display *dpy, GLXFBConfigSGIX config);
232 extern GLXFBConfigSGIX
233 _real_glXGetFBConfigFromVisualSGIX(Display *dpy, XVisualInfo *vis);
236 #ifdef GLX_SGIX_pbuffer
237 extern GLXPbufferSGIX
238 _real_glXCreateGLXPbufferSGIX(Display *dpy, GLXFBConfigSGIX config, unsigned int width, unsigned int height, int *attrib_list);
241 _real_glXDestroyGLXPbufferSGIX(Display *dpy, GLXPbufferSGIX pbuf);
244 _real_glXQueryGLXPbufferSGIX(Display *dpy, GLXPbufferSGIX pbuf, int attribute, unsigned int *value);
247 _real_glXSelectEventSGIX(Display *dpy, GLXDrawable drawable, unsigned long mask);
250 _real_glXGetSelectedEventSGIX(Display *dpy, GLXDrawable drawable, unsigned long *mask);
253 #ifdef GLX_SGI_cushion
255 _real_glXCushionSGI(Display *dpy, Window win, float cushion);
258 #ifdef GLX_SGIX_video_resize
260 _real_glXBindChannelToWindowSGIX(Display *dpy, int screen, int channel , Window window);
263 _real_glXChannelRectSGIX(Display *dpy, int screen, int channel, int x, int y, int w, int h);
266 _real_glXQueryChannelRectSGIX(Display *dpy, int screen, int channel, int *x, int *y, int *w, int *h);
269 _real_glXQueryChannelDeltasSGIX(Display *dpy, int screen, int channel, int *dx, int *dy, int *dw, int *dh);
272 _real_glXChannelRectSyncSGIX(Display *dpy, int screen, int channel, GLenum synctype);
275 #if defined(_DM_BUFFER_H_) && defined(GLX_SGIX_dmbuffer)
277 _real_glXAssociateDMPbufferSGIX(Display *dpy, GLXPbufferSGIX pbuffer, DMparams *params, DMbuffer dmbuffer);
280 #ifdef GLX_SGIX_swap_group
282 _real_glXJoinSwapGroupSGIX(Display *dpy, GLXDrawable drawable, GLXDrawable member);
285 #ifdef GLX_SGIX_swap_barrier
287 _real_glXBindSwapBarrierSGIX(Display *dpy, GLXDrawable drawable, int barrier);
290 _real_glXQueryMaxSwapBarriersSGIX(Display *dpy, int screen, int *max);
293 #ifdef GLX_SUN_get_transparent_index
295 _real_glXGetTransparentIndexSUN(Display *dpy, Window overlay, Window underlay, long *pTransparent);
298 #ifdef GLX_MESA_release_buffers
300 _real_glXReleaseBuffersMESA( Display *dpy, GLXDrawable d );
303 #ifdef GLX_MESA_set_3dfx_mode
305 _real_glXSet3DfxModeMESA( int mode );
308 #ifdef GLX_NV_vertex_array_range
310 _real_glXAllocateMemoryNV(GLsizei size, GLfloat readfreq, GLfloat writefreq, GLfloat priority);
312 _real_glXFreeMemoryNV(GLvoid *pointer);
315 #ifdef GLX_MESA_agp_offset
317 _real_glXGetAGPOffsetMESA(const GLvoid *pointer);
320 #ifdef GLX_MESA_copy_sub_buffer
322 _real_glXCopySubBufferMESA( Display *dpy, GLXDrawable drawable,
323 int x, int y, int width, int height );
326 #endif /* REALGLX_H */