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 * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR
22 * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
23 * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
24 * OTHER DEALINGS IN THE SOFTWARE.
32 extern struct _glxapi_table
*
33 _real_GetGLXDispatchTable(void);
37 * Basically just need these to prevent compiler warnings.
42 _real_glXChooseVisual( Display
*dpy
, int screen
, int *list
);
45 _real_glXCreateContext( Display
*dpy
, XVisualInfo
*visinfo
,
46 GLXContext share_list
, Bool direct
);
49 _real_glXCreateGLXPixmap( Display
*dpy
, XVisualInfo
*visinfo
, Pixmap pixmap
);
52 _real_glXCreateGLXPixmapMESA( Display
*dpy
, XVisualInfo
*visinfo
,
53 Pixmap pixmap
, Colormap cmap
);
56 _real_glXDestroyGLXPixmap( Display
*dpy
, GLXPixmap pixmap
);
59 _real_glXCopyContext( Display
*dpy
, GLXContext src
, GLXContext dst
,
63 _real_glXMakeCurrent( Display
*dpy
, GLXDrawable drawable
, GLXContext ctx
);
66 _real_glXQueryExtension( Display
*dpy
, int *errorb
, int *event
);
69 _real_glXDestroyContext( Display
*dpy
, GLXContext ctx
);
72 _real_glXIsDirect( Display
*dpy
, GLXContext ctx
);
75 _real_glXSwapBuffers( Display
*dpy
, GLXDrawable drawable
);
78 _real_glXUseXFont( Font font
, int first
, int count
, int listbase
);
81 _real_glXQueryVersion( Display
*dpy
, int *maj
, int *min
);
84 _real_glXGetConfig( Display
*dpy
, XVisualInfo
*visinfo
,
85 int attrib
, int *value
);
88 _real_glXWaitGL( void );
92 _real_glXWaitX( void );
94 /* GLX 1.1 and later */
96 _real_glXQueryExtensionsString( Display
*dpy
, int screen
);
98 /* GLX 1.1 and later */
100 _real_glXQueryServerString( Display
*dpy
, int screen
, int name
);
102 /* GLX 1.1 and later */
104 _real_glXGetClientString( Display
*dpy
, int name
);
112 _real_glXChooseFBConfig( Display
*dpy
, int screen
,
113 const int *attribList
, int *nitems
);
116 _real_glXGetFBConfigAttrib( Display
*dpy
, GLXFBConfig config
,
117 int attribute
, int *value
);
120 _real_glXGetFBConfigs( Display
*dpy
, int screen
, int *nelements
);
123 _real_glXGetVisualFromFBConfig( Display
*dpy
, GLXFBConfig config
);
126 _real_glXCreateWindow( Display
*dpy
, GLXFBConfig config
, Window win
,
127 const int *attribList
);
130 _real_glXDestroyWindow( Display
*dpy
, GLXWindow window
);
133 _real_glXCreatePixmap( Display
*dpy
, GLXFBConfig config
, Pixmap pixmap
,
134 const int *attribList
);
137 _real_glXDestroyPixmap( Display
*dpy
, GLXPixmap pixmap
);
140 _real_glXCreatePbuffer( Display
*dpy
, GLXFBConfig config
,
141 const int *attribList
);
144 _real_glXDestroyPbuffer( Display
*dpy
, GLXPbuffer pbuf
);
147 _real_glXQueryDrawable( Display
*dpy
, GLXDrawable draw
, int attribute
,
148 unsigned int *value
);
151 _real_glXCreateNewContext( Display
*dpy
, GLXFBConfig config
,
152 int renderType
, GLXContext shareList
, Bool direct
);
156 _real_glXMakeContextCurrent( Display
*dpy
, GLXDrawable draw
,
157 GLXDrawable read
, GLXContext ctx
);
160 _real_glXQueryContext( Display
*dpy
, GLXContext ctx
, int attribute
, int *value
);
163 _real_glXSelectEvent( Display
*dpy
, GLXDrawable drawable
, unsigned long mask
);
166 _real_glXGetSelectedEvent( Display
*dpy
, GLXDrawable drawable
,
167 unsigned long *mask
);
169 #ifdef GLX_SGI_swap_control
171 _real_glXSwapIntervalSGI(int interval
);
175 #ifdef GLX_SGI_video_sync
177 _real_glXGetVideoSyncSGI(unsigned int *count
);
180 _real_glXWaitVideoSyncSGI(int divisor
, int remainder
, unsigned int *count
);
184 #ifdef GLX_SGI_make_current_read
186 _real_glXMakeCurrentReadSGI(Display
*dpy
, GLXDrawable draw
, GLXDrawable read
, GLXContext ctx
);
189 _real_glXGetCurrentReadDrawableSGI(void);
192 #if defined(_VL_H) && defined(GLX_SGIX_video_source)
193 extern GLXVideoSourceSGIX
194 _real_glXCreateGLXVideoSourceSGIX(Display
*dpy
, int screen
, VLServer server
, VLPath path
, int nodeClass
, VLNode drainNode
);
197 _real_glXDestroyGLXVideoSourceSGIX(Display
*dpy
, GLXVideoSourceSGIX src
);
200 #ifdef GLX_EXT_import_context
202 _real_glXFreeContextEXT(Display
*dpy
, GLXContext context
);
205 _real_glXGetContextIDEXT(const GLXContext context
);
208 _real_glXGetCurrentDisplayEXT(void);
211 _real_glXImportContextEXT(Display
*dpy
, GLXContextID contextID
);
214 _real_glXQueryContextInfoEXT(Display
*dpy
, GLXContext context
, int attribute
, int *value
);
217 #ifdef GLX_SGIX_fbconfig
219 _real_glXGetFBConfigAttribSGIX(Display
*dpy
, GLXFBConfigSGIX config
, int attribute
, int *value
);
221 extern GLXFBConfigSGIX
*
222 _real_glXChooseFBConfigSGIX(Display
*dpy
, int screen
, int *attrib_list
, int *nelements
);
225 _real_glXCreateGLXPixmapWithConfigSGIX(Display
*dpy
, GLXFBConfigSGIX config
, Pixmap pixmap
);
228 _real_glXCreateContextWithConfigSGIX(Display
*dpy
, GLXFBConfigSGIX config
, int render_type
, GLXContext share_list
, Bool direct
);
231 _real_glXGetVisualFromFBConfigSGIX(Display
*dpy
, GLXFBConfigSGIX config
);
233 extern GLXFBConfigSGIX
234 _real_glXGetFBConfigFromVisualSGIX(Display
*dpy
, XVisualInfo
*vis
);
237 #ifdef GLX_SGIX_pbuffer
238 extern GLXPbufferSGIX
239 _real_glXCreateGLXPbufferSGIX(Display
*dpy
, GLXFBConfigSGIX config
, unsigned int width
, unsigned int height
, int *attrib_list
);
242 _real_glXDestroyGLXPbufferSGIX(Display
*dpy
, GLXPbufferSGIX pbuf
);
245 _real_glXQueryGLXPbufferSGIX(Display
*dpy
, GLXPbufferSGIX pbuf
, int attribute
, unsigned int *value
);
248 _real_glXSelectEventSGIX(Display
*dpy
, GLXDrawable drawable
, unsigned long mask
);
251 _real_glXGetSelectedEventSGIX(Display
*dpy
, GLXDrawable drawable
, unsigned long *mask
);
254 #ifdef GLX_SGI_cushion
256 _real_glXCushionSGI(Display
*dpy
, Window win
, float cushion
);
259 #ifdef GLX_SGIX_video_resize
261 _real_glXBindChannelToWindowSGIX(Display
*dpy
, int screen
, int channel
, Window window
);
264 _real_glXChannelRectSGIX(Display
*dpy
, int screen
, int channel
, int x
, int y
, int w
, int h
);
267 _real_glXQueryChannelRectSGIX(Display
*dpy
, int screen
, int channel
, int *x
, int *y
, int *w
, int *h
);
270 _real_glXQueryChannelDeltasSGIX(Display
*dpy
, int screen
, int channel
, int *dx
, int *dy
, int *dw
, int *dh
);
273 _real_glXChannelRectSyncSGIX(Display
*dpy
, int screen
, int channel
, GLenum synctype
);
276 #if defined(_DM_BUFFER_H_) && defined(GLX_SGIX_dmbuffer)
278 _real_glXAssociateDMPbufferSGIX(Display
*dpy
, GLXPbufferSGIX pbuffer
, DMparams
*params
, DMbuffer dmbuffer
);
281 #ifdef GLX_SGIX_swap_group
283 _real_glXJoinSwapGroupSGIX(Display
*dpy
, GLXDrawable drawable
, GLXDrawable member
);
286 #ifdef GLX_SGIX_swap_barrier
288 _real_glXBindSwapBarrierSGIX(Display
*dpy
, GLXDrawable drawable
, int barrier
);
291 _real_glXQueryMaxSwapBarriersSGIX(Display
*dpy
, int screen
, int *max
);
294 #ifdef GLX_SUN_get_transparent_index
296 _real_glXGetTransparentIndexSUN(Display
*dpy
, Window overlay
, Window underlay
, long *pTransparent
);
299 #ifdef GLX_MESA_release_buffers
301 _real_glXReleaseBuffersMESA( Display
*dpy
, GLXDrawable d
);
304 #ifdef GLX_MESA_set_3dfx_mode
306 _real_glXSet3DfxModeMESA( int mode
);
309 #ifdef GLX_NV_vertex_array_range
311 _real_glXAllocateMemoryNV(GLsizei size
, GLfloat readfreq
, GLfloat writefreq
, GLfloat priority
);
313 _real_glXFreeMemoryNV(GLvoid
*pointer
);
316 #ifdef GLX_MESA_agp_offset
318 _real_glXGetAGPOffsetMESA(const GLvoid
*pointer
);
321 #ifdef GLX_MESA_copy_sub_buffer
323 _real_glXCopySubBufferMESA( Display
*dpy
, GLXDrawable drawable
,
324 int x
, int y
, int width
, int height
);
327 #endif /* REALGLX_H */