Magellan Linux

Diff of /trunk/opengl-update/glxext.h

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 789 by niro, Thu Dec 25 23:21:29 2008 UTC revision 1813 by niro, Wed May 2 08:35:50 2012 UTC
# Line 6  extern "C" { Line 6  extern "C" {
6  #endif  #endif
7    
8  /*  /*
9  ** Copyright (c) 2007 The Khronos Group Inc.  ** Copyright (c) 2007-2012 The Khronos Group Inc.
10  **  **
11  ** Permission is hereby granted, free of charge, to any person obtaining a  ** Permission is hereby granted, free of charge, to any person obtaining a
12  ** copy of this software and/or associated documentation files (the  ** copy of this software and/or associated documentation files (the
# Line 28  extern "C" { Line 28  extern "C" {
28  ** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.  ** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
29  */  */
30    
31    /* Function declaration macros - to move into glplatform.h */
32    
33  #if defined(_WIN32) && !defined(APIENTRY) && !defined(__CYGWIN__) && !defined(__SCITECH_SNAP__)  #if defined(_WIN32) && !defined(APIENTRY) && !defined(__CYGWIN__) && !defined(__SCITECH_SNAP__)
34  #define WIN32_LEAN_AND_MEAN 1  #define WIN32_LEAN_AND_MEAN 1
35  #include <windows.h>  #include <windows.h>
# Line 46  extern "C" { Line 48  extern "C" {
48  /*************************************************************/  /*************************************************************/
49    
50  /* Header file version number, required by OpenGL ABI for Linux */  /* Header file version number, required by OpenGL ABI for Linux */
51  /* glxext.h last updated 2008/10/22 */  /* glxext.h last updated 2012/02/29 */
52  /* Current version at http://www.opengl.org/registry/ */  /* Current version at http://www.opengl.org/registry/ */
53  #define GLX_GLXEXT_VERSION 21  #define GLX_GLXEXT_VERSION 33
54    
55  #ifndef GLX_VERSION_1_3  #ifndef GLX_VERSION_1_3
56  #define GLX_WINDOW_BIT                     0x00000001  #define GLX_WINDOW_BIT                     0x00000001
# Line 122  extern "C" { Line 124  extern "C" {
124  #define GLX_SAMPLES_ARB                    100001  #define GLX_SAMPLES_ARB                    100001
125  #endif  #endif
126    
127    #ifndef GLX_ARB_vertex_buffer_object
128    #define GLX_CONTEXT_ALLOW_BUFFER_BYTE_ORDER_MISMATCH_ARB 0x2095
129    #endif
130    
131  #ifndef GLX_ARB_fbconfig_float  #ifndef GLX_ARB_fbconfig_float
132  #define GLX_RGBA_FLOAT_TYPE_ARB            0x20B9  #define GLX_RGBA_FLOAT_TYPE_ARB            0x20B9
133  #define GLX_RGBA_FLOAT_BIT_ARB             0x00000004  #define GLX_RGBA_FLOAT_BIT_ARB             0x00000004
134  #endif  #endif
135    
136    #ifndef GLX_ARB_framebuffer_sRGB
137    #define GLX_FRAMEBUFFER_SRGB_CAPABLE_ARB   0x20B2
138    #endif
139    
140  #ifndef GLX_ARB_create_context  #ifndef GLX_ARB_create_context
141  #define GLX_CONTEXT_DEBUG_BIT_ARB          0x00000001  #define GLX_CONTEXT_DEBUG_BIT_ARB          0x00000001
142  #define GLX_CONTEXT_FORWARD_COMPATIBLE_BIT_ARB 0x00000002  #define GLX_CONTEXT_FORWARD_COMPATIBLE_BIT_ARB 0x00000002
# Line 135  extern "C" { Line 145  extern "C" {
145  #define GLX_CONTEXT_FLAGS_ARB              0x2094  #define GLX_CONTEXT_FLAGS_ARB              0x2094
146  #endif  #endif
147    
148    #ifndef GLX_ARB_create_context_profile
149    #define GLX_CONTEXT_CORE_PROFILE_BIT_ARB   0x00000001
150    #define GLX_CONTEXT_COMPATIBILITY_PROFILE_BIT_ARB 0x00000002
151    #define GLX_CONTEXT_PROFILE_MASK_ARB       0x9126
152    #endif
153    
154    #ifndef GLX_ARB_create_context_robustness
155    #define GLX_CONTEXT_ROBUST_ACCESS_BIT_ARB  0x00000004
156    #define GLX_LOSE_CONTEXT_ON_RESET_ARB      0x8252
157    #define GLX_CONTEXT_RESET_NOTIFICATION_STRATEGY_ARB 0x8256
158    #define GLX_NO_RESET_NOTIFICATION_ARB      0x8261
159    #endif
160    
161  #ifndef GLX_SGIS_multisample  #ifndef GLX_SGIS_multisample
162  #define GLX_SAMPLE_BUFFERS_SGIS            100000  #define GLX_SAMPLE_BUFFERS_SGIS            100000
163  #define GLX_SAMPLES_SGIS                   100001  #define GLX_SAMPLES_SGIS                   100001
# Line 374  extern "C" { Line 397  extern "C" {
397  #ifndef GLX_NV_swap_group  #ifndef GLX_NV_swap_group
398  #endif  #endif
399    
400    #ifndef GLX_NV_video_capture
401    #define GLX_DEVICE_ID_NV                   0x20CD
402    #define GLX_UNIQUE_ID_NV                   0x20CE
403    #define GLX_NUM_VIDEO_CAPTURE_SLOTS_NV     0x20CF
404    #endif
405    
406    #ifndef GLX_EXT_swap_control
407    #define GLX_SWAP_INTERVAL_EXT              0x20F1
408    #define GLX_MAX_SWAP_INTERVAL_EXT          0x20F2
409    #endif
410    
411    #ifndef GLX_NV_copy_image
412    #endif
413    
414    #ifndef GLX_INTEL_swap_event
415    #define GLX_BUFFER_SWAP_COMPLETE_INTEL_MASK 0x04000000
416    #define GLX_EXCHANGE_COMPLETE_INTEL        0x8180
417    #define GLX_COPY_COMPLETE_INTEL            0x8181
418    #define GLX_FLIP_COMPLETE_INTEL            0x8182
419    #endif
420    
421    #ifndef GLX_NV_multisample_coverage
422    #define GLX_COVERAGE_SAMPLES_NV            100001
423    #define GLX_COLOR_SAMPLES_NV               0x20B3
424    #endif
425    
426    #ifndef GLX_AMD_gpu_association
427    #define GLX_GPU_VENDOR_AMD                 0x1F00
428    #define GLX_GPU_RENDERER_STRING_AMD        0x1F01
429    #define GLX_GPU_OPENGL_VERSION_STRING_AMD  0x1F02
430    #define GLX_GPU_FASTEST_TARGET_GPUS_AMD    0x21A2
431    #define GLX_GPU_RAM_AMD                    0x21A3
432    #define GLX_GPU_CLOCK_AMD                  0x21A4
433    #define GLX_GPU_NUM_PIPES_AMD              0x21A5
434    #define GLX_GPU_NUM_SIMD_AMD               0x21A6
435    #define GLX_GPU_NUM_RB_AMD                 0x21A7
436    #define GLX_GPU_NUM_SPI_AMD                0x21A8
437    #endif
438    
439    #ifndef GLX_EXT_create_context_es2_profile
440    #define GLX_CONTEXT_ES2_PROFILE_BIT_EXT    0x00000004
441    #endif
442    
443    #ifndef GLX_EXT_swap_control_tear
444    #define GLX_LATE_SWAPS_TEAR_EXT            0x20F3
445    #endif
446    
447    
448  /*************************************************************/  /*************************************************************/
449    
# Line 407  typedef struct { Line 477  typedef struct {
477  } GLXBufferClobberEventSGIX;  } GLXBufferClobberEventSGIX;
478  #endif  #endif
479    
480    #ifndef GLX_NV_video_output
481    typedef unsigned int GLXVideoDeviceNV;
482    #endif
483    
484    #ifndef GLX_NV_video_capture
485    typedef XID GLXVideoCaptureDeviceNV;
486    #endif
487    
488  #ifndef GLEXT_64_TYPES_DEFINED  #ifndef GLEXT_64_TYPES_DEFINED
489  /* This code block is duplicated in glext.h, so must be protected */  /* This code block is duplicated in glext.h, so must be protected */
490  #define GLEXT_64_TYPES_DEFINED  #define GLEXT_64_TYPES_DEFINED
# Line 447  typedef unsigned __int64 uint64_t; Line 525  typedef unsigned __int64 uint64_t;
525  #ifndef GLX_VERSION_1_3  #ifndef GLX_VERSION_1_3
526  #define GLX_VERSION_1_3 1  #define GLX_VERSION_1_3 1
527  #ifdef GLX_GLXEXT_PROTOTYPES  #ifdef GLX_GLXEXT_PROTOTYPES
528  extern GLXFBConfig * glXGetFBConfigs (Display *, int, int *);  extern GLXFBConfig * glXGetFBConfigs (Display *dpy, int screen, int *nelements);
529  extern GLXFBConfig * glXChooseFBConfig (Display *, int, const int *, int *);  extern GLXFBConfig * glXChooseFBConfig (Display *dpy, int screen, const int *attrib_list, int *nelements);
530  extern int glXGetFBConfigAttrib (Display *, GLXFBConfig, int, int *);  extern int glXGetFBConfigAttrib (Display *dpy, GLXFBConfig config, int attribute, int *value);
531  extern XVisualInfo * glXGetVisualFromFBConfig (Display *, GLXFBConfig);  extern XVisualInfo * glXGetVisualFromFBConfig (Display *dpy, GLXFBConfig config);
532  extern GLXWindow glXCreateWindow (Display *, GLXFBConfig, Window, const int *);  extern GLXWindow glXCreateWindow (Display *dpy, GLXFBConfig config, Window win, const int *attrib_list);
533  extern void glXDestroyWindow (Display *, GLXWindow);  extern void glXDestroyWindow (Display *dpy, GLXWindow win);
534  extern GLXPixmap glXCreatePixmap (Display *, GLXFBConfig, Pixmap, const int *);  extern GLXPixmap glXCreatePixmap (Display *dpy, GLXFBConfig config, Pixmap pixmap, const int *attrib_list);
535  extern void glXDestroyPixmap (Display *, GLXPixmap);  extern void glXDestroyPixmap (Display *dpy, GLXPixmap pixmap);
536  extern GLXPbuffer glXCreatePbuffer (Display *, GLXFBConfig, const int *);  extern GLXPbuffer glXCreatePbuffer (Display *dpy, GLXFBConfig config, const int *attrib_list);
537  extern void glXDestroyPbuffer (Display *, GLXPbuffer);  extern void glXDestroyPbuffer (Display *dpy, GLXPbuffer pbuf);
538  extern void glXQueryDrawable (Display *, GLXDrawable, int, unsigned int *);  extern void glXQueryDrawable (Display *dpy, GLXDrawable draw, int attribute, unsigned int *value);
539  extern GLXContext glXCreateNewContext (Display *, GLXFBConfig, int, GLXContext, Bool);  extern GLXContext glXCreateNewContext (Display *dpy, GLXFBConfig config, int render_type, GLXContext share_list, Bool direct);
540  extern Bool glXMakeContextCurrent (Display *, GLXDrawable, GLXDrawable, GLXContext);  extern Bool glXMakeContextCurrent (Display *dpy, GLXDrawable draw, GLXDrawable read, GLXContext ctx);
541  extern GLXDrawable glXGetCurrentReadDrawable (void);  extern GLXDrawable glXGetCurrentReadDrawable (void);
542  extern Display * glXGetCurrentDisplay (void);  extern Display * glXGetCurrentDisplay (void);
543  extern int glXQueryContext (Display *, GLXContext, int, int *);  extern int glXQueryContext (Display *dpy, GLXContext ctx, int attribute, int *value);
544  extern void glXSelectEvent (Display *, GLXDrawable, unsigned long);  extern void glXSelectEvent (Display *dpy, GLXDrawable draw, unsigned long event_mask);
545  extern void glXGetSelectedEvent (Display *, GLXDrawable, unsigned long *);  extern void glXGetSelectedEvent (Display *dpy, GLXDrawable draw, unsigned long *event_mask);
546  #endif /* GLX_GLXEXT_PROTOTYPES */  #endif /* GLX_GLXEXT_PROTOTYPES */
547  typedef GLXFBConfig * ( * PFNGLXGETFBCONFIGSPROC) (Display *dpy, int screen, int *nelements);  typedef GLXFBConfig * ( * PFNGLXGETFBCONFIGSPROC) (Display *dpy, int screen, int *nelements);
548  typedef GLXFBConfig * ( * PFNGLXCHOOSEFBCONFIGPROC) (Display *dpy, int screen, const int *attrib_list, int *nelements);  typedef GLXFBConfig * ( * PFNGLXCHOOSEFBCONFIGPROC) (Display *dpy, int screen, const int *attrib_list, int *nelements);
# Line 489  typedef void ( * PFNGLXGETSELECTEDEVENTP Line 567  typedef void ( * PFNGLXGETSELECTEDEVENTP
567  #ifndef GLX_VERSION_1_4  #ifndef GLX_VERSION_1_4
568  #define GLX_VERSION_1_4 1  #define GLX_VERSION_1_4 1
569  #ifdef GLX_GLXEXT_PROTOTYPES  #ifdef GLX_GLXEXT_PROTOTYPES
570  extern __GLXextFuncPtr glXGetProcAddress (const GLubyte *);  extern __GLXextFuncPtr glXGetProcAddress (const GLubyte *procName);
571  #endif /* GLX_GLXEXT_PROTOTYPES */  #endif /* GLX_GLXEXT_PROTOTYPES */
572  typedef __GLXextFuncPtr ( * PFNGLXGETPROCADDRESSPROC) (const GLubyte *procName);  typedef __GLXextFuncPtr ( * PFNGLXGETPROCADDRESSPROC) (const GLubyte *procName);
573  #endif  #endif
# Line 497  typedef __GLXextFuncPtr ( * PFNGLXGETPRO Line 575  typedef __GLXextFuncPtr ( * PFNGLXGETPRO
575  #ifndef GLX_ARB_get_proc_address  #ifndef GLX_ARB_get_proc_address
576  #define GLX_ARB_get_proc_address 1  #define GLX_ARB_get_proc_address 1
577  #ifdef GLX_GLXEXT_PROTOTYPES  #ifdef GLX_GLXEXT_PROTOTYPES
578  extern __GLXextFuncPtr glXGetProcAddressARB (const GLubyte *);  extern __GLXextFuncPtr glXGetProcAddressARB (const GLubyte *procName);
579  #endif /* GLX_GLXEXT_PROTOTYPES */  #endif /* GLX_GLXEXT_PROTOTYPES */
580  typedef __GLXextFuncPtr ( * PFNGLXGETPROCADDRESSARBPROC) (const GLubyte *procName);  typedef __GLXextFuncPtr ( * PFNGLXGETPROCADDRESSARBPROC) (const GLubyte *procName);
581  #endif  #endif
# Line 510  typedef __GLXextFuncPtr ( * PFNGLXGETPRO Line 588  typedef __GLXextFuncPtr ( * PFNGLXGETPRO
588  #define GLX_ARB_fbconfig_float 1  #define GLX_ARB_fbconfig_float 1
589  #endif  #endif
590    
591    #ifndef GLX_ARB_framebuffer_sRGB
592    #define GLX_ARB_framebuffer_sRGB 1
593    #endif
594    
595  #ifndef GLX_ARB_create_context  #ifndef GLX_ARB_create_context
596  #define GLX_ARB_create_context 1  #define GLX_ARB_create_context 1
597  #ifdef GLX_GLXEXT_PROTOTYPES  #ifdef GLX_GLXEXT_PROTOTYPES
598  extern GLXContext glXCreateContextAttribsARB (Display *, GLXFBConfig, GLXContext, Bool, const int *);  extern GLXContext glXCreateContextAttribsARB (Display *dpy, GLXFBConfig config, GLXContext share_context, Bool direct, const int *attrib_list);
599  #endif /* GLX_GLXEXT_PROTOTYPES */  #endif /* GLX_GLXEXT_PROTOTYPES */
600  typedef GLXContext ( * PFNGLXCREATECONTEXTATTRIBSARBPROC) (Display *dpy, GLXFBConfig config, GLXContext share_context, Bool direct, const int *attrib_list);  typedef GLXContext ( * PFNGLXCREATECONTEXTATTRIBSARBPROC) (Display *dpy, GLXFBConfig config, GLXContext share_context, Bool direct, const int *attrib_list);
601  #endif  #endif
602    
603    #ifndef GLX_ARB_create_context_profile
604    #define GLX_ARB_create_context_profile 1
605    #endif
606    
607    #ifndef GLX_ARB_create_context_robustness
608    #define GLX_ARB_create_context_robustness 1
609    #endif
610    
611  #ifndef GLX_SGIS_multisample  #ifndef GLX_SGIS_multisample
612  #define GLX_SGIS_multisample 1  #define GLX_SGIS_multisample 1
613  #endif  #endif
# Line 529  typedef GLXContext ( * PFNGLXCREATECONTE Line 619  typedef GLXContext ( * PFNGLXCREATECONTE
619  #ifndef GLX_SGI_swap_control  #ifndef GLX_SGI_swap_control
620  #define GLX_SGI_swap_control 1  #define GLX_SGI_swap_control 1
621  #ifdef GLX_GLXEXT_PROTOTYPES  #ifdef GLX_GLXEXT_PROTOTYPES
622  extern int glXSwapIntervalSGI (int);  extern int glXSwapIntervalSGI (int interval);
623  #endif /* GLX_GLXEXT_PROTOTYPES */  #endif /* GLX_GLXEXT_PROTOTYPES */
624  typedef int ( * PFNGLXSWAPINTERVALSGIPROC) (int interval);  typedef int ( * PFNGLXSWAPINTERVALSGIPROC) (int interval);
625  #endif  #endif
# Line 537  typedef int ( * PFNGLXSWAPINTERVALSGIPRO Line 627  typedef int ( * PFNGLXSWAPINTERVALSGIPRO
627  #ifndef GLX_SGI_video_sync  #ifndef GLX_SGI_video_sync
628  #define GLX_SGI_video_sync 1  #define GLX_SGI_video_sync 1
629  #ifdef GLX_GLXEXT_PROTOTYPES  #ifdef GLX_GLXEXT_PROTOTYPES
630  extern int glXGetVideoSyncSGI (unsigned int *);  extern int glXGetVideoSyncSGI (unsigned int *count);
631  extern int glXWaitVideoSyncSGI (int, int, unsigned int *);  extern int glXWaitVideoSyncSGI (int divisor, int remainder, unsigned int *count);
632  #endif /* GLX_GLXEXT_PROTOTYPES */  #endif /* GLX_GLXEXT_PROTOTYPES */
633  typedef int ( * PFNGLXGETVIDEOSYNCSGIPROC) (unsigned int *count);  typedef int ( * PFNGLXGETVIDEOSYNCSGIPROC) (unsigned int *count);
634  typedef int ( * PFNGLXWAITVIDEOSYNCSGIPROC) (int divisor, int remainder, unsigned int *count);  typedef int ( * PFNGLXWAITVIDEOSYNCSGIPROC) (int divisor, int remainder, unsigned int *count);
# Line 547  typedef int ( * PFNGLXWAITVIDEOSYNCSGIPR Line 637  typedef int ( * PFNGLXWAITVIDEOSYNCSGIPR
637  #ifndef GLX_SGI_make_current_read  #ifndef GLX_SGI_make_current_read
638  #define GLX_SGI_make_current_read 1  #define GLX_SGI_make_current_read 1
639  #ifdef GLX_GLXEXT_PROTOTYPES  #ifdef GLX_GLXEXT_PROTOTYPES
640  extern Bool glXMakeCurrentReadSGI (Display *, GLXDrawable, GLXDrawable, GLXContext);  extern Bool glXMakeCurrentReadSGI (Display *dpy, GLXDrawable draw, GLXDrawable read, GLXContext ctx);
641  extern GLXDrawable glXGetCurrentReadDrawableSGI (void);  extern GLXDrawable glXGetCurrentReadDrawableSGI (void);
642  #endif /* GLX_GLXEXT_PROTOTYPES */  #endif /* GLX_GLXEXT_PROTOTYPES */
643  typedef Bool ( * PFNGLXMAKECURRENTREADSGIPROC) (Display *dpy, GLXDrawable draw, GLXDrawable read, GLXContext ctx);  typedef Bool ( * PFNGLXMAKECURRENTREADSGIPROC) (Display *dpy, GLXDrawable draw, GLXDrawable read, GLXContext ctx);
# Line 558  typedef GLXDrawable ( * PFNGLXGETCURRENT Line 648  typedef GLXDrawable ( * PFNGLXGETCURRENT
648  #define GLX_SGIX_video_source 1  #define GLX_SGIX_video_source 1
649  #ifdef _VL_H  #ifdef _VL_H
650  #ifdef GLX_GLXEXT_PROTOTYPES  #ifdef GLX_GLXEXT_PROTOTYPES
651  extern GLXVideoSourceSGIX glXCreateGLXVideoSourceSGIX (Display *, int, VLServer, VLPath, int, VLNode);  extern GLXVideoSourceSGIX glXCreateGLXVideoSourceSGIX (Display *display, int screen, VLServer server, VLPath path, int nodeClass, VLNode drainNode);
652  extern void glXDestroyGLXVideoSourceSGIX (Display *, GLXVideoSourceSGIX);  extern void glXDestroyGLXVideoSourceSGIX (Display *dpy, GLXVideoSourceSGIX glxvideosource);
653  #endif /* GLX_GLXEXT_PROTOTYPES */  #endif /* GLX_GLXEXT_PROTOTYPES */
654  typedef GLXVideoSourceSGIX ( * PFNGLXCREATEGLXVIDEOSOURCESGIXPROC) (Display *display, int screen, VLServer server, VLPath path, int nodeClass, VLNode drainNode);  typedef GLXVideoSourceSGIX ( * PFNGLXCREATEGLXVIDEOSOURCESGIXPROC) (Display *display, int screen, VLServer server, VLPath path, int nodeClass, VLNode drainNode);
655  typedef void ( * PFNGLXDESTROYGLXVIDEOSOURCESGIXPROC) (Display *dpy, GLXVideoSourceSGIX glxvideosource);  typedef void ( * PFNGLXDESTROYGLXVIDEOSOURCESGIXPROC) (Display *dpy, GLXVideoSourceSGIX glxvideosource);
# Line 574  typedef void ( * PFNGLXDESTROYGLXVIDEOSO Line 664  typedef void ( * PFNGLXDESTROYGLXVIDEOSO
664  #define GLX_EXT_import_context 1  #define GLX_EXT_import_context 1
665  #ifdef GLX_GLXEXT_PROTOTYPES  #ifdef GLX_GLXEXT_PROTOTYPES
666  extern Display * glXGetCurrentDisplayEXT (void);  extern Display * glXGetCurrentDisplayEXT (void);
667  extern int glXQueryContextInfoEXT (Display *, GLXContext, int, int *);  extern int glXQueryContextInfoEXT (Display *dpy, GLXContext context, int attribute, int *value);
668  extern GLXContextID glXGetContextIDEXT (const GLXContext);  extern GLXContextID glXGetContextIDEXT (const GLXContext context);
669  extern GLXContext glXImportContextEXT (Display *, GLXContextID);  extern GLXContext glXImportContextEXT (Display *dpy, GLXContextID contextID);
670  extern void glXFreeContextEXT (Display *, GLXContext);  extern void glXFreeContextEXT (Display *dpy, GLXContext context);
671  #endif /* GLX_GLXEXT_PROTOTYPES */  #endif /* GLX_GLXEXT_PROTOTYPES */
672  typedef Display * ( * PFNGLXGETCURRENTDISPLAYEXTPROC) (void);  typedef Display * ( * PFNGLXGETCURRENTDISPLAYEXTPROC) (void);
673  typedef int ( * PFNGLXQUERYCONTEXTINFOEXTPROC) (Display *dpy, GLXContext context, int attribute, int *value);  typedef int ( * PFNGLXQUERYCONTEXTINFOEXTPROC) (Display *dpy, GLXContext context, int attribute, int *value);
# Line 589  typedef void ( * PFNGLXFREECONTEXTEXTPRO Line 679  typedef void ( * PFNGLXFREECONTEXTEXTPRO
679  #ifndef GLX_SGIX_fbconfig  #ifndef GLX_SGIX_fbconfig
680  #define GLX_SGIX_fbconfig 1  #define GLX_SGIX_fbconfig 1
681  #ifdef GLX_GLXEXT_PROTOTYPES  #ifdef GLX_GLXEXT_PROTOTYPES
682  extern int glXGetFBConfigAttribSGIX (Display *, GLXFBConfigSGIX, int, int *);  extern int glXGetFBConfigAttribSGIX (Display *dpy, GLXFBConfigSGIX config, int attribute, int *value);
683  extern GLXFBConfigSGIX * glXChooseFBConfigSGIX (Display *, int, int *, int *);  extern GLXFBConfigSGIX * glXChooseFBConfigSGIX (Display *dpy, int screen, int *attrib_list, int *nelements);
684  extern GLXPixmap glXCreateGLXPixmapWithConfigSGIX (Display *, GLXFBConfigSGIX, Pixmap);  extern GLXPixmap glXCreateGLXPixmapWithConfigSGIX (Display *dpy, GLXFBConfigSGIX config, Pixmap pixmap);
685  extern GLXContext glXCreateContextWithConfigSGIX (Display *, GLXFBConfigSGIX, int, GLXContext, Bool);  extern GLXContext glXCreateContextWithConfigSGIX (Display *dpy, GLXFBConfigSGIX config, int render_type, GLXContext share_list, Bool direct);
686  extern XVisualInfo * glXGetVisualFromFBConfigSGIX (Display *, GLXFBConfigSGIX);  extern XVisualInfo * glXGetVisualFromFBConfigSGIX (Display *dpy, GLXFBConfigSGIX config);
687  extern GLXFBConfigSGIX glXGetFBConfigFromVisualSGIX (Display *, XVisualInfo *);  extern GLXFBConfigSGIX glXGetFBConfigFromVisualSGIX (Display *dpy, XVisualInfo *vis);
688  #endif /* GLX_GLXEXT_PROTOTYPES */  #endif /* GLX_GLXEXT_PROTOTYPES */
689  typedef int ( * PFNGLXGETFBCONFIGATTRIBSGIXPROC) (Display *dpy, GLXFBConfigSGIX config, int attribute, int *value);  typedef int ( * PFNGLXGETFBCONFIGATTRIBSGIXPROC) (Display *dpy, GLXFBConfigSGIX config, int attribute, int *value);
690  typedef GLXFBConfigSGIX * ( * PFNGLXCHOOSEFBCONFIGSGIXPROC) (Display *dpy, int screen, int *attrib_list, int *nelements);  typedef GLXFBConfigSGIX * ( * PFNGLXCHOOSEFBCONFIGSGIXPROC) (Display *dpy, int screen, int *attrib_list, int *nelements);
# Line 607  typedef GLXFBConfigSGIX ( * PFNGLXGETFBC Line 697  typedef GLXFBConfigSGIX ( * PFNGLXGETFBC
697  #ifndef GLX_SGIX_pbuffer  #ifndef GLX_SGIX_pbuffer
698  #define GLX_SGIX_pbuffer 1  #define GLX_SGIX_pbuffer 1
699  #ifdef GLX_GLXEXT_PROTOTYPES  #ifdef GLX_GLXEXT_PROTOTYPES
700  extern GLXPbufferSGIX glXCreateGLXPbufferSGIX (Display *, GLXFBConfigSGIX, unsigned int, unsigned int, int *);  extern GLXPbufferSGIX glXCreateGLXPbufferSGIX (Display *dpy, GLXFBConfigSGIX config, unsigned int width, unsigned int height, int *attrib_list);
701  extern void glXDestroyGLXPbufferSGIX (Display *, GLXPbufferSGIX);  extern void glXDestroyGLXPbufferSGIX (Display *dpy, GLXPbufferSGIX pbuf);
702  extern int glXQueryGLXPbufferSGIX (Display *, GLXPbufferSGIX, int, unsigned int *);  extern int glXQueryGLXPbufferSGIX (Display *dpy, GLXPbufferSGIX pbuf, int attribute, unsigned int *value);
703  extern void glXSelectEventSGIX (Display *, GLXDrawable, unsigned long);  extern void glXSelectEventSGIX (Display *dpy, GLXDrawable drawable, unsigned long mask);
704  extern void glXGetSelectedEventSGIX (Display *, GLXDrawable, unsigned long *);  extern void glXGetSelectedEventSGIX (Display *dpy, GLXDrawable drawable, unsigned long *mask);
705  #endif /* GLX_GLXEXT_PROTOTYPES */  #endif /* GLX_GLXEXT_PROTOTYPES */
706  typedef GLXPbufferSGIX ( * PFNGLXCREATEGLXPBUFFERSGIXPROC) (Display *dpy, GLXFBConfigSGIX config, unsigned int width, unsigned int height, int *attrib_list);  typedef GLXPbufferSGIX ( * PFNGLXCREATEGLXPBUFFERSGIXPROC) (Display *dpy, GLXFBConfigSGIX config, unsigned int width, unsigned int height, int *attrib_list);
707  typedef void ( * PFNGLXDESTROYGLXPBUFFERSGIXPROC) (Display *dpy, GLXPbufferSGIX pbuf);  typedef void ( * PFNGLXDESTROYGLXPBUFFERSGIXPROC) (Display *dpy, GLXPbufferSGIX pbuf);
# Line 623  typedef void ( * PFNGLXGETSELECTEDEVENTS Line 713  typedef void ( * PFNGLXGETSELECTEDEVENTS
713  #ifndef GLX_SGI_cushion  #ifndef GLX_SGI_cushion
714  #define GLX_SGI_cushion 1  #define GLX_SGI_cushion 1
715  #ifdef GLX_GLXEXT_PROTOTYPES  #ifdef GLX_GLXEXT_PROTOTYPES
716  extern void glXCushionSGI (Display *, Window, float);  extern void glXCushionSGI (Display *dpy, Window window, float cushion);
717  #endif /* GLX_GLXEXT_PROTOTYPES */  #endif /* GLX_GLXEXT_PROTOTYPES */
718  typedef void ( * PFNGLXCUSHIONSGIPROC) (Display *dpy, Window window, float cushion);  typedef void ( * PFNGLXCUSHIONSGIPROC) (Display *dpy, Window window, float cushion);
719  #endif  #endif
# Line 631  typedef void ( * PFNGLXCUSHIONSGIPROC) ( Line 721  typedef void ( * PFNGLXCUSHIONSGIPROC) (
721  #ifndef GLX_SGIX_video_resize  #ifndef GLX_SGIX_video_resize
722  #define GLX_SGIX_video_resize 1  #define GLX_SGIX_video_resize 1
723  #ifdef GLX_GLXEXT_PROTOTYPES  #ifdef GLX_GLXEXT_PROTOTYPES
724  extern int glXBindChannelToWindowSGIX (Display *, int, int, Window);  extern int glXBindChannelToWindowSGIX (Display *display, int screen, int channel, Window window);
725  extern int glXChannelRectSGIX (Display *, int, int, int, int, int, int);  extern int glXChannelRectSGIX (Display *display, int screen, int channel, int x, int y, int w, int h);
726  extern int glXQueryChannelRectSGIX (Display *, int, int, int *, int *, int *, int *);  extern int glXQueryChannelRectSGIX (Display *display, int screen, int channel, int *dx, int *dy, int *dw, int *dh);
727  extern int glXQueryChannelDeltasSGIX (Display *, int, int, int *, int *, int *, int *);  extern int glXQueryChannelDeltasSGIX (Display *display, int screen, int channel, int *x, int *y, int *w, int *h);
728  extern int glXChannelRectSyncSGIX (Display *, int, int, GLenum);  extern int glXChannelRectSyncSGIX (Display *display, int screen, int channel, GLenum synctype);
729  #endif /* GLX_GLXEXT_PROTOTYPES */  #endif /* GLX_GLXEXT_PROTOTYPES */
730  typedef int ( * PFNGLXBINDCHANNELTOWINDOWSGIXPROC) (Display *display, int screen, int channel, Window window);  typedef int ( * PFNGLXBINDCHANNELTOWINDOWSGIXPROC) (Display *display, int screen, int channel, Window window);
731  typedef int ( * PFNGLXCHANNELRECTSGIXPROC) (Display *display, int screen, int channel, int x, int y, int w, int h);  typedef int ( * PFNGLXCHANNELRECTSGIXPROC) (Display *display, int screen, int channel, int x, int y, int w, int h);
# Line 648  typedef int ( * PFNGLXCHANNELRECTSYNCSGI Line 738  typedef int ( * PFNGLXCHANNELRECTSYNCSGI
738  #define GLX_SGIX_dmbuffer 1  #define GLX_SGIX_dmbuffer 1
739  #ifdef _DM_BUFFER_H_  #ifdef _DM_BUFFER_H_
740  #ifdef GLX_GLXEXT_PROTOTYPES  #ifdef GLX_GLXEXT_PROTOTYPES
741  extern Bool glXAssociateDMPbufferSGIX (Display *, GLXPbufferSGIX, DMparams *, DMbuffer);  extern Bool glXAssociateDMPbufferSGIX (Display *dpy, GLXPbufferSGIX pbuffer, DMparams *params, DMbuffer dmbuffer);
742  #endif /* GLX_GLXEXT_PROTOTYPES */  #endif /* GLX_GLXEXT_PROTOTYPES */
743  typedef Bool ( * PFNGLXASSOCIATEDMPBUFFERSGIXPROC) (Display *dpy, GLXPbufferSGIX pbuffer, DMparams *params, DMbuffer dmbuffer);  typedef Bool ( * PFNGLXASSOCIATEDMPBUFFERSGIXPROC) (Display *dpy, GLXPbufferSGIX pbuffer, DMparams *params, DMbuffer dmbuffer);
744  #endif /* _DM_BUFFER_H_ */  #endif /* _DM_BUFFER_H_ */
# Line 657  typedef Bool ( * PFNGLXASSOCIATEDMPBUFFE Line 747  typedef Bool ( * PFNGLXASSOCIATEDMPBUFFE
747  #ifndef GLX_SGIX_swap_group  #ifndef GLX_SGIX_swap_group
748  #define GLX_SGIX_swap_group 1  #define GLX_SGIX_swap_group 1
749  #ifdef GLX_GLXEXT_PROTOTYPES  #ifdef GLX_GLXEXT_PROTOTYPES
750  extern void glXJoinSwapGroupSGIX (Display *, GLXDrawable, GLXDrawable);  extern void glXJoinSwapGroupSGIX (Display *dpy, GLXDrawable drawable, GLXDrawable member);
751  #endif /* GLX_GLXEXT_PROTOTYPES */  #endif /* GLX_GLXEXT_PROTOTYPES */
752  typedef void ( * PFNGLXJOINSWAPGROUPSGIXPROC) (Display *dpy, GLXDrawable drawable, GLXDrawable member);  typedef void ( * PFNGLXJOINSWAPGROUPSGIXPROC) (Display *dpy, GLXDrawable drawable, GLXDrawable member);
753  #endif  #endif
# Line 665  typedef void ( * PFNGLXJOINSWAPGROUPSGIX Line 755  typedef void ( * PFNGLXJOINSWAPGROUPSGIX
755  #ifndef GLX_SGIX_swap_barrier  #ifndef GLX_SGIX_swap_barrier
756  #define GLX_SGIX_swap_barrier 1  #define GLX_SGIX_swap_barrier 1
757  #ifdef GLX_GLXEXT_PROTOTYPES  #ifdef GLX_GLXEXT_PROTOTYPES
758  extern void glXBindSwapBarrierSGIX (Display *, GLXDrawable, int);  extern void glXBindSwapBarrierSGIX (Display *dpy, GLXDrawable drawable, int barrier);
759  extern Bool glXQueryMaxSwapBarriersSGIX (Display *, int, int *);  extern Bool glXQueryMaxSwapBarriersSGIX (Display *dpy, int screen, int *max);
760  #endif /* GLX_GLXEXT_PROTOTYPES */  #endif /* GLX_GLXEXT_PROTOTYPES */
761  typedef void ( * PFNGLXBINDSWAPBARRIERSGIXPROC) (Display *dpy, GLXDrawable drawable, int barrier);  typedef void ( * PFNGLXBINDSWAPBARRIERSGIXPROC) (Display *dpy, GLXDrawable drawable, int barrier);
762  typedef Bool ( * PFNGLXQUERYMAXSWAPBARRIERSSGIXPROC) (Display *dpy, int screen, int *max);  typedef Bool ( * PFNGLXQUERYMAXSWAPBARRIERSSGIXPROC) (Display *dpy, int screen, int *max);
# Line 675  typedef Bool ( * PFNGLXQUERYMAXSWAPBARRI Line 765  typedef Bool ( * PFNGLXQUERYMAXSWAPBARRI
765  #ifndef GLX_SUN_get_transparent_index  #ifndef GLX_SUN_get_transparent_index
766  #define GLX_SUN_get_transparent_index 1  #define GLX_SUN_get_transparent_index 1
767  #ifdef GLX_GLXEXT_PROTOTYPES  #ifdef GLX_GLXEXT_PROTOTYPES
768  extern Status glXGetTransparentIndexSUN (Display *, Window, Window, long *);  extern Status glXGetTransparentIndexSUN (Display *dpy, Window overlay, Window underlay, long *pTransparentIndex);
769  #endif /* GLX_GLXEXT_PROTOTYPES */  #endif /* GLX_GLXEXT_PROTOTYPES */
770  typedef Status ( * PFNGLXGETTRANSPARENTINDEXSUNPROC) (Display *dpy, Window overlay, Window underlay, long *pTransparentIndex);  typedef Status ( * PFNGLXGETTRANSPARENTINDEXSUNPROC) (Display *dpy, Window overlay, Window underlay, long *pTransparentIndex);
771  #endif  #endif
# Line 683  typedef Status ( * PFNGLXGETTRANSPARENTI Line 773  typedef Status ( * PFNGLXGETTRANSPARENTI
773  #ifndef GLX_MESA_copy_sub_buffer  #ifndef GLX_MESA_copy_sub_buffer
774  #define GLX_MESA_copy_sub_buffer 1  #define GLX_MESA_copy_sub_buffer 1
775  #ifdef GLX_GLXEXT_PROTOTYPES  #ifdef GLX_GLXEXT_PROTOTYPES
776  extern void glXCopySubBufferMESA (Display *, GLXDrawable, int, int, int, int);  extern void glXCopySubBufferMESA (Display *dpy, GLXDrawable drawable, int x, int y, int width, int height);
777  #endif /* GLX_GLXEXT_PROTOTYPES */  #endif /* GLX_GLXEXT_PROTOTYPES */
778  typedef void ( * PFNGLXCOPYSUBBUFFERMESAPROC) (Display *dpy, GLXDrawable drawable, int x, int y, int width, int height);  typedef void ( * PFNGLXCOPYSUBBUFFERMESAPROC) (Display *dpy, GLXDrawable drawable, int x, int y, int width, int height);
779  #endif  #endif
# Line 691  typedef void ( * PFNGLXCOPYSUBBUFFERMESA Line 781  typedef void ( * PFNGLXCOPYSUBBUFFERMESA
781  #ifndef GLX_MESA_pixmap_colormap  #ifndef GLX_MESA_pixmap_colormap
782  #define GLX_MESA_pixmap_colormap 1  #define GLX_MESA_pixmap_colormap 1
783  #ifdef GLX_GLXEXT_PROTOTYPES  #ifdef GLX_GLXEXT_PROTOTYPES
784  extern GLXPixmap glXCreateGLXPixmapMESA (Display *, XVisualInfo *, Pixmap, Colormap);  extern GLXPixmap glXCreateGLXPixmapMESA (Display *dpy, XVisualInfo *visual, Pixmap pixmap, Colormap cmap);
785  #endif /* GLX_GLXEXT_PROTOTYPES */  #endif /* GLX_GLXEXT_PROTOTYPES */
786  typedef GLXPixmap ( * PFNGLXCREATEGLXPIXMAPMESAPROC) (Display *dpy, XVisualInfo *visual, Pixmap pixmap, Colormap cmap);  typedef GLXPixmap ( * PFNGLXCREATEGLXPIXMAPMESAPROC) (Display *dpy, XVisualInfo *visual, Pixmap pixmap, Colormap cmap);
787  #endif  #endif
# Line 699  typedef GLXPixmap ( * PFNGLXCREATEGLXPIX Line 789  typedef GLXPixmap ( * PFNGLXCREATEGLXPIX
789  #ifndef GLX_MESA_release_buffers  #ifndef GLX_MESA_release_buffers
790  #define GLX_MESA_release_buffers 1  #define GLX_MESA_release_buffers 1
791  #ifdef GLX_GLXEXT_PROTOTYPES  #ifdef GLX_GLXEXT_PROTOTYPES
792  extern Bool glXReleaseBuffersMESA (Display *, GLXDrawable);  extern Bool glXReleaseBuffersMESA (Display *dpy, GLXDrawable drawable);
793  #endif /* GLX_GLXEXT_PROTOTYPES */  #endif /* GLX_GLXEXT_PROTOTYPES */
794  typedef Bool ( * PFNGLXRELEASEBUFFERSMESAPROC) (Display *dpy, GLXDrawable drawable);  typedef Bool ( * PFNGLXRELEASEBUFFERSMESAPROC) (Display *dpy, GLXDrawable drawable);
795  #endif  #endif
# Line 707  typedef Bool ( * PFNGLXRELEASEBUFFERSMES Line 797  typedef Bool ( * PFNGLXRELEASEBUFFERSMES
797  #ifndef GLX_MESA_set_3dfx_mode  #ifndef GLX_MESA_set_3dfx_mode
798  #define GLX_MESA_set_3dfx_mode 1  #define GLX_MESA_set_3dfx_mode 1
799  #ifdef GLX_GLXEXT_PROTOTYPES  #ifdef GLX_GLXEXT_PROTOTYPES
800  extern Bool glXSet3DfxModeMESA (int);  extern Bool glXSet3DfxModeMESA (int mode);
801  #endif /* GLX_GLXEXT_PROTOTYPES */  #endif /* GLX_GLXEXT_PROTOTYPES */
802  typedef Bool ( * PFNGLXSET3DFXMODEMESAPROC) (int mode);  typedef Bool ( * PFNGLXSET3DFXMODEMESAPROC) (int mode);
803  #endif  #endif
# Line 723  typedef Bool ( * PFNGLXSET3DFXMODEMESAPR Line 813  typedef Bool ( * PFNGLXSET3DFXMODEMESAPR
813  #ifndef GLX_OML_sync_control  #ifndef GLX_OML_sync_control
814  #define GLX_OML_sync_control 1  #define GLX_OML_sync_control 1
815  #ifdef GLX_GLXEXT_PROTOTYPES  #ifdef GLX_GLXEXT_PROTOTYPES
816  extern Bool glXGetSyncValuesOML (Display *, GLXDrawable, int64_t *, int64_t *, int64_t *);  extern Bool glXGetSyncValuesOML (Display *dpy, GLXDrawable drawable, int64_t *ust, int64_t *msc, int64_t *sbc);
817  extern Bool glXGetMscRateOML (Display *, GLXDrawable, int32_t *, int32_t *);  extern Bool glXGetMscRateOML (Display *dpy, GLXDrawable drawable, int32_t *numerator, int32_t *denominator);
818  extern int64_t glXSwapBuffersMscOML (Display *, GLXDrawable, int64_t, int64_t, int64_t);  extern int64_t glXSwapBuffersMscOML (Display *dpy, GLXDrawable drawable, int64_t target_msc, int64_t divisor, int64_t remainder);
819  extern Bool glXWaitForMscOML (Display *, GLXDrawable, int64_t, int64_t, int64_t, int64_t *, int64_t *, int64_t *);  extern Bool glXWaitForMscOML (Display *dpy, GLXDrawable drawable, int64_t target_msc, int64_t divisor, int64_t remainder, int64_t *ust, int64_t *msc, int64_t *sbc);
820  extern Bool glXWaitForSbcOML (Display *, GLXDrawable, int64_t, int64_t *, int64_t *, int64_t *);  extern Bool glXWaitForSbcOML (Display *dpy, GLXDrawable drawable, int64_t target_sbc, int64_t *ust, int64_t *msc, int64_t *sbc);
821  #endif /* GLX_GLXEXT_PROTOTYPES */  #endif /* GLX_GLXEXT_PROTOTYPES */
822  typedef Bool ( * PFNGLXGETSYNCVALUESOMLPROC) (Display *dpy, GLXDrawable drawable, int64_t *ust, int64_t *msc, int64_t *sbc);  typedef Bool ( * PFNGLXGETSYNCVALUESOMLPROC) (Display *dpy, GLXDrawable drawable, int64_t *ust, int64_t *msc, int64_t *sbc);
823  typedef Bool ( * PFNGLXGETMSCRATEOMLPROC) (Display *dpy, GLXDrawable drawable, int32_t *numerator, int32_t *denominator);  typedef Bool ( * PFNGLXGETMSCRATEOMLPROC) (Display *dpy, GLXDrawable drawable, int32_t *numerator, int32_t *denominator);
# Line 768  typedef struct { Line 858  typedef struct {
858  } GLXPipeRectLimits;  } GLXPipeRectLimits;
859    
860  #ifdef GLX_GLXEXT_PROTOTYPES  #ifdef GLX_GLXEXT_PROTOTYPES
861  extern GLXHyperpipeNetworkSGIX * glXQueryHyperpipeNetworkSGIX (Display *, int *);  extern GLXHyperpipeNetworkSGIX * glXQueryHyperpipeNetworkSGIX (Display *dpy, int *npipes);
862  extern int glXHyperpipeConfigSGIX (Display *, int, int, GLXHyperpipeConfigSGIX *, int *);  extern int glXHyperpipeConfigSGIX (Display *dpy, int networkId, int npipes, GLXHyperpipeConfigSGIX *cfg, int *hpId);
863  extern GLXHyperpipeConfigSGIX * glXQueryHyperpipeConfigSGIX (Display *, int, int *);  extern GLXHyperpipeConfigSGIX * glXQueryHyperpipeConfigSGIX (Display *dpy, int hpId, int *npipes);
864  extern int glXDestroyHyperpipeConfigSGIX (Display *, int);  extern int glXDestroyHyperpipeConfigSGIX (Display *dpy, int hpId);
865  extern int glXBindHyperpipeSGIX (Display *, int);  extern int glXBindHyperpipeSGIX (Display *dpy, int hpId);
866  extern int glXQueryHyperpipeBestAttribSGIX (Display *, int, int, int, void *, void *);  extern int glXQueryHyperpipeBestAttribSGIX (Display *dpy, int timeSlice, int attrib, int size, void *attribList, void *returnAttribList);
867  extern int glXHyperpipeAttribSGIX (Display *, int, int, int, void *);  extern int glXHyperpipeAttribSGIX (Display *dpy, int timeSlice, int attrib, int size, void *attribList);
868  extern int glXQueryHyperpipeAttribSGIX (Display *, int, int, int, void *);  extern int glXQueryHyperpipeAttribSGIX (Display *dpy, int timeSlice, int attrib, int size, void *returnAttribList);
869  #endif /* GLX_GLXEXT_PROTOTYPES */  #endif /* GLX_GLXEXT_PROTOTYPES */
870  typedef GLXHyperpipeNetworkSGIX * ( * PFNGLXQUERYHYPERPIPENETWORKSGIXPROC) (Display *dpy, int *npipes);  typedef GLXHyperpipeNetworkSGIX * ( * PFNGLXQUERYHYPERPIPENETWORKSGIXPROC) (Display *dpy, int *npipes);
871  typedef int ( * PFNGLXHYPERPIPECONFIGSGIXPROC) (Display *dpy, int networkId, int npipes, GLXHyperpipeConfigSGIX *cfg, int *hpId);  typedef int ( * PFNGLXHYPERPIPECONFIGSGIXPROC) (Display *dpy, int networkId, int npipes, GLXHyperpipeConfigSGIX *cfg, int *hpId);
# Line 790  typedef int ( * PFNGLXQUERYHYPERPIPEATTR Line 880  typedef int ( * PFNGLXQUERYHYPERPIPEATTR
880  #ifndef GLX_MESA_agp_offset  #ifndef GLX_MESA_agp_offset
881  #define GLX_MESA_agp_offset 1  #define GLX_MESA_agp_offset 1
882  #ifdef GLX_GLXEXT_PROTOTYPES  #ifdef GLX_GLXEXT_PROTOTYPES
883  extern unsigned int glXGetAGPOffsetMESA (const void *);  extern unsigned int glXGetAGPOffsetMESA (const void *pointer);
884  #endif /* GLX_GLXEXT_PROTOTYPES */  #endif /* GLX_GLXEXT_PROTOTYPES */
885  typedef unsigned int ( * PFNGLXGETAGPOFFSETMESAPROC) (const void *pointer);  typedef unsigned int ( * PFNGLXGETAGPOFFSETMESAPROC) (const void *pointer);
886  #endif  #endif
# Line 806  typedef unsigned int ( * PFNGLXGETAGPOFF Line 896  typedef unsigned int ( * PFNGLXGETAGPOFF
896  #ifndef GLX_EXT_texture_from_pixmap  #ifndef GLX_EXT_texture_from_pixmap
897  #define GLX_EXT_texture_from_pixmap 1  #define GLX_EXT_texture_from_pixmap 1
898  #ifdef GLX_GLXEXT_PROTOTYPES  #ifdef GLX_GLXEXT_PROTOTYPES
899  extern void glXBindTexImageEXT (Display *, GLXDrawable, int, const int *);  extern void glXBindTexImageEXT (Display *dpy, GLXDrawable drawable, int buffer, const int *attrib_list);
900  extern void glXReleaseTexImageEXT (Display *, GLXDrawable, int);  extern void glXReleaseTexImageEXT (Display *dpy, GLXDrawable drawable, int buffer);
901  #endif /* GLX_GLXEXT_PROTOTYPES */  #endif /* GLX_GLXEXT_PROTOTYPES */
902  typedef void ( * PFNGLXBINDTEXIMAGEEXTPROC) (Display *dpy, GLXDrawable drawable, int buffer, const int *attrib_list);  typedef void ( * PFNGLXBINDTEXIMAGEEXTPROC) (Display *dpy, GLXDrawable drawable, int buffer, const int *attrib_list);
903  typedef void ( * PFNGLXRELEASETEXIMAGEEXTPROC) (Display *dpy, GLXDrawable drawable, int buffer);  typedef void ( * PFNGLXRELEASETEXIMAGEEXTPROC) (Display *dpy, GLXDrawable drawable, int buffer);
# Line 815  typedef void ( * PFNGLXRELEASETEXIMAGEEX Line 905  typedef void ( * PFNGLXRELEASETEXIMAGEEX
905    
906  #ifndef GLX_NV_present_video  #ifndef GLX_NV_present_video
907  #define GLX_NV_present_video 1  #define GLX_NV_present_video 1
908    #ifdef GLX_GLXEXT_PROTOTYPES
909    extern unsigned int * glXEnumerateVideoDevicesNV (Display *dpy, int screen, int *nelements);
910    extern int glXBindVideoDeviceNV (Display *dpy, unsigned int video_slot, unsigned int video_device, const int *attrib_list);
911    #endif /* GLX_GLXEXT_PROTOTYPES */
912    typedef unsigned int * ( * PFNGLXENUMERATEVIDEODEVICESNVPROC) (Display *dpy, int screen, int *nelements);
913    typedef int ( * PFNGLXBINDVIDEODEVICENVPROC) (Display *dpy, unsigned int video_slot, unsigned int video_device, const int *attrib_list);
914  #endif  #endif
915    
916  #ifndef GLX_NV_video_out  #ifndef GLX_NV_video_output
917  #define GLX_NV_video_out 1  #define GLX_NV_video_output 1
918    #ifdef GLX_GLXEXT_PROTOTYPES
919    extern int glXGetVideoDeviceNV (Display *dpy, int screen, int numVideoDevices, GLXVideoDeviceNV *pVideoDevice);
920    extern int glXReleaseVideoDeviceNV (Display *dpy, int screen, GLXVideoDeviceNV VideoDevice);
921    extern int glXBindVideoImageNV (Display *dpy, GLXVideoDeviceNV VideoDevice, GLXPbuffer pbuf, int iVideoBuffer);
922    extern int glXReleaseVideoImageNV (Display *dpy, GLXPbuffer pbuf);
923    extern int glXSendPbufferToVideoNV (Display *dpy, GLXPbuffer pbuf, int iBufferType, unsigned long *pulCounterPbuffer, GLboolean bBlock);
924    extern int glXGetVideoInfoNV (Display *dpy, int screen, GLXVideoDeviceNV VideoDevice, unsigned long *pulCounterOutputPbuffer, unsigned long *pulCounterOutputVideo);
925    #endif /* GLX_GLXEXT_PROTOTYPES */
926    typedef int ( * PFNGLXGETVIDEODEVICENVPROC) (Display *dpy, int screen, int numVideoDevices, GLXVideoDeviceNV *pVideoDevice);
927    typedef int ( * PFNGLXRELEASEVIDEODEVICENVPROC) (Display *dpy, int screen, GLXVideoDeviceNV VideoDevice);
928    typedef int ( * PFNGLXBINDVIDEOIMAGENVPROC) (Display *dpy, GLXVideoDeviceNV VideoDevice, GLXPbuffer pbuf, int iVideoBuffer);
929    typedef int ( * PFNGLXRELEASEVIDEOIMAGENVPROC) (Display *dpy, GLXPbuffer pbuf);
930    typedef int ( * PFNGLXSENDPBUFFERTOVIDEONVPROC) (Display *dpy, GLXPbuffer pbuf, int iBufferType, unsigned long *pulCounterPbuffer, GLboolean bBlock);
931    typedef int ( * PFNGLXGETVIDEOINFONVPROC) (Display *dpy, int screen, GLXVideoDeviceNV VideoDevice, unsigned long *pulCounterOutputPbuffer, unsigned long *pulCounterOutputVideo);
932  #endif  #endif
933    
934  #ifndef GLX_NV_swap_group  #ifndef GLX_NV_swap_group
935  #define GLX_NV_swap_group 1  #define GLX_NV_swap_group 1
936    #ifdef GLX_GLXEXT_PROTOTYPES
937    extern Bool glXJoinSwapGroupNV (Display *dpy, GLXDrawable drawable, GLuint group);
938    extern Bool glXBindSwapBarrierNV (Display *dpy, GLuint group, GLuint barrier);
939    extern Bool glXQuerySwapGroupNV (Display *dpy, GLXDrawable drawable, GLuint *group, GLuint *barrier);
940    extern Bool glXQueryMaxSwapGroupsNV (Display *dpy, int screen, GLuint *maxGroups, GLuint *maxBarriers);
941    extern Bool glXQueryFrameCountNV (Display *dpy, int screen, GLuint *count);
942    extern Bool glXResetFrameCountNV (Display *dpy, int screen);
943    #endif /* GLX_GLXEXT_PROTOTYPES */
944    typedef Bool ( * PFNGLXJOINSWAPGROUPNVPROC) (Display *dpy, GLXDrawable drawable, GLuint group);
945    typedef Bool ( * PFNGLXBINDSWAPBARRIERNVPROC) (Display *dpy, GLuint group, GLuint barrier);
946    typedef Bool ( * PFNGLXQUERYSWAPGROUPNVPROC) (Display *dpy, GLXDrawable drawable, GLuint *group, GLuint *barrier);
947    typedef Bool ( * PFNGLXQUERYMAXSWAPGROUPSNVPROC) (Display *dpy, int screen, GLuint *maxGroups, GLuint *maxBarriers);
948    typedef Bool ( * PFNGLXQUERYFRAMECOUNTNVPROC) (Display *dpy, int screen, GLuint *count);
949    typedef Bool ( * PFNGLXRESETFRAMECOUNTNVPROC) (Display *dpy, int screen);
950    #endif
951    
952    #ifndef GLX_NV_video_capture
953    #define GLX_NV_video_capture 1
954    #ifdef GLX_GLXEXT_PROTOTYPES
955    extern int glXBindVideoCaptureDeviceNV (Display *dpy, unsigned int video_capture_slot, GLXVideoCaptureDeviceNV device);
956    extern GLXVideoCaptureDeviceNV * glXEnumerateVideoCaptureDevicesNV (Display *dpy, int screen, int *nelements);
957    extern void glXLockVideoCaptureDeviceNV (Display *dpy, GLXVideoCaptureDeviceNV device);
958    extern int glXQueryVideoCaptureDeviceNV (Display *dpy, GLXVideoCaptureDeviceNV device, int attribute, int *value);
959    extern void glXReleaseVideoCaptureDeviceNV (Display *dpy, GLXVideoCaptureDeviceNV device);
960    #endif /* GLX_GLXEXT_PROTOTYPES */
961    typedef int ( * PFNGLXBINDVIDEOCAPTUREDEVICENVPROC) (Display *dpy, unsigned int video_capture_slot, GLXVideoCaptureDeviceNV device);
962    typedef GLXVideoCaptureDeviceNV * ( * PFNGLXENUMERATEVIDEOCAPTUREDEVICESNVPROC) (Display *dpy, int screen, int *nelements);
963    typedef void ( * PFNGLXLOCKVIDEOCAPTUREDEVICENVPROC) (Display *dpy, GLXVideoCaptureDeviceNV device);
964    typedef int ( * PFNGLXQUERYVIDEOCAPTUREDEVICENVPROC) (Display *dpy, GLXVideoCaptureDeviceNV device, int attribute, int *value);
965    typedef void ( * PFNGLXRELEASEVIDEOCAPTUREDEVICENVPROC) (Display *dpy, GLXVideoCaptureDeviceNV device);
966    #endif
967    
968    #ifndef GLX_EXT_swap_control
969    #define GLX_EXT_swap_control 1
970    #ifdef GLX_GLXEXT_PROTOTYPES
971    extern void glXSwapIntervalEXT (Display *dpy, GLXDrawable drawable, int interval);
972    #endif /* GLX_GLXEXT_PROTOTYPES */
973    typedef void ( * PFNGLXSWAPINTERVALEXTPROC) (Display *dpy, GLXDrawable drawable, int interval);
974    #endif
975    
976    #ifndef GLX_NV_copy_image
977    #define GLX_NV_copy_image 1
978    #ifdef GLX_GLXEXT_PROTOTYPES
979    extern void glXCopyImageSubDataNV (Display *dpy, GLXContext srcCtx, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLXContext dstCtx, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei width, GLsizei height, GLsizei depth);
980    #endif /* GLX_GLXEXT_PROTOTYPES */
981    typedef void ( * PFNGLXCOPYIMAGESUBDATANVPROC) (Display *dpy, GLXContext srcCtx, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLXContext dstCtx, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei width, GLsizei height, GLsizei depth);
982    #endif
983    
984    #ifndef GLX_INTEL_swap_event
985    #define GLX_INTEL_swap_event 1
986    #endif
987    
988    #ifndef GLX_NV_multisample_coverage
989    #define GLX_NV_multisample_coverage 1
990    #endif
991    
992    #ifndef GLX_EXT_swap_control_tear
993    #define GLX_EXT_swap_control_tear 1
994  #endif  #endif
995    
996    

Legend:
Removed from v.789  
changed lines
  Added in v.1813