Copyright (c) 2013-2018 The Khronos Group Inc.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
------------------------------------------------------------------------
This file, glx.xml, is the GLX API Registry. The canonical version of the
registry, together with documentation, schema, and Python generator scripts
used to generate C header files for GLX, can always be found in the Khronos
Registry at
https://github.com/KhronosGroup/OpenGL-Registry
= 199901L
#include
#elif defined(__sun__) || defined(__digital__)
#include
#if defined(__STDC__)
#if defined(__arch64__) || defined(_LP64)
typedef long int int64_t;
typedef unsigned long int uint64_t;
#else
typedef long long int int64_t;
typedef unsigned long long int uint64_t;
#endif /* __arch64__ */
#endif /* __STDC__ */
#elif defined( __VMS ) || defined(__sgi)
#include
#elif defined(__SCO__) || defined(__USLC__)
#include
#elif defined(__UNIXOS2__) || defined(__SOL64__)
typedef long int int32_t;
typedef long long int int64_t;
typedef unsigned long long int uint64_t;
#elif defined(_WIN32) && defined(__GNUC__)
#include
#elif defined(_WIN32)
typedef __int32 int32_t;
typedef __int64 int64_t;
typedef unsigned __int64 uint64_t;
#else
/* Fallback if nothing above works */
#include
#endif
#endif]]>
typedef XID GLXFBConfigID;
typedef struct __GLXFBConfigRec *GLXFBConfig;
typedef XID GLXContextID;
typedef struct __GLXcontextRec *GLXContext;
typedef XID GLXPixmap;
typedef XID GLXDrawable;
typedef XID GLXWindow;
typedef XID GLXPbuffer;
typedef void ( *__GLXextFuncPtr)(void);
typedef XID GLXVideoCaptureDeviceNV;
typedef unsigned int GLXVideoDeviceNV;
typedef XID GLXVideoSourceSGIX;
typedef XID GLXFBConfigIDSGIX;
typedef struct __GLXFBConfigRec *GLXFBConfigSGIX;
typedef XID GLXPbufferSGIX;
typedef struct {
int event_type; /* GLX_DAMAGED or GLX_SAVED */
int draw_type; /* GLX_WINDOW or GLX_PBUFFER */
unsigned long serial; /* # of last request processed by server */
Bool send_event; /* true if this came for SendEvent request */
Display *display; /* display the event was read from */
GLXDrawable drawable; /* XID of Drawable */
unsigned int buffer_mask; /* mask indicating which buffers are affected */
unsigned int aux_buffer; /* which aux buffer was affected */
int x, y;
int width, height;
int count; /* if nonzero, at least this many more */
} GLXPbufferClobberEvent;
typedef struct {
int type;
unsigned long serial; /* # of last request processed by server */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
GLXDrawable drawable; /* drawable on which event was requested in event mask */
int event_type;
int64_t ust;
int64_t msc;
int64_t sbc;
} GLXBufferSwapComplete;
typedef union __GLXEvent {
GLXPbufferClobberEvent glxpbufferclobber;
GLXBufferSwapComplete glxbufferswapcomplete;
long pad[24];
} GLXEvent;
typedef struct {
int type;
unsigned long serial;
Bool send_event;
Display *display;
int extension;
int evtype;
GLXDrawable window;
Bool stereo_tree;
} GLXStereoNotifyEventEXT;
typedef struct {
int type;
unsigned long serial; /* # of last request processed by server */
Bool send_event; /* true if this came for SendEvent request */
Display *display; /* display the event was read from */
GLXDrawable drawable; /* i.d. of Drawable */
int event_type; /* GLX_DAMAGED_SGIX or GLX_SAVED_SGIX */
int draw_type; /* GLX_WINDOW_SGIX or GLX_PBUFFER_SGIX */
unsigned int mask; /* mask indicating which buffers are affected*/
int x, y;
int width, height;
int count; /* if nonzero, at least this many more */
} GLXBufferClobberEventSGIX;
typedef struct {
char pipeName[80]; /* Should be [GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX] */
int networkId;
} GLXHyperpipeNetworkSGIX;
typedef struct {
char pipeName[80]; /* Should be [GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX] */
int channel;
unsigned int participationType;
int timeSlice;
} GLXHyperpipeConfigSGIX;
typedef struct {
char pipeName[80]; /* Should be [GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX] */
int srcXOrigin, srcYOrigin, srcWidth, srcHeight;
int destXOrigin, destYOrigin, destWidth, destHeight;
} GLXPipeRect;
typedef struct {
char pipeName[80]; /* Should be [GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX] */
int XOrigin, YOrigin, maxHeight, maxWidth;
} GLXPipeRectLimits;
Bool glXAssociateDMPbufferSGIX
Display *dpy
GLXPbufferSGIX pbuffer
DMparams *params
DMbuffer dmbuffer
int glXBindChannelToWindowSGIX
Display *display
int screen
int channel
Window window
int glXBindHyperpipeSGIX
Display *dpy
int hpId
Bool glXBindSwapBarrierNV
Display *dpy
GLuint group
GLuint barrier
void glXBindSwapBarrierSGIX
Display *dpy
GLXDrawable drawable
int barrier
void glXBindTexImageEXT
Display *dpy
GLXDrawable drawable
int buffer
const int *attrib_list
int glXBindVideoCaptureDeviceNV
Display *dpy
unsigned int video_capture_slot
GLXVideoCaptureDeviceNV device
int glXBindVideoDeviceNV
Display *dpy
unsigned int video_slot
unsigned int video_device
const int *attrib_list
int glXBindVideoImageNV
Display *dpy
GLXVideoDeviceNV VideoDevice
GLXPbuffer pbuf
int iVideoBuffer
void glXBlitContextFramebufferAMD
GLXContext dstCtx
GLint srcX0
GLint srcY0
GLint srcX1
GLint srcY1
GLint dstX0
GLint dstY0
GLint dstX1
GLint dstY1
GLbitfield mask
GLenum filter
int glXChannelRectSGIX
Display *display
int screen
int channel
int x
int y
int w
int h
int glXChannelRectSyncSGIX
Display *display
int screen
int channel
GLenum synctype
GLXFBConfig *glXChooseFBConfig
Display *dpy
int screen
const int *attrib_list
int *nelements
GLXFBConfigSGIX *glXChooseFBConfigSGIX
Display *dpy
int screen
int *attrib_list
int *nelements
XVisualInfo *glXChooseVisual
Display *dpy
int screen
int *attribList
void glXCopyBufferSubDataNV
Display *dpy
GLXContext readCtx
GLXContext writeCtx
GLenum readTarget
GLenum writeTarget
GLintptr readOffset
GLintptr writeOffset
GLsizeiptr size
void glXNamedCopyBufferSubDataNV
Display *dpy
GLXContext readCtx
GLXContext writeCtx
GLuint readBuffer
GLuint writeBuffer
GLintptr readOffset
GLintptr writeOffset
GLsizeiptr size
void glXCopyContext
Display *dpy
GLXContext src
GLXContext dst
unsigned long mask
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
void glXCopySubBufferMESA
Display *dpy
GLXDrawable drawable
int x
int y
int width
int height
GLXContext glXCreateAssociatedContextAMD
unsigned int id
GLXContext share_list
GLXContext glXCreateAssociatedContextAttribsAMD
unsigned int id
GLXContext share_context
const int *attribList
GLXContext glXCreateContextAttribsARB
Display *dpy
GLXFBConfig config
GLXContext share_context
Bool direct
const int *attrib_list
GLXContext glXCreateContext
Display *dpy
XVisualInfo *vis
GLXContext shareList
Bool direct
GLXContext glXCreateContextWithConfigSGIX
Display *dpy
GLXFBConfigSGIX config
int render_type
GLXContext share_list
Bool direct
GLXPbufferSGIX glXCreateGLXPbufferSGIX
Display *dpy
GLXFBConfigSGIX config
unsigned int width
unsigned int height
int *attrib_list
GLXPixmap glXCreateGLXPixmap
Display *dpy
XVisualInfo *visual
Pixmap pixmap
GLXPixmap glXCreateGLXPixmapMESA
Display *dpy
XVisualInfo *visual
Pixmap pixmap
Colormap cmap
GLXPixmap glXCreateGLXPixmapWithConfigSGIX
Display *dpy
GLXFBConfigSGIX config
Pixmap pixmap
GLXVideoSourceSGIX glXCreateGLXVideoSourceSGIX
Display *display
int screen
VLServer server
VLPath path
int nodeClass
VLNode drainNode
GLXContext glXCreateNewContext
Display *dpy
GLXFBConfig config
int render_type
GLXContext share_list
Bool direct
GLXPbuffer glXCreatePbuffer
Display *dpy
GLXFBConfig config
const int *attrib_list
GLXPixmap glXCreatePixmap
Display *dpy
GLXFBConfig config
Pixmap pixmap
const int *attrib_list
GLXWindow glXCreateWindow
Display *dpy
GLXFBConfig config
Window win
const int *attrib_list
void glXCushionSGI
Display *dpy
Window window
float cushion
Bool glXDelayBeforeSwapNV
Display *dpy
GLXDrawable drawable
GLfloat seconds
Bool glXDeleteAssociatedContextAMD
GLXContext ctx
void glXDestroyContext
Display *dpy
GLXContext ctx
void glXDestroyGLXPbufferSGIX
Display *dpy
GLXPbufferSGIX pbuf
void glXDestroyGLXPixmap
Display *dpy
GLXPixmap pixmap
void glXDestroyGLXVideoSourceSGIX
Display *dpy
GLXVideoSourceSGIX glxvideosource
int glXDestroyHyperpipeConfigSGIX
Display *dpy
int hpId
void glXDestroyPbuffer
Display *dpy
GLXPbuffer pbuf
void glXDestroyPixmap
Display *dpy
GLXPixmap pixmap
void glXDestroyWindow
Display *dpy
GLXWindow win
GLXVideoCaptureDeviceNV *glXEnumerateVideoCaptureDevicesNV
Display *dpy
int screen
int *nelements
unsigned int *glXEnumerateVideoDevicesNV
Display *dpy
int screen
int *nelements
void glXFreeContextEXT
Display *dpy
GLXContext context
unsigned int glXGetAGPOffsetMESA
const void *pointer
const char *glXGetClientString
Display *dpy
int name
int glXGetConfig
Display *dpy
XVisualInfo *visual
int attrib
int *value
unsigned int glXGetContextGPUIDAMD
GLXContext ctx
GLXContextID glXGetContextIDEXT
const GLXContext context
GLXContext glXGetCurrentAssociatedContextAMD
GLXContext glXGetCurrentContext
Display *glXGetCurrentDisplayEXT
Display *glXGetCurrentDisplay
GLXDrawable glXGetCurrentDrawable
GLXDrawable glXGetCurrentReadDrawableSGI
GLXDrawable glXGetCurrentReadDrawable
int glXGetFBConfigAttrib
Display *dpy
GLXFBConfig config
int attribute
int *value
int glXGetFBConfigAttribSGIX
Display *dpy
GLXFBConfigSGIX config
int attribute
int *value
GLXFBConfigSGIX glXGetFBConfigFromVisualSGIX
Display *dpy
XVisualInfo *vis
GLXFBConfig *glXGetFBConfigs
Display *dpy
int screen
int *nelements
unsigned int glXGetGPUIDsAMD
unsigned int maxCount
unsigned int *ids
int glXGetGPUInfoAMD
unsigned int id
int property
GLenum dataType
unsigned int size
void *data
Bool glXGetMscRateOML
Display *dpy
GLXDrawable drawable
int32_t *numerator
int32_t *denominator
__GLXextFuncPtr glXGetProcAddressARB
const GLubyte *procName
__GLXextFuncPtr glXGetProcAddress
const GLubyte *procName
void glXGetSelectedEvent
Display *dpy
GLXDrawable draw
unsigned long *event_mask
void glXGetSelectedEventSGIX
Display *dpy
GLXDrawable drawable
unsigned long *mask
int glXGetSwapIntervalMESA
Bool glXGetSyncValuesOML
Display *dpy
GLXDrawable drawable
int64_t *ust
int64_t *msc
int64_t *sbc
Status glXGetTransparentIndexSUN
Display *dpy
Window overlay
Window underlay
long *pTransparentIndex
int glXGetVideoDeviceNV
Display *dpy
int screen
int numVideoDevices
GLXVideoDeviceNV *pVideoDevice
int glXGetVideoInfoNV
Display *dpy
int screen
GLXVideoDeviceNV VideoDevice
unsigned long *pulCounterOutputPbuffer
unsigned long *pulCounterOutputVideo
int glXGetVideoSyncSGI
unsigned int *count
XVisualInfo *glXGetVisualFromFBConfig
Display *dpy
GLXFBConfig config
XVisualInfo *glXGetVisualFromFBConfigSGIX
Display *dpy
GLXFBConfigSGIX config
int glXHyperpipeAttribSGIX
Display *dpy
int timeSlice
int attrib
int size
void *attribList
int glXHyperpipeConfigSGIX
Display *dpy
int networkId
int npipes
GLXHyperpipeConfigSGIX *cfg
int *hpId
GLXContext glXImportContextEXT
Display *dpy
GLXContextID contextID
Bool glXIsDirect
Display *dpy
GLXContext ctx
Bool glXJoinSwapGroupNV
Display *dpy
GLXDrawable drawable
GLuint group
void glXJoinSwapGroupSGIX
Display *dpy
GLXDrawable drawable
GLXDrawable member
void glXLockVideoCaptureDeviceNV
Display *dpy
GLXVideoCaptureDeviceNV device
Bool glXMakeAssociatedContextCurrentAMD
GLXContext ctx
Bool glXMakeContextCurrent
Display *dpy
GLXDrawable draw
GLXDrawable read
GLXContext ctx
Bool glXMakeCurrent
Display *dpy
GLXDrawable drawable
GLXContext ctx
Bool glXMakeCurrentReadSGI
Display *dpy
GLXDrawable draw
GLXDrawable read
GLXContext ctx
int glXQueryChannelDeltasSGIX
Display *display
int screen
int channel
int *x
int *y
int *w
int *h
int glXQueryChannelRectSGIX
Display *display
int screen
int channel
int *dx
int *dy
int *dw
int *dh
int glXQueryContext
Display *dpy
GLXContext ctx
int attribute
int *value
int glXQueryContextInfoEXT
Display *dpy
GLXContext context
int attribute
int *value
Bool glXQueryCurrentRendererIntegerMESA
int attribute
unsigned int *value
const char *glXQueryCurrentRendererStringMESA
int attribute
void glXQueryDrawable
Display *dpy
GLXDrawable draw
int attribute
unsigned int *value
Bool glXQueryExtension
Display *dpy
int *errorb
int *event
const char *glXQueryExtensionsString
Display *dpy
int screen
Bool glXQueryFrameCountNV
Display *dpy
int screen
GLuint *count
int glXQueryGLXPbufferSGIX
Display *dpy
GLXPbufferSGIX pbuf
int attribute
unsigned int *value
int glXQueryHyperpipeAttribSGIX
Display *dpy
int timeSlice
int attrib
int size
void *returnAttribList
int glXQueryHyperpipeBestAttribSGIX
Display *dpy
int timeSlice
int attrib
int size
void *attribList
void *returnAttribList
GLXHyperpipeConfigSGIX *glXQueryHyperpipeConfigSGIX
Display *dpy
int hpId
int *npipes
GLXHyperpipeNetworkSGIX *glXQueryHyperpipeNetworkSGIX
Display *dpy
int *npipes
Bool glXQueryMaxSwapBarriersSGIX
Display *dpy
int screen
int *max
Bool glXQueryMaxSwapGroupsNV
Display *dpy
int screen
GLuint *maxGroups
GLuint *maxBarriers
Bool glXQueryRendererIntegerMESA
Display *dpy
int screen
int renderer
int attribute
unsigned int *value
const char *glXQueryRendererStringMESA
Display *dpy
int screen
int renderer
int attribute
const char *glXQueryServerString
Display *dpy
int screen
int name
Bool glXQuerySwapGroupNV
Display *dpy
GLXDrawable drawable
GLuint *group
GLuint *barrier
Bool glXQueryVersion
Display *dpy
int *maj
int *min
int glXQueryVideoCaptureDeviceNV
Display *dpy
GLXVideoCaptureDeviceNV device
int attribute
int *value
Bool glXReleaseBuffersMESA
Display *dpy
GLXDrawable drawable
void glXReleaseTexImageEXT
Display *dpy
GLXDrawable drawable
int buffer
void glXReleaseVideoCaptureDeviceNV
Display *dpy
GLXVideoCaptureDeviceNV device
int glXReleaseVideoDeviceNV
Display *dpy
int screen
GLXVideoDeviceNV VideoDevice
int glXReleaseVideoImageNV
Display *dpy
GLXPbuffer pbuf
Bool glXResetFrameCountNV
Display *dpy
int screen
void glXSelectEvent
Display *dpy
GLXDrawable draw
unsigned long event_mask
void glXSelectEventSGIX
Display *dpy
GLXDrawable drawable
unsigned long mask
int glXSendPbufferToVideoNV
Display *dpy
GLXPbuffer pbuf
int iBufferType
unsigned long *pulCounterPbuffer
GLboolean bBlock
Bool glXSet3DfxModeMESA
int mode
void glXSwapBuffers
Display *dpy
GLXDrawable drawable
int64_t glXSwapBuffersMscOML
Display *dpy
GLXDrawable drawable
int64_t target_msc
int64_t divisor
int64_t remainder
int glXSwapIntervalMESA
unsigned int interval
void glXSwapIntervalEXT
Display *dpy
GLXDrawable drawable
int interval
int glXSwapIntervalSGI
int interval
void glXUseXFont
Font font
int first
int count
int list
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
Bool glXWaitForSbcOML
Display *dpy
GLXDrawable drawable
int64_t target_sbc
int64_t *ust
int64_t *msc
int64_t *sbc
void glXWaitGL
int glXWaitVideoSyncSGI
int divisor
int remainder
unsigned int *count
void glXWaitX