Magellan Linux

Diff of /tags/openglupdate-2_3_12/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 969 by niro, Tue Apr 6 22:28:07 2010 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-2010 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 2010/02/10 */
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 27
54    
55  #ifndef GLX_VERSION_1_3  #ifndef GLX_VERSION_1_3
56  #define GLX_WINDOW_BIT                     0x00000001  #define GLX_WINDOW_BIT                     0x00000001
# Line 135  extern "C" { Line 137  extern "C" {
137  #define GLX_CONTEXT_FLAGS_ARB              0x2094  #define GLX_CONTEXT_FLAGS_ARB              0x2094
138  #endif  #endif
139    
140    #ifndef GLX_ARB_create_context_profile
141    #define GLX_CONTEXT_CORE_PROFILE_BIT_ARB   0x00000001
142    #define GLX_CONTEXT_COMPATIBILITY_PROFILE_BIT_ARB 0x00000002
143    #define GLX_CONTEXT_PROFILE_MASK_ARB       0x9126
144    #endif
145    
146  #ifndef GLX_SGIS_multisample  #ifndef GLX_SGIS_multisample
147  #define GLX_SAMPLE_BUFFERS_SGIS            100000  #define GLX_SAMPLE_BUFFERS_SGIS            100000
148  #define GLX_SAMPLES_SGIS                   100001  #define GLX_SAMPLES_SGIS                   100001
# Line 374  extern "C" { Line 382  extern "C" {
382  #ifndef GLX_NV_swap_group  #ifndef GLX_NV_swap_group
383  #endif  #endif
384    
385    #ifndef GLX_NV_video_capture
386    #define GLX_DEVICE_ID_NV                   0x20CD
387    #define GLX_UNIQUE_ID_NV                   0x20CE
388    #define GLX_NUM_VIDEO_CAPTURE_SLOTS_NV     0x20CF
389    #endif
390    
391    #ifndef GLX_EXT_swap_control
392    #define GLX_SWAP_INTERVAL_EXT              0x20F1
393    #define GLX_MAX_SWAP_INTERVAL_EXT          0x20F2
394    #endif
395    
396    #ifndef GLX_NV_copy_image
397    #endif
398    
399    #ifndef GLX_INTEL_swap_event
400    #define GLX_BUFFER_SWAP_COMPLETE_INTEL_MASK 0x04000000
401    #define GLX_EXCHANGE_COMPLETE_INTEL        0x8180
402    #define GLX_COPY_COMPLETE_INTEL            0x8181
403    #define GLX_FLIP_COMPLETE_INTEL            0x8182
404    #endif
405    
406    
407  /*************************************************************/  /*************************************************************/
408    
# Line 407  typedef struct { Line 436  typedef struct {
436  } GLXBufferClobberEventSGIX;  } GLXBufferClobberEventSGIX;
437  #endif  #endif
438    
439    #ifndef GLX_NV_video_output
440    typedef unsigned int GLXVideoDeviceNV;
441    #endif
442    
443    #ifndef GLX_NV_video_capture
444    typedef XID GLXVideoCaptureDeviceNV;
445    #endif
446    
447  #ifndef GLEXT_64_TYPES_DEFINED  #ifndef GLEXT_64_TYPES_DEFINED
448  /* This code block is duplicated in glext.h, so must be protected */  /* This code block is duplicated in glext.h, so must be protected */
449  #define GLEXT_64_TYPES_DEFINED  #define GLEXT_64_TYPES_DEFINED
# Line 447  typedef unsigned __int64 uint64_t; Line 484  typedef unsigned __int64 uint64_t;
484  #ifndef GLX_VERSION_1_3  #ifndef GLX_VERSION_1_3
485  #define GLX_VERSION_1_3 1  #define GLX_VERSION_1_3 1
486  #ifdef GLX_GLXEXT_PROTOTYPES  #ifdef GLX_GLXEXT_PROTOTYPES
487  extern GLXFBConfig * glXGetFBConfigs (Display *, int, int *);  extern GLXFBConfig * glXGetFBConfigs (Display *dpy, int screen, int *nelements);
488  extern GLXFBConfig * glXChooseFBConfig (Display *, int, const int *, int *);  extern GLXFBConfig * glXChooseFBConfig (Display *dpy, int screen, const int *attrib_list, int *nelements);
489  extern int glXGetFBConfigAttrib (Display *, GLXFBConfig, int, int *);  extern int glXGetFBConfigAttrib (Display *dpy, GLXFBConfig config, int attribute, int *value);
490  extern XVisualInfo * glXGetVisualFromFBConfig (Display *, GLXFBConfig);  extern XVisualInfo * glXGetVisualFromFBConfig (Display *dpy, GLXFBConfig config);
491  extern GLXWindow glXCreateWindow (Display *, GLXFBConfig, Window, const int *);  extern GLXWindow glXCreateWindow (Display *dpy, GLXFBConfig config, Window win, const int *attrib_list);
492  extern void glXDestroyWindow (Display *, GLXWindow);  extern void glXDestroyWindow (Display *dpy, GLXWindow win);
493  extern GLXPixmap glXCreatePixmap (Display *, GLXFBConfig, Pixmap, const int *);  extern GLXPixmap glXCreatePixmap (Display *dpy, GLXFBConfig config, Pixmap pixmap, const int *attrib_list);
494  extern void glXDestroyPixmap (Display *, GLXPixmap);  extern void glXDestroyPixmap (Display *dpy, GLXPixmap pixmap);
495  extern GLXPbuffer glXCreatePbuffer (Display *, GLXFBConfig, const int *);  extern GLXPbuffer glXCreatePbuffer (Display *dpy, GLXFBConfig config, const int *attrib_list);
496  extern void glXDestroyPbuffer (Display *, GLXPbuffer);  extern void glXDestroyPbuffer (Display *dpy, GLXPbuffer pbuf);
497  extern void glXQueryDrawable (Display *, GLXDrawable, int, unsigned int *);  extern void glXQueryDrawable (Display *dpy, GLXDrawable draw, int attribute, unsigned int *value);
498  extern GLXContext glXCreateNewContext (Display *, GLXFBConfig, int, GLXContext, Bool);  extern GLXContext glXCreateNewContext (Display *dpy, GLXFBConfig config, int render_type, GLXContext share_list, Bool direct);
499  extern Bool glXMakeContextCurrent (Display *, GLXDrawable, GLXDrawable, GLXContext);  extern Bool glXMakeContextCurrent (Display *dpy, GLXDrawable draw, GLXDrawable read, GLXContext ctx);
500  extern GLXDrawable glXGetCurrentReadDrawable (void);  extern GLXDrawable glXGetCurrentReadDrawable (void);
501  extern Display * glXGetCurrentDisplay (void);  extern Display * glXGetCurrentDisplay (void);
502  extern int glXQueryContext (Display *, GLXContext, int, int *);  extern int glXQueryContext (Display *dpy, GLXContext ctx, int attribute, int *value);
503  extern void glXSelectEvent (Display *, GLXDrawable, unsigned long);  extern void glXSelectEvent (Display *dpy, GLXDrawable draw, unsigned long event_mask);
504  extern void glXGetSelectedEvent (Display *, GLXDrawable, unsigned long *);  extern void glXGetSelectedEvent (Display *dpy, GLXDrawable draw, unsigned long *event_mask);
505  #endif /* GLX_GLXEXT_PROTOTYPES */  #endif /* GLX_GLXEXT_PROTOTYPES */
506  typedef GLXFBConfig * ( * PFNGLXGETFBCONFIGSPROC) (Display *dpy, int screen, int *nelements);  typedef GLXFBConfig * ( * PFNGLXGETFBCONFIGSPROC) (Display *dpy, int screen, int *nelements);
507  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 526  typedef void ( * PFNGLXGETSELECTEDEVENTP
526  #ifndef GLX_VERSION_1_4  #ifndef GLX_VERSION_1_4
527  #define GLX_VERSION_1_4 1  #define GLX_VERSION_1_4 1
528  #ifdef GLX_GLXEXT_PROTOTYPES  #ifdef GLX_GLXEXT_PROTOTYPES
529  extern __GLXextFuncPtr glXGetProcAddress (const GLubyte *);  extern __GLXextFuncPtr glXGetProcAddress (const GLubyte *procName);
530  #endif /* GLX_GLXEXT_PROTOTYPES */  #endif /* GLX_GLXEXT_PROTOTYPES */
531  typedef __GLXextFuncPtr ( * PFNGLXGETPROCADDRESSPROC) (const GLubyte *procName);  typedef __GLXextFuncPtr ( * PFNGLXGETPROCADDRESSPROC) (const GLubyte *procName);
532  #endif  #endif
# Line 497  typedef __GLXextFuncPtr ( * PFNGLXGETPRO Line 534  typedef __GLXextFuncPtr ( * PFNGLXGETPRO
534  #ifndef GLX_ARB_get_proc_address  #ifndef GLX_ARB_get_proc_address
535  #define GLX_ARB_get_proc_address 1  #define GLX_ARB_get_proc_address 1
536  #ifdef GLX_GLXEXT_PROTOTYPES  #ifdef GLX_GLXEXT_PROTOTYPES
537  extern __GLXextFuncPtr glXGetProcAddressARB (const GLubyte *);  extern __GLXextFuncPtr glXGetProcAddressARB (const GLubyte *procName);
538  #endif /* GLX_GLXEXT_PROTOTYPES */  #endif /* GLX_GLXEXT_PROTOTYPES */
539  typedef __GLXextFuncPtr ( * PFNGLXGETPROCADDRESSARBPROC) (const GLubyte *procName);  typedef __GLXextFuncPtr ( * PFNGLXGETPROCADDRESSARBPROC) (const GLubyte *procName);
540  #endif  #endif
# Line 513  typedef __GLXextFuncPtr ( * PFNGLXGETPRO Line 550  typedef __GLXextFuncPtr ( * PFNGLXGETPRO
550  #ifndef GLX_ARB_create_context  #ifndef GLX_ARB_create_context
551  #define GLX_ARB_create_context 1  #define GLX_ARB_create_context 1
552  #ifdef GLX_GLXEXT_PROTOTYPES  #ifdef GLX_GLXEXT_PROTOTYPES
553  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);
554  #endif /* GLX_GLXEXT_PROTOTYPES */  #endif /* GLX_GLXEXT_PROTOTYPES */
555  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);
556  #endif  #endif
557    
558    #ifndef GLX_ARB_create_context_profile
559    #define GLX_ARB_create_context_profile 1
560    #endif
561    
562  #ifndef GLX_SGIS_multisample  #ifndef GLX_SGIS_multisample
563  #define GLX_SGIS_multisample 1  #define GLX_SGIS_multisample 1
564  #endif  #endif
# Line 529  typedef GLXContext ( * PFNGLXCREATECONTE Line 570  typedef GLXContext ( * PFNGLXCREATECONTE
570  #ifndef GLX_SGI_swap_control  #ifndef GLX_SGI_swap_control
571  #define GLX_SGI_swap_control 1  #define GLX_SGI_swap_control 1
572  #ifdef GLX_GLXEXT_PROTOTYPES  #ifdef GLX_GLXEXT_PROTOTYPES
573  extern int glXSwapIntervalSGI (int);  extern int glXSwapIntervalSGI (int interval);
574  #endif /* GLX_GLXEXT_PROTOTYPES */  #endif /* GLX_GLXEXT_PROTOTYPES */
575  typedef int ( * PFNGLXSWAPINTERVALSGIPROC) (int interval);  typedef int ( * PFNGLXSWAPINTERVALSGIPROC) (int interval);
576  #endif  #endif
# Line 537  typedef int ( * PFNGLXSWAPINTERVALSGIPRO Line 578  typedef int ( * PFNGLXSWAPINTERVALSGIPRO
578  #ifndef GLX_SGI_video_sync  #ifndef GLX_SGI_video_sync
579  #define GLX_SGI_video_sync 1  #define GLX_SGI_video_sync 1
580  #ifdef GLX_GLXEXT_PROTOTYPES  #ifdef GLX_GLXEXT_PROTOTYPES
581  extern int glXGetVideoSyncSGI (unsigned int *);  extern int glXGetVideoSyncSGI (unsigned int *count);
582  extern int glXWaitVideoSyncSGI (int, int, unsigned int *);  extern int glXWaitVideoSyncSGI (int divisor, int remainder, unsigned int *count);
583  #endif /* GLX_GLXEXT_PROTOTYPES */  #endif /* GLX_GLXEXT_PROTOTYPES */
584  typedef int ( * PFNGLXGETVIDEOSYNCSGIPROC) (unsigned int *count);  typedef int ( * PFNGLXGETVIDEOSYNCSGIPROC) (unsigned int *count);
585  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 588  typedef int ( * PFNGLXWAITVIDEOSYNCSGIPR
588  #ifndef GLX_SGI_make_current_read  #ifndef GLX_SGI_make_current_read
589  #define GLX_SGI_make_current_read 1  #define GLX_SGI_make_current_read 1
590  #ifdef GLX_GLXEXT_PROTOTYPES  #ifdef GLX_GLXEXT_PROTOTYPES
591  extern Bool glXMakeCurrentReadSGI (Display *, GLXDrawable, GLXDrawable, GLXContext);  extern Bool glXMakeCurrentReadSGI (Display *dpy, GLXDrawable draw, GLXDrawable read, GLXContext ctx);
592  extern GLXDrawable glXGetCurrentReadDrawableSGI (void);  extern GLXDrawable glXGetCurrentReadDrawableSGI (void);
593  #endif /* GLX_GLXEXT_PROTOTYPES */  #endif /* GLX_GLXEXT_PROTOTYPES */
594  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 599  typedef GLXDrawable ( * PFNGLXGETCURRENT
599  #define GLX_SGIX_video_source 1  #define GLX_SGIX_video_source 1
600  #ifdef _VL_H  #ifdef _VL_H
601  #ifdef GLX_GLXEXT_PROTOTYPES  #ifdef GLX_GLXEXT_PROTOTYPES
602  extern GLXVideoSourceSGIX glXCreateGLXVideoSourceSGIX (Display *, int, VLServer, VLPath, int, VLNode);  extern GLXVideoSourceSGIX glXCreateGLXVideoSourceSGIX (Display *display, int screen, VLServer server, VLPath path, int nodeClass, VLNode drainNode);
603  extern void glXDestroyGLXVideoSourceSGIX (Display *, GLXVideoSourceSGIX);  extern void glXDestroyGLXVideoSourceSGIX (Display *dpy, GLXVideoSourceSGIX glxvideosource);
604  #endif /* GLX_GLXEXT_PROTOTYPES */  #endif /* GLX_GLXEXT_PROTOTYPES */
605  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);
606  typedef void ( * PFNGLXDESTROYGLXVIDEOSOURCESGIXPROC) (Display *dpy, GLXVideoSourceSGIX glxvideosource);  typedef void ( * PFNGLXDESTROYGLXVIDEOSOURCESGIXPROC) (Display *dpy, GLXVideoSourceSGIX glxvideosource);
# Line 574  typedef void ( * PFNGLXDESTROYGLXVIDEOSO Line 615  typedef void ( * PFNGLXDESTROYGLXVIDEOSO
615  #define GLX_EXT_import_context 1  #define GLX_EXT_import_context 1
616  #ifdef GLX_GLXEXT_PROTOTYPES  #ifdef GLX_GLXEXT_PROTOTYPES
617  extern Display * glXGetCurrentDisplayEXT (void);  extern Display * glXGetCurrentDisplayEXT (void);
618  extern int glXQueryContextInfoEXT (Display *, GLXContext, int, int *);  extern int glXQueryContextInfoEXT (Display *dpy, GLXContext context, int attribute, int *value);
619  extern GLXContextID glXGetContextIDEXT (const GLXContext);  extern GLXContextID glXGetContextIDEXT (const GLXContext context);
620  extern GLXContext glXImportContextEXT (Display *, GLXContextID);  extern GLXContext glXImportContextEXT (Display *dpy, GLXContextID contextID);
621  extern void glXFreeContextEXT (Display *, GLXContext);  extern void glXFreeContextEXT (Display *dpy, GLXContext context);
622  #endif /* GLX_GLXEXT_PROTOTYPES */  #endif /* GLX_GLXEXT_PROTOTYPES */
623  typedef Display * ( * PFNGLXGETCURRENTDISPLAYEXTPROC) (void);  typedef Display * ( * PFNGLXGETCURRENTDISPLAYEXTPROC) (void);
624  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 630  typedef void ( * PFNGLXFREECONTEXTEXTPRO
630  #ifndef GLX_SGIX_fbconfig  #ifndef GLX_SGIX_fbconfig
631  #define GLX_SGIX_fbconfig 1  #define GLX_SGIX_fbconfig 1
632  #ifdef GLX_GLXEXT_PROTOTYPES  #ifdef GLX_GLXEXT_PROTOTYPES
633  extern int glXGetFBConfigAttribSGIX (Display *, GLXFBConfigSGIX, int, int *);  extern int glXGetFBConfigAttribSGIX (Display *dpy, GLXFBConfigSGIX config, int attribute, int *value);
634  extern GLXFBConfigSGIX * glXChooseFBConfigSGIX (Display *, int, int *, int *);  extern GLXFBConfigSGIX * glXChooseFBConfigSGIX (Display *dpy, int screen, int *attrib_list, int *nelements);
635  extern GLXPixmap glXCreateGLXPixmapWithConfigSGIX (Display *, GLXFBConfigSGIX, Pixmap);  extern GLXPixmap glXCreateGLXPixmapWithConfigSGIX (Display *dpy, GLXFBConfigSGIX config, Pixmap pixmap);
636  extern GLXContext glXCreateContextWithConfigSGIX (Display *, GLXFBConfigSGIX, int, GLXContext, Bool);  extern GLXContext glXCreateContextWithConfigSGIX (Display *dpy, GLXFBConfigSGIX config, int render_type, GLXContext share_list, Bool direct);
637  extern XVisualInfo * glXGetVisualFromFBConfigSGIX (Display *, GLXFBConfigSGIX);  extern XVisualInfo * glXGetVisualFromFBConfigSGIX (Display *dpy, GLXFBConfigSGIX config);
638  extern GLXFBConfigSGIX glXGetFBConfigFromVisualSGIX (Display *, XVisualInfo *);  extern GLXFBConfigSGIX glXGetFBConfigFromVisualSGIX (Display *dpy, XVisualInfo *vis);
639  #endif /* GLX_GLXEXT_PROTOTYPES */  #endif /* GLX_GLXEXT_PROTOTYPES */
640  typedef int ( * PFNGLXGETFBCONFIGATTRIBSGIXPROC) (Display *dpy, GLXFBConfigSGIX config, int attribute, int *value);  typedef int ( * PFNGLXGETFBCONFIGATTRIBSGIXPROC) (Display *dpy, GLXFBConfigSGIX config, int attribute, int *value);
641  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 648  typedef GLXFBConfigSGIX ( * PFNGLXGETFBC
648  #ifndef GLX_SGIX_pbuffer  #ifndef GLX_SGIX_pbuffer
649  #define GLX_SGIX_pbuffer 1  #define GLX_SGIX_pbuffer 1
650  #ifdef GLX_GLXEXT_PROTOTYPES  #ifdef GLX_GLXEXT_PROTOTYPES
651  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);
652  extern void glXDestroyGLXPbufferSGIX (Display *, GLXPbufferSGIX);  extern void glXDestroyGLXPbufferSGIX (Display *dpy, GLXPbufferSGIX pbuf);
653  extern int glXQueryGLXPbufferSGIX (Display *, GLXPbufferSGIX, int, unsigned int *);  extern int glXQueryGLXPbufferSGIX (Display *dpy, GLXPbufferSGIX pbuf, int attribute, unsigned int *value);
654  extern void glXSelectEventSGIX (Display *, GLXDrawable, unsigned long);  extern void glXSelectEventSGIX (Display *dpy, GLXDrawable drawable, unsigned long mask);
655  extern void glXGetSelectedEventSGIX (Display *, GLXDrawable, unsigned long *);  extern void glXGetSelectedEventSGIX (Display *dpy, GLXDrawable drawable, unsigned long *mask);
656  #endif /* GLX_GLXEXT_PROTOTYPES */  #endif /* GLX_GLXEXT_PROTOTYPES */
657  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);
658  typedef void ( * PFNGLXDESTROYGLXPBUFFERSGIXPROC) (Display *dpy, GLXPbufferSGIX pbuf);  typedef void ( * PFNGLXDESTROYGLXPBUFFERSGIXPROC) (Display *dpy, GLXPbufferSGIX pbuf);
# Line 623  typedef void ( * PFNGLXGETSELECTEDEVENTS Line 664  typedef void ( * PFNGLXGETSELECTEDEVENTS
664  #ifndef GLX_SGI_cushion  #ifndef GLX_SGI_cushion
665  #define GLX_SGI_cushion 1  #define GLX_SGI_cushion 1
666  #ifdef GLX_GLXEXT_PROTOTYPES  #ifdef GLX_GLXEXT_PROTOTYPES
667  extern void glXCushionSGI (Display *, Window, float);  extern void glXCushionSGI (Display *dpy, Window window, float cushion);
668  #endif /* GLX_GLXEXT_PROTOTYPES */  #endif /* GLX_GLXEXT_PROTOTYPES */
669  typedef void ( * PFNGLXCUSHIONSGIPROC) (Display *dpy, Window window, float cushion);  typedef void ( * PFNGLXCUSHIONSGIPROC) (Display *dpy, Window window, float cushion);
670  #endif  #endif
# Line 631  typedef void ( * PFNGLXCUSHIONSGIPROC) ( Line 672  typedef void ( * PFNGLXCUSHIONSGIPROC) (
672  #ifndef GLX_SGIX_video_resize  #ifndef GLX_SGIX_video_resize
673  #define GLX_SGIX_video_resize 1  #define GLX_SGIX_video_resize 1
674  #ifdef GLX_GLXEXT_PROTOTYPES  #ifdef GLX_GLXEXT_PROTOTYPES
675  extern int glXBindChannelToWindowSGIX (Display *, int, int, Window);  extern int glXBindChannelToWindowSGIX (Display *display, int screen, int channel, Window window);
676  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);
677  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);
678  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);
679  extern int glXChannelRectSyncSGIX (Display *, int, int, GLenum);  extern int glXChannelRectSyncSGIX (Display *display, int screen, int channel, GLenum synctype);
680  #endif /* GLX_GLXEXT_PROTOTYPES */  #endif /* GLX_GLXEXT_PROTOTYPES */
681  typedef int ( * PFNGLXBINDCHANNELTOWINDOWSGIXPROC) (Display *display, int screen, int channel, Window window);  typedef int ( * PFNGLXBINDCHANNELTOWINDOWSGIXPROC) (Display *display, int screen, int channel, Window window);
682  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 689  typedef int ( * PFNGLXCHANNELRECTSYNCSGI
689  #define GLX_SGIX_dmbuffer 1  #define GLX_SGIX_dmbuffer 1
690  #ifdef _DM_BUFFER_H_  #ifdef _DM_BUFFER_H_
691  #ifdef GLX_GLXEXT_PROTOTYPES  #ifdef GLX_GLXEXT_PROTOTYPES
692  extern Bool glXAssociateDMPbufferSGIX (Display *, GLXPbufferSGIX, DMparams *, DMbuffer);  extern Bool glXAssociateDMPbufferSGIX (Display *dpy, GLXPbufferSGIX pbuffer, DMparams *params, DMbuffer dmbuffer);
693  #endif /* GLX_GLXEXT_PROTOTYPES */  #endif /* GLX_GLXEXT_PROTOTYPES */
694  typedef Bool ( * PFNGLXASSOCIATEDMPBUFFERSGIXPROC) (Display *dpy, GLXPbufferSGIX pbuffer, DMparams *params, DMbuffer dmbuffer);  typedef Bool ( * PFNGLXASSOCIATEDMPBUFFERSGIXPROC) (Display *dpy, GLXPbufferSGIX pbuffer, DMparams *params, DMbuffer dmbuffer);
695  #endif /* _DM_BUFFER_H_ */  #endif /* _DM_BUFFER_H_ */
# Line 657  typedef Bool ( * PFNGLXASSOCIATEDMPBUFFE Line 698  typedef Bool ( * PFNGLXASSOCIATEDMPBUFFE
698  #ifndef GLX_SGIX_swap_group  #ifndef GLX_SGIX_swap_group
699  #define GLX_SGIX_swap_group 1  #define GLX_SGIX_swap_group 1
700  #ifdef GLX_GLXEXT_PROTOTYPES  #ifdef GLX_GLXEXT_PROTOTYPES
701  extern void glXJoinSwapGroupSGIX (Display *, GLXDrawable, GLXDrawable);  extern void glXJoinSwapGroupSGIX (Display *dpy, GLXDrawable drawable, GLXDrawable member);
702  #endif /* GLX_GLXEXT_PROTOTYPES */  #endif /* GLX_GLXEXT_PROTOTYPES */
703  typedef void ( * PFNGLXJOINSWAPGROUPSGIXPROC) (Display *dpy, GLXDrawable drawable, GLXDrawable member);  typedef void ( * PFNGLXJOINSWAPGROUPSGIXPROC) (Display *dpy, GLXDrawable drawable, GLXDrawable member);
704  #endif  #endif
# Line 665  typedef void ( * PFNGLXJOINSWAPGROUPSGIX Line 706  typedef void ( * PFNGLXJOINSWAPGROUPSGIX
706  #ifndef GLX_SGIX_swap_barrier  #ifndef GLX_SGIX_swap_barrier
707  #define GLX_SGIX_swap_barrier 1  #define GLX_SGIX_swap_barrier 1
708  #ifdef GLX_GLXEXT_PROTOTYPES  #ifdef GLX_GLXEXT_PROTOTYPES
709  extern void glXBindSwapBarrierSGIX (Display *, GLXDrawable, int);  extern void glXBindSwapBarrierSGIX (Display *dpy, GLXDrawable drawable, int barrier);
710  extern Bool glXQueryMaxSwapBarriersSGIX (Display *, int, int *);  extern Bool glXQueryMaxSwapBarriersSGIX (Display *dpy, int screen, int *max);
711  #endif /* GLX_GLXEXT_PROTOTYPES */  #endif /* GLX_GLXEXT_PROTOTYPES */
712  typedef void ( * PFNGLXBINDSWAPBARRIERSGIXPROC) (Display *dpy, GLXDrawable drawable, int barrier);  typedef void ( * PFNGLXBINDSWAPBARRIERSGIXPROC) (Display *dpy, GLXDrawable drawable, int barrier);
713  typedef Bool ( * PFNGLXQUERYMAXSWAPBARRIERSSGIXPROC) (Display *dpy, int screen, int *max);  typedef Bool ( * PFNGLXQUERYMAXSWAPBARRIERSSGIXPROC) (Display *dpy, int screen, int *max);
# Line 675  typedef Bool ( * PFNGLXQUERYMAXSWAPBARRI Line 716  typedef Bool ( * PFNGLXQUERYMAXSWAPBARRI
716  #ifndef GLX_SUN_get_transparent_index  #ifndef GLX_SUN_get_transparent_index
717  #define GLX_SUN_get_transparent_index 1  #define GLX_SUN_get_transparent_index 1
718  #ifdef GLX_GLXEXT_PROTOTYPES  #ifdef GLX_GLXEXT_PROTOTYPES
719  extern Status glXGetTransparentIndexSUN (Display *, Window, Window, long *);  extern Status glXGetTransparentIndexSUN (Display *dpy, Window overlay, Window underlay, long *pTransparentIndex);
720  #endif /* GLX_GLXEXT_PROTOTYPES */  #endif /* GLX_GLXEXT_PROTOTYPES */
721  typedef Status ( * PFNGLXGETTRANSPARENTINDEXSUNPROC) (Display *dpy, Window overlay, Window underlay, long *pTransparentIndex);  typedef Status ( * PFNGLXGETTRANSPARENTINDEXSUNPROC) (Display *dpy, Window overlay, Window underlay, long *pTransparentIndex);
722  #endif  #endif
# Line 683  typedef Status ( * PFNGLXGETTRANSPARENTI Line 724  typedef Status ( * PFNGLXGETTRANSPARENTI
724  #ifndef GLX_MESA_copy_sub_buffer  #ifndef GLX_MESA_copy_sub_buffer
725  #define GLX_MESA_copy_sub_buffer 1  #define GLX_MESA_copy_sub_buffer 1
726  #ifdef GLX_GLXEXT_PROTOTYPES  #ifdef GLX_GLXEXT_PROTOTYPES
727  extern void glXCopySubBufferMESA (Display *, GLXDrawable, int, int, int, int);  extern void glXCopySubBufferMESA (Display *dpy, GLXDrawable drawable, int x, int y, int width, int height);
728  #endif /* GLX_GLXEXT_PROTOTYPES */  #endif /* GLX_GLXEXT_PROTOTYPES */
729  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);
730  #endif  #endif
# Line 691  typedef void ( * PFNGLXCOPYSUBBUFFERMESA Line 732  typedef void ( * PFNGLXCOPYSUBBUFFERMESA
732  #ifndef GLX_MESA_pixmap_colormap  #ifndef GLX_MESA_pixmap_colormap
733  #define GLX_MESA_pixmap_colormap 1  #define GLX_MESA_pixmap_colormap 1
734  #ifdef GLX_GLXEXT_PROTOTYPES  #ifdef GLX_GLXEXT_PROTOTYPES
735  extern GLXPixmap glXCreateGLXPixmapMESA (Display *, XVisualInfo *, Pixmap, Colormap);  extern GLXPixmap glXCreateGLXPixmapMESA (Display *dpy, XVisualInfo *visual, Pixmap pixmap, Colormap cmap);
736  #endif /* GLX_GLXEXT_PROTOTYPES */  #endif /* GLX_GLXEXT_PROTOTYPES */
737  typedef GLXPixmap ( * PFNGLXCREATEGLXPIXMAPMESAPROC) (Display *dpy, XVisualInfo *visual, Pixmap pixmap, Colormap cmap);  typedef GLXPixmap ( * PFNGLXCREATEGLXPIXMAPMESAPROC) (Display *dpy, XVisualInfo *visual, Pixmap pixmap, Colormap cmap);
738  #endif  #endif
# Line 699  typedef GLXPixmap ( * PFNGLXCREATEGLXPIX Line 740  typedef GLXPixmap ( * PFNGLXCREATEGLXPIX
740  #ifndef GLX_MESA_release_buffers  #ifndef GLX_MESA_release_buffers
741  #define GLX_MESA_release_buffers 1  #define GLX_MESA_release_buffers 1
742  #ifdef GLX_GLXEXT_PROTOTYPES  #ifdef GLX_GLXEXT_PROTOTYPES
743  extern Bool glXReleaseBuffersMESA (Display *, GLXDrawable);  extern Bool glXReleaseBuffersMESA (Display *dpy, GLXDrawable drawable);
744  #endif /* GLX_GLXEXT_PROTOTYPES */  #endif /* GLX_GLXEXT_PROTOTYPES */
745  typedef Bool ( * PFNGLXRELEASEBUFFERSMESAPROC) (Display *dpy, GLXDrawable drawable);  typedef Bool ( * PFNGLXRELEASEBUFFERSMESAPROC) (Display *dpy, GLXDrawable drawable);
746  #endif  #endif
# Line 707  typedef Bool ( * PFNGLXRELEASEBUFFERSMES Line 748  typedef Bool ( * PFNGLXRELEASEBUFFERSMES
748  #ifndef GLX_MESA_set_3dfx_mode  #ifndef GLX_MESA_set_3dfx_mode
749  #define GLX_MESA_set_3dfx_mode 1  #define GLX_MESA_set_3dfx_mode 1
750  #ifdef GLX_GLXEXT_PROTOTYPES  #ifdef GLX_GLXEXT_PROTOTYPES
751  extern Bool glXSet3DfxModeMESA (int);  extern Bool glXSet3DfxModeMESA (int mode);
752  #endif /* GLX_GLXEXT_PROTOTYPES */  #endif /* GLX_GLXEXT_PROTOTYPES */
753  typedef Bool ( * PFNGLXSET3DFXMODEMESAPROC) (int mode);  typedef Bool ( * PFNGLXSET3DFXMODEMESAPROC) (int mode);
754  #endif  #endif
# Line 723  typedef Bool ( * PFNGLXSET3DFXMODEMESAPR Line 764  typedef Bool ( * PFNGLXSET3DFXMODEMESAPR
764  #ifndef GLX_OML_sync_control  #ifndef GLX_OML_sync_control
765  #define GLX_OML_sync_control 1  #define GLX_OML_sync_control 1
766  #ifdef GLX_GLXEXT_PROTOTYPES  #ifdef GLX_GLXEXT_PROTOTYPES
767  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);
768  extern Bool glXGetMscRateOML (Display *, GLXDrawable, int32_t *, int32_t *);  extern Bool glXGetMscRateOML (Display *dpy, GLXDrawable drawable, int32_t *numerator, int32_t *denominator);
769  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);
770  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);
771  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);
772  #endif /* GLX_GLXEXT_PROTOTYPES */  #endif /* GLX_GLXEXT_PROTOTYPES */
773  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);
774  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 809  typedef struct {
809  } GLXPipeRectLimits;  } GLXPipeRectLimits;
810    
811  #ifdef GLX_GLXEXT_PROTOTYPES  #ifdef GLX_GLXEXT_PROTOTYPES
812  extern GLXHyperpipeNetworkSGIX * glXQueryHyperpipeNetworkSGIX (Display *, int *);  extern GLXHyperpipeNetworkSGIX * glXQueryHyperpipeNetworkSGIX (Display *dpy, int *npipes);
813  extern int glXHyperpipeConfigSGIX (Display *, int, int, GLXHyperpipeConfigSGIX *, int *);  extern int glXHyperpipeConfigSGIX (Display *dpy, int networkId, int npipes, GLXHyperpipeConfigSGIX *cfg, int *hpId);
814  extern GLXHyperpipeConfigSGIX * glXQueryHyperpipeConfigSGIX (Display *, int, int *);  extern GLXHyperpipeConfigSGIX * glXQueryHyperpipeConfigSGIX (Display *dpy, int hpId, int *npipes);
815  extern int glXDestroyHyperpipeConfigSGIX (Display *, int);  extern int glXDestroyHyperpipeConfigSGIX (Display *dpy, int hpId);
816  extern int glXBindHyperpipeSGIX (Display *, int);  extern int glXBindHyperpipeSGIX (Display *dpy, int hpId);
817  extern int glXQueryHyperpipeBestAttribSGIX (Display *, int, int, int, void *, void *);  extern int glXQueryHyperpipeBestAttribSGIX (Display *dpy, int timeSlice, int attrib, int size, void *attribList, void *returnAttribList);
818  extern int glXHyperpipeAttribSGIX (Display *, int, int, int, void *);  extern int glXHyperpipeAttribSGIX (Display *dpy, int timeSlice, int attrib, int size, void *attribList);
819  extern int glXQueryHyperpipeAttribSGIX (Display *, int, int, int, void *);  extern int glXQueryHyperpipeAttribSGIX (Display *dpy, int timeSlice, int attrib, int size, void *returnAttribList);
820  #endif /* GLX_GLXEXT_PROTOTYPES */  #endif /* GLX_GLXEXT_PROTOTYPES */
821  typedef GLXHyperpipeNetworkSGIX * ( * PFNGLXQUERYHYPERPIPENETWORKSGIXPROC) (Display *dpy, int *npipes);  typedef GLXHyperpipeNetworkSGIX * ( * PFNGLXQUERYHYPERPIPENETWORKSGIXPROC) (Display *dpy, int *npipes);
822  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 831  typedef int ( * PFNGLXQUERYHYPERPIPEATTR
831  #ifndef GLX_MESA_agp_offset  #ifndef GLX_MESA_agp_offset
832  #define GLX_MESA_agp_offset 1  #define GLX_MESA_agp_offset 1
833  #ifdef GLX_GLXEXT_PROTOTYPES  #ifdef GLX_GLXEXT_PROTOTYPES
834  extern unsigned int glXGetAGPOffsetMESA (const void *);  extern unsigned int glXGetAGPOffsetMESA (const void *pointer);
835  #endif /* GLX_GLXEXT_PROTOTYPES */  #endif /* GLX_GLXEXT_PROTOTYPES */
836  typedef unsigned int ( * PFNGLXGETAGPOFFSETMESAPROC) (const void *pointer);  typedef unsigned int ( * PFNGLXGETAGPOFFSETMESAPROC) (const void *pointer);
837  #endif  #endif
# Line 806  typedef unsigned int ( * PFNGLXGETAGPOFF Line 847  typedef unsigned int ( * PFNGLXGETAGPOFF
847  #ifndef GLX_EXT_texture_from_pixmap  #ifndef GLX_EXT_texture_from_pixmap
848  #define GLX_EXT_texture_from_pixmap 1  #define GLX_EXT_texture_from_pixmap 1
849  #ifdef GLX_GLXEXT_PROTOTYPES  #ifdef GLX_GLXEXT_PROTOTYPES
850  extern void glXBindTexImageEXT (Display *, GLXDrawable, int, const int *);  extern void glXBindTexImageEXT (Display *dpy, GLXDrawable drawable, int buffer, const int *attrib_list);
851  extern void glXReleaseTexImageEXT (Display *, GLXDrawable, int);  extern void glXReleaseTexImageEXT (Display *dpy, GLXDrawable drawable, int buffer);
852  #endif /* GLX_GLXEXT_PROTOTYPES */  #endif /* GLX_GLXEXT_PROTOTYPES */
853  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);
854  typedef void ( * PFNGLXRELEASETEXIMAGEEXTPROC) (Display *dpy, GLXDrawable drawable, int buffer);  typedef void ( * PFNGLXRELEASETEXIMAGEEXTPROC) (Display *dpy, GLXDrawable drawable, int buffer);
# Line 815  typedef void ( * PFNGLXRELEASETEXIMAGEEX Line 856  typedef void ( * PFNGLXRELEASETEXIMAGEEX
856    
857  #ifndef GLX_NV_present_video  #ifndef GLX_NV_present_video
858  #define GLX_NV_present_video 1  #define GLX_NV_present_video 1
859    #ifdef GLX_GLXEXT_PROTOTYPES
860    extern unsigned int * glXEnumerateVideoDevicesNV (Display *dpy, int screen, int *nelements);
861    extern int glXBindVideoDeviceNV (Display *dpy, unsigned int video_slot, unsigned int video_device, const int *attrib_list);
862    #endif /* GLX_GLXEXT_PROTOTYPES */
863    typedef unsigned int * ( * PFNGLXENUMERATEVIDEODEVICESNVPROC) (Display *dpy, int screen, int *nelements);
864    typedef int ( * PFNGLXBINDVIDEODEVICENVPROC) (Display *dpy, unsigned int video_slot, unsigned int video_device, const int *attrib_list);
865  #endif  #endif
866    
867  #ifndef GLX_NV_video_out  #ifndef GLX_NV_video_output
868  #define GLX_NV_video_out 1  #define GLX_NV_video_output 1
869    #ifdef GLX_GLXEXT_PROTOTYPES
870    extern int glXGetVideoDeviceNV (Display *dpy, int screen, int numVideoDevices, GLXVideoDeviceNV *pVideoDevice);
871    extern int glXReleaseVideoDeviceNV (Display *dpy, int screen, GLXVideoDeviceNV VideoDevice);
872    extern int glXBindVideoImageNV (Display *dpy, GLXVideoDeviceNV VideoDevice, GLXPbuffer pbuf, int iVideoBuffer);
873    extern int glXReleaseVideoImageNV (Display *dpy, GLXPbuffer pbuf);
874    extern int glXSendPbufferToVideoNV (Display *dpy, GLXPbuffer pbuf, int iBufferType, unsigned long *pulCounterPbuffer, GLboolean bBlock);
875    extern int glXGetVideoInfoNV (Display *dpy, int screen, GLXVideoDeviceNV VideoDevice, unsigned long *pulCounterOutputPbuffer, unsigned long *pulCounterOutputVideo);
876    #endif /* GLX_GLXEXT_PROTOTYPES */
877    typedef int ( * PFNGLXGETVIDEODEVICENVPROC) (Display *dpy, int screen, int numVideoDevices, GLXVideoDeviceNV *pVideoDevice);
878    typedef int ( * PFNGLXRELEASEVIDEODEVICENVPROC) (Display *dpy, int screen, GLXVideoDeviceNV VideoDevice);
879    typedef int ( * PFNGLXBINDVIDEOIMAGENVPROC) (Display *dpy, GLXVideoDeviceNV VideoDevice, GLXPbuffer pbuf, int iVideoBuffer);
880    typedef int ( * PFNGLXRELEASEVIDEOIMAGENVPROC) (Display *dpy, GLXPbuffer pbuf);
881    typedef int ( * PFNGLXSENDPBUFFERTOVIDEONVPROC) (Display *dpy, GLXPbuffer pbuf, int iBufferType, unsigned long *pulCounterPbuffer, GLboolean bBlock);
882    typedef int ( * PFNGLXGETVIDEOINFONVPROC) (Display *dpy, int screen, GLXVideoDeviceNV VideoDevice, unsigned long *pulCounterOutputPbuffer, unsigned long *pulCounterOutputVideo);
883  #endif  #endif
884    
885  #ifndef GLX_NV_swap_group  #ifndef GLX_NV_swap_group
886  #define GLX_NV_swap_group 1  #define GLX_NV_swap_group 1
887    #ifdef GLX_GLXEXT_PROTOTYPES
888    extern Bool glXJoinSwapGroupNV (Display *dpy, GLXDrawable drawable, GLuint group);
889    extern Bool glXBindSwapBarrierNV (Display *dpy, GLuint group, GLuint barrier);
890    extern Bool glXQuerySwapGroupNV (Display *dpy, GLXDrawable drawable, GLuint *group, GLuint *barrier);
891    extern Bool glXQueryMaxSwapGroupsNV (Display *dpy, int screen, GLuint *maxGroups, GLuint *maxBarriers);
892    extern Bool glXQueryFrameCountNV (Display *dpy, int screen, GLuint *count);
893    extern Bool glXResetFrameCountNV (Display *dpy, int screen);
894    #endif /* GLX_GLXEXT_PROTOTYPES */
895    typedef Bool ( * PFNGLXJOINSWAPGROUPNVPROC) (Display *dpy, GLXDrawable drawable, GLuint group);
896    typedef Bool ( * PFNGLXBINDSWAPBARRIERNVPROC) (Display *dpy, GLuint group, GLuint barrier);
897    typedef Bool ( * PFNGLXQUERYSWAPGROUPNVPROC) (Display *dpy, GLXDrawable drawable, GLuint *group, GLuint *barrier);
898    typedef Bool ( * PFNGLXQUERYMAXSWAPGROUPSNVPROC) (Display *dpy, int screen, GLuint *maxGroups, GLuint *maxBarriers);
899    typedef Bool ( * PFNGLXQUERYFRAMECOUNTNVPROC) (Display *dpy, int screen, GLuint *count);
900    typedef Bool ( * PFNGLXRESETFRAMECOUNTNVPROC) (Display *dpy, int screen);
901    #endif
902    
903    #ifndef GLX_NV_video_capture
904    #define GLX_NV_video_capture 1
905    #ifdef GLX_GLXEXT_PROTOTYPES
906    extern int glXBindVideoCaptureDeviceNV (Display *dpy, unsigned int video_capture_slot, GLXVideoCaptureDeviceNV device);
907    extern GLXVideoCaptureDeviceNV * glXEnumerateVideoCaptureDevicesNV (Display *dpy, int screen, int *nelements);
908    extern void glXLockVideoCaptureDeviceNV (Display *dpy, GLXVideoCaptureDeviceNV device);
909    extern int glXQueryVideoCaptureDeviceNV (Display *dpy, GLXVideoCaptureDeviceNV device, int attribute, int *value);
910    extern void glXReleaseVideoCaptureDeviceNV (Display *dpy, GLXVideoCaptureDeviceNV device);
911    #endif /* GLX_GLXEXT_PROTOTYPES */
912    typedef int ( * PFNGLXBINDVIDEOCAPTUREDEVICENVPROC) (Display *dpy, unsigned int video_capture_slot, GLXVideoCaptureDeviceNV device);
913    typedef GLXVideoCaptureDeviceNV * ( * PFNGLXENUMERATEVIDEOCAPTUREDEVICESNVPROC) (Display *dpy, int screen, int *nelements);
914    typedef void ( * PFNGLXLOCKVIDEOCAPTUREDEVICENVPROC) (Display *dpy, GLXVideoCaptureDeviceNV device);
915    typedef int ( * PFNGLXQUERYVIDEOCAPTUREDEVICENVPROC) (Display *dpy, GLXVideoCaptureDeviceNV device, int attribute, int *value);
916    typedef void ( * PFNGLXRELEASEVIDEOCAPTUREDEVICENVPROC) (Display *dpy, GLXVideoCaptureDeviceNV device);
917    #endif
918    
919    #ifndef GLX_EXT_swap_control
920    #define GLX_EXT_swap_control 1
921    #ifdef GLX_GLXEXT_PROTOTYPES
922    extern int glXSwapIntervalEXT (Display *dpy, GLXDrawable drawable, int interval);
923    #endif /* GLX_GLXEXT_PROTOTYPES */
924    typedef int ( * PFNGLXSWAPINTERVALEXTPROC) (Display *dpy, GLXDrawable drawable, int interval);
925    #endif
926    
927    #ifndef GLX_NV_copy_image
928    #define GLX_NV_copy_image 1
929    #ifdef GLX_GLXEXT_PROTOTYPES
930    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);
931    #endif /* GLX_GLXEXT_PROTOTYPES */
932    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);
933    #endif
934    
935    #ifndef GLX_INTEL_swap_event
936    #define GLX_INTEL_swap_event 1
937  #endif  #endif
938    
939    

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