egedit: do not save cursor movement in undo -- this is my stupid habit, and it comple...
[iv.d.git] / _obsolete_dont_use / opengl / _old / glxext.d
blob4cfe875670cc945fb21d0ae72dc95934ffa1ce87
1 module c.gl.glxext;
3 version (linux) {
4 private import c.gl.gl, c.gl.glx;
5 private import std.loader;
7 /*
8 * Constants
9 */
11 * ARB Extensions
13 // 5 - GLX_ARB_multisample
14 const GLuint GLX_SAMPLE_BUFFERS_ARB = 100000;
15 const GLuint GLX_SAMPLES_ARB = 100001;
17 // 39 - GLX_ARB_fbconfig_float
18 const GLuint GLX_RGBA_FLOAT_TYPE_ARB = 0x20B9;
19 const GLuint GLX_RGBA_FLOAT_BIT_ARB = 0x00000004;
22 * Non-ARB Extensions
24 // 25 - GLX_SGIS_multisample
25 const GLuint GLX_SAMPLE_BUFFERS_SGIS = 100000;
26 const GLuint GLX_SAMPLES_SGIS = 100001;
28 // 28 - GLX_EXT_visual_info
29 const GLuint GLX_X_VISUAL_TYPE_EXT = 0x22;
30 const GLuint GLX_TRANSPARENT_TYPE_EXT = 0x23;
31 const GLuint GLX_TRANSPARENT_INDEX_VALUE_EXT = 0x24;
32 const GLuint GLX_TRANSPARENT_RED_VALUE_EXT = 0x25;
33 const GLuint GLX_TRANSPARENT_GREEN_VALUE_EXT = 0x26;
34 const GLuint GLX_TRANSPARENT_BLUE_VALUE_EXT = 0x27;
35 const GLuint GLX_TRANSPARENT_ALPHA_VALUE_EXT = 0x28;
36 const GLuint GLX_NONE_EXT = 0x8000;
37 const GLuint GLX_TRUE_COLOR_EXT = 0x8002;
38 const GLuint GLX_DIRECT_COLOR_EXT = 0x8003;
39 const GLuint GLX_PSEUDO_COLOR_EXT = 0x8004;
40 const GLuint GLX_STATIC_COLOR_EXT = 0x8005;
41 const GLuint GLX_GRAY_SCALE_EXT = 0x8006;
42 const GLuint GLX_STATIC_GRAY_EXT = 0x8007;
43 const GLuint GLX_TRANSPARENT_RGB_EXT = 0x8008;
44 const GLuint GLX_TRANSPARENT_INDEX_EXT = 0x8009;
46 // 44 - GLX_EXT_visual_rating
47 const GLuint GLX_VISUAL_CAVEAT_EXT = 0x20;
48 const GLuint GLX_SLOW_VISUAL_EXT = 0x8001;
49 const GLuint GLX_NON_CONFORMANT_VISUAL_EXT = 0x800D;
51 // 47 - GLX_EXT_import_context
52 const GLuint GLX_SHARE_CONTEXT_EXT = 0x800A;
53 const GLuint GLX_VISUAL_ID_EXT = 0x800B;
54 const GLuint GLX_SCREEN_EXT = 0x800C;
56 // 48 - GLX_SGIX_fbconfig
57 const GLuint GLX_WINDOW_BIT_SGIX = 0x00000001;
58 const GLuint GLX_PIXMAP_BIT_SGIX = 0x00000002;
59 const GLuint GLX_RGBA_BIT_SGIX = 0x00000001;
60 const GLuint GLX_COLOR_INDEX_BIT_SGIX = 0x00000002;
61 const GLuint GLX_DRAWABLE_TYPE_SGIX = 0x8010;
62 const GLuint GLX_RENDER_TYPE_SGIX = 0x8011;
63 const GLuint GLX_X_RENDERABLE_SGIX = 0x8012;
64 const GLuint GLX_FBCONFIG_ID_SGIX = 0x8013;
65 const GLuint GLX_RGBA_TYPE_SGIX = 0x8014;
66 const GLuint GLX_COLOR_INDEX_TYPE_SGIX = 0x8015;
68 // 50 - GLX_SGIX_pbuffer
69 const GLuint GLX_PBUFFER_BIT_SGIX = 0x00000004;
70 const GLuint GLX_BUFFER_CLOBBER_MASK_SGIX = 0x08000000;
71 const GLuint GLX_FRONT_LEFT_BUFFER_BIT_SGIX = 0x00000001;
72 const GLuint GLX_FRONT_RIGHT_BUFFER_BIT_SGIX = 0x00000002;
73 const GLuint GLX_BACK_LEFT_BUFFER_BIT_SGIX = 0x00000004;
74 const GLuint GLX_BACK_RIGHT_BUFFER_BIT_SGIX = 0x00000008;
75 const GLuint GLX_AUX_BUFFERS_BIT_SGIX = 0x00000010;
76 const GLuint GLX_DEPTH_BUFFER_BIT_SGIX = 0x00000020;
77 const GLuint GLX_STENCIL_BUFFER_BIT_SGIX = 0x00000040;
78 const GLuint GLX_ACCUM_BUFFER_BIT_SGIX = 0x00000080;
79 const GLuint GLX_SAMPLE_BUFFERS_BIT_SGIX = 0x00000100;
80 const GLuint GLX_MAX_PBUFFER_WIDTH_SGIX = 0x8016;
81 const GLuint GLX_MAX_PBUFFER_HEIGHT_SGIX = 0x8017;
82 const GLuint GLX_MAX_PBUFFER_PIXELS_SGIX = 0x8018;
83 const GLuint GLX_OPTIMAL_PBUFFER_WIDTH_SGIX = 0x8019;
84 const GLuint GLX_OPTIMAL_PBUFFER_HEIGHT_SGIX = 0x801A;
85 const GLuint GLX_PRESERVED_CONTENTS_SGIX = 0x801B;
86 const GLuint GLX_LARGEST_PBUFFER_SGIX = 0x801C;
87 const GLuint GLX_WIDTH_SGIX = 0x801D;
88 const GLuint GLX_HEIGHT_SGIX = 0x801E;
89 const GLuint GLX_EVENT_MASK_SGIX = 0x801F;
90 const GLuint GLX_DAMAGED_SGIX = 0x8020;
91 const GLuint GLX_SAVED_SGIX = 0x8021;
92 const GLuint GLX_WINDOW_SGIX = 0x8022;
93 const GLuint GLX_PBUFFER_SGIX = 0x8023;
95 // 83 - GLX_SGIX_video_resize
96 const GLuint GLX_SYNC_FRAME_SGIX = 0x00000000;
97 const GLuint GLX_SYNC_SWAP_SGIX = 0x00000001;
99 // 142 - GLX_SGIS_blended_overlay
100 const GLuint GLX_BLENDED_RGBA_SGIS = 0x8025;
102 // 207 - GLX_3DFX_multisample
103 const GLuint GLX_SAMPLE_BUFFERS_3DFX = 0x8050;
104 const GLuint GLX_SAMPLES_3DFX = 0x8051;
106 // 218 - GLX_MESA_set_3dfx_mode
107 const GLuint GLX_3DFX_WINDOW_MODE_MESA = 0x1;
108 const GLuint GLX_3DFX_FULLSCREEN_MODE_MESA = 0x2;
110 // 234 - GLX_SGIX_visual_select_group
111 const GLuint GLX_VISUAL_SELECT_GROUP_SGIX = 0x8028;
113 // 237 - GLX_OML_swap_method
114 const GLuint GLX_SWAP_METHOD_OML = 0x8060;
115 const GLuint GLX_SWAP_EXCHANGE_OML = 0x8061;
116 const GLuint GLX_SWAP_COPY_OML = 0x8062;
117 const GLuint GLX_SWAP_UNDEFINED_OML = 0x8063;
119 // 307 - GLX_SGIX_hyperpipe
120 const GLuint GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX= 80;
121 const GLuint GLX_BAD_HYPERPIPE_CONFIG_SGIX = 91;
122 const GLuint GLX_BAD_HYPERPIPE_SGIX = 92;
123 const GLuint GLX_HYPERPIPE_DISPLAY_PIPE_SGIX = 0x00000001;
124 const GLuint GLX_HYPERPIPE_RENDER_PIPE_SGIX = 0x00000002;
125 const GLuint GLX_PIPE_RECT_SGIX = 0x00000001;
126 const GLuint GLX_PIPE_RECT_LIMITS_SGIX = 0x00000002;
127 const GLuint GLX_HYPERPIPE_STEREO_SGIX = 0x00000003;
128 const GLuint GLX_HYPERPIPE_PIXEL_AVERAGE_SGIX = 0x00000004;
129 const GLuint GLX_HYPERPIPE_ID_SGIX = 0x8030;
132 * Structs and Classes
134 // Non-ARB 307 - GLX_SGIX_hyperpipe
135 alias int GLXHyperpipeNetworkSGIX;
136 struct {
137 char[GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX] pipeName;
138 int networkId;
140 alias int GLXHyperpipeConfigSGIX;
141 struct {
142 char[GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX] pipeName;
143 int channel;
144 uint participationType;
145 int timeSlice;
147 alias int GLXPipeRect;
148 struct {
149 char[GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX] pipeName;
150 int srcXOrigin;
151 int srcYOrigin;
152 int srcWidth;
153 int srcHeight;
154 int destXOrigin;
155 int destYOrigin;
156 int destWidth;
157 int destHeight;
159 alias int GLXPipeRectLimits;
160 struct {
161 char[GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX] pipeName;
162 int XOrigin;
163 int YOrigin;
164 int maxHeight;
165 int maxWidth;
169 * Functions
171 private HXModule glxextdrv;
172 private void* getProc(char[] procname) {
173 void* symbol = ExeModule_GetSymbol(glxextdrv, procname);
174 if (symbol is null) {
175 printf ("Failed to load GLX extension proc address " ~ procname ~ ".\n");
177 return (symbol);
180 static this () {
181 glxextdrv = ExeModule_Load("libGLX.so");
182 glXGetProcAddressARB = cast(pfglXGetProcAddressARB)getProc("glXGetProcAddressARB");
184 glXSwapIntervalSGI = cast(pfglXSwapIntervalSGI)getProc("glXSwapIntervalSGI");
186 glXGetVideoSyncSGI = cast(pfglXGetVideoSyncSGI)getProc("glXGetVideoSyncSGI");
187 glXWaitVideoSyncSGI = cast(pfglXWaitVideoSyncSGI)getProc("glXWaitVideoSyncSGI");
189 glXMakeCurrentReadSGI = cast(pfglXMakeCurrentReadSGI)getProc("glXMakeCurrentReadSGI");
190 glXGetCurrentReadDrawableSGI = cast(pfglXGetCurrentReadDrawableSGI)getProc("glXGetCurrentReadDrawableSGI");
192 glXCreateGLXVideoSourceSGIX = cast(pfglXCreateGLXVideoSourceSGIX)getProc("glXCreateGLXVideoSourceSGIX");
193 glXDestroyGLXVideoSourceSGIX = cast(pfglXDestroyGLXVideoSourceSGIX)getProc("glXDestroyGLXVideoSourceSGIX");
195 glXGetCurrentDisplayEXT = cast(pfglXGetCurrentDisplayEXT)getProc("glXGetCurrentDisplayEXT");
196 glXQueryContextInfoEXT = cast(pfglXQueryContextInfoEXT)getProc("glXQueryContextInfoEXT");
197 glXGetContextIDEXT = cast(pfglXGetContextIDEXT)getProc("glXGetContextIDEXT");
198 glXImportContextEXT = cast(pfglXImportContextEXT)getProc("glXImportContextEXT");
199 glXFreeContextEXT = cast(pfglXFreeContextEXT)getProc("glXFreeContextEXT");
201 glXGetFBConfigAttribSGIX = cast(pfglXGetFBConfigAttribSGIX)getProc("glXGetFBConfigAttribSGIX");
202 glXChooseFBConfigSGIX = cast(pfglXChooseFBConfigSGIX)getProc("glXChooseFBConfigSGIX");
203 glXCreateGLXPixmapWithConfigSGIX = cast(pfglXCreateGLXPixmapWithConfigSGIX)getProc("glXCreateGLXPixmapWithConfigSGIX");
204 glXCreateContextWithConfigSGIX = cast(pfglXCreateContextWithConfigSGIX)getProc("glXCreateContextWithConfigSGIX");
205 glXGetVisualFromFBConfigSGIX = cast(pfglXGetVisualFromFBConfigSGIX)getProc("glXGetVisualFromFBConfigSGIX");
206 glXGetFBConfigFromVisualSGIX = cast(pfglXGetFBConfigFromVisualSGIX)getProc("glXGetFBConfigFromVisualSGIX");
208 glXCreateGLXPbufferSGIX = cast(pfglXCreateGLXPbufferSGIX)getProc("glXCreateGLXPbufferSGIX");
209 glXDestroyGLXPbufferSGIX = cast(pfglXDestroyGLXPbufferSGIX)getProc("glXDestroyGLXPbufferSGIX");
210 glXQueryGLXPbufferSGIX = cast(pfglXQueryGLXPbufferSGIX)getProc("glXQueryGLXPbufferSGIX");
211 glXSelectEventSGIX = cast(pfglXSelectEventSGIX)getProc("glXSelectEventSGIX");
212 glXGetSelectedEventSGIX = cast(pfglXGetSelectedEventSGIX)getProc("glXGetSelectedEventSGIX");
214 glXBindChannelToWindowSGIX = cast(pfglXBindChannelToWindowSGIX)getProc("glXBindChannelToWindowSGIX");
215 glXChannelRectSGIX = cast(pfglXChannelRectSGIX)getProc("glXChannelRectSGIX");
216 glXQueryChannelRectSGIX = cast(pfglXQueryChannelRectSGIX)getProc("glXQueryChannelRectSGIX");
217 glXQueryChannelDeltasSGIX = cast(pfglXQueryChannelDeltasSGIX)getProc("glXQueryChannelDeltasSGIX");
218 glXChannelRectSyncSGIX = cast(pfglXChannelRectSyncSGIX)getProc("glXChannelRectSyncSGIX");
220 glXJoinSwapGroupSGIX = cast(pfglXJoinSwapGroupSGIX)getProc("glXJoinSwapGroupSGIX");
222 glXBindSwapBarrierSGIX = cast(pfglXBindSwapBarrierSGIX)getProc("glXBindSwapBarrierSGIX");
223 glXQueryMaxSwapBarriersSGIX = cast(pfglXQueryMaxSwapBarriersSGIX)getProc("glXQueryMaxSwapBarriersSGIX");
225 glXGetTransparentIndexSUN = cast(pfglXGetTransparentIndexSUN)getProc("glXGetTransparentIndexSUN");
227 glXCopySubBufferMESA = cast(pfglXCopySubBufferMESA)getProc("glXCopySubBufferMESA");
229 glXCreateGLXPixmapMESA = cast(pfglXCreateGLXPixmapMESA)getProc("glXCreateGLXPixmapMESA");
231 glXReleaseBuffersMESA = cast(pfglXReleaseBuffersMESA)getProc("glXReleaseBuffersMESA");
233 glXSet3DfxModeMESA = cast(pfglXSet3DfxModeMESA)getProc("glXSet3DfxModeMESA");
235 glXGetSyncValuesOML = cast(pfglXGetSyncValuesOML)getProc("glXGetSyncValuesOML");
236 glXGetMscRateOML = cast(pfglXGetMscRateOML)getProc("glXGetMscRateOML");
237 glXSwapBuffersMscOML = cast(pfglXSwapBuffersMscOML)getProc("glXSwapBuffersMscOML");
238 glXWaitForMscOML = cast(pfglXWaitForMscOML)getProc("glXWaitForMscOML");
239 glXWaitForSbcOML = cast(pfglXWaitForSbcOML)getProc("glXWaitForSbcOML");
241 glXQueryHyperpipeNetworkSGIX = cast(pfglXQueryHyperpipeNetworkSGIX)getProc("glXQueryHyperpipeNetworkSGIX");
242 glXHyperpipeConfigSGIX = cast(pfglXHyperpipeConfigSGIX)getProc("glXHyperpipeConfigSGIX");
243 glXQueryHyperpipeConfigSGIX = cast(pfglXQueryHyperpipeConfigSGIX)getProc("glXQueryHyperpipeConfigSGIX");
244 glXDestroyHyperpipeConfigSGIX = cast(pfglXDestroyHyperpipeConfigSGIX)getProc("glXDestroyHyperpipeConfigSGIX");
245 glXBindHyperpipeSGIX = cast(pfglXBindHyperpipeSGIX)getProc("glXBindHyperpipeSGIX");
246 glXQueryHyperpipeBestAttribSGIX = cast(pfglXQueryHyperpipeBestAttribSGIX)getProc("glXQueryHyperpipeBestAttribSGIX");
247 glXHyperpipeAttribSGIX = cast(pfglXHyperpipeAttribSGIX)getProc("glXHyperpipeAttribSGIX");
248 glXQueryHyperpipeAttribSGIX = cast(pfglXQueryHyperpipeAttribSGIX)getProc("glXQueryHyperpipeAttribSGIX");
250 glXGetAGPOffsetMESA = cast(pfglXGetAGPOffsetMESA)getProc("glXGetAGPOffsetMESA");
253 static ~this () {
254 ExeModule_Release(glxextdrv);
257 extern (C):
259 * ARB Extensions
261 // 2 - ARB_get_proc_address
262 typedef GLvoid* function(GLchar*) pfiglXGetProcAddressARB;
263 pfiglXGetProcAddressARB iglXGetProcAddressARB;
266 * Non-ARB Extensions
268 // 40 - GLX_SGI_swap_control
269 typedef GLint function(GLint) pfglXSwapIntervalSGI;
270 pfglXSwapIntervalSGI glXSwapIntervalSGI;
272 // 41 - GLX_SGI_video_sync
273 typedef GLint function(GLuint*) pfglXGetVideoSyncSGI;
274 typedef GLint function(GLint, GLint, GLint*) pfglXWaitVideoSyncSGI;
275 pfglXGetVideoSyncSGI glXGetVideoSyncSGI;
276 pfglXWaitVideoSyncSGI glXWaitVideoSyncSGI;
278 // 42 - GLX_SGI_make_read_current
279 typedef Bool function(Display*, GLXDrawable, GLXDrawable, GLXContext) pfglXMakeCurrentReadSGI;
280 typedef GLXDrawable function() pfglXGetCurrentReadDrawableSGI;
281 pfglXMakeCurrentReadSGI glXMakeCurrentReadSGI;
282 pfglXGetCurrentReadDrawableSGI glXGetCurrentReadDrawableSGI;
284 // 43 - GLX_SGIX_video_source
285 alias XID GLXVideoSourceSGIX;
286 typedef GLXVideoSourceSGIX function(Display*, GLint, VLServer, VLPath, GLint, VLNode) pfglXCreateGLXVideoSourceSGIX;
287 typedef GLvoid function(Display*, GLXVideoSourceSGIX) pfglXDestroyGLXVideoSourceSGIX;
288 pfglXCreateGLXVideoSourceSGIX glXCreateGLXVideoSourceSGIX;
289 pfglXDestroyGLXVideoSourceSGIX glXDestroyGLXVideoSourceSGIX;
291 // 47 - GLX_EXT_import_context
292 typedef Display* function() pfglXGetCurrentDisplayEXT;
293 typedef GLint function(Display*, GLXContext, GLint, GLint*) pfglXQueryContextInfoEXT;
294 typedef GLXContextID function(GLXContext) pfglXGetContextIDEXT;
295 typedef GLXContext function(Display*, GLXContextID) pfglXImportContextEXT;
296 typedef GLvoid function(Display*, GLXContext) pfglXFreeContextEXT;
297 pfglXGetCurrentDisplayEXT glXGetCurrentDisplayEXT;
298 pfglXQueryContextInfoEXT glXQueryContextInfoEXT;
299 pfglXGetContextIDEXT glXGetContextIDEXT;
300 pfglXImportContextEXT glXImportContextEXT;
301 pfglXFreeContextEXT glXFreeContextEXT;
303 // 49 - GLX_SGIX_fbconfig
304 typedef int function(Display*, GLXFBConfigSGIX, GLint, GLint*) pfglXGetFBConfigAttribSGIX;
305 typedef GLXFBConfigSGIX* function(Display*, GLint, GLint*, GLint*) pfglXChooseFBConfigSGIX;
306 typedef GLXPixmap function(Display*, GLXFBConfig, Pixmap) pfglXCreateGLXPixmapWithConfigSGIX;
307 typedef GLXContext function(Display*, GLXFBConfig, GLint, GLXContext, Bool) pfglXCreateContextWithConfigSGIX;
308 typedef XVisualInfo* function(Display*, GLXFBConfig) pfglXGetVisualFromFBConfigSGIX;
309 typedef GLXFBConfigSGIX function(Display*, XVisualInfo*) pfglXGetFBConfigFromVisualSGIX;
310 pfglXGetFBConfigAttribSGIX glXGetFBConfigAttribSGIX;
311 pfglXChooseFBConfigSGIX glXChooseFBConfigSGIX;
312 pfglXCreateGLXPixmapWithConfigSGIX glXCreateGLXPixmapWithConfigSGIX;
313 pfglXCreateContextWithConfigSGIX glXCreateContextWithConfigSGIX;
314 pfglXGetVisualFromFBConfigSGIX glXGetVisualFromFBConfigSGIX;
315 pfglXGetFBConfigFromVisualSGIX glXGetFBConfigFromVisualSGIX;
317 // 50 - GLX_SGIX_pbuffer
318 typedef GLXPbuffer function(Display*, GLXFBConfig, GLuint, GLuint, GLint*) pfglXCreateGLXPbufferSGIX;
319 typedef GLvoid function(Display*, GLXPbuffer) pfglXDestroyGLXPbufferSGIX;
320 typedef GLvoid function(Display*, GLXPbuffer, GLint, GLuint*) pfglXQueryGLXPbufferSGIX;
321 typedef GLvoid function(Display*, GLXDrawable, GLulong) pfglXSelectEventSGIX;
322 typedef GLvoid function(Display*, GLXDrawable, GLulong*) pfglXGetSelectedEventSGIX;
323 pfglXCreateGLXPbufferSGIX glXCreateGLXPbufferSGIX;
324 pfglXDestroyGLXPbufferSGIX glXDestroyGLXPbufferSGIX;
325 pfglXQueryGLXPbufferSGIX glXQueryGLXPbufferSGIX;
326 pfglXSelectEventSGIX glXSelectEventSGIX;
327 pfglXGetSelectedEventSGIX glXGetSelectedEventSGIX;
329 // 83 - GLX_SGIX_video_resize
330 typedef GLint function(Display*, GLint, GLint, Window) pfglXBindChannelToWindowSGIX;
331 typedef GLint function(Display*, GLint, GLint, GLint, GLint, GLint, GLint) pfglXChannelRectSGIX;
332 typedef GLint function(Display*, GLint, GLint, GLint*, GLint*, GLint*, GLint*) pfglXQueryChannelRectSGIX;
333 typedef GLint function(Display*, GLint, GLint, GLint*, GLint*, GLint*, GLint*) pfglXQueryChannelDeltasSGIX;
334 typedef GLint function(Display*, GLint, GLint, GLenum) pfglXChannelRectSyncSGIX;
335 pfglXBindChannelToWindowSGIX glXBindChannelToWindowSGIX;
336 pfglXChannelRectSGIX glXChannelRectSGIX;
337 pfglXQueryChannelRectSGIX glXQueryChannelRectSGIX;
338 pfglXQueryChannelDeltasSGIX glXQueryChannelDeltasSGIX;
339 pfglXChannelRectSyncSGIX glXChannelRectSyncSGIX;
341 // 91 - GLX_SGIX_swap_group
342 typedef GLvoid function(Display*, GLXDrawable, GLXDrawable) pfglXJoinSwapGroupSGIX;
343 pfglXJoinSwapGroupSGIX glXJoinSwapGroupSGIX;
345 // 92 - GLX_SGIX_swap_barrier
346 typedef GLvoid function(Display*, GLXDrawable, GLint) pfglXBindSwapBarrierSGIX;
347 typedef Bool function(Display*, GLint, GLint*) pfglXQueryMaxSwapBarriersSGIX;
348 pfglXBindSwapBarrierSGIX glXBindSwapBarrierSGIX;
349 pfglXQueryMaxSwapBarriersSGIX glXQueryMaxSwapBarriersSGIX;
351 // 183 - GLX_SUN_get_transparent_index
352 typedef Status function(Display*, Window, Window, GLulong*) pfglXGetTransparentIndexSUN;
353 pfglXGetTransparentIndexSUN glXGetTransparentIndexSUN;
355 // 215 - GLX_MESA_copy_sub_buffer
356 typedef GLvoid function(Display*, GLXDrawable, GLint, GLint, GLint, GLint) pfglXCopySubBufferMESA;
357 pfglXCopySubBufferMESA glXCopySubBufferMESA;
359 // 216 - GLX_MESA_pixmap_colormap
360 typedef GLXPixmap function(Display*, XVisualInfo*, Pixmap, Colormap) pfglXCreateGLXPixmapMESA;
361 pfglXCreateGLXPixmapMESA glXCreateGLXPixmapMESA;
363 // 217 - GLX_MESA_release_buffers
364 typedef Bool function(Display*, GLXDrawable) pfglXReleaseBuffersMESA;
365 pfglXReleaseBuffersMESA glXReleaseBuffersMESA;
367 // 218 - GLX_MESA_set_3dfx_mode
368 typedef GLboolean function(GLint) pfglXSet3DfxModeMESA;
369 pfglXSet3DfxModeMESA glXSet3DfxModeMESA;
371 // 238 - GLX_OML_sync_control
372 typedef Bool function(Display*, GLXDrawable, GLlong*, GLlong*, GLlong*) pfglXGetSyncValuesOML;
373 typedef Bool function(Display*, GLXDrawable, GLint*, GLint*) pfglXGetMscRateOML;
374 typedef GLlong function(Display*, GLXDrawable, GLlong, GLlong, GLlong) pfglXSwapBuffersMscOML;
375 typedef Bool function(Display*, GLXDrawable, GLlong, GLlong, GLlong, GLlong*, GLlong*, GLlong*) pfglXWaitForMscOML;
376 typedef Bool function(Display*, GLXDrawable, GLlong, GLlong*, GLlong*, GLlong*) pfglXWaitForSbcOML;
377 pfglXGetSyncValuesOML glXGetSyncValuesOML;
378 pfglXGetMscRateOML glXGetMscRateOML;
379 pfglXSwapBuffersMscOML glXSwapBuffersMscOML;
380 pfglXWaitForMscOML glXWaitForMscOML;
381 pfglXWaitForSbcOML glXWaitForSbcOML;
383 // 307 - GLX_SGIX_hyperpipe
384 typedef GLXHyperpipeNetworkSGIX* function(Display*, GLint*) pfglXQueryHyperpipeNetworkSGIX;
385 typedef GLint function(Display*, GLint, GLint, GLXHyperpipeConfigSGIX*, GLint*) pfglXHyperpipeConfigSGIX;
386 typedef GLXHyperpipeConfigSGIX* function(Display*, GLint, GLint*) pfglXQueryHyperpipeConfigSGIX;
387 typedef GLint function(Display*, GLint) pfglXDestroyHyperpipeConfigSGIX;
388 typedef GLint function(Display*, GLint) pfglXBindHyperpipeSGIX;
389 typedef GLint function(Display*, GLint, GLint, GLint, GLvoid*, GLvoid*) pfglXQueryHyperpipeBestAttribSGIX;
390 typedef GLint function(Display*, GLint, GLint, GLint, GLvoid*) pfglXHyperpipeAttribSGIX;
391 typedef GLint function(Display*, GLint, GLint, GLint, GLvoid*) pfglXQueryHyperpipeAttribSGIX;
392 pfglXQueryHyperpipeNetworkSGIX glXQueryHyperpipeNetworkSGIX;
393 pfglXHyperpipeConfigSGIX glXHyperpipeConfigSGIX;
394 pfglXQueryHyperpipeConfigSGIX glXQueryHyperpipeConfigSGIX;
395 pfglXDestroyHyperpipeConfigSGIX glXDestroyHyperpipeConfigSGIX;
396 pfglXBindHyperpipeSGIX glXBindHyperpipeSGIX;
397 pfglXQueryHyperpipeBestAttribSGIX glXQueryHyperpipeBestAttribSGIX;
398 pfglXHyperpipeAttribSGIX glXHyperpipeAttribSGIX;
399 pfglXQueryHyperpipeAttribSGIX glXQueryHyperpipeAttribSGIX;
401 // 308 - GLX_MESA_agp_offset
402 typedef GLuint function(GLvoid*) pfglXGetAGPOffsetMESA;
403 pfglXGetAGPOffsetMESA glXGetAGPOffsetMESA;