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 */