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, wgl.xml, is the WGL API Registry. The older ".spec" file format has been retired and will no longer be updated with new extensions and API versions. The canonical version of the registry, together with documentation, schema, and Python generator scripts used to generate C header files for WGL, can always be found in the Khronos Registry at https://github.com/KhronosGroup/OpenGL-Registry struct _GPU_DEVICE { DWORD cb; CHAR DeviceName[32]; CHAR DeviceString[128]; DWORD Flags; RECT rcVirtualScreen; }; DECLARE_HANDLE(HPBUFFERARB); DECLARE_HANDLE(HPBUFFEREXT); DECLARE_HANDLE(HVIDEOOUTPUTDEVICENV); DECLARE_HANDLE(HPVIDEODEV); DECLARE_HANDLE(HPGPUNV); DECLARE_HANDLE(HGPUNV); DECLARE_HANDLE(HVIDEOINPUTDEVICENV); typedef struct _GPU_DEVICE GPU_DEVICE; typedef struct _GPU_DEVICE *PGPU_DEVICE; int ChoosePixelFormat HDC hDc const PIXELFORMATDESCRIPTOR *pPfd int DescribePixelFormat HDC hdc int ipfd UINT cjpfd const PIXELFORMATDESCRIPTOR *ppfd int GetPixelFormat HDC hdc BOOL SetPixelFormat HDC hdc int ipfd const PIXELFORMATDESCRIPTOR *ppfd BOOL SwapBuffers HDC hdc void *wglAllocateMemoryNV GLsizei size GLfloat readfreq GLfloat writefreq GLfloat priority BOOL wglAssociateImageBufferEventsI3D HDC hDC const HANDLE *pEvent const LPVOID *pAddress const DWORD *pSize UINT count BOOL wglBeginFrameTrackingI3D GLboolean wglBindDisplayColorTableEXT GLushort id BOOL wglBindSwapBarrierNV GLuint group GLuint barrier BOOL wglBindTexImageARB HPBUFFERARB hPbuffer int iBuffer BOOL wglBindVideoCaptureDeviceNV UINT uVideoSlot HVIDEOINPUTDEVICENV hDevice BOOL wglBindVideoDeviceNV HDC hDC unsigned int uVideoSlot HVIDEOOUTPUTDEVICENV hVideoDevice const int *piAttribList BOOL wglBindVideoImageNV HPVIDEODEV hVideoDevice HPBUFFERARB hPbuffer int iVideoBuffer VOID wglBlitContextFramebufferAMD HGLRC dstCtx GLint srcX0 GLint srcY0 GLint srcX1 GLint srcY1 GLint dstX0 GLint dstY0 GLint dstX1 GLint dstY1 GLbitfield mask GLenum filter BOOL wglChoosePixelFormatARB HDC hdc const int *piAttribIList const FLOAT *pfAttribFList UINT nMaxFormats int *piFormats UINT *nNumFormats BOOL wglChoosePixelFormatEXT HDC hdc const int *piAttribIList const FLOAT *pfAttribFList UINT nMaxFormats int *piFormats UINT *nNumFormats BOOL wglCopyContext HGLRC hglrcSrc HGLRC hglrcDst UINT mask BOOL wglCopyImageSubDataNV HGLRC hSrcRC GLuint srcName GLenum srcTarget GLint srcLevel GLint srcX GLint srcY GLint srcZ HGLRC hDstRC GLuint dstName GLenum dstTarget GLint dstLevel GLint dstX GLint dstY GLint dstZ GLsizei width GLsizei height GLsizei depth HDC wglCreateAffinityDCNV const HGPUNV *phGpuList HGLRC wglCreateAssociatedContextAMD UINT id HGLRC wglCreateAssociatedContextAttribsAMD UINT id HGLRC hShareContext const int *attribList HANDLE wglCreateBufferRegionARB HDC hDC int iLayerPlane UINT uType HGLRC wglCreateContext HDC hDc HGLRC wglCreateContextAttribsARB HDC hDC HGLRC hShareContext const int *attribList GLboolean wglCreateDisplayColorTableEXT GLushort id LPVOID wglCreateImageBufferI3D HDC hDC DWORD dwSize UINT uFlags HGLRC wglCreateLayerContext HDC hDc int level HPBUFFERARB wglCreatePbufferARB HDC hDC int iPixelFormat int iWidth int iHeight const int *piAttribList HPBUFFEREXT wglCreatePbufferEXT HDC hDC int iPixelFormat int iWidth int iHeight const int *piAttribList BOOL wglDelayBeforeSwapNV HDC hDC GLfloat seconds BOOL wglDeleteAssociatedContextAMD HGLRC hglrc VOID wglDeleteBufferRegionARB HANDLE hRegion BOOL wglDeleteContext HGLRC oldContext BOOL wglDeleteDCNV HDC hdc BOOL wglDescribeLayerPlane HDC hDc int pixelFormat int layerPlane UINT nBytes const LAYERPLANEDESCRIPTOR *plpd VOID wglDestroyDisplayColorTableEXT GLushort id BOOL wglDestroyImageBufferI3D HDC hDC LPVOID pAddress BOOL wglDestroyPbufferARB HPBUFFERARB hPbuffer BOOL wglDestroyPbufferEXT HPBUFFEREXT hPbuffer BOOL wglDisableFrameLockI3D BOOL wglDisableGenlockI3D HDC hDC BOOL wglDXCloseDeviceNV HANDLE hDevice BOOL wglDXLockObjectsNV HANDLE hDevice GLint count HANDLE *hObjects BOOL wglDXObjectAccessNV HANDLE hObject GLenum access HANDLE wglDXOpenDeviceNV void *dxDevice HANDLE wglDXRegisterObjectNV HANDLE hDevice void *dxObject GLuint name GLenum type GLenum access BOOL wglDXSetResourceShareHandleNV void *dxObject HANDLE shareHandle BOOL wglDXUnlockObjectsNV HANDLE hDevice GLint count HANDLE *hObjects BOOL wglDXUnregisterObjectNV HANDLE hDevice HANDLE hObject BOOL wglEnableFrameLockI3D BOOL wglEnableGenlockI3D HDC hDC BOOL wglEndFrameTrackingI3D UINT wglEnumerateVideoCaptureDevicesNV HDC hDc HVIDEOINPUTDEVICENV *phDeviceList int wglEnumerateVideoDevicesNV HDC hDC HVIDEOOUTPUTDEVICENV *phDeviceList BOOL wglEnumGpuDevicesNV HGPUNV hGpu UINT iDeviceIndex PGPU_DEVICE lpGpuDevice BOOL wglEnumGpusFromAffinityDCNV HDC hAffinityDC UINT iGpuIndex HGPUNV *hGpu BOOL wglEnumGpusNV UINT iGpuIndex HGPUNV *phGpu void wglFreeMemoryNV void *pointer BOOL wglGenlockSampleRateI3D HDC hDC UINT uRate BOOL wglGenlockSourceDelayI3D HDC hDC UINT uDelay BOOL wglGenlockSourceEdgeI3D HDC hDC UINT uEdge BOOL wglGenlockSourceI3D HDC hDC UINT uSource UINT wglGetContextGPUIDAMD HGLRC hglrc HGLRC wglGetCurrentAssociatedContextAMD HGLRC wglGetCurrentContext HDC wglGetCurrentDC HDC wglGetCurrentReadDCARB HDC wglGetCurrentReadDCEXT PROC wglGetDefaultProcAddress LPCSTR lpszProc BOOL wglGetDigitalVideoParametersI3D HDC hDC int iAttribute int *piValue UINT GetEnhMetaFilePixelFormat HENHMETAFILE hemf const PIXELFORMATDESCRIPTOR *ppfd const char *wglGetExtensionsStringARB HDC hdc const char *wglGetExtensionsStringEXT BOOL wglGetFrameUsageI3D float *pUsage BOOL wglGetGammaTableI3D HDC hDC int iEntries USHORT *puRed USHORT *puGreen USHORT *puBlue BOOL wglGetGammaTableParametersI3D HDC hDC int iAttribute int *piValue BOOL wglGetGenlockSampleRateI3D HDC hDC UINT *uRate BOOL wglGetGenlockSourceDelayI3D HDC hDC UINT *uDelay BOOL wglGetGenlockSourceEdgeI3D HDC hDC UINT *uEdge BOOL wglGetGenlockSourceI3D HDC hDC UINT *uSource UINT wglGetGPUIDsAMD UINT maxCount UINT *ids INT wglGetGPUInfoAMD UINT id int property GLenum dataType UINT size void *data int wglGetLayerPaletteEntries HDC hdc int iLayerPlane int iStart int cEntries const COLORREF *pcr BOOL wglGetMscRateOML HDC hdc INT32 *numerator INT32 *denominator HDC wglGetPbufferDCARB HPBUFFERARB hPbuffer HDC wglGetPbufferDCEXT HPBUFFEREXT hPbuffer BOOL wglGetPixelFormatAttribfvARB HDC hdc int iPixelFormat int iLayerPlane UINT nAttributes const int *piAttributes FLOAT *pfValues BOOL wglGetPixelFormatAttribfvEXT HDC hdc int iPixelFormat int iLayerPlane UINT nAttributes int *piAttributes FLOAT *pfValues BOOL wglGetPixelFormatAttribivARB HDC hdc int iPixelFormat int iLayerPlane UINT nAttributes const int *piAttributes int *piValues BOOL wglGetPixelFormatAttribivEXT HDC hdc int iPixelFormat int iLayerPlane UINT nAttributes int *piAttributes int *piValues PROC wglGetProcAddress LPCSTR lpszProc int wglGetSwapIntervalEXT BOOL wglGetSyncValuesOML HDC hdc INT64 *ust INT64 *msc INT64 *sbc BOOL wglGetVideoDeviceNV HDC hDC int numDevices HPVIDEODEV *hVideoDevice BOOL wglGetVideoInfoNV HPVIDEODEV hpVideoDevice unsigned long *pulCounterOutputPbuffer unsigned long *pulCounterOutputVideo BOOL wglIsEnabledFrameLockI3D BOOL *pFlag BOOL wglIsEnabledGenlockI3D HDC hDC BOOL *pFlag BOOL wglJoinSwapGroupNV HDC hDC GLuint group GLboolean wglLoadDisplayColorTableEXT const GLushort *table GLuint length BOOL wglLockVideoCaptureDeviceNV HDC hDc HVIDEOINPUTDEVICENV hDevice BOOL wglMakeAssociatedContextCurrentAMD HGLRC hglrc BOOL wglMakeContextCurrentARB HDC hDrawDC HDC hReadDC HGLRC hglrc BOOL wglMakeContextCurrentEXT HDC hDrawDC HDC hReadDC HGLRC hglrc BOOL wglMakeCurrent HDC hDc HGLRC newContext BOOL wglQueryCurrentContextNV int iAttribute int *piValue BOOL wglQueryFrameCountNV HDC hDC GLuint *count BOOL wglQueryFrameLockMasterI3D BOOL *pFlag BOOL wglQueryFrameTrackingI3D DWORD *pFrameCount DWORD *pMissedFrames float *pLastMissedUsage BOOL wglQueryGenlockMaxSourceDelayI3D HDC hDC UINT *uMaxLineDelay UINT *uMaxPixelDelay BOOL wglQueryMaxSwapGroupsNV HDC hDC GLuint *maxGroups GLuint *maxBarriers BOOL wglQueryPbufferARB HPBUFFERARB hPbuffer int iAttribute int *piValue BOOL wglQueryPbufferEXT HPBUFFEREXT hPbuffer int iAttribute int *piValue BOOL wglQuerySwapGroupNV HDC hDC GLuint *group GLuint *barrier BOOL wglQueryVideoCaptureDeviceNV HDC hDc HVIDEOINPUTDEVICENV hDevice int iAttribute int *piValue BOOL wglRealizeLayerPalette HDC hdc int iLayerPlane BOOL bRealize BOOL wglReleaseImageBufferEventsI3D HDC hDC const LPVOID *pAddress UINT count int wglReleasePbufferDCARB HPBUFFERARB hPbuffer HDC hDC int wglReleasePbufferDCEXT HPBUFFEREXT hPbuffer HDC hDC BOOL wglReleaseTexImageARB HPBUFFERARB hPbuffer int iBuffer BOOL wglReleaseVideoCaptureDeviceNV HDC hDc HVIDEOINPUTDEVICENV hDevice BOOL wglReleaseVideoDeviceNV HPVIDEODEV hVideoDevice BOOL wglReleaseVideoImageNV HPBUFFERARB hPbuffer int iVideoBuffer BOOL wglResetFrameCountNV HDC hDC BOOL wglRestoreBufferRegionARB HANDLE hRegion int x int y int width int height int xSrc int ySrc BOOL wglSaveBufferRegionARB HANDLE hRegion int x int y int width int height BOOL wglSendPbufferToVideoNV HPBUFFERARB hPbuffer int iBufferType unsigned long *pulCounterPbuffer BOOL bBlock BOOL wglSetDigitalVideoParametersI3D HDC hDC int iAttribute const int *piValue BOOL wglSetGammaTableI3D HDC hDC int iEntries const USHORT *puRed const USHORT *puGreen const USHORT *puBlue BOOL wglSetGammaTableParametersI3D HDC hDC int iAttribute const int *piValue int wglSetLayerPaletteEntries HDC hdc int iLayerPlane int iStart int cEntries const COLORREF *pcr BOOL wglSetPbufferAttribARB HPBUFFERARB hPbuffer const int *piAttribList BOOL wglSetStereoEmitterState3DL HDC hDC UINT uState BOOL wglShareLists HGLRC hrcSrvShare HGLRC hrcSrvSource INT64 wglSwapBuffersMscOML HDC hdc INT64 target_msc INT64 divisor INT64 remainder BOOL wglSwapLayerBuffers HDC hdc UINT fuFlags BOOL wglSwapIntervalEXT int interval INT64 wglSwapLayerBuffersMscOML HDC hdc int fuPlanes INT64 target_msc INT64 divisor INT64 remainder BOOL wglUseFontBitmaps HDC hDC DWORD first DWORD count DWORD listBase BOOL wglUseFontBitmapsA HDC hDC DWORD first DWORD count DWORD listBase BOOL wglUseFontBitmapsW HDC hDC DWORD first DWORD count DWORD listBase BOOL wglUseFontOutlines HDC hDC DWORD first DWORD count DWORD listBase FLOAT deviation FLOAT extrusion int format LPGLYPHMETRICSFLOAT lpgmf BOOL wglUseFontOutlinesA HDC hDC DWORD first DWORD count DWORD listBase FLOAT deviation FLOAT extrusion int format LPGLYPHMETRICSFLOAT lpgmf BOOL wglUseFontOutlinesW HDC hDC DWORD first DWORD count DWORD listBase FLOAT deviation FLOAT extrusion int format LPGLYPHMETRICSFLOAT lpgmf BOOL wglWaitForMscOML HDC hdc INT64 target_msc INT64 divisor INT64 remainder INT64 *ust INT64 *msc INT64 *sbc BOOL wglWaitForSbcOML HDC hdc INT64 target_sbc INT64 *ust INT64 *msc INT64 *sbc