wglext.h revision 4a49301e
14a49301eSmrg#ifndef __wglext_h_
24a49301eSmrg#define __wglext_h_
34a49301eSmrg
44a49301eSmrg#ifdef __cplusplus
54a49301eSmrgextern "C" {
64a49301eSmrg#endif
74a49301eSmrg
84a49301eSmrg/*
94a49301eSmrg** Copyright (c) 2007-2009 The Khronos Group Inc.
104a49301eSmrg**
114a49301eSmrg** Permission is hereby granted, free of charge, to any person obtaining a
124a49301eSmrg** copy of this software and/or associated documentation files (the
134a49301eSmrg** "Materials"), to deal in the Materials without restriction, including
144a49301eSmrg** without limitation the rights to use, copy, modify, merge, publish,
154a49301eSmrg** distribute, sublicense, and/or sell copies of the Materials, and to
164a49301eSmrg** permit persons to whom the Materials are furnished to do so, subject to
174a49301eSmrg** the following conditions:
184a49301eSmrg**
194a49301eSmrg** The above copyright notice and this permission notice shall be included
204a49301eSmrg** in all copies or substantial portions of the Materials.
214a49301eSmrg**
224a49301eSmrg** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
234a49301eSmrg** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
244a49301eSmrg** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
254a49301eSmrg** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
264a49301eSmrg** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
274a49301eSmrg** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
284a49301eSmrg** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
294a49301eSmrg*/
304a49301eSmrg
314a49301eSmrg/* Function declaration macros - to move into glplatform.h */
324a49301eSmrg
334a49301eSmrg#if defined(_WIN32) && !defined(APIENTRY) && !defined(__CYGWIN__) && !defined(__SCITECH_SNAP__)
344a49301eSmrg#define WIN32_LEAN_AND_MEAN 1
354a49301eSmrg#include <windows.h>
364a49301eSmrg#endif
374a49301eSmrg
384a49301eSmrg#ifndef APIENTRY
394a49301eSmrg#define APIENTRY
404a49301eSmrg#endif
414a49301eSmrg#ifndef APIENTRYP
424a49301eSmrg#define APIENTRYP APIENTRY *
434a49301eSmrg#endif
444a49301eSmrg#ifndef GLAPI
454a49301eSmrg#define GLAPI extern
464a49301eSmrg#endif
474a49301eSmrg
484a49301eSmrg/*************************************************************/
494a49301eSmrg
504a49301eSmrg/* Header file version number */
514a49301eSmrg/* wglext.h last updated 2009/09/16 */
524a49301eSmrg/* Current version at http://www.opengl.org/registry/ */
534a49301eSmrg#define WGL_WGLEXT_VERSION 17
544a49301eSmrg
554a49301eSmrg#ifndef WGL_ARB_buffer_region
564a49301eSmrg#define WGL_FRONT_COLOR_BUFFER_BIT_ARB 0x00000001
574a49301eSmrg#define WGL_BACK_COLOR_BUFFER_BIT_ARB  0x00000002
584a49301eSmrg#define WGL_DEPTH_BUFFER_BIT_ARB       0x00000004
594a49301eSmrg#define WGL_STENCIL_BUFFER_BIT_ARB     0x00000008
604a49301eSmrg#endif
614a49301eSmrg
624a49301eSmrg#ifndef WGL_ARB_multisample
634a49301eSmrg#define WGL_SAMPLE_BUFFERS_ARB         0x2041
644a49301eSmrg#define WGL_SAMPLES_ARB                0x2042
654a49301eSmrg#endif
664a49301eSmrg
674a49301eSmrg#ifndef WGL_ARB_extensions_string
684a49301eSmrg#endif
694a49301eSmrg
704a49301eSmrg#ifndef WGL_ARB_pixel_format
714a49301eSmrg#define WGL_NUMBER_PIXEL_FORMATS_ARB   0x2000
724a49301eSmrg#define WGL_DRAW_TO_WINDOW_ARB         0x2001
734a49301eSmrg#define WGL_DRAW_TO_BITMAP_ARB         0x2002
744a49301eSmrg#define WGL_ACCELERATION_ARB           0x2003
754a49301eSmrg#define WGL_NEED_PALETTE_ARB           0x2004
764a49301eSmrg#define WGL_NEED_SYSTEM_PALETTE_ARB    0x2005
774a49301eSmrg#define WGL_SWAP_LAYER_BUFFERS_ARB     0x2006
784a49301eSmrg#define WGL_SWAP_METHOD_ARB            0x2007
794a49301eSmrg#define WGL_NUMBER_OVERLAYS_ARB        0x2008
804a49301eSmrg#define WGL_NUMBER_UNDERLAYS_ARB       0x2009
814a49301eSmrg#define WGL_TRANSPARENT_ARB            0x200A
824a49301eSmrg#define WGL_TRANSPARENT_RED_VALUE_ARB  0x2037
834a49301eSmrg#define WGL_TRANSPARENT_GREEN_VALUE_ARB 0x2038
844a49301eSmrg#define WGL_TRANSPARENT_BLUE_VALUE_ARB 0x2039
854a49301eSmrg#define WGL_TRANSPARENT_ALPHA_VALUE_ARB 0x203A
864a49301eSmrg#define WGL_TRANSPARENT_INDEX_VALUE_ARB 0x203B
874a49301eSmrg#define WGL_SHARE_DEPTH_ARB            0x200C
884a49301eSmrg#define WGL_SHARE_STENCIL_ARB          0x200D
894a49301eSmrg#define WGL_SHARE_ACCUM_ARB            0x200E
904a49301eSmrg#define WGL_SUPPORT_GDI_ARB            0x200F
914a49301eSmrg#define WGL_SUPPORT_OPENGL_ARB         0x2010
924a49301eSmrg#define WGL_DOUBLE_BUFFER_ARB          0x2011
934a49301eSmrg#define WGL_STEREO_ARB                 0x2012
944a49301eSmrg#define WGL_PIXEL_TYPE_ARB             0x2013
954a49301eSmrg#define WGL_COLOR_BITS_ARB             0x2014
964a49301eSmrg#define WGL_RED_BITS_ARB               0x2015
974a49301eSmrg#define WGL_RED_SHIFT_ARB              0x2016
984a49301eSmrg#define WGL_GREEN_BITS_ARB             0x2017
994a49301eSmrg#define WGL_GREEN_SHIFT_ARB            0x2018
1004a49301eSmrg#define WGL_BLUE_BITS_ARB              0x2019
1014a49301eSmrg#define WGL_BLUE_SHIFT_ARB             0x201A
1024a49301eSmrg#define WGL_ALPHA_BITS_ARB             0x201B
1034a49301eSmrg#define WGL_ALPHA_SHIFT_ARB            0x201C
1044a49301eSmrg#define WGL_ACCUM_BITS_ARB             0x201D
1054a49301eSmrg#define WGL_ACCUM_RED_BITS_ARB         0x201E
1064a49301eSmrg#define WGL_ACCUM_GREEN_BITS_ARB       0x201F
1074a49301eSmrg#define WGL_ACCUM_BLUE_BITS_ARB        0x2020
1084a49301eSmrg#define WGL_ACCUM_ALPHA_BITS_ARB       0x2021
1094a49301eSmrg#define WGL_DEPTH_BITS_ARB             0x2022
1104a49301eSmrg#define WGL_STENCIL_BITS_ARB           0x2023
1114a49301eSmrg#define WGL_AUX_BUFFERS_ARB            0x2024
1124a49301eSmrg#define WGL_NO_ACCELERATION_ARB        0x2025
1134a49301eSmrg#define WGL_GENERIC_ACCELERATION_ARB   0x2026
1144a49301eSmrg#define WGL_FULL_ACCELERATION_ARB      0x2027
1154a49301eSmrg#define WGL_SWAP_EXCHANGE_ARB          0x2028
1164a49301eSmrg#define WGL_SWAP_COPY_ARB              0x2029
1174a49301eSmrg#define WGL_SWAP_UNDEFINED_ARB         0x202A
1184a49301eSmrg#define WGL_TYPE_RGBA_ARB              0x202B
1194a49301eSmrg#define WGL_TYPE_COLORINDEX_ARB        0x202C
1204a49301eSmrg#endif
1214a49301eSmrg
1224a49301eSmrg#ifndef WGL_ARB_make_current_read
1234a49301eSmrg#define ERROR_INVALID_PIXEL_TYPE_ARB   0x2043
1244a49301eSmrg#define ERROR_INCOMPATIBLE_DEVICE_CONTEXTS_ARB 0x2054
1254a49301eSmrg#endif
1264a49301eSmrg
1274a49301eSmrg#ifndef WGL_ARB_pbuffer
1284a49301eSmrg#define WGL_DRAW_TO_PBUFFER_ARB        0x202D
1294a49301eSmrg#define WGL_MAX_PBUFFER_PIXELS_ARB     0x202E
1304a49301eSmrg#define WGL_MAX_PBUFFER_WIDTH_ARB      0x202F
1314a49301eSmrg#define WGL_MAX_PBUFFER_HEIGHT_ARB     0x2030
1324a49301eSmrg#define WGL_PBUFFER_LARGEST_ARB        0x2033
1334a49301eSmrg#define WGL_PBUFFER_WIDTH_ARB          0x2034
1344a49301eSmrg#define WGL_PBUFFER_HEIGHT_ARB         0x2035
1354a49301eSmrg#define WGL_PBUFFER_LOST_ARB           0x2036
1364a49301eSmrg#endif
1374a49301eSmrg
1384a49301eSmrg#ifndef WGL_ARB_render_texture
1394a49301eSmrg#define WGL_BIND_TO_TEXTURE_RGB_ARB    0x2070
1404a49301eSmrg#define WGL_BIND_TO_TEXTURE_RGBA_ARB   0x2071
1414a49301eSmrg#define WGL_TEXTURE_FORMAT_ARB         0x2072
1424a49301eSmrg#define WGL_TEXTURE_TARGET_ARB         0x2073
1434a49301eSmrg#define WGL_MIPMAP_TEXTURE_ARB         0x2074
1444a49301eSmrg#define WGL_TEXTURE_RGB_ARB            0x2075
1454a49301eSmrg#define WGL_TEXTURE_RGBA_ARB           0x2076
1464a49301eSmrg#define WGL_NO_TEXTURE_ARB             0x2077
1474a49301eSmrg#define WGL_TEXTURE_CUBE_MAP_ARB       0x2078
1484a49301eSmrg#define WGL_TEXTURE_1D_ARB             0x2079
1494a49301eSmrg#define WGL_TEXTURE_2D_ARB             0x207A
1504a49301eSmrg#define WGL_MIPMAP_LEVEL_ARB           0x207B
1514a49301eSmrg#define WGL_CUBE_MAP_FACE_ARB          0x207C
1524a49301eSmrg#define WGL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB 0x207D
1534a49301eSmrg#define WGL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB 0x207E
1544a49301eSmrg#define WGL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB 0x207F
1554a49301eSmrg#define WGL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB 0x2080
1564a49301eSmrg#define WGL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB 0x2081
1574a49301eSmrg#define WGL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB 0x2082
1584a49301eSmrg#define WGL_FRONT_LEFT_ARB             0x2083
1594a49301eSmrg#define WGL_FRONT_RIGHT_ARB            0x2084
1604a49301eSmrg#define WGL_BACK_LEFT_ARB              0x2085
1614a49301eSmrg#define WGL_BACK_RIGHT_ARB             0x2086
1624a49301eSmrg#define WGL_AUX0_ARB                   0x2087
1634a49301eSmrg#define WGL_AUX1_ARB                   0x2088
1644a49301eSmrg#define WGL_AUX2_ARB                   0x2089
1654a49301eSmrg#define WGL_AUX3_ARB                   0x208A
1664a49301eSmrg#define WGL_AUX4_ARB                   0x208B
1674a49301eSmrg#define WGL_AUX5_ARB                   0x208C
1684a49301eSmrg#define WGL_AUX6_ARB                   0x208D
1694a49301eSmrg#define WGL_AUX7_ARB                   0x208E
1704a49301eSmrg#define WGL_AUX8_ARB                   0x208F
1714a49301eSmrg#define WGL_AUX9_ARB                   0x2090
1724a49301eSmrg#endif
1734a49301eSmrg
1744a49301eSmrg#ifndef WGL_ARB_pixel_format_float
1754a49301eSmrg#define WGL_TYPE_RGBA_FLOAT_ARB        0x21A0
1764a49301eSmrg#endif
1774a49301eSmrg
1784a49301eSmrg#ifndef WGL_ARB_create_context
1794a49301eSmrg#define WGL_CONTEXT_DEBUG_BIT_ARB      0x00000001
1804a49301eSmrg#define WGL_CONTEXT_FORWARD_COMPATIBLE_BIT_ARB 0x00000002
1814a49301eSmrg#define WGL_CONTEXT_MAJOR_VERSION_ARB  0x2091
1824a49301eSmrg#define WGL_CONTEXT_MINOR_VERSION_ARB  0x2092
1834a49301eSmrg#define WGL_CONTEXT_LAYER_PLANE_ARB    0x2093
1844a49301eSmrg#define WGL_CONTEXT_FLAGS_ARB          0x2094
1854a49301eSmrg#define ERROR_INVALID_VERSION_ARB      0x2095
1864a49301eSmrg#endif
1874a49301eSmrg
1884a49301eSmrg#ifndef WGL_ARB_create_context_profile
1894a49301eSmrg#define WGL_CONTEXT_PROFILE_MASK_ARB   0x9126
1904a49301eSmrg#define WGL_CONTEXT_CORE_PROFILE_BIT_ARB 0x00000001
1914a49301eSmrg#define WGL_CONTEXT_COMPATIBILITY_PROFILE_BIT_ARB 0x00000002
1924a49301eSmrg#define ERROR_INVALID_PROFILE_ARB      0x2096
1934a49301eSmrg#endif
1944a49301eSmrg
1954a49301eSmrg#ifndef WGL_EXT_make_current_read
1964a49301eSmrg#define ERROR_INVALID_PIXEL_TYPE_EXT   0x2043
1974a49301eSmrg#endif
1984a49301eSmrg
1994a49301eSmrg#ifndef WGL_EXT_pixel_format
2004a49301eSmrg#define WGL_NUMBER_PIXEL_FORMATS_EXT   0x2000
2014a49301eSmrg#define WGL_DRAW_TO_WINDOW_EXT         0x2001
2024a49301eSmrg#define WGL_DRAW_TO_BITMAP_EXT         0x2002
2034a49301eSmrg#define WGL_ACCELERATION_EXT           0x2003
2044a49301eSmrg#define WGL_NEED_PALETTE_EXT           0x2004
2054a49301eSmrg#define WGL_NEED_SYSTEM_PALETTE_EXT    0x2005
2064a49301eSmrg#define WGL_SWAP_LAYER_BUFFERS_EXT     0x2006
2074a49301eSmrg#define WGL_SWAP_METHOD_EXT            0x2007
2084a49301eSmrg#define WGL_NUMBER_OVERLAYS_EXT        0x2008
2094a49301eSmrg#define WGL_NUMBER_UNDERLAYS_EXT       0x2009
2104a49301eSmrg#define WGL_TRANSPARENT_EXT            0x200A
2114a49301eSmrg#define WGL_TRANSPARENT_VALUE_EXT      0x200B
2124a49301eSmrg#define WGL_SHARE_DEPTH_EXT            0x200C
2134a49301eSmrg#define WGL_SHARE_STENCIL_EXT          0x200D
2144a49301eSmrg#define WGL_SHARE_ACCUM_EXT            0x200E
2154a49301eSmrg#define WGL_SUPPORT_GDI_EXT            0x200F
2164a49301eSmrg#define WGL_SUPPORT_OPENGL_EXT         0x2010
2174a49301eSmrg#define WGL_DOUBLE_BUFFER_EXT          0x2011
2184a49301eSmrg#define WGL_STEREO_EXT                 0x2012
2194a49301eSmrg#define WGL_PIXEL_TYPE_EXT             0x2013
2204a49301eSmrg#define WGL_COLOR_BITS_EXT             0x2014
2214a49301eSmrg#define WGL_RED_BITS_EXT               0x2015
2224a49301eSmrg#define WGL_RED_SHIFT_EXT              0x2016
2234a49301eSmrg#define WGL_GREEN_BITS_EXT             0x2017
2244a49301eSmrg#define WGL_GREEN_SHIFT_EXT            0x2018
2254a49301eSmrg#define WGL_BLUE_BITS_EXT              0x2019
2264a49301eSmrg#define WGL_BLUE_SHIFT_EXT             0x201A
2274a49301eSmrg#define WGL_ALPHA_BITS_EXT             0x201B
2284a49301eSmrg#define WGL_ALPHA_SHIFT_EXT            0x201C
2294a49301eSmrg#define WGL_ACCUM_BITS_EXT             0x201D
2304a49301eSmrg#define WGL_ACCUM_RED_BITS_EXT         0x201E
2314a49301eSmrg#define WGL_ACCUM_GREEN_BITS_EXT       0x201F
2324a49301eSmrg#define WGL_ACCUM_BLUE_BITS_EXT        0x2020
2334a49301eSmrg#define WGL_ACCUM_ALPHA_BITS_EXT       0x2021
2344a49301eSmrg#define WGL_DEPTH_BITS_EXT             0x2022
2354a49301eSmrg#define WGL_STENCIL_BITS_EXT           0x2023
2364a49301eSmrg#define WGL_AUX_BUFFERS_EXT            0x2024
2374a49301eSmrg#define WGL_NO_ACCELERATION_EXT        0x2025
2384a49301eSmrg#define WGL_GENERIC_ACCELERATION_EXT   0x2026
2394a49301eSmrg#define WGL_FULL_ACCELERATION_EXT      0x2027
2404a49301eSmrg#define WGL_SWAP_EXCHANGE_EXT          0x2028
2414a49301eSmrg#define WGL_SWAP_COPY_EXT              0x2029
2424a49301eSmrg#define WGL_SWAP_UNDEFINED_EXT         0x202A
2434a49301eSmrg#define WGL_TYPE_RGBA_EXT              0x202B
2444a49301eSmrg#define WGL_TYPE_COLORINDEX_EXT        0x202C
2454a49301eSmrg#endif
2464a49301eSmrg
2474a49301eSmrg#ifndef WGL_EXT_pbuffer
2484a49301eSmrg#define WGL_DRAW_TO_PBUFFER_EXT        0x202D
2494a49301eSmrg#define WGL_MAX_PBUFFER_PIXELS_EXT     0x202E
2504a49301eSmrg#define WGL_MAX_PBUFFER_WIDTH_EXT      0x202F
2514a49301eSmrg#define WGL_MAX_PBUFFER_HEIGHT_EXT     0x2030
2524a49301eSmrg#define WGL_OPTIMAL_PBUFFER_WIDTH_EXT  0x2031
2534a49301eSmrg#define WGL_OPTIMAL_PBUFFER_HEIGHT_EXT 0x2032
2544a49301eSmrg#define WGL_PBUFFER_LARGEST_EXT        0x2033
2554a49301eSmrg#define WGL_PBUFFER_WIDTH_EXT          0x2034
2564a49301eSmrg#define WGL_PBUFFER_HEIGHT_EXT         0x2035
2574a49301eSmrg#endif
2584a49301eSmrg
2594a49301eSmrg#ifndef WGL_EXT_depth_float
2604a49301eSmrg#define WGL_DEPTH_FLOAT_EXT            0x2040
2614a49301eSmrg#endif
2624a49301eSmrg
2634a49301eSmrg#ifndef WGL_3DFX_multisample
2644a49301eSmrg#define WGL_SAMPLE_BUFFERS_3DFX        0x2060
2654a49301eSmrg#define WGL_SAMPLES_3DFX               0x2061
2664a49301eSmrg#endif
2674a49301eSmrg
2684a49301eSmrg#ifndef WGL_EXT_multisample
2694a49301eSmrg#define WGL_SAMPLE_BUFFERS_EXT         0x2041
2704a49301eSmrg#define WGL_SAMPLES_EXT                0x2042
2714a49301eSmrg#endif
2724a49301eSmrg
2734a49301eSmrg#ifndef WGL_I3D_digital_video_control
2744a49301eSmrg#define WGL_DIGITAL_VIDEO_CURSOR_ALPHA_FRAMEBUFFER_I3D 0x2050
2754a49301eSmrg#define WGL_DIGITAL_VIDEO_CURSOR_ALPHA_VALUE_I3D 0x2051
2764a49301eSmrg#define WGL_DIGITAL_VIDEO_CURSOR_INCLUDED_I3D 0x2052
2774a49301eSmrg#define WGL_DIGITAL_VIDEO_GAMMA_CORRECTED_I3D 0x2053
2784a49301eSmrg#endif
2794a49301eSmrg
2804a49301eSmrg#ifndef WGL_I3D_gamma
2814a49301eSmrg#define WGL_GAMMA_TABLE_SIZE_I3D       0x204E
2824a49301eSmrg#define WGL_GAMMA_EXCLUDE_DESKTOP_I3D  0x204F
2834a49301eSmrg#endif
2844a49301eSmrg
2854a49301eSmrg#ifndef WGL_I3D_genlock
2864a49301eSmrg#define WGL_GENLOCK_SOURCE_MULTIVIEW_I3D 0x2044
2874a49301eSmrg#define WGL_GENLOCK_SOURCE_EXTENAL_SYNC_I3D 0x2045
2884a49301eSmrg#define WGL_GENLOCK_SOURCE_EXTENAL_FIELD_I3D 0x2046
2894a49301eSmrg#define WGL_GENLOCK_SOURCE_EXTENAL_TTL_I3D 0x2047
2904a49301eSmrg#define WGL_GENLOCK_SOURCE_DIGITAL_SYNC_I3D 0x2048
2914a49301eSmrg#define WGL_GENLOCK_SOURCE_DIGITAL_FIELD_I3D 0x2049
2924a49301eSmrg#define WGL_GENLOCK_SOURCE_EDGE_FALLING_I3D 0x204A
2934a49301eSmrg#define WGL_GENLOCK_SOURCE_EDGE_RISING_I3D 0x204B
2944a49301eSmrg#define WGL_GENLOCK_SOURCE_EDGE_BOTH_I3D 0x204C
2954a49301eSmrg#endif
2964a49301eSmrg
2974a49301eSmrg#ifndef WGL_I3D_image_buffer
2984a49301eSmrg#define WGL_IMAGE_BUFFER_MIN_ACCESS_I3D 0x00000001
2994a49301eSmrg#define WGL_IMAGE_BUFFER_LOCK_I3D      0x00000002
3004a49301eSmrg#endif
3014a49301eSmrg
3024a49301eSmrg#ifndef WGL_I3D_swap_frame_lock
3034a49301eSmrg#endif
3044a49301eSmrg
3054a49301eSmrg#ifndef WGL_NV_render_depth_texture
3064a49301eSmrg#define WGL_BIND_TO_TEXTURE_DEPTH_NV   0x20A3
3074a49301eSmrg#define WGL_BIND_TO_TEXTURE_RECTANGLE_DEPTH_NV 0x20A4
3084a49301eSmrg#define WGL_DEPTH_TEXTURE_FORMAT_NV    0x20A5
3094a49301eSmrg#define WGL_TEXTURE_DEPTH_COMPONENT_NV 0x20A6
3104a49301eSmrg#define WGL_DEPTH_COMPONENT_NV         0x20A7
3114a49301eSmrg#endif
3124a49301eSmrg
3134a49301eSmrg#ifndef WGL_NV_render_texture_rectangle
3144a49301eSmrg#define WGL_BIND_TO_TEXTURE_RECTANGLE_RGB_NV 0x20A0
3154a49301eSmrg#define WGL_BIND_TO_TEXTURE_RECTANGLE_RGBA_NV 0x20A1
3164a49301eSmrg#define WGL_TEXTURE_RECTANGLE_NV       0x20A2
3174a49301eSmrg#endif
3184a49301eSmrg
3194a49301eSmrg#ifndef WGL_ATI_pixel_format_float
3204a49301eSmrg#define WGL_TYPE_RGBA_FLOAT_ATI        0x21A0
3214a49301eSmrg#endif
3224a49301eSmrg
3234a49301eSmrg#ifndef WGL_NV_float_buffer
3244a49301eSmrg#define WGL_FLOAT_COMPONENTS_NV        0x20B0
3254a49301eSmrg#define WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_R_NV 0x20B1
3264a49301eSmrg#define WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RG_NV 0x20B2
3274a49301eSmrg#define WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RGB_NV 0x20B3
3284a49301eSmrg#define WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RGBA_NV 0x20B4
3294a49301eSmrg#define WGL_TEXTURE_FLOAT_R_NV         0x20B5
3304a49301eSmrg#define WGL_TEXTURE_FLOAT_RG_NV        0x20B6
3314a49301eSmrg#define WGL_TEXTURE_FLOAT_RGB_NV       0x20B7
3324a49301eSmrg#define WGL_TEXTURE_FLOAT_RGBA_NV      0x20B8
3334a49301eSmrg#endif
3344a49301eSmrg
3354a49301eSmrg#ifndef WGL_3DL_stereo_control
3364a49301eSmrg#define WGL_STEREO_EMITTER_ENABLE_3DL  0x2055
3374a49301eSmrg#define WGL_STEREO_EMITTER_DISABLE_3DL 0x2056
3384a49301eSmrg#define WGL_STEREO_POLARITY_NORMAL_3DL 0x2057
3394a49301eSmrg#define WGL_STEREO_POLARITY_INVERT_3DL 0x2058
3404a49301eSmrg#endif
3414a49301eSmrg
3424a49301eSmrg#ifndef WGL_EXT_pixel_format_packed_float
3434a49301eSmrg#define WGL_TYPE_RGBA_UNSIGNED_FLOAT_EXT 0x20A8
3444a49301eSmrg#endif
3454a49301eSmrg
3464a49301eSmrg#ifndef WGL_EXT_framebuffer_sRGB
3474a49301eSmrg#define WGL_FRAMEBUFFER_SRGB_CAPABLE_EXT 0x20A9
3484a49301eSmrg#endif
3494a49301eSmrg
3504a49301eSmrg#ifndef WGL_NV_present_video
3514a49301eSmrg#define WGL_NUM_VIDEO_SLOTS_NV         0x20F0
3524a49301eSmrg#endif
3534a49301eSmrg
3544a49301eSmrg#ifndef WGL_NV_video_out
3554a49301eSmrg#define WGL_BIND_TO_VIDEO_RGB_NV       0x20C0
3564a49301eSmrg#define WGL_BIND_TO_VIDEO_RGBA_NV      0x20C1
3574a49301eSmrg#define WGL_BIND_TO_VIDEO_RGB_AND_DEPTH_NV 0x20C2
3584a49301eSmrg#define WGL_VIDEO_OUT_COLOR_NV         0x20C3
3594a49301eSmrg#define WGL_VIDEO_OUT_ALPHA_NV         0x20C4
3604a49301eSmrg#define WGL_VIDEO_OUT_DEPTH_NV         0x20C5
3614a49301eSmrg#define WGL_VIDEO_OUT_COLOR_AND_ALPHA_NV 0x20C6
3624a49301eSmrg#define WGL_VIDEO_OUT_COLOR_AND_DEPTH_NV 0x20C7
3634a49301eSmrg#define WGL_VIDEO_OUT_FRAME            0x20C8
3644a49301eSmrg#define WGL_VIDEO_OUT_FIELD_1          0x20C9
3654a49301eSmrg#define WGL_VIDEO_OUT_FIELD_2          0x20CA
3664a49301eSmrg#define WGL_VIDEO_OUT_STACKED_FIELDS_1_2 0x20CB
3674a49301eSmrg#define WGL_VIDEO_OUT_STACKED_FIELDS_2_1 0x20CC
3684a49301eSmrg#endif
3694a49301eSmrg
3704a49301eSmrg#ifndef WGL_NV_swap_group
3714a49301eSmrg#endif
3724a49301eSmrg
3734a49301eSmrg#ifndef WGL_NV_gpu_affinity
3744a49301eSmrg#define WGL_ERROR_INCOMPATIBLE_AFFINITY_MASKS_NV 0x20D0
3754a49301eSmrg#define WGL_ERROR_MISSING_AFFINITY_MASK_NV 0x20D1
3764a49301eSmrg#endif
3774a49301eSmrg
3784a49301eSmrg#ifndef WGL_AMD_gpu_association
3794a49301eSmrg#define WGL_GPU_VENDOR_AMD             0x1F00
3804a49301eSmrg#define WGL_GPU_RENDERER_STRING_AMD    0x1F01
3814a49301eSmrg#define WGL_GPU_OPENGL_VERSION_STRING_AMD 0x1F02
3824a49301eSmrg#define WGL_GPU_FASTEST_TARGET_GPUS_AMD 0x21A2
3834a49301eSmrg#define WGL_GPU_RAM_AMD                0x21A3
3844a49301eSmrg#define WGL_GPU_CLOCK_AMD              0x21A4
3854a49301eSmrg#define WGL_GPU_NUM_PIPES_AMD          0x21A5
3864a49301eSmrg#define WGL_GPU_NUM_SIMD_AMD           0x21A6
3874a49301eSmrg#define WGL_GPU_NUM_RB_AMD             0x21A7
3884a49301eSmrg#define WGL_GPU_NUM_SPI_AMD            0x21A8
3894a49301eSmrg#endif
3904a49301eSmrg
3914a49301eSmrg#ifndef NV_video_capture
3924a49301eSmrg#define WGL_UNIQUE_ID_NV               0x20CE
3934a49301eSmrg#define WGL_NUM_VIDEO_CAPTURE_SLOTS_NV 0x20CF
3944a49301eSmrg#endif
3954a49301eSmrg
3964a49301eSmrg#ifndef NV_copy_image
3974a49301eSmrg#endif
3984a49301eSmrg
3994a49301eSmrg
4004a49301eSmrg/*************************************************************/
4014a49301eSmrg
4024a49301eSmrg#ifndef WGL_ARB_pbuffer
4034a49301eSmrgDECLARE_HANDLE(HPBUFFERARB);
4044a49301eSmrg#endif
4054a49301eSmrg#ifndef WGL_EXT_pbuffer
4064a49301eSmrgDECLARE_HANDLE(HPBUFFEREXT);
4074a49301eSmrg#endif
4084a49301eSmrg#ifndef WGL_NV_present_video
4094a49301eSmrgDECLARE_HANDLE(HVIDEOOUTPUTDEVICENV);
4104a49301eSmrg#endif
4114a49301eSmrg#ifndef WGL_NV_video_output
4124a49301eSmrgDECLARE_HANDLE(HPVIDEODEV);
4134a49301eSmrg#endif
4144a49301eSmrg#ifndef WGL_NV_gpu_affinity
4154a49301eSmrgDECLARE_HANDLE(HPGPUNV);
4164a49301eSmrgDECLARE_HANDLE(HGPUNV);
4174a49301eSmrg
4184a49301eSmrgtypedef struct _GPU_DEVICE {
4194a49301eSmrg    DWORD  cb;
4204a49301eSmrg    CHAR   DeviceName[32];
4214a49301eSmrg    CHAR   DeviceString[128];
4224a49301eSmrg    DWORD  Flags;
4234a49301eSmrg    RECT   rcVirtualScreen;
4244a49301eSmrg} GPU_DEVICE, *PGPU_DEVICE;
4254a49301eSmrg#endif
4264a49301eSmrg#ifndef WGL_NV_video_capture
4274a49301eSmrgDECLARE_HANDLE(HVIDEOINPUTDEVICENV);
4284a49301eSmrg#endif
4294a49301eSmrg
4304a49301eSmrg#ifndef WGL_ARB_buffer_region
4314a49301eSmrg#define WGL_ARB_buffer_region 1
4324a49301eSmrg#ifdef WGL_WGLEXT_PROTOTYPES
4334a49301eSmrgextern HANDLE WINAPI wglCreateBufferRegionARB (HDC, int, UINT);
4344a49301eSmrgextern VOID WINAPI wglDeleteBufferRegionARB (HANDLE);
4354a49301eSmrgextern BOOL WINAPI wglSaveBufferRegionARB (HANDLE, int, int, int, int);
4364a49301eSmrgextern BOOL WINAPI wglRestoreBufferRegionARB (HANDLE, int, int, int, int, int, int);
4374a49301eSmrg#endif /* WGL_WGLEXT_PROTOTYPES */
4384a49301eSmrgtypedef HANDLE (WINAPI * PFNWGLCREATEBUFFERREGIONARBPROC) (HDC hDC, int iLayerPlane, UINT uType);
4394a49301eSmrgtypedef VOID (WINAPI * PFNWGLDELETEBUFFERREGIONARBPROC) (HANDLE hRegion);
4404a49301eSmrgtypedef BOOL (WINAPI * PFNWGLSAVEBUFFERREGIONARBPROC) (HANDLE hRegion, int x, int y, int width, int height);
4414a49301eSmrgtypedef BOOL (WINAPI * PFNWGLRESTOREBUFFERREGIONARBPROC) (HANDLE hRegion, int x, int y, int width, int height, int xSrc, int ySrc);
4424a49301eSmrg#endif
4434a49301eSmrg
4444a49301eSmrg#ifndef WGL_ARB_multisample
4454a49301eSmrg#define WGL_ARB_multisample 1
4464a49301eSmrg#endif
4474a49301eSmrg
4484a49301eSmrg#ifndef WGL_ARB_extensions_string
4494a49301eSmrg#define WGL_ARB_extensions_string 1
4504a49301eSmrg#ifdef WGL_WGLEXT_PROTOTYPES
4514a49301eSmrgextern const char * WINAPI wglGetExtensionsStringARB (HDC);
4524a49301eSmrg#endif /* WGL_WGLEXT_PROTOTYPES */
4534a49301eSmrgtypedef const char * (WINAPI * PFNWGLGETEXTENSIONSSTRINGARBPROC) (HDC hdc);
4544a49301eSmrg#endif
4554a49301eSmrg
4564a49301eSmrg#ifndef WGL_ARB_pixel_format
4574a49301eSmrg#define WGL_ARB_pixel_format 1
4584a49301eSmrg#ifdef WGL_WGLEXT_PROTOTYPES
4594a49301eSmrgextern BOOL WINAPI wglGetPixelFormatAttribivARB (HDC, int, int, UINT, const int *, int *);
4604a49301eSmrgextern BOOL WINAPI wglGetPixelFormatAttribfvARB (HDC, int, int, UINT, const int *, FLOAT *);
4614a49301eSmrgextern BOOL WINAPI wglChoosePixelFormatARB (HDC, const int *, const FLOAT *, UINT, int *, UINT *);
4624a49301eSmrg#endif /* WGL_WGLEXT_PROTOTYPES */
4634a49301eSmrgtypedef BOOL (WINAPI * PFNWGLGETPIXELFORMATATTRIBIVARBPROC) (HDC hdc, int iPixelFormat, int iLayerPlane, UINT nAttributes, const int *piAttributes, int *piValues);
4644a49301eSmrgtypedef BOOL (WINAPI * PFNWGLGETPIXELFORMATATTRIBFVARBPROC) (HDC hdc, int iPixelFormat, int iLayerPlane, UINT nAttributes, const int *piAttributes, FLOAT *pfValues);
4654a49301eSmrgtypedef BOOL (WINAPI * PFNWGLCHOOSEPIXELFORMATARBPROC) (HDC hdc, const int *piAttribIList, const FLOAT *pfAttribFList, UINT nMaxFormats, int *piFormats, UINT *nNumFormats);
4664a49301eSmrg#endif
4674a49301eSmrg
4684a49301eSmrg#ifndef WGL_ARB_make_current_read
4694a49301eSmrg#define WGL_ARB_make_current_read 1
4704a49301eSmrg#ifdef WGL_WGLEXT_PROTOTYPES
4714a49301eSmrgextern BOOL WINAPI wglMakeContextCurrentARB (HDC, HDC, HGLRC);
4724a49301eSmrgextern HDC WINAPI wglGetCurrentReadDCARB (void);
4734a49301eSmrg#endif /* WGL_WGLEXT_PROTOTYPES */
4744a49301eSmrgtypedef BOOL (WINAPI * PFNWGLMAKECONTEXTCURRENTARBPROC) (HDC hDrawDC, HDC hReadDC, HGLRC hglrc);
4754a49301eSmrgtypedef HDC (WINAPI * PFNWGLGETCURRENTREADDCARBPROC) (void);
4764a49301eSmrg#endif
4774a49301eSmrg
4784a49301eSmrg#ifndef WGL_ARB_pbuffer
4794a49301eSmrg#define WGL_ARB_pbuffer 1
4804a49301eSmrg#ifdef WGL_WGLEXT_PROTOTYPES
4814a49301eSmrgextern HPBUFFERARB WINAPI wglCreatePbufferARB (HDC, int, int, int, const int *);
4824a49301eSmrgextern HDC WINAPI wglGetPbufferDCARB (HPBUFFERARB);
4834a49301eSmrgextern int WINAPI wglReleasePbufferDCARB (HPBUFFERARB, HDC);
4844a49301eSmrgextern BOOL WINAPI wglDestroyPbufferARB (HPBUFFERARB);
4854a49301eSmrgextern BOOL WINAPI wglQueryPbufferARB (HPBUFFERARB, int, int *);
4864a49301eSmrg#endif /* WGL_WGLEXT_PROTOTYPES */
4874a49301eSmrgtypedef HPBUFFERARB (WINAPI * PFNWGLCREATEPBUFFERARBPROC) (HDC hDC, int iPixelFormat, int iWidth, int iHeight, const int *piAttribList);
4884a49301eSmrgtypedef HDC (WINAPI * PFNWGLGETPBUFFERDCARBPROC) (HPBUFFERARB hPbuffer);
4894a49301eSmrgtypedef int (WINAPI * PFNWGLRELEASEPBUFFERDCARBPROC) (HPBUFFERARB hPbuffer, HDC hDC);
4904a49301eSmrgtypedef BOOL (WINAPI * PFNWGLDESTROYPBUFFERARBPROC) (HPBUFFERARB hPbuffer);
4914a49301eSmrgtypedef BOOL (WINAPI * PFNWGLQUERYPBUFFERARBPROC) (HPBUFFERARB hPbuffer, int iAttribute, int *piValue);
4924a49301eSmrg#endif
4934a49301eSmrg
4944a49301eSmrg#ifndef WGL_ARB_render_texture
4954a49301eSmrg#define WGL_ARB_render_texture 1
4964a49301eSmrg#ifdef WGL_WGLEXT_PROTOTYPES
4974a49301eSmrgextern BOOL WINAPI wglBindTexImageARB (HPBUFFERARB, int);
4984a49301eSmrgextern BOOL WINAPI wglReleaseTexImageARB (HPBUFFERARB, int);
4994a49301eSmrgextern BOOL WINAPI wglSetPbufferAttribARB (HPBUFFERARB, const int *);
5004a49301eSmrg#endif /* WGL_WGLEXT_PROTOTYPES */
5014a49301eSmrgtypedef BOOL (WINAPI * PFNWGLBINDTEXIMAGEARBPROC) (HPBUFFERARB hPbuffer, int iBuffer);
5024a49301eSmrgtypedef BOOL (WINAPI * PFNWGLRELEASETEXIMAGEARBPROC) (HPBUFFERARB hPbuffer, int iBuffer);
5034a49301eSmrgtypedef BOOL (WINAPI * PFNWGLSETPBUFFERATTRIBARBPROC) (HPBUFFERARB hPbuffer, const int *piAttribList);
5044a49301eSmrg#endif
5054a49301eSmrg
5064a49301eSmrg#ifndef WGL_ARB_pixel_format_float
5074a49301eSmrg#define WGL_ARB_pixel_format_float 1
5084a49301eSmrg#endif
5094a49301eSmrg
5104a49301eSmrg#ifndef WGL_ARB_create_context
5114a49301eSmrg#define WGL_ARB_create_context 1
5124a49301eSmrg#ifdef WGL_WGLEXT_PROTOTYPES
5134a49301eSmrgextern HGLRC WINAPI wglCreateContextAttribsARB (HDC, HGLRC, const int *);
5144a49301eSmrg#endif /* WGL_WGLEXT_PROTOTYPES */
5154a49301eSmrgtypedef HGLRC (WINAPI * PFNWGLCREATECONTEXTATTRIBSARBPROC) (HDC hDC, HGLRC hShareContext, const int *attribList);
5164a49301eSmrg#endif
5174a49301eSmrg
5184a49301eSmrg#ifndef WGL_ARB_create_context_profile
5194a49301eSmrg#define WGL_ARB_create_context_profile 1
5204a49301eSmrg#endif
5214a49301eSmrg
5224a49301eSmrg#ifndef WGL_EXT_display_color_table
5234a49301eSmrg#define WGL_EXT_display_color_table 1
5244a49301eSmrg#ifdef WGL_WGLEXT_PROTOTYPES
5254a49301eSmrgextern GLboolean WINAPI wglCreateDisplayColorTableEXT (GLushort);
5264a49301eSmrgextern GLboolean WINAPI wglLoadDisplayColorTableEXT (const GLushort *, GLuint);
5274a49301eSmrgextern GLboolean WINAPI wglBindDisplayColorTableEXT (GLushort);
5284a49301eSmrgextern VOID WINAPI wglDestroyDisplayColorTableEXT (GLushort);
5294a49301eSmrg#endif /* WGL_WGLEXT_PROTOTYPES */
5304a49301eSmrgtypedef GLboolean (WINAPI * PFNWGLCREATEDISPLAYCOLORTABLEEXTPROC) (GLushort id);
5314a49301eSmrgtypedef GLboolean (WINAPI * PFNWGLLOADDISPLAYCOLORTABLEEXTPROC) (const GLushort *table, GLuint length);
5324a49301eSmrgtypedef GLboolean (WINAPI * PFNWGLBINDDISPLAYCOLORTABLEEXTPROC) (GLushort id);
5334a49301eSmrgtypedef VOID (WINAPI * PFNWGLDESTROYDISPLAYCOLORTABLEEXTPROC) (GLushort id);
5344a49301eSmrg#endif
5354a49301eSmrg
5364a49301eSmrg#ifndef WGL_EXT_extensions_string
5374a49301eSmrg#define WGL_EXT_extensions_string 1
5384a49301eSmrg#ifdef WGL_WGLEXT_PROTOTYPES
5394a49301eSmrgextern const char * WINAPI wglGetExtensionsStringEXT (void);
5404a49301eSmrg#endif /* WGL_WGLEXT_PROTOTYPES */
5414a49301eSmrgtypedef const char * (WINAPI * PFNWGLGETEXTENSIONSSTRINGEXTPROC) (void);
5424a49301eSmrg#endif
5434a49301eSmrg
5444a49301eSmrg#ifndef WGL_EXT_make_current_read
5454a49301eSmrg#define WGL_EXT_make_current_read 1
5464a49301eSmrg#ifdef WGL_WGLEXT_PROTOTYPES
5474a49301eSmrgextern BOOL WINAPI wglMakeContextCurrentEXT (HDC, HDC, HGLRC);
5484a49301eSmrgextern HDC WINAPI wglGetCurrentReadDCEXT (void);
5494a49301eSmrg#endif /* WGL_WGLEXT_PROTOTYPES */
5504a49301eSmrgtypedef BOOL (WINAPI * PFNWGLMAKECONTEXTCURRENTEXTPROC) (HDC hDrawDC, HDC hReadDC, HGLRC hglrc);
5514a49301eSmrgtypedef HDC (WINAPI * PFNWGLGETCURRENTREADDCEXTPROC) (void);
5524a49301eSmrg#endif
5534a49301eSmrg
5544a49301eSmrg#ifndef WGL_EXT_pbuffer
5554a49301eSmrg#define WGL_EXT_pbuffer 1
5564a49301eSmrg#ifdef WGL_WGLEXT_PROTOTYPES
5574a49301eSmrgextern HPBUFFEREXT WINAPI wglCreatePbufferEXT (HDC, int, int, int, const int *);
5584a49301eSmrgextern HDC WINAPI wglGetPbufferDCEXT (HPBUFFEREXT);
5594a49301eSmrgextern int WINAPI wglReleasePbufferDCEXT (HPBUFFEREXT, HDC);
5604a49301eSmrgextern BOOL WINAPI wglDestroyPbufferEXT (HPBUFFEREXT);
5614a49301eSmrgextern BOOL WINAPI wglQueryPbufferEXT (HPBUFFEREXT, int, int *);
5624a49301eSmrg#endif /* WGL_WGLEXT_PROTOTYPES */
5634a49301eSmrgtypedef HPBUFFEREXT (WINAPI * PFNWGLCREATEPBUFFEREXTPROC) (HDC hDC, int iPixelFormat, int iWidth, int iHeight, const int *piAttribList);
5644a49301eSmrgtypedef HDC (WINAPI * PFNWGLGETPBUFFERDCEXTPROC) (HPBUFFEREXT hPbuffer);
5654a49301eSmrgtypedef int (WINAPI * PFNWGLRELEASEPBUFFERDCEXTPROC) (HPBUFFEREXT hPbuffer, HDC hDC);
5664a49301eSmrgtypedef BOOL (WINAPI * PFNWGLDESTROYPBUFFEREXTPROC) (HPBUFFEREXT hPbuffer);
5674a49301eSmrgtypedef BOOL (WINAPI * PFNWGLQUERYPBUFFEREXTPROC) (HPBUFFEREXT hPbuffer, int iAttribute, int *piValue);
5684a49301eSmrg#endif
5694a49301eSmrg
5704a49301eSmrg#ifndef WGL_EXT_pixel_format
5714a49301eSmrg#define WGL_EXT_pixel_format 1
5724a49301eSmrg#ifdef WGL_WGLEXT_PROTOTYPES
5734a49301eSmrgextern BOOL WINAPI wglGetPixelFormatAttribivEXT (HDC, int, int, UINT, int *, int *);
5744a49301eSmrgextern BOOL WINAPI wglGetPixelFormatAttribfvEXT (HDC, int, int, UINT, int *, FLOAT *);
5754a49301eSmrgextern BOOL WINAPI wglChoosePixelFormatEXT (HDC, const int *, const FLOAT *, UINT, int *, UINT *);
5764a49301eSmrg#endif /* WGL_WGLEXT_PROTOTYPES */
5774a49301eSmrgtypedef BOOL (WINAPI * PFNWGLGETPIXELFORMATATTRIBIVEXTPROC) (HDC hdc, int iPixelFormat, int iLayerPlane, UINT nAttributes, int *piAttributes, int *piValues);
5784a49301eSmrgtypedef BOOL (WINAPI * PFNWGLGETPIXELFORMATATTRIBFVEXTPROC) (HDC hdc, int iPixelFormat, int iLayerPlane, UINT nAttributes, int *piAttributes, FLOAT *pfValues);
5794a49301eSmrgtypedef BOOL (WINAPI * PFNWGLCHOOSEPIXELFORMATEXTPROC) (HDC hdc, const int *piAttribIList, const FLOAT *pfAttribFList, UINT nMaxFormats, int *piFormats, UINT *nNumFormats);
5804a49301eSmrg#endif
5814a49301eSmrg
5824a49301eSmrg#ifndef WGL_EXT_swap_control
5834a49301eSmrg#define WGL_EXT_swap_control 1
5844a49301eSmrg#ifdef WGL_WGLEXT_PROTOTYPES
5854a49301eSmrgextern BOOL WINAPI wglSwapIntervalEXT (int);
5864a49301eSmrgextern int WINAPI wglGetSwapIntervalEXT (void);
5874a49301eSmrg#endif /* WGL_WGLEXT_PROTOTYPES */
5884a49301eSmrgtypedef BOOL (WINAPI * PFNWGLSWAPINTERVALEXTPROC) (int interval);
5894a49301eSmrgtypedef int (WINAPI * PFNWGLGETSWAPINTERVALEXTPROC) (void);
5904a49301eSmrg#endif
5914a49301eSmrg
5924a49301eSmrg#ifndef WGL_EXT_depth_float
5934a49301eSmrg#define WGL_EXT_depth_float 1
5944a49301eSmrg#endif
5954a49301eSmrg
5964a49301eSmrg#ifndef WGL_NV_vertex_array_range
5974a49301eSmrg#define WGL_NV_vertex_array_range 1
5984a49301eSmrg#ifdef WGL_WGLEXT_PROTOTYPES
5994a49301eSmrgextern void* WINAPI wglAllocateMemoryNV (GLsizei, GLfloat, GLfloat, GLfloat);
6004a49301eSmrgextern void WINAPI wglFreeMemoryNV (void *);
6014a49301eSmrg#endif /* WGL_WGLEXT_PROTOTYPES */
6024a49301eSmrgtypedef void* (WINAPI * PFNWGLALLOCATEMEMORYNVPROC) (GLsizei size, GLfloat readfreq, GLfloat writefreq, GLfloat priority);
6034a49301eSmrgtypedef void (WINAPI * PFNWGLFREEMEMORYNVPROC) (void *pointer);
6044a49301eSmrg#endif
6054a49301eSmrg
6064a49301eSmrg#ifndef WGL_3DFX_multisample
6074a49301eSmrg#define WGL_3DFX_multisample 1
6084a49301eSmrg#endif
6094a49301eSmrg
6104a49301eSmrg#ifndef WGL_EXT_multisample
6114a49301eSmrg#define WGL_EXT_multisample 1
6124a49301eSmrg#endif
6134a49301eSmrg
6144a49301eSmrg#ifndef WGL_OML_sync_control
6154a49301eSmrg#define WGL_OML_sync_control 1
6164a49301eSmrg#ifdef WGL_WGLEXT_PROTOTYPES
6174a49301eSmrgextern BOOL WINAPI wglGetSyncValuesOML (HDC, INT64 *, INT64 *, INT64 *);
6184a49301eSmrgextern BOOL WINAPI wglGetMscRateOML (HDC, INT32 *, INT32 *);
6194a49301eSmrgextern INT64 WINAPI wglSwapBuffersMscOML (HDC, INT64, INT64, INT64);
6204a49301eSmrgextern INT64 WINAPI wglSwapLayerBuffersMscOML (HDC, int, INT64, INT64, INT64);
6214a49301eSmrgextern BOOL WINAPI wglWaitForMscOML (HDC, INT64, INT64, INT64, INT64 *, INT64 *, INT64 *);
6224a49301eSmrgextern BOOL WINAPI wglWaitForSbcOML (HDC, INT64, INT64 *, INT64 *, INT64 *);
6234a49301eSmrg#endif /* WGL_WGLEXT_PROTOTYPES */
6244a49301eSmrgtypedef BOOL (WINAPI * PFNWGLGETSYNCVALUESOMLPROC) (HDC hdc, INT64 *ust, INT64 *msc, INT64 *sbc);
6254a49301eSmrgtypedef BOOL (WINAPI * PFNWGLGETMSCRATEOMLPROC) (HDC hdc, INT32 *numerator, INT32 *denominator);
6264a49301eSmrgtypedef INT64 (WINAPI * PFNWGLSWAPBUFFERSMSCOMLPROC) (HDC hdc, INT64 target_msc, INT64 divisor, INT64 remainder);
6274a49301eSmrgtypedef INT64 (WINAPI * PFNWGLSWAPLAYERBUFFERSMSCOMLPROC) (HDC hdc, int fuPlanes, INT64 target_msc, INT64 divisor, INT64 remainder);
6284a49301eSmrgtypedef BOOL (WINAPI * PFNWGLWAITFORMSCOMLPROC) (HDC hdc, INT64 target_msc, INT64 divisor, INT64 remainder, INT64 *ust, INT64 *msc, INT64 *sbc);
6294a49301eSmrgtypedef BOOL (WINAPI * PFNWGLWAITFORSBCOMLPROC) (HDC hdc, INT64 target_sbc, INT64 *ust, INT64 *msc, INT64 *sbc);
6304a49301eSmrg#endif
6314a49301eSmrg
6324a49301eSmrg#ifndef WGL_I3D_digital_video_control
6334a49301eSmrg#define WGL_I3D_digital_video_control 1
6344a49301eSmrg#ifdef WGL_WGLEXT_PROTOTYPES
6354a49301eSmrgextern BOOL WINAPI wglGetDigitalVideoParametersI3D (HDC, int, int *);
6364a49301eSmrgextern BOOL WINAPI wglSetDigitalVideoParametersI3D (HDC, int, const int *);
6374a49301eSmrg#endif /* WGL_WGLEXT_PROTOTYPES */
6384a49301eSmrgtypedef BOOL (WINAPI * PFNWGLGETDIGITALVIDEOPARAMETERSI3DPROC) (HDC hDC, int iAttribute, int *piValue);
6394a49301eSmrgtypedef BOOL (WINAPI * PFNWGLSETDIGITALVIDEOPARAMETERSI3DPROC) (HDC hDC, int iAttribute, const int *piValue);
6404a49301eSmrg#endif
6414a49301eSmrg
6424a49301eSmrg#ifndef WGL_I3D_gamma
6434a49301eSmrg#define WGL_I3D_gamma 1
6444a49301eSmrg#ifdef WGL_WGLEXT_PROTOTYPES
6454a49301eSmrgextern BOOL WINAPI wglGetGammaTableParametersI3D (HDC, int, int *);
6464a49301eSmrgextern BOOL WINAPI wglSetGammaTableParametersI3D (HDC, int, const int *);
6474a49301eSmrgextern BOOL WINAPI wglGetGammaTableI3D (HDC, int, USHORT *, USHORT *, USHORT *);
6484a49301eSmrgextern BOOL WINAPI wglSetGammaTableI3D (HDC, int, const USHORT *, const USHORT *, const USHORT *);
6494a49301eSmrg#endif /* WGL_WGLEXT_PROTOTYPES */
6504a49301eSmrgtypedef BOOL (WINAPI * PFNWGLGETGAMMATABLEPARAMETERSI3DPROC) (HDC hDC, int iAttribute, int *piValue);
6514a49301eSmrgtypedef BOOL (WINAPI * PFNWGLSETGAMMATABLEPARAMETERSI3DPROC) (HDC hDC, int iAttribute, const int *piValue);
6524a49301eSmrgtypedef BOOL (WINAPI * PFNWGLGETGAMMATABLEI3DPROC) (HDC hDC, int iEntries, USHORT *puRed, USHORT *puGreen, USHORT *puBlue);
6534a49301eSmrgtypedef BOOL (WINAPI * PFNWGLSETGAMMATABLEI3DPROC) (HDC hDC, int iEntries, const USHORT *puRed, const USHORT *puGreen, const USHORT *puBlue);
6544a49301eSmrg#endif
6554a49301eSmrg
6564a49301eSmrg#ifndef WGL_I3D_genlock
6574a49301eSmrg#define WGL_I3D_genlock 1
6584a49301eSmrg#ifdef WGL_WGLEXT_PROTOTYPES
6594a49301eSmrgextern BOOL WINAPI wglEnableGenlockI3D (HDC);
6604a49301eSmrgextern BOOL WINAPI wglDisableGenlockI3D (HDC);
6614a49301eSmrgextern BOOL WINAPI wglIsEnabledGenlockI3D (HDC, BOOL *);
6624a49301eSmrgextern BOOL WINAPI wglGenlockSourceI3D (HDC, UINT);
6634a49301eSmrgextern BOOL WINAPI wglGetGenlockSourceI3D (HDC, UINT *);
6644a49301eSmrgextern BOOL WINAPI wglGenlockSourceEdgeI3D (HDC, UINT);
6654a49301eSmrgextern BOOL WINAPI wglGetGenlockSourceEdgeI3D (HDC, UINT *);
6664a49301eSmrgextern BOOL WINAPI wglGenlockSampleRateI3D (HDC, UINT);
6674a49301eSmrgextern BOOL WINAPI wglGetGenlockSampleRateI3D (HDC, UINT *);
6684a49301eSmrgextern BOOL WINAPI wglGenlockSourceDelayI3D (HDC, UINT);
6694a49301eSmrgextern BOOL WINAPI wglGetGenlockSourceDelayI3D (HDC, UINT *);
6704a49301eSmrgextern BOOL WINAPI wglQueryGenlockMaxSourceDelayI3D (HDC, UINT *, UINT *);
6714a49301eSmrg#endif /* WGL_WGLEXT_PROTOTYPES */
6724a49301eSmrgtypedef BOOL (WINAPI * PFNWGLENABLEGENLOCKI3DPROC) (HDC hDC);
6734a49301eSmrgtypedef BOOL (WINAPI * PFNWGLDISABLEGENLOCKI3DPROC) (HDC hDC);
6744a49301eSmrgtypedef BOOL (WINAPI * PFNWGLISENABLEDGENLOCKI3DPROC) (HDC hDC, BOOL *pFlag);
6754a49301eSmrgtypedef BOOL (WINAPI * PFNWGLGENLOCKSOURCEI3DPROC) (HDC hDC, UINT uSource);
6764a49301eSmrgtypedef BOOL (WINAPI * PFNWGLGETGENLOCKSOURCEI3DPROC) (HDC hDC, UINT *uSource);
6774a49301eSmrgtypedef BOOL (WINAPI * PFNWGLGENLOCKSOURCEEDGEI3DPROC) (HDC hDC, UINT uEdge);
6784a49301eSmrgtypedef BOOL (WINAPI * PFNWGLGETGENLOCKSOURCEEDGEI3DPROC) (HDC hDC, UINT *uEdge);
6794a49301eSmrgtypedef BOOL (WINAPI * PFNWGLGENLOCKSAMPLERATEI3DPROC) (HDC hDC, UINT uRate);
6804a49301eSmrgtypedef BOOL (WINAPI * PFNWGLGETGENLOCKSAMPLERATEI3DPROC) (HDC hDC, UINT *uRate);
6814a49301eSmrgtypedef BOOL (WINAPI * PFNWGLGENLOCKSOURCEDELAYI3DPROC) (HDC hDC, UINT uDelay);
6824a49301eSmrgtypedef BOOL (WINAPI * PFNWGLGETGENLOCKSOURCEDELAYI3DPROC) (HDC hDC, UINT *uDelay);
6834a49301eSmrgtypedef BOOL (WINAPI * PFNWGLQUERYGENLOCKMAXSOURCEDELAYI3DPROC) (HDC hDC, UINT *uMaxLineDelay, UINT *uMaxPixelDelay);
6844a49301eSmrg#endif
6854a49301eSmrg
6864a49301eSmrg#ifndef WGL_I3D_image_buffer
6874a49301eSmrg#define WGL_I3D_image_buffer 1
6884a49301eSmrg#ifdef WGL_WGLEXT_PROTOTYPES
6894a49301eSmrgextern LPVOID WINAPI wglCreateImageBufferI3D (HDC, DWORD, UINT);
6904a49301eSmrgextern BOOL WINAPI wglDestroyImageBufferI3D (HDC, LPVOID);
6914a49301eSmrgextern BOOL WINAPI wglAssociateImageBufferEventsI3D (HDC, const HANDLE *, const LPVOID *, const DWORD *, UINT);
6924a49301eSmrgextern BOOL WINAPI wglReleaseImageBufferEventsI3D (HDC, const LPVOID *, UINT);
6934a49301eSmrg#endif /* WGL_WGLEXT_PROTOTYPES */
6944a49301eSmrgtypedef LPVOID (WINAPI * PFNWGLCREATEIMAGEBUFFERI3DPROC) (HDC hDC, DWORD dwSize, UINT uFlags);
6954a49301eSmrgtypedef BOOL (WINAPI * PFNWGLDESTROYIMAGEBUFFERI3DPROC) (HDC hDC, LPVOID pAddress);
6964a49301eSmrgtypedef BOOL (WINAPI * PFNWGLASSOCIATEIMAGEBUFFEREVENTSI3DPROC) (HDC hDC, const HANDLE *pEvent, const LPVOID *pAddress, const DWORD *pSize, UINT count);
6974a49301eSmrgtypedef BOOL (WINAPI * PFNWGLRELEASEIMAGEBUFFEREVENTSI3DPROC) (HDC hDC, const LPVOID *pAddress, UINT count);
6984a49301eSmrg#endif
6994a49301eSmrg
7004a49301eSmrg#ifndef WGL_I3D_swap_frame_lock
7014a49301eSmrg#define WGL_I3D_swap_frame_lock 1
7024a49301eSmrg#ifdef WGL_WGLEXT_PROTOTYPES
7034a49301eSmrgextern BOOL WINAPI wglEnableFrameLockI3D (void);
7044a49301eSmrgextern BOOL WINAPI wglDisableFrameLockI3D (void);
7054a49301eSmrgextern BOOL WINAPI wglIsEnabledFrameLockI3D (BOOL *);
7064a49301eSmrgextern BOOL WINAPI wglQueryFrameLockMasterI3D (BOOL *);
7074a49301eSmrg#endif /* WGL_WGLEXT_PROTOTYPES */
7084a49301eSmrgtypedef BOOL (WINAPI * PFNWGLENABLEFRAMELOCKI3DPROC) (void);
7094a49301eSmrgtypedef BOOL (WINAPI * PFNWGLDISABLEFRAMELOCKI3DPROC) (void);
7104a49301eSmrgtypedef BOOL (WINAPI * PFNWGLISENABLEDFRAMELOCKI3DPROC) (BOOL *pFlag);
7114a49301eSmrgtypedef BOOL (WINAPI * PFNWGLQUERYFRAMELOCKMASTERI3DPROC) (BOOL *pFlag);
7124a49301eSmrg#endif
7134a49301eSmrg
7144a49301eSmrg#ifndef WGL_I3D_swap_frame_usage
7154a49301eSmrg#define WGL_I3D_swap_frame_usage 1
7164a49301eSmrg#ifdef WGL_WGLEXT_PROTOTYPES
7174a49301eSmrgextern BOOL WINAPI wglGetFrameUsageI3D (float *);
7184a49301eSmrgextern BOOL WINAPI wglBeginFrameTrackingI3D (void);
7194a49301eSmrgextern BOOL WINAPI wglEndFrameTrackingI3D (void);
7204a49301eSmrgextern BOOL WINAPI wglQueryFrameTrackingI3D (DWORD *, DWORD *, float *);
7214a49301eSmrg#endif /* WGL_WGLEXT_PROTOTYPES */
7224a49301eSmrgtypedef BOOL (WINAPI * PFNWGLGETFRAMEUSAGEI3DPROC) (float *pUsage);
7234a49301eSmrgtypedef BOOL (WINAPI * PFNWGLBEGINFRAMETRACKINGI3DPROC) (void);
7244a49301eSmrgtypedef BOOL (WINAPI * PFNWGLENDFRAMETRACKINGI3DPROC) (void);
7254a49301eSmrgtypedef BOOL (WINAPI * PFNWGLQUERYFRAMETRACKINGI3DPROC) (DWORD *pFrameCount, DWORD *pMissedFrames, float *pLastMissedUsage);
7264a49301eSmrg#endif
7274a49301eSmrg
7284a49301eSmrg#ifndef WGL_ATI_pixel_format_float
7294a49301eSmrg#define WGL_ATI_pixel_format_float 1
7304a49301eSmrg#endif
7314a49301eSmrg
7324a49301eSmrg#ifndef WGL_NV_float_buffer
7334a49301eSmrg#define WGL_NV_float_buffer 1
7344a49301eSmrg#endif
7354a49301eSmrg
7364a49301eSmrg#ifndef WGL_3DL_stereo_control
7374a49301eSmrg#define WGL_3DL_stereo_control 1
7384a49301eSmrg#ifdef WGL_WGLEXT_PROTOTYPES
7394a49301eSmrgextern BOOL WINAPI wglSetStereoEmitterState3DL (HDC, UINT);
7404a49301eSmrg#endif /* WGL_WGLEXT_PROTOTYPES */
7414a49301eSmrgtypedef BOOL (WINAPI * PFNWGLSETSTEREOEMITTERSTATE3DLPROC) (HDC hDC, UINT uState);
7424a49301eSmrg#endif
7434a49301eSmrg
7444a49301eSmrg#ifndef WGL_EXT_pixel_format_packed_float
7454a49301eSmrg#define WGL_EXT_pixel_format_packed_float 1
7464a49301eSmrg#endif
7474a49301eSmrg
7484a49301eSmrg#ifndef WGL_EXT_framebuffer_sRGB
7494a49301eSmrg#define WGL_EXT_framebuffer_sRGB 1
7504a49301eSmrg#endif
7514a49301eSmrg
7524a49301eSmrg#ifndef WGL_NV_present_video
7534a49301eSmrg#define WGL_NV_present_video 1
7544a49301eSmrg#ifdef WGL_WGLEXT_PROTOTYPES
7554a49301eSmrgextern int WINAPI wglEnumerateVideoDevicesNV (HDC, HVIDEOOUTPUTDEVICENV *);
7564a49301eSmrgextern BOOL WINAPI wglBindVideoDeviceNV (HDC, unsigned int, HVIDEOOUTPUTDEVICENV, const int *);
7574a49301eSmrgextern BOOL WINAPI wglQueryCurrentContextNV (int, int *);
7584a49301eSmrg#endif /* WGL_WGLEXT_PROTOTYPES */
7594a49301eSmrgtypedef int (WINAPI * PFNWGLENUMERATEVIDEODEVICESNVPROC) (HDC hDC, HVIDEOOUTPUTDEVICENV *phDeviceList);
7604a49301eSmrgtypedef BOOL (WINAPI * PFNWGLBINDVIDEODEVICENVPROC) (HDC hDC, unsigned int uVideoSlot, HVIDEOOUTPUTDEVICENV hVideoDevice, const int *piAttribList);
7614a49301eSmrgtypedef BOOL (WINAPI * PFNWGLQUERYCURRENTCONTEXTNVPROC) (int iAttribute, int *piValue);
7624a49301eSmrg#endif
7634a49301eSmrg
7644a49301eSmrg#ifndef WGL_NV_video_output
7654a49301eSmrg#define WGL_NV_video_output 1
7664a49301eSmrg#ifdef WGL_WGLEXT_PROTOTYPES
7674a49301eSmrgextern BOOL WINAPI wglGetVideoDeviceNV (HDC, int, HPVIDEODEV *);
7684a49301eSmrgextern BOOL WINAPI wglReleaseVideoDeviceNV (HPVIDEODEV);
7694a49301eSmrgextern BOOL WINAPI wglBindVideoImageNV (HPVIDEODEV, HPBUFFERARB, int);
7704a49301eSmrgextern BOOL WINAPI wglReleaseVideoImageNV (HPBUFFERARB, int);
7714a49301eSmrgextern BOOL WINAPI wglSendPbufferToVideoNV (HPBUFFERARB, int, unsigned long *, BOOL);
7724a49301eSmrgextern BOOL WINAPI wglGetVideoInfoNV (HPVIDEODEV, unsigned long *, unsigned long *);
7734a49301eSmrg#endif /* WGL_WGLEXT_PROTOTYPES */
7744a49301eSmrgtypedef BOOL (WINAPI * PFNWGLGETVIDEODEVICENVPROC) (HDC hDC, int numDevices, HPVIDEODEV *hVideoDevice);
7754a49301eSmrgtypedef BOOL (WINAPI * PFNWGLRELEASEVIDEODEVICENVPROC) (HPVIDEODEV hVideoDevice);
7764a49301eSmrgtypedef BOOL (WINAPI * PFNWGLBINDVIDEOIMAGENVPROC) (HPVIDEODEV hVideoDevice, HPBUFFERARB hPbuffer, int iVideoBuffer);
7774a49301eSmrgtypedef BOOL (WINAPI * PFNWGLRELEASEVIDEOIMAGENVPROC) (HPBUFFERARB hPbuffer, int iVideoBuffer);
7784a49301eSmrgtypedef BOOL (WINAPI * PFNWGLSENDPBUFFERTOVIDEONVPROC) (HPBUFFERARB hPbuffer, int iBufferType, unsigned long *pulCounterPbuffer, BOOL bBlock);
7794a49301eSmrgtypedef BOOL (WINAPI * PFNWGLGETVIDEOINFONVPROC) (HPVIDEODEV hpVideoDevice, unsigned long *pulCounterOutputPbuffer, unsigned long *pulCounterOutputVideo);
7804a49301eSmrg#endif
7814a49301eSmrg
7824a49301eSmrg#ifndef WGL_NV_swap_group
7834a49301eSmrg#define WGL_NV_swap_group 1
7844a49301eSmrg#ifdef WGL_WGLEXT_PROTOTYPES
7854a49301eSmrgextern BOOL WINAPI wglJoinSwapGroupNV (HDC, GLuint);
7864a49301eSmrgextern BOOL WINAPI wglBindSwapBarrierNV (GLuint, GLuint);
7874a49301eSmrgextern BOOL WINAPI wglQuerySwapGroupNV (HDC, GLuint *, GLuint *);
7884a49301eSmrgextern BOOL WINAPI wglQueryMaxSwapGroupsNV (HDC, GLuint *, GLuint *);
7894a49301eSmrgextern BOOL WINAPI wglQueryFrameCountNV (HDC, GLuint *);
7904a49301eSmrgextern BOOL WINAPI wglResetFrameCountNV (HDC);
7914a49301eSmrg#endif /* WGL_WGLEXT_PROTOTYPES */
7924a49301eSmrgtypedef BOOL (WINAPI * PFNWGLJOINSWAPGROUPNVPROC) (HDC hDC, GLuint group);
7934a49301eSmrgtypedef BOOL (WINAPI * PFNWGLBINDSWAPBARRIERNVPROC) (GLuint group, GLuint barrier);
7944a49301eSmrgtypedef BOOL (WINAPI * PFNWGLQUERYSWAPGROUPNVPROC) (HDC hDC, GLuint *group, GLuint *barrier);
7954a49301eSmrgtypedef BOOL (WINAPI * PFNWGLQUERYMAXSWAPGROUPSNVPROC) (HDC hDC, GLuint *maxGroups, GLuint *maxBarriers);
7964a49301eSmrgtypedef BOOL (WINAPI * PFNWGLQUERYFRAMECOUNTNVPROC) (HDC hDC, GLuint *count);
7974a49301eSmrgtypedef BOOL (WINAPI * PFNWGLRESETFRAMECOUNTNVPROC) (HDC hDC);
7984a49301eSmrg#endif
7994a49301eSmrg
8004a49301eSmrg#ifndef WGL_NV_gpu_affinity
8014a49301eSmrg#define WGL_NV_gpu_affinity 1
8024a49301eSmrg#ifdef WGL_WGLEXT_PROTOTYPES
8034a49301eSmrgextern BOOL WINAPI wglEnumGpusNV (UINT, HGPUNV *);
8044a49301eSmrgextern BOOL WINAPI wglEnumGpuDevicesNV (HGPUNV, UINT, PGPU_DEVICE);
8054a49301eSmrgextern HDC WINAPI wglCreateAffinityDCNV (const HGPUNV *);
8064a49301eSmrgextern BOOL WINAPI wglEnumGpusFromAffinityDCNV (HDC, UINT, HGPUNV *);
8074a49301eSmrgextern BOOL WINAPI wglDeleteDCNV (HDC);
8084a49301eSmrg#endif /* WGL_WGLEXT_PROTOTYPES */
8094a49301eSmrgtypedef BOOL (WINAPI * PFNWGLENUMGPUSNVPROC) (UINT iGpuIndex, HGPUNV *phGpu);
8104a49301eSmrgtypedef BOOL (WINAPI * PFNWGLENUMGPUDEVICESNVPROC) (HGPUNV hGpu, UINT iDeviceIndex, PGPU_DEVICE lpGpuDevice);
8114a49301eSmrgtypedef HDC (WINAPI * PFNWGLCREATEAFFINITYDCNVPROC) (const HGPUNV *phGpuList);
8124a49301eSmrgtypedef BOOL (WINAPI * PFNWGLENUMGPUSFROMAFFINITYDCNVPROC) (HDC hAffinityDC, UINT iGpuIndex, HGPUNV *hGpu);
8134a49301eSmrgtypedef BOOL (WINAPI * PFNWGLDELETEDCNVPROC) (HDC hdc);
8144a49301eSmrg#endif
8154a49301eSmrg
8164a49301eSmrg#ifndef WGL_AMD_gpu_association
8174a49301eSmrg#define WGL_AMD_gpu_association 1
8184a49301eSmrg#ifdef WGL_WGLEXT_PROTOTYPES
8194a49301eSmrgextern UINT WINAPI wglGetGPUIDsAMD (UINT, UINT *);
8204a49301eSmrgextern INT WINAPI wglGetGPUInfoAMD (UINT, int, GLenum, UINT, void *);
8214a49301eSmrgextern UINT WINAPI wglGetContextGPUIDAMD (HGLRC);
8224a49301eSmrgextern HGLRC WINAPI wglCreateAssociatedContextAMD (UINT);
8234a49301eSmrgextern HGLRC WINAPI wglCreateAssociatedContextAttribsAMD (UINT, HGLRC, const int *);
8244a49301eSmrgextern BOOL WINAPI wglDeleteAssociatedContextAMD (HGLRC);
8254a49301eSmrgextern BOOL WINAPI wglMakeAssociatedContextCurrentAMD (HGLRC);
8264a49301eSmrgextern HGLRC WINAPI wglGetCurrentAssociatedContextAMD (void);
8274a49301eSmrgextern VOID WINAPI wglBlitContextFramebufferAMD (HGLRC, GLint, GLint, GLint, GLint, GLint, GLint, GLint, GLint, GLbitfield, GLenum);
8284a49301eSmrg#endif /* WGL_WGLEXT_PROTOTYPES */
8294a49301eSmrgtypedef UINT (WINAPI * PFNWGLGETGPUIDSAMDPROC) (UINT maxCount, UINT *ids);
8304a49301eSmrgtypedef INT (WINAPI * PFNWGLGETGPUINFOAMDPROC) (UINT id, int property, GLenum dataType, UINT size, void *data);
8314a49301eSmrgtypedef UINT (WINAPI * PFNWGLGETCONTEXTGPUIDAMDPROC) (HGLRC hglrc);
8324a49301eSmrgtypedef HGLRC (WINAPI * PFNWGLCREATEASSOCIATEDCONTEXTAMDPROC) (UINT id);
8334a49301eSmrgtypedef HGLRC (WINAPI * PFNWGLCREATEASSOCIATEDCONTEXTATTRIBSAMDPROC) (UINT id, HGLRC hShareContext, const int *attribList);
8344a49301eSmrgtypedef BOOL (WINAPI * PFNWGLDELETEASSOCIATEDCONTEXTAMDPROC) (HGLRC hglrc);
8354a49301eSmrgtypedef BOOL (WINAPI * PFNWGLMAKEASSOCIATEDCONTEXTCURRENTAMDPROC) (HGLRC hglrc);
8364a49301eSmrgtypedef HGLRC (WINAPI * PFNWGLGETCURRENTASSOCIATEDCONTEXTAMDPROC) (void);
8374a49301eSmrgtypedef VOID (WINAPI * PFNWGLBLITCONTEXTFRAMEBUFFERAMDPROC) (HGLRC dstCtx, GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
8384a49301eSmrg#endif
8394a49301eSmrg
8404a49301eSmrg#ifndef WGL_NV_video_capture
8414a49301eSmrg#define WGL_NV_video_capture 1
8424a49301eSmrg#ifdef WGL_WGLEXT_PROTOTYPES
8434a49301eSmrgextern BOOL WINAPI wglBindVideoCaptureDeviceNV (UINT, HVIDEOINPUTDEVICENV);
8444a49301eSmrgextern UINT WINAPI wglEnumerateVideoCaptureDevicesNV (HDC, HVIDEOINPUTDEVICENV *);
8454a49301eSmrgextern BOOL WINAPI wglLockVideoCaptureDeviceNV (HDC, HVIDEOINPUTDEVICENV);
8464a49301eSmrgextern BOOL WINAPI wglQueryVideoCaptureDeviceNV (HDC, HVIDEOINPUTDEVICENV, int, int *);
8474a49301eSmrgextern BOOL WINAPI wglReleaseVideoCaptureDeviceNV (HDC, HVIDEOINPUTDEVICENV);
8484a49301eSmrg#endif /* WGL_WGLEXT_PROTOTYPES */
8494a49301eSmrgtypedef BOOL (WINAPI * PFNWGLBINDVIDEOCAPTUREDEVICENVPROC) (UINT uVideoSlot, HVIDEOINPUTDEVICENV hDevice);
8504a49301eSmrgtypedef UINT (WINAPI * PFNWGLENUMERATEVIDEOCAPTUREDEVICESNVPROC) (HDC hDc, HVIDEOINPUTDEVICENV *phDeviceList);
8514a49301eSmrgtypedef BOOL (WINAPI * PFNWGLLOCKVIDEOCAPTUREDEVICENVPROC) (HDC hDc, HVIDEOINPUTDEVICENV hDevice);
8524a49301eSmrgtypedef BOOL (WINAPI * PFNWGLQUERYVIDEOCAPTUREDEVICENVPROC) (HDC hDc, HVIDEOINPUTDEVICENV hDevice, int iAttribute, int *piValue);
8534a49301eSmrgtypedef BOOL (WINAPI * PFNWGLRELEASEVIDEOCAPTUREDEVICENVPROC) (HDC hDc, HVIDEOINPUTDEVICENV hDevice);
8544a49301eSmrg#endif
8554a49301eSmrg
8564a49301eSmrg#ifndef WGL_NV_copy_image
8574a49301eSmrg#define WGL_NV_copy_image 1
8584a49301eSmrg#ifdef WGL_WGLEXT_PROTOTYPES
8594a49301eSmrgextern BOOL WINAPI wglCopyImageSubDataNV (HGLRC, GLuint, GLenum, GLint, GLint, GLint, GLint, HGLRC, GLuint, GLenum, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei);
8604a49301eSmrg#endif /* WGL_WGLEXT_PROTOTYPES */
8614a49301eSmrgtypedef BOOL (WINAPI * PFNWGLCOPYIMAGESUBDATANVPROC) (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);
8624a49301eSmrg#endif
8634a49301eSmrg
8644a49301eSmrg
8654a49301eSmrg#ifdef __cplusplus
8664a49301eSmrg}
8674a49301eSmrg#endif
8684a49301eSmrg
8694a49301eSmrg#endif
870