wglext.h revision 3464ebd5
14a49301eSmrg#ifndef __wglext_h_
24a49301eSmrg#define __wglext_h_
34a49301eSmrg
44a49301eSmrg#ifdef __cplusplus
54a49301eSmrgextern "C" {
64a49301eSmrg#endif
74a49301eSmrg
84a49301eSmrg/*
93464ebd5Sriastradh** Copyright (c) 2007-2010 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 */
513464ebd5Sriastradh/* wglext.h last updated 2010/08/06 */
524a49301eSmrg/* Current version at http://www.opengl.org/registry/ */
533464ebd5Sriastradh#define WGL_WGLEXT_VERSION 22
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
1783464ebd5Sriastradh#ifndef WGL_ARB_framebuffer_sRGB
1793464ebd5Sriastradh#define WGL_FRAMEBUFFER_SRGB_CAPABLE_ARB 0x20A9
1803464ebd5Sriastradh#endif
1813464ebd5Sriastradh
1824a49301eSmrg#ifndef WGL_ARB_create_context
1834a49301eSmrg#define WGL_CONTEXT_DEBUG_BIT_ARB      0x00000001
1844a49301eSmrg#define WGL_CONTEXT_FORWARD_COMPATIBLE_BIT_ARB 0x00000002
1854a49301eSmrg#define WGL_CONTEXT_MAJOR_VERSION_ARB  0x2091
1864a49301eSmrg#define WGL_CONTEXT_MINOR_VERSION_ARB  0x2092
1874a49301eSmrg#define WGL_CONTEXT_LAYER_PLANE_ARB    0x2093
1884a49301eSmrg#define WGL_CONTEXT_FLAGS_ARB          0x2094
1894a49301eSmrg#define ERROR_INVALID_VERSION_ARB      0x2095
1904a49301eSmrg#endif
1914a49301eSmrg
1924a49301eSmrg#ifndef WGL_ARB_create_context_profile
1934a49301eSmrg#define WGL_CONTEXT_PROFILE_MASK_ARB   0x9126
1944a49301eSmrg#define WGL_CONTEXT_CORE_PROFILE_BIT_ARB 0x00000001
1954a49301eSmrg#define WGL_CONTEXT_COMPATIBILITY_PROFILE_BIT_ARB 0x00000002
1964a49301eSmrg#define ERROR_INVALID_PROFILE_ARB      0x2096
1974a49301eSmrg#endif
1984a49301eSmrg
1993464ebd5Sriastradh#ifndef WGL_ARB_create_context_robustness
2003464ebd5Sriastradh#define WGL_CONTEXT_ROBUST_ACCESS_BIT_ARB 0x00000004
2013464ebd5Sriastradh#define WGL_LOSE_CONTEXT_ON_RESET_ARB  0x8252
2023464ebd5Sriastradh#define WGL_CONTEXT_RESET_NOTIFICATION_STRATEGY_ARB 0x8256
2033464ebd5Sriastradh#define WGL_NO_RESET_NOTIFICATION_ARB  0x8261
2043464ebd5Sriastradh#endif
2053464ebd5Sriastradh
2064a49301eSmrg#ifndef WGL_EXT_make_current_read
2074a49301eSmrg#define ERROR_INVALID_PIXEL_TYPE_EXT   0x2043
2084a49301eSmrg#endif
2094a49301eSmrg
2104a49301eSmrg#ifndef WGL_EXT_pixel_format
2114a49301eSmrg#define WGL_NUMBER_PIXEL_FORMATS_EXT   0x2000
2124a49301eSmrg#define WGL_DRAW_TO_WINDOW_EXT         0x2001
2134a49301eSmrg#define WGL_DRAW_TO_BITMAP_EXT         0x2002
2144a49301eSmrg#define WGL_ACCELERATION_EXT           0x2003
2154a49301eSmrg#define WGL_NEED_PALETTE_EXT           0x2004
2164a49301eSmrg#define WGL_NEED_SYSTEM_PALETTE_EXT    0x2005
2174a49301eSmrg#define WGL_SWAP_LAYER_BUFFERS_EXT     0x2006
2184a49301eSmrg#define WGL_SWAP_METHOD_EXT            0x2007
2194a49301eSmrg#define WGL_NUMBER_OVERLAYS_EXT        0x2008
2204a49301eSmrg#define WGL_NUMBER_UNDERLAYS_EXT       0x2009
2214a49301eSmrg#define WGL_TRANSPARENT_EXT            0x200A
2224a49301eSmrg#define WGL_TRANSPARENT_VALUE_EXT      0x200B
2234a49301eSmrg#define WGL_SHARE_DEPTH_EXT            0x200C
2244a49301eSmrg#define WGL_SHARE_STENCIL_EXT          0x200D
2254a49301eSmrg#define WGL_SHARE_ACCUM_EXT            0x200E
2264a49301eSmrg#define WGL_SUPPORT_GDI_EXT            0x200F
2274a49301eSmrg#define WGL_SUPPORT_OPENGL_EXT         0x2010
2284a49301eSmrg#define WGL_DOUBLE_BUFFER_EXT          0x2011
2294a49301eSmrg#define WGL_STEREO_EXT                 0x2012
2304a49301eSmrg#define WGL_PIXEL_TYPE_EXT             0x2013
2314a49301eSmrg#define WGL_COLOR_BITS_EXT             0x2014
2324a49301eSmrg#define WGL_RED_BITS_EXT               0x2015
2334a49301eSmrg#define WGL_RED_SHIFT_EXT              0x2016
2344a49301eSmrg#define WGL_GREEN_BITS_EXT             0x2017
2354a49301eSmrg#define WGL_GREEN_SHIFT_EXT            0x2018
2364a49301eSmrg#define WGL_BLUE_BITS_EXT              0x2019
2374a49301eSmrg#define WGL_BLUE_SHIFT_EXT             0x201A
2384a49301eSmrg#define WGL_ALPHA_BITS_EXT             0x201B
2394a49301eSmrg#define WGL_ALPHA_SHIFT_EXT            0x201C
2404a49301eSmrg#define WGL_ACCUM_BITS_EXT             0x201D
2414a49301eSmrg#define WGL_ACCUM_RED_BITS_EXT         0x201E
2424a49301eSmrg#define WGL_ACCUM_GREEN_BITS_EXT       0x201F
2434a49301eSmrg#define WGL_ACCUM_BLUE_BITS_EXT        0x2020
2444a49301eSmrg#define WGL_ACCUM_ALPHA_BITS_EXT       0x2021
2454a49301eSmrg#define WGL_DEPTH_BITS_EXT             0x2022
2464a49301eSmrg#define WGL_STENCIL_BITS_EXT           0x2023
2474a49301eSmrg#define WGL_AUX_BUFFERS_EXT            0x2024
2484a49301eSmrg#define WGL_NO_ACCELERATION_EXT        0x2025
2494a49301eSmrg#define WGL_GENERIC_ACCELERATION_EXT   0x2026
2504a49301eSmrg#define WGL_FULL_ACCELERATION_EXT      0x2027
2514a49301eSmrg#define WGL_SWAP_EXCHANGE_EXT          0x2028
2524a49301eSmrg#define WGL_SWAP_COPY_EXT              0x2029
2534a49301eSmrg#define WGL_SWAP_UNDEFINED_EXT         0x202A
2544a49301eSmrg#define WGL_TYPE_RGBA_EXT              0x202B
2554a49301eSmrg#define WGL_TYPE_COLORINDEX_EXT        0x202C
2564a49301eSmrg#endif
2574a49301eSmrg
2584a49301eSmrg#ifndef WGL_EXT_pbuffer
2594a49301eSmrg#define WGL_DRAW_TO_PBUFFER_EXT        0x202D
2604a49301eSmrg#define WGL_MAX_PBUFFER_PIXELS_EXT     0x202E
2614a49301eSmrg#define WGL_MAX_PBUFFER_WIDTH_EXT      0x202F
2624a49301eSmrg#define WGL_MAX_PBUFFER_HEIGHT_EXT     0x2030
2634a49301eSmrg#define WGL_OPTIMAL_PBUFFER_WIDTH_EXT  0x2031
2644a49301eSmrg#define WGL_OPTIMAL_PBUFFER_HEIGHT_EXT 0x2032
2654a49301eSmrg#define WGL_PBUFFER_LARGEST_EXT        0x2033
2664a49301eSmrg#define WGL_PBUFFER_WIDTH_EXT          0x2034
2674a49301eSmrg#define WGL_PBUFFER_HEIGHT_EXT         0x2035
2684a49301eSmrg#endif
2694a49301eSmrg
2704a49301eSmrg#ifndef WGL_EXT_depth_float
2714a49301eSmrg#define WGL_DEPTH_FLOAT_EXT            0x2040
2724a49301eSmrg#endif
2734a49301eSmrg
2744a49301eSmrg#ifndef WGL_3DFX_multisample
2754a49301eSmrg#define WGL_SAMPLE_BUFFERS_3DFX        0x2060
2764a49301eSmrg#define WGL_SAMPLES_3DFX               0x2061
2774a49301eSmrg#endif
2784a49301eSmrg
2794a49301eSmrg#ifndef WGL_EXT_multisample
2804a49301eSmrg#define WGL_SAMPLE_BUFFERS_EXT         0x2041
2814a49301eSmrg#define WGL_SAMPLES_EXT                0x2042
2824a49301eSmrg#endif
2834a49301eSmrg
2844a49301eSmrg#ifndef WGL_I3D_digital_video_control
2854a49301eSmrg#define WGL_DIGITAL_VIDEO_CURSOR_ALPHA_FRAMEBUFFER_I3D 0x2050
2864a49301eSmrg#define WGL_DIGITAL_VIDEO_CURSOR_ALPHA_VALUE_I3D 0x2051
2874a49301eSmrg#define WGL_DIGITAL_VIDEO_CURSOR_INCLUDED_I3D 0x2052
2884a49301eSmrg#define WGL_DIGITAL_VIDEO_GAMMA_CORRECTED_I3D 0x2053
2894a49301eSmrg#endif
2904a49301eSmrg
2914a49301eSmrg#ifndef WGL_I3D_gamma
2924a49301eSmrg#define WGL_GAMMA_TABLE_SIZE_I3D       0x204E
2934a49301eSmrg#define WGL_GAMMA_EXCLUDE_DESKTOP_I3D  0x204F
2944a49301eSmrg#endif
2954a49301eSmrg
2964a49301eSmrg#ifndef WGL_I3D_genlock
2974a49301eSmrg#define WGL_GENLOCK_SOURCE_MULTIVIEW_I3D 0x2044
2984a49301eSmrg#define WGL_GENLOCK_SOURCE_EXTENAL_SYNC_I3D 0x2045
2994a49301eSmrg#define WGL_GENLOCK_SOURCE_EXTENAL_FIELD_I3D 0x2046
3004a49301eSmrg#define WGL_GENLOCK_SOURCE_EXTENAL_TTL_I3D 0x2047
3014a49301eSmrg#define WGL_GENLOCK_SOURCE_DIGITAL_SYNC_I3D 0x2048
3024a49301eSmrg#define WGL_GENLOCK_SOURCE_DIGITAL_FIELD_I3D 0x2049
3034a49301eSmrg#define WGL_GENLOCK_SOURCE_EDGE_FALLING_I3D 0x204A
3044a49301eSmrg#define WGL_GENLOCK_SOURCE_EDGE_RISING_I3D 0x204B
3054a49301eSmrg#define WGL_GENLOCK_SOURCE_EDGE_BOTH_I3D 0x204C
3064a49301eSmrg#endif
3074a49301eSmrg
3084a49301eSmrg#ifndef WGL_I3D_image_buffer
3094a49301eSmrg#define WGL_IMAGE_BUFFER_MIN_ACCESS_I3D 0x00000001
3104a49301eSmrg#define WGL_IMAGE_BUFFER_LOCK_I3D      0x00000002
3114a49301eSmrg#endif
3124a49301eSmrg
3134a49301eSmrg#ifndef WGL_I3D_swap_frame_lock
3144a49301eSmrg#endif
3154a49301eSmrg
3164a49301eSmrg#ifndef WGL_NV_render_depth_texture
3174a49301eSmrg#define WGL_BIND_TO_TEXTURE_DEPTH_NV   0x20A3
3184a49301eSmrg#define WGL_BIND_TO_TEXTURE_RECTANGLE_DEPTH_NV 0x20A4
3194a49301eSmrg#define WGL_DEPTH_TEXTURE_FORMAT_NV    0x20A5
3204a49301eSmrg#define WGL_TEXTURE_DEPTH_COMPONENT_NV 0x20A6
3214a49301eSmrg#define WGL_DEPTH_COMPONENT_NV         0x20A7
3224a49301eSmrg#endif
3234a49301eSmrg
3244a49301eSmrg#ifndef WGL_NV_render_texture_rectangle
3254a49301eSmrg#define WGL_BIND_TO_TEXTURE_RECTANGLE_RGB_NV 0x20A0
3264a49301eSmrg#define WGL_BIND_TO_TEXTURE_RECTANGLE_RGBA_NV 0x20A1
3274a49301eSmrg#define WGL_TEXTURE_RECTANGLE_NV       0x20A2
3284a49301eSmrg#endif
3294a49301eSmrg
3304a49301eSmrg#ifndef WGL_ATI_pixel_format_float
3314a49301eSmrg#define WGL_TYPE_RGBA_FLOAT_ATI        0x21A0
3324a49301eSmrg#endif
3334a49301eSmrg
3344a49301eSmrg#ifndef WGL_NV_float_buffer
3354a49301eSmrg#define WGL_FLOAT_COMPONENTS_NV        0x20B0
3364a49301eSmrg#define WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_R_NV 0x20B1
3374a49301eSmrg#define WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RG_NV 0x20B2
3384a49301eSmrg#define WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RGB_NV 0x20B3
3394a49301eSmrg#define WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RGBA_NV 0x20B4
3404a49301eSmrg#define WGL_TEXTURE_FLOAT_R_NV         0x20B5
3414a49301eSmrg#define WGL_TEXTURE_FLOAT_RG_NV        0x20B6
3424a49301eSmrg#define WGL_TEXTURE_FLOAT_RGB_NV       0x20B7
3434a49301eSmrg#define WGL_TEXTURE_FLOAT_RGBA_NV      0x20B8
3444a49301eSmrg#endif
3454a49301eSmrg
3464a49301eSmrg#ifndef WGL_3DL_stereo_control
3474a49301eSmrg#define WGL_STEREO_EMITTER_ENABLE_3DL  0x2055
3484a49301eSmrg#define WGL_STEREO_EMITTER_DISABLE_3DL 0x2056
3494a49301eSmrg#define WGL_STEREO_POLARITY_NORMAL_3DL 0x2057
3504a49301eSmrg#define WGL_STEREO_POLARITY_INVERT_3DL 0x2058
3514a49301eSmrg#endif
3524a49301eSmrg
3534a49301eSmrg#ifndef WGL_EXT_pixel_format_packed_float
3544a49301eSmrg#define WGL_TYPE_RGBA_UNSIGNED_FLOAT_EXT 0x20A8
3554a49301eSmrg#endif
3564a49301eSmrg
3574a49301eSmrg#ifndef WGL_EXT_framebuffer_sRGB
3584a49301eSmrg#define WGL_FRAMEBUFFER_SRGB_CAPABLE_EXT 0x20A9
3594a49301eSmrg#endif
3604a49301eSmrg
3614a49301eSmrg#ifndef WGL_NV_present_video
3624a49301eSmrg#define WGL_NUM_VIDEO_SLOTS_NV         0x20F0
3634a49301eSmrg#endif
3644a49301eSmrg
3654a49301eSmrg#ifndef WGL_NV_video_out
3664a49301eSmrg#define WGL_BIND_TO_VIDEO_RGB_NV       0x20C0
3674a49301eSmrg#define WGL_BIND_TO_VIDEO_RGBA_NV      0x20C1
3684a49301eSmrg#define WGL_BIND_TO_VIDEO_RGB_AND_DEPTH_NV 0x20C2
3694a49301eSmrg#define WGL_VIDEO_OUT_COLOR_NV         0x20C3
3704a49301eSmrg#define WGL_VIDEO_OUT_ALPHA_NV         0x20C4
3714a49301eSmrg#define WGL_VIDEO_OUT_DEPTH_NV         0x20C5
3724a49301eSmrg#define WGL_VIDEO_OUT_COLOR_AND_ALPHA_NV 0x20C6
3734a49301eSmrg#define WGL_VIDEO_OUT_COLOR_AND_DEPTH_NV 0x20C7
3744a49301eSmrg#define WGL_VIDEO_OUT_FRAME            0x20C8
3754a49301eSmrg#define WGL_VIDEO_OUT_FIELD_1          0x20C9
3764a49301eSmrg#define WGL_VIDEO_OUT_FIELD_2          0x20CA
3774a49301eSmrg#define WGL_VIDEO_OUT_STACKED_FIELDS_1_2 0x20CB
3784a49301eSmrg#define WGL_VIDEO_OUT_STACKED_FIELDS_2_1 0x20CC
3794a49301eSmrg#endif
3804a49301eSmrg
3814a49301eSmrg#ifndef WGL_NV_swap_group
3824a49301eSmrg#endif
3834a49301eSmrg
3844a49301eSmrg#ifndef WGL_NV_gpu_affinity
3854a49301eSmrg#define WGL_ERROR_INCOMPATIBLE_AFFINITY_MASKS_NV 0x20D0
3864a49301eSmrg#define WGL_ERROR_MISSING_AFFINITY_MASK_NV 0x20D1
3874a49301eSmrg#endif
3884a49301eSmrg
3894a49301eSmrg#ifndef WGL_AMD_gpu_association
3904a49301eSmrg#define WGL_GPU_VENDOR_AMD             0x1F00
3914a49301eSmrg#define WGL_GPU_RENDERER_STRING_AMD    0x1F01
3924a49301eSmrg#define WGL_GPU_OPENGL_VERSION_STRING_AMD 0x1F02
3934a49301eSmrg#define WGL_GPU_FASTEST_TARGET_GPUS_AMD 0x21A2
3944a49301eSmrg#define WGL_GPU_RAM_AMD                0x21A3
3954a49301eSmrg#define WGL_GPU_CLOCK_AMD              0x21A4
3964a49301eSmrg#define WGL_GPU_NUM_PIPES_AMD          0x21A5
3974a49301eSmrg#define WGL_GPU_NUM_SIMD_AMD           0x21A6
3984a49301eSmrg#define WGL_GPU_NUM_RB_AMD             0x21A7
3994a49301eSmrg#define WGL_GPU_NUM_SPI_AMD            0x21A8
4004a49301eSmrg#endif
4014a49301eSmrg
4023464ebd5Sriastradh#ifndef WGL_NV_video_capture
4034a49301eSmrg#define WGL_UNIQUE_ID_NV               0x20CE
4044a49301eSmrg#define WGL_NUM_VIDEO_CAPTURE_SLOTS_NV 0x20CF
4054a49301eSmrg#endif
4064a49301eSmrg
4073464ebd5Sriastradh#ifndef WGL_NV_copy_image
4083464ebd5Sriastradh#endif
4093464ebd5Sriastradh
4103464ebd5Sriastradh#ifndef WGL_NV_multisample_coverage
4113464ebd5Sriastradh#define WGL_COVERAGE_SAMPLES_NV        0x2042
4123464ebd5Sriastradh#define WGL_COLOR_SAMPLES_NV           0x20B9
4133464ebd5Sriastradh#endif
4143464ebd5Sriastradh
4153464ebd5Sriastradh#ifndef WGL_EXT_create_context_es2_profile
4163464ebd5Sriastradh#define WGL_CONTEXT_ES2_PROFILE_BIT_EXT 0x00000004
4174a49301eSmrg#endif
4184a49301eSmrg
4194a49301eSmrg
4204a49301eSmrg/*************************************************************/
4214a49301eSmrg
4224a49301eSmrg#ifndef WGL_ARB_pbuffer
4234a49301eSmrgDECLARE_HANDLE(HPBUFFERARB);
4244a49301eSmrg#endif
4254a49301eSmrg#ifndef WGL_EXT_pbuffer
4264a49301eSmrgDECLARE_HANDLE(HPBUFFEREXT);
4274a49301eSmrg#endif
4284a49301eSmrg#ifndef WGL_NV_present_video
4294a49301eSmrgDECLARE_HANDLE(HVIDEOOUTPUTDEVICENV);
4304a49301eSmrg#endif
4314a49301eSmrg#ifndef WGL_NV_video_output
4324a49301eSmrgDECLARE_HANDLE(HPVIDEODEV);
4334a49301eSmrg#endif
4344a49301eSmrg#ifndef WGL_NV_gpu_affinity
4354a49301eSmrgDECLARE_HANDLE(HPGPUNV);
4364a49301eSmrgDECLARE_HANDLE(HGPUNV);
4374a49301eSmrg
4384a49301eSmrgtypedef struct _GPU_DEVICE {
4394a49301eSmrg    DWORD  cb;
4404a49301eSmrg    CHAR   DeviceName[32];
4414a49301eSmrg    CHAR   DeviceString[128];
4424a49301eSmrg    DWORD  Flags;
4434a49301eSmrg    RECT   rcVirtualScreen;
4444a49301eSmrg} GPU_DEVICE, *PGPU_DEVICE;
4454a49301eSmrg#endif
4464a49301eSmrg#ifndef WGL_NV_video_capture
4474a49301eSmrgDECLARE_HANDLE(HVIDEOINPUTDEVICENV);
4484a49301eSmrg#endif
4494a49301eSmrg
4504a49301eSmrg#ifndef WGL_ARB_buffer_region
4514a49301eSmrg#define WGL_ARB_buffer_region 1
4524a49301eSmrg#ifdef WGL_WGLEXT_PROTOTYPES
4533464ebd5Sriastradhextern HANDLE WINAPI wglCreateBufferRegionARB (HDC hDC, int iLayerPlane, UINT uType);
4543464ebd5Sriastradhextern VOID WINAPI wglDeleteBufferRegionARB (HANDLE hRegion);
4553464ebd5Sriastradhextern BOOL WINAPI wglSaveBufferRegionARB (HANDLE hRegion, int x, int y, int width, int height);
4563464ebd5Sriastradhextern BOOL WINAPI wglRestoreBufferRegionARB (HANDLE hRegion, int x, int y, int width, int height, int xSrc, int ySrc);
4574a49301eSmrg#endif /* WGL_WGLEXT_PROTOTYPES */
4584a49301eSmrgtypedef HANDLE (WINAPI * PFNWGLCREATEBUFFERREGIONARBPROC) (HDC hDC, int iLayerPlane, UINT uType);
4594a49301eSmrgtypedef VOID (WINAPI * PFNWGLDELETEBUFFERREGIONARBPROC) (HANDLE hRegion);
4604a49301eSmrgtypedef BOOL (WINAPI * PFNWGLSAVEBUFFERREGIONARBPROC) (HANDLE hRegion, int x, int y, int width, int height);
4614a49301eSmrgtypedef BOOL (WINAPI * PFNWGLRESTOREBUFFERREGIONARBPROC) (HANDLE hRegion, int x, int y, int width, int height, int xSrc, int ySrc);
4624a49301eSmrg#endif
4634a49301eSmrg
4644a49301eSmrg#ifndef WGL_ARB_multisample
4654a49301eSmrg#define WGL_ARB_multisample 1
4664a49301eSmrg#endif
4674a49301eSmrg
4684a49301eSmrg#ifndef WGL_ARB_extensions_string
4694a49301eSmrg#define WGL_ARB_extensions_string 1
4704a49301eSmrg#ifdef WGL_WGLEXT_PROTOTYPES
4713464ebd5Sriastradhextern const char * WINAPI wglGetExtensionsStringARB (HDC hdc);
4724a49301eSmrg#endif /* WGL_WGLEXT_PROTOTYPES */
4734a49301eSmrgtypedef const char * (WINAPI * PFNWGLGETEXTENSIONSSTRINGARBPROC) (HDC hdc);
4744a49301eSmrg#endif
4754a49301eSmrg
4764a49301eSmrg#ifndef WGL_ARB_pixel_format
4774a49301eSmrg#define WGL_ARB_pixel_format 1
4784a49301eSmrg#ifdef WGL_WGLEXT_PROTOTYPES
4793464ebd5Sriastradhextern BOOL WINAPI wglGetPixelFormatAttribivARB (HDC hdc, int iPixelFormat, int iLayerPlane, UINT nAttributes, const int *piAttributes, int *piValues);
4803464ebd5Sriastradhextern BOOL WINAPI wglGetPixelFormatAttribfvARB (HDC hdc, int iPixelFormat, int iLayerPlane, UINT nAttributes, const int *piAttributes, FLOAT *pfValues);
4813464ebd5Sriastradhextern BOOL WINAPI wglChoosePixelFormatARB (HDC hdc, const int *piAttribIList, const FLOAT *pfAttribFList, UINT nMaxFormats, int *piFormats, UINT *nNumFormats);
4824a49301eSmrg#endif /* WGL_WGLEXT_PROTOTYPES */
4834a49301eSmrgtypedef BOOL (WINAPI * PFNWGLGETPIXELFORMATATTRIBIVARBPROC) (HDC hdc, int iPixelFormat, int iLayerPlane, UINT nAttributes, const int *piAttributes, int *piValues);
4844a49301eSmrgtypedef BOOL (WINAPI * PFNWGLGETPIXELFORMATATTRIBFVARBPROC) (HDC hdc, int iPixelFormat, int iLayerPlane, UINT nAttributes, const int *piAttributes, FLOAT *pfValues);
4854a49301eSmrgtypedef BOOL (WINAPI * PFNWGLCHOOSEPIXELFORMATARBPROC) (HDC hdc, const int *piAttribIList, const FLOAT *pfAttribFList, UINT nMaxFormats, int *piFormats, UINT *nNumFormats);
4864a49301eSmrg#endif
4874a49301eSmrg
4884a49301eSmrg#ifndef WGL_ARB_make_current_read
4894a49301eSmrg#define WGL_ARB_make_current_read 1
4904a49301eSmrg#ifdef WGL_WGLEXT_PROTOTYPES
4913464ebd5Sriastradhextern BOOL WINAPI wglMakeContextCurrentARB (HDC hDrawDC, HDC hReadDC, HGLRC hglrc);
4924a49301eSmrgextern HDC WINAPI wglGetCurrentReadDCARB (void);
4934a49301eSmrg#endif /* WGL_WGLEXT_PROTOTYPES */
4944a49301eSmrgtypedef BOOL (WINAPI * PFNWGLMAKECONTEXTCURRENTARBPROC) (HDC hDrawDC, HDC hReadDC, HGLRC hglrc);
4954a49301eSmrgtypedef HDC (WINAPI * PFNWGLGETCURRENTREADDCARBPROC) (void);
4964a49301eSmrg#endif
4974a49301eSmrg
4984a49301eSmrg#ifndef WGL_ARB_pbuffer
4994a49301eSmrg#define WGL_ARB_pbuffer 1
5004a49301eSmrg#ifdef WGL_WGLEXT_PROTOTYPES
5013464ebd5Sriastradhextern HPBUFFERARB WINAPI wglCreatePbufferARB (HDC hDC, int iPixelFormat, int iWidth, int iHeight, const int *piAttribList);
5023464ebd5Sriastradhextern HDC WINAPI wglGetPbufferDCARB (HPBUFFERARB hPbuffer);
5033464ebd5Sriastradhextern int WINAPI wglReleasePbufferDCARB (HPBUFFERARB hPbuffer, HDC hDC);
5043464ebd5Sriastradhextern BOOL WINAPI wglDestroyPbufferARB (HPBUFFERARB hPbuffer);
5053464ebd5Sriastradhextern BOOL WINAPI wglQueryPbufferARB (HPBUFFERARB hPbuffer, int iAttribute, int *piValue);
5064a49301eSmrg#endif /* WGL_WGLEXT_PROTOTYPES */
5074a49301eSmrgtypedef HPBUFFERARB (WINAPI * PFNWGLCREATEPBUFFERARBPROC) (HDC hDC, int iPixelFormat, int iWidth, int iHeight, const int *piAttribList);
5084a49301eSmrgtypedef HDC (WINAPI * PFNWGLGETPBUFFERDCARBPROC) (HPBUFFERARB hPbuffer);
5094a49301eSmrgtypedef int (WINAPI * PFNWGLRELEASEPBUFFERDCARBPROC) (HPBUFFERARB hPbuffer, HDC hDC);
5104a49301eSmrgtypedef BOOL (WINAPI * PFNWGLDESTROYPBUFFERARBPROC) (HPBUFFERARB hPbuffer);
5114a49301eSmrgtypedef BOOL (WINAPI * PFNWGLQUERYPBUFFERARBPROC) (HPBUFFERARB hPbuffer, int iAttribute, int *piValue);
5124a49301eSmrg#endif
5134a49301eSmrg
5144a49301eSmrg#ifndef WGL_ARB_render_texture
5154a49301eSmrg#define WGL_ARB_render_texture 1
5164a49301eSmrg#ifdef WGL_WGLEXT_PROTOTYPES
5173464ebd5Sriastradhextern BOOL WINAPI wglBindTexImageARB (HPBUFFERARB hPbuffer, int iBuffer);
5183464ebd5Sriastradhextern BOOL WINAPI wglReleaseTexImageARB (HPBUFFERARB hPbuffer, int iBuffer);
5193464ebd5Sriastradhextern BOOL WINAPI wglSetPbufferAttribARB (HPBUFFERARB hPbuffer, const int *piAttribList);
5204a49301eSmrg#endif /* WGL_WGLEXT_PROTOTYPES */
5214a49301eSmrgtypedef BOOL (WINAPI * PFNWGLBINDTEXIMAGEARBPROC) (HPBUFFERARB hPbuffer, int iBuffer);
5224a49301eSmrgtypedef BOOL (WINAPI * PFNWGLRELEASETEXIMAGEARBPROC) (HPBUFFERARB hPbuffer, int iBuffer);
5234a49301eSmrgtypedef BOOL (WINAPI * PFNWGLSETPBUFFERATTRIBARBPROC) (HPBUFFERARB hPbuffer, const int *piAttribList);
5244a49301eSmrg#endif
5254a49301eSmrg
5264a49301eSmrg#ifndef WGL_ARB_pixel_format_float
5274a49301eSmrg#define WGL_ARB_pixel_format_float 1
5284a49301eSmrg#endif
5294a49301eSmrg
5303464ebd5Sriastradh#ifndef WGL_ARB_framebuffer_sRGB
5313464ebd5Sriastradh#define WGL_ARB_framebuffer_sRGB 1
5323464ebd5Sriastradh#endif
5333464ebd5Sriastradh
5344a49301eSmrg#ifndef WGL_ARB_create_context
5354a49301eSmrg#define WGL_ARB_create_context 1
5364a49301eSmrg#ifdef WGL_WGLEXT_PROTOTYPES
5373464ebd5Sriastradhextern HGLRC WINAPI wglCreateContextAttribsARB (HDC hDC, HGLRC hShareContext, const int *attribList);
5384a49301eSmrg#endif /* WGL_WGLEXT_PROTOTYPES */
5394a49301eSmrgtypedef HGLRC (WINAPI * PFNWGLCREATECONTEXTATTRIBSARBPROC) (HDC hDC, HGLRC hShareContext, const int *attribList);
5404a49301eSmrg#endif
5414a49301eSmrg
5424a49301eSmrg#ifndef WGL_ARB_create_context_profile
5434a49301eSmrg#define WGL_ARB_create_context_profile 1
5444a49301eSmrg#endif
5454a49301eSmrg
5463464ebd5Sriastradh#ifndef WGL_ARB_create_context_robustness
5473464ebd5Sriastradh#define WGL_ARB_create_context_robustness 1
5483464ebd5Sriastradh#endif
5493464ebd5Sriastradh
5504a49301eSmrg#ifndef WGL_EXT_display_color_table
5514a49301eSmrg#define WGL_EXT_display_color_table 1
5524a49301eSmrg#ifdef WGL_WGLEXT_PROTOTYPES
5533464ebd5Sriastradhextern GLboolean WINAPI wglCreateDisplayColorTableEXT (GLushort id);
5543464ebd5Sriastradhextern GLboolean WINAPI wglLoadDisplayColorTableEXT (const GLushort *table, GLuint length);
5553464ebd5Sriastradhextern GLboolean WINAPI wglBindDisplayColorTableEXT (GLushort id);
5563464ebd5Sriastradhextern VOID WINAPI wglDestroyDisplayColorTableEXT (GLushort id);
5574a49301eSmrg#endif /* WGL_WGLEXT_PROTOTYPES */
5584a49301eSmrgtypedef GLboolean (WINAPI * PFNWGLCREATEDISPLAYCOLORTABLEEXTPROC) (GLushort id);
5594a49301eSmrgtypedef GLboolean (WINAPI * PFNWGLLOADDISPLAYCOLORTABLEEXTPROC) (const GLushort *table, GLuint length);
5604a49301eSmrgtypedef GLboolean (WINAPI * PFNWGLBINDDISPLAYCOLORTABLEEXTPROC) (GLushort id);
5614a49301eSmrgtypedef VOID (WINAPI * PFNWGLDESTROYDISPLAYCOLORTABLEEXTPROC) (GLushort id);
5624a49301eSmrg#endif
5634a49301eSmrg
5644a49301eSmrg#ifndef WGL_EXT_extensions_string
5654a49301eSmrg#define WGL_EXT_extensions_string 1
5664a49301eSmrg#ifdef WGL_WGLEXT_PROTOTYPES
5674a49301eSmrgextern const char * WINAPI wglGetExtensionsStringEXT (void);
5684a49301eSmrg#endif /* WGL_WGLEXT_PROTOTYPES */
5694a49301eSmrgtypedef const char * (WINAPI * PFNWGLGETEXTENSIONSSTRINGEXTPROC) (void);
5704a49301eSmrg#endif
5714a49301eSmrg
5724a49301eSmrg#ifndef WGL_EXT_make_current_read
5734a49301eSmrg#define WGL_EXT_make_current_read 1
5744a49301eSmrg#ifdef WGL_WGLEXT_PROTOTYPES
5753464ebd5Sriastradhextern BOOL WINAPI wglMakeContextCurrentEXT (HDC hDrawDC, HDC hReadDC, HGLRC hglrc);
5764a49301eSmrgextern HDC WINAPI wglGetCurrentReadDCEXT (void);
5774a49301eSmrg#endif /* WGL_WGLEXT_PROTOTYPES */
5784a49301eSmrgtypedef BOOL (WINAPI * PFNWGLMAKECONTEXTCURRENTEXTPROC) (HDC hDrawDC, HDC hReadDC, HGLRC hglrc);
5794a49301eSmrgtypedef HDC (WINAPI * PFNWGLGETCURRENTREADDCEXTPROC) (void);
5804a49301eSmrg#endif
5814a49301eSmrg
5824a49301eSmrg#ifndef WGL_EXT_pbuffer
5834a49301eSmrg#define WGL_EXT_pbuffer 1
5844a49301eSmrg#ifdef WGL_WGLEXT_PROTOTYPES
5853464ebd5Sriastradhextern HPBUFFEREXT WINAPI wglCreatePbufferEXT (HDC hDC, int iPixelFormat, int iWidth, int iHeight, const int *piAttribList);
5863464ebd5Sriastradhextern HDC WINAPI wglGetPbufferDCEXT (HPBUFFEREXT hPbuffer);
5873464ebd5Sriastradhextern int WINAPI wglReleasePbufferDCEXT (HPBUFFEREXT hPbuffer, HDC hDC);
5883464ebd5Sriastradhextern BOOL WINAPI wglDestroyPbufferEXT (HPBUFFEREXT hPbuffer);
5893464ebd5Sriastradhextern BOOL WINAPI wglQueryPbufferEXT (HPBUFFEREXT hPbuffer, int iAttribute, int *piValue);
5904a49301eSmrg#endif /* WGL_WGLEXT_PROTOTYPES */
5914a49301eSmrgtypedef HPBUFFEREXT (WINAPI * PFNWGLCREATEPBUFFEREXTPROC) (HDC hDC, int iPixelFormat, int iWidth, int iHeight, const int *piAttribList);
5924a49301eSmrgtypedef HDC (WINAPI * PFNWGLGETPBUFFERDCEXTPROC) (HPBUFFEREXT hPbuffer);
5934a49301eSmrgtypedef int (WINAPI * PFNWGLRELEASEPBUFFERDCEXTPROC) (HPBUFFEREXT hPbuffer, HDC hDC);
5944a49301eSmrgtypedef BOOL (WINAPI * PFNWGLDESTROYPBUFFEREXTPROC) (HPBUFFEREXT hPbuffer);
5954a49301eSmrgtypedef BOOL (WINAPI * PFNWGLQUERYPBUFFEREXTPROC) (HPBUFFEREXT hPbuffer, int iAttribute, int *piValue);
5964a49301eSmrg#endif
5974a49301eSmrg
5984a49301eSmrg#ifndef WGL_EXT_pixel_format
5994a49301eSmrg#define WGL_EXT_pixel_format 1
6004a49301eSmrg#ifdef WGL_WGLEXT_PROTOTYPES
6013464ebd5Sriastradhextern BOOL WINAPI wglGetPixelFormatAttribivEXT (HDC hdc, int iPixelFormat, int iLayerPlane, UINT nAttributes, int *piAttributes, int *piValues);
6023464ebd5Sriastradhextern BOOL WINAPI wglGetPixelFormatAttribfvEXT (HDC hdc, int iPixelFormat, int iLayerPlane, UINT nAttributes, int *piAttributes, FLOAT *pfValues);
6033464ebd5Sriastradhextern BOOL WINAPI wglChoosePixelFormatEXT (HDC hdc, const int *piAttribIList, const FLOAT *pfAttribFList, UINT nMaxFormats, int *piFormats, UINT *nNumFormats);
6044a49301eSmrg#endif /* WGL_WGLEXT_PROTOTYPES */
6054a49301eSmrgtypedef BOOL (WINAPI * PFNWGLGETPIXELFORMATATTRIBIVEXTPROC) (HDC hdc, int iPixelFormat, int iLayerPlane, UINT nAttributes, int *piAttributes, int *piValues);
6064a49301eSmrgtypedef BOOL (WINAPI * PFNWGLGETPIXELFORMATATTRIBFVEXTPROC) (HDC hdc, int iPixelFormat, int iLayerPlane, UINT nAttributes, int *piAttributes, FLOAT *pfValues);
6074a49301eSmrgtypedef BOOL (WINAPI * PFNWGLCHOOSEPIXELFORMATEXTPROC) (HDC hdc, const int *piAttribIList, const FLOAT *pfAttribFList, UINT nMaxFormats, int *piFormats, UINT *nNumFormats);
6084a49301eSmrg#endif
6094a49301eSmrg
6104a49301eSmrg#ifndef WGL_EXT_swap_control
6114a49301eSmrg#define WGL_EXT_swap_control 1
6124a49301eSmrg#ifdef WGL_WGLEXT_PROTOTYPES
6133464ebd5Sriastradhextern BOOL WINAPI wglSwapIntervalEXT (int interval);
6144a49301eSmrgextern int WINAPI wglGetSwapIntervalEXT (void);
6154a49301eSmrg#endif /* WGL_WGLEXT_PROTOTYPES */
6164a49301eSmrgtypedef BOOL (WINAPI * PFNWGLSWAPINTERVALEXTPROC) (int interval);
6174a49301eSmrgtypedef int (WINAPI * PFNWGLGETSWAPINTERVALEXTPROC) (void);
6184a49301eSmrg#endif
6194a49301eSmrg
6204a49301eSmrg#ifndef WGL_EXT_depth_float
6214a49301eSmrg#define WGL_EXT_depth_float 1
6224a49301eSmrg#endif
6234a49301eSmrg
6244a49301eSmrg#ifndef WGL_NV_vertex_array_range
6254a49301eSmrg#define WGL_NV_vertex_array_range 1
6264a49301eSmrg#ifdef WGL_WGLEXT_PROTOTYPES
6273464ebd5Sriastradhextern void* WINAPI wglAllocateMemoryNV (GLsizei size, GLfloat readfreq, GLfloat writefreq, GLfloat priority);
6283464ebd5Sriastradhextern void WINAPI wglFreeMemoryNV (void *pointer);
6294a49301eSmrg#endif /* WGL_WGLEXT_PROTOTYPES */
6304a49301eSmrgtypedef void* (WINAPI * PFNWGLALLOCATEMEMORYNVPROC) (GLsizei size, GLfloat readfreq, GLfloat writefreq, GLfloat priority);
6314a49301eSmrgtypedef void (WINAPI * PFNWGLFREEMEMORYNVPROC) (void *pointer);
6324a49301eSmrg#endif
6334a49301eSmrg
6344a49301eSmrg#ifndef WGL_3DFX_multisample
6354a49301eSmrg#define WGL_3DFX_multisample 1
6364a49301eSmrg#endif
6374a49301eSmrg
6384a49301eSmrg#ifndef WGL_EXT_multisample
6394a49301eSmrg#define WGL_EXT_multisample 1
6404a49301eSmrg#endif
6414a49301eSmrg
6424a49301eSmrg#ifndef WGL_OML_sync_control
6434a49301eSmrg#define WGL_OML_sync_control 1
6444a49301eSmrg#ifdef WGL_WGLEXT_PROTOTYPES
6453464ebd5Sriastradhextern BOOL WINAPI wglGetSyncValuesOML (HDC hdc, INT64 *ust, INT64 *msc, INT64 *sbc);
6463464ebd5Sriastradhextern BOOL WINAPI wglGetMscRateOML (HDC hdc, INT32 *numerator, INT32 *denominator);
6473464ebd5Sriastradhextern INT64 WINAPI wglSwapBuffersMscOML (HDC hdc, INT64 target_msc, INT64 divisor, INT64 remainder);
6483464ebd5Sriastradhextern INT64 WINAPI wglSwapLayerBuffersMscOML (HDC hdc, int fuPlanes, INT64 target_msc, INT64 divisor, INT64 remainder);
6493464ebd5Sriastradhextern BOOL WINAPI wglWaitForMscOML (HDC hdc, INT64 target_msc, INT64 divisor, INT64 remainder, INT64 *ust, INT64 *msc, INT64 *sbc);
6503464ebd5Sriastradhextern BOOL WINAPI wglWaitForSbcOML (HDC hdc, INT64 target_sbc, INT64 *ust, INT64 *msc, INT64 *sbc);
6514a49301eSmrg#endif /* WGL_WGLEXT_PROTOTYPES */
6524a49301eSmrgtypedef BOOL (WINAPI * PFNWGLGETSYNCVALUESOMLPROC) (HDC hdc, INT64 *ust, INT64 *msc, INT64 *sbc);
6534a49301eSmrgtypedef BOOL (WINAPI * PFNWGLGETMSCRATEOMLPROC) (HDC hdc, INT32 *numerator, INT32 *denominator);
6544a49301eSmrgtypedef INT64 (WINAPI * PFNWGLSWAPBUFFERSMSCOMLPROC) (HDC hdc, INT64 target_msc, INT64 divisor, INT64 remainder);
6554a49301eSmrgtypedef INT64 (WINAPI * PFNWGLSWAPLAYERBUFFERSMSCOMLPROC) (HDC hdc, int fuPlanes, INT64 target_msc, INT64 divisor, INT64 remainder);
6564a49301eSmrgtypedef BOOL (WINAPI * PFNWGLWAITFORMSCOMLPROC) (HDC hdc, INT64 target_msc, INT64 divisor, INT64 remainder, INT64 *ust, INT64 *msc, INT64 *sbc);
6574a49301eSmrgtypedef BOOL (WINAPI * PFNWGLWAITFORSBCOMLPROC) (HDC hdc, INT64 target_sbc, INT64 *ust, INT64 *msc, INT64 *sbc);
6584a49301eSmrg#endif
6594a49301eSmrg
6604a49301eSmrg#ifndef WGL_I3D_digital_video_control
6614a49301eSmrg#define WGL_I3D_digital_video_control 1
6624a49301eSmrg#ifdef WGL_WGLEXT_PROTOTYPES
6633464ebd5Sriastradhextern BOOL WINAPI wglGetDigitalVideoParametersI3D (HDC hDC, int iAttribute, int *piValue);
6643464ebd5Sriastradhextern BOOL WINAPI wglSetDigitalVideoParametersI3D (HDC hDC, int iAttribute, const int *piValue);
6654a49301eSmrg#endif /* WGL_WGLEXT_PROTOTYPES */
6664a49301eSmrgtypedef BOOL (WINAPI * PFNWGLGETDIGITALVIDEOPARAMETERSI3DPROC) (HDC hDC, int iAttribute, int *piValue);
6674a49301eSmrgtypedef BOOL (WINAPI * PFNWGLSETDIGITALVIDEOPARAMETERSI3DPROC) (HDC hDC, int iAttribute, const int *piValue);
6684a49301eSmrg#endif
6694a49301eSmrg
6704a49301eSmrg#ifndef WGL_I3D_gamma
6714a49301eSmrg#define WGL_I3D_gamma 1
6724a49301eSmrg#ifdef WGL_WGLEXT_PROTOTYPES
6733464ebd5Sriastradhextern BOOL WINAPI wglGetGammaTableParametersI3D (HDC hDC, int iAttribute, int *piValue);
6743464ebd5Sriastradhextern BOOL WINAPI wglSetGammaTableParametersI3D (HDC hDC, int iAttribute, const int *piValue);
6753464ebd5Sriastradhextern BOOL WINAPI wglGetGammaTableI3D (HDC hDC, int iEntries, USHORT *puRed, USHORT *puGreen, USHORT *puBlue);
6763464ebd5Sriastradhextern BOOL WINAPI wglSetGammaTableI3D (HDC hDC, int iEntries, const USHORT *puRed, const USHORT *puGreen, const USHORT *puBlue);
6774a49301eSmrg#endif /* WGL_WGLEXT_PROTOTYPES */
6784a49301eSmrgtypedef BOOL (WINAPI * PFNWGLGETGAMMATABLEPARAMETERSI3DPROC) (HDC hDC, int iAttribute, int *piValue);
6794a49301eSmrgtypedef BOOL (WINAPI * PFNWGLSETGAMMATABLEPARAMETERSI3DPROC) (HDC hDC, int iAttribute, const int *piValue);
6804a49301eSmrgtypedef BOOL (WINAPI * PFNWGLGETGAMMATABLEI3DPROC) (HDC hDC, int iEntries, USHORT *puRed, USHORT *puGreen, USHORT *puBlue);
6814a49301eSmrgtypedef BOOL (WINAPI * PFNWGLSETGAMMATABLEI3DPROC) (HDC hDC, int iEntries, const USHORT *puRed, const USHORT *puGreen, const USHORT *puBlue);
6824a49301eSmrg#endif
6834a49301eSmrg
6844a49301eSmrg#ifndef WGL_I3D_genlock
6854a49301eSmrg#define WGL_I3D_genlock 1
6864a49301eSmrg#ifdef WGL_WGLEXT_PROTOTYPES
6873464ebd5Sriastradhextern BOOL WINAPI wglEnableGenlockI3D (HDC hDC);
6883464ebd5Sriastradhextern BOOL WINAPI wglDisableGenlockI3D (HDC hDC);
6893464ebd5Sriastradhextern BOOL WINAPI wglIsEnabledGenlockI3D (HDC hDC, BOOL *pFlag);
6903464ebd5Sriastradhextern BOOL WINAPI wglGenlockSourceI3D (HDC hDC, UINT uSource);
6913464ebd5Sriastradhextern BOOL WINAPI wglGetGenlockSourceI3D (HDC hDC, UINT *uSource);
6923464ebd5Sriastradhextern BOOL WINAPI wglGenlockSourceEdgeI3D (HDC hDC, UINT uEdge);
6933464ebd5Sriastradhextern BOOL WINAPI wglGetGenlockSourceEdgeI3D (HDC hDC, UINT *uEdge);
6943464ebd5Sriastradhextern BOOL WINAPI wglGenlockSampleRateI3D (HDC hDC, UINT uRate);
6953464ebd5Sriastradhextern BOOL WINAPI wglGetGenlockSampleRateI3D (HDC hDC, UINT *uRate);
6963464ebd5Sriastradhextern BOOL WINAPI wglGenlockSourceDelayI3D (HDC hDC, UINT uDelay);
6973464ebd5Sriastradhextern BOOL WINAPI wglGetGenlockSourceDelayI3D (HDC hDC, UINT *uDelay);
6983464ebd5Sriastradhextern BOOL WINAPI wglQueryGenlockMaxSourceDelayI3D (HDC hDC, UINT *uMaxLineDelay, UINT *uMaxPixelDelay);
6994a49301eSmrg#endif /* WGL_WGLEXT_PROTOTYPES */
7004a49301eSmrgtypedef BOOL (WINAPI * PFNWGLENABLEGENLOCKI3DPROC) (HDC hDC);
7014a49301eSmrgtypedef BOOL (WINAPI * PFNWGLDISABLEGENLOCKI3DPROC) (HDC hDC);
7024a49301eSmrgtypedef BOOL (WINAPI * PFNWGLISENABLEDGENLOCKI3DPROC) (HDC hDC, BOOL *pFlag);
7034a49301eSmrgtypedef BOOL (WINAPI * PFNWGLGENLOCKSOURCEI3DPROC) (HDC hDC, UINT uSource);
7044a49301eSmrgtypedef BOOL (WINAPI * PFNWGLGETGENLOCKSOURCEI3DPROC) (HDC hDC, UINT *uSource);
7054a49301eSmrgtypedef BOOL (WINAPI * PFNWGLGENLOCKSOURCEEDGEI3DPROC) (HDC hDC, UINT uEdge);
7064a49301eSmrgtypedef BOOL (WINAPI * PFNWGLGETGENLOCKSOURCEEDGEI3DPROC) (HDC hDC, UINT *uEdge);
7074a49301eSmrgtypedef BOOL (WINAPI * PFNWGLGENLOCKSAMPLERATEI3DPROC) (HDC hDC, UINT uRate);
7084a49301eSmrgtypedef BOOL (WINAPI * PFNWGLGETGENLOCKSAMPLERATEI3DPROC) (HDC hDC, UINT *uRate);
7094a49301eSmrgtypedef BOOL (WINAPI * PFNWGLGENLOCKSOURCEDELAYI3DPROC) (HDC hDC, UINT uDelay);
7104a49301eSmrgtypedef BOOL (WINAPI * PFNWGLGETGENLOCKSOURCEDELAYI3DPROC) (HDC hDC, UINT *uDelay);
7114a49301eSmrgtypedef BOOL (WINAPI * PFNWGLQUERYGENLOCKMAXSOURCEDELAYI3DPROC) (HDC hDC, UINT *uMaxLineDelay, UINT *uMaxPixelDelay);
7124a49301eSmrg#endif
7134a49301eSmrg
7144a49301eSmrg#ifndef WGL_I3D_image_buffer
7154a49301eSmrg#define WGL_I3D_image_buffer 1
7164a49301eSmrg#ifdef WGL_WGLEXT_PROTOTYPES
7173464ebd5Sriastradhextern LPVOID WINAPI wglCreateImageBufferI3D (HDC hDC, DWORD dwSize, UINT uFlags);
7183464ebd5Sriastradhextern BOOL WINAPI wglDestroyImageBufferI3D (HDC hDC, LPVOID pAddress);
7193464ebd5Sriastradhextern BOOL WINAPI wglAssociateImageBufferEventsI3D (HDC hDC, const HANDLE *pEvent, const LPVOID *pAddress, const DWORD *pSize, UINT count);
7203464ebd5Sriastradhextern BOOL WINAPI wglReleaseImageBufferEventsI3D (HDC hDC, const LPVOID *pAddress, UINT count);
7214a49301eSmrg#endif /* WGL_WGLEXT_PROTOTYPES */
7224a49301eSmrgtypedef LPVOID (WINAPI * PFNWGLCREATEIMAGEBUFFERI3DPROC) (HDC hDC, DWORD dwSize, UINT uFlags);
7234a49301eSmrgtypedef BOOL (WINAPI * PFNWGLDESTROYIMAGEBUFFERI3DPROC) (HDC hDC, LPVOID pAddress);
7244a49301eSmrgtypedef BOOL (WINAPI * PFNWGLASSOCIATEIMAGEBUFFEREVENTSI3DPROC) (HDC hDC, const HANDLE *pEvent, const LPVOID *pAddress, const DWORD *pSize, UINT count);
7254a49301eSmrgtypedef BOOL (WINAPI * PFNWGLRELEASEIMAGEBUFFEREVENTSI3DPROC) (HDC hDC, const LPVOID *pAddress, UINT count);
7264a49301eSmrg#endif
7274a49301eSmrg
7284a49301eSmrg#ifndef WGL_I3D_swap_frame_lock
7294a49301eSmrg#define WGL_I3D_swap_frame_lock 1
7304a49301eSmrg#ifdef WGL_WGLEXT_PROTOTYPES
7314a49301eSmrgextern BOOL WINAPI wglEnableFrameLockI3D (void);
7324a49301eSmrgextern BOOL WINAPI wglDisableFrameLockI3D (void);
7333464ebd5Sriastradhextern BOOL WINAPI wglIsEnabledFrameLockI3D (BOOL *pFlag);
7343464ebd5Sriastradhextern BOOL WINAPI wglQueryFrameLockMasterI3D (BOOL *pFlag);
7354a49301eSmrg#endif /* WGL_WGLEXT_PROTOTYPES */
7364a49301eSmrgtypedef BOOL (WINAPI * PFNWGLENABLEFRAMELOCKI3DPROC) (void);
7374a49301eSmrgtypedef BOOL (WINAPI * PFNWGLDISABLEFRAMELOCKI3DPROC) (void);
7384a49301eSmrgtypedef BOOL (WINAPI * PFNWGLISENABLEDFRAMELOCKI3DPROC) (BOOL *pFlag);
7394a49301eSmrgtypedef BOOL (WINAPI * PFNWGLQUERYFRAMELOCKMASTERI3DPROC) (BOOL *pFlag);
7404a49301eSmrg#endif
7414a49301eSmrg
7424a49301eSmrg#ifndef WGL_I3D_swap_frame_usage
7434a49301eSmrg#define WGL_I3D_swap_frame_usage 1
7444a49301eSmrg#ifdef WGL_WGLEXT_PROTOTYPES
7453464ebd5Sriastradhextern BOOL WINAPI wglGetFrameUsageI3D (float *pUsage);
7464a49301eSmrgextern BOOL WINAPI wglBeginFrameTrackingI3D (void);
7474a49301eSmrgextern BOOL WINAPI wglEndFrameTrackingI3D (void);
7483464ebd5Sriastradhextern BOOL WINAPI wglQueryFrameTrackingI3D (DWORD *pFrameCount, DWORD *pMissedFrames, float *pLastMissedUsage);
7494a49301eSmrg#endif /* WGL_WGLEXT_PROTOTYPES */
7504a49301eSmrgtypedef BOOL (WINAPI * PFNWGLGETFRAMEUSAGEI3DPROC) (float *pUsage);
7514a49301eSmrgtypedef BOOL (WINAPI * PFNWGLBEGINFRAMETRACKINGI3DPROC) (void);
7524a49301eSmrgtypedef BOOL (WINAPI * PFNWGLENDFRAMETRACKINGI3DPROC) (void);
7534a49301eSmrgtypedef BOOL (WINAPI * PFNWGLQUERYFRAMETRACKINGI3DPROC) (DWORD *pFrameCount, DWORD *pMissedFrames, float *pLastMissedUsage);
7544a49301eSmrg#endif
7554a49301eSmrg
7564a49301eSmrg#ifndef WGL_ATI_pixel_format_float
7574a49301eSmrg#define WGL_ATI_pixel_format_float 1
7584a49301eSmrg#endif
7594a49301eSmrg
7604a49301eSmrg#ifndef WGL_NV_float_buffer
7614a49301eSmrg#define WGL_NV_float_buffer 1
7624a49301eSmrg#endif
7634a49301eSmrg
7644a49301eSmrg#ifndef WGL_3DL_stereo_control
7654a49301eSmrg#define WGL_3DL_stereo_control 1
7664a49301eSmrg#ifdef WGL_WGLEXT_PROTOTYPES
7673464ebd5Sriastradhextern BOOL WINAPI wglSetStereoEmitterState3DL (HDC hDC, UINT uState);
7684a49301eSmrg#endif /* WGL_WGLEXT_PROTOTYPES */
7694a49301eSmrgtypedef BOOL (WINAPI * PFNWGLSETSTEREOEMITTERSTATE3DLPROC) (HDC hDC, UINT uState);
7704a49301eSmrg#endif
7714a49301eSmrg
7724a49301eSmrg#ifndef WGL_EXT_pixel_format_packed_float
7734a49301eSmrg#define WGL_EXT_pixel_format_packed_float 1
7744a49301eSmrg#endif
7754a49301eSmrg
7764a49301eSmrg#ifndef WGL_EXT_framebuffer_sRGB
7774a49301eSmrg#define WGL_EXT_framebuffer_sRGB 1
7784a49301eSmrg#endif
7794a49301eSmrg
7804a49301eSmrg#ifndef WGL_NV_present_video
7814a49301eSmrg#define WGL_NV_present_video 1
7824a49301eSmrg#ifdef WGL_WGLEXT_PROTOTYPES
7833464ebd5Sriastradhextern int WINAPI wglEnumerateVideoDevicesNV (HDC hDC, HVIDEOOUTPUTDEVICENV *phDeviceList);
7843464ebd5Sriastradhextern BOOL WINAPI wglBindVideoDeviceNV (HDC hDC, unsigned int uVideoSlot, HVIDEOOUTPUTDEVICENV hVideoDevice, const int *piAttribList);
7853464ebd5Sriastradhextern BOOL WINAPI wglQueryCurrentContextNV (int iAttribute, int *piValue);
7864a49301eSmrg#endif /* WGL_WGLEXT_PROTOTYPES */
7874a49301eSmrgtypedef int (WINAPI * PFNWGLENUMERATEVIDEODEVICESNVPROC) (HDC hDC, HVIDEOOUTPUTDEVICENV *phDeviceList);
7884a49301eSmrgtypedef BOOL (WINAPI * PFNWGLBINDVIDEODEVICENVPROC) (HDC hDC, unsigned int uVideoSlot, HVIDEOOUTPUTDEVICENV hVideoDevice, const int *piAttribList);
7894a49301eSmrgtypedef BOOL (WINAPI * PFNWGLQUERYCURRENTCONTEXTNVPROC) (int iAttribute, int *piValue);
7904a49301eSmrg#endif
7914a49301eSmrg
7924a49301eSmrg#ifndef WGL_NV_video_output
7934a49301eSmrg#define WGL_NV_video_output 1
7944a49301eSmrg#ifdef WGL_WGLEXT_PROTOTYPES
7953464ebd5Sriastradhextern BOOL WINAPI wglGetVideoDeviceNV (HDC hDC, int numDevices, HPVIDEODEV *hVideoDevice);
7963464ebd5Sriastradhextern BOOL WINAPI wglReleaseVideoDeviceNV (HPVIDEODEV hVideoDevice);
7973464ebd5Sriastradhextern BOOL WINAPI wglBindVideoImageNV (HPVIDEODEV hVideoDevice, HPBUFFERARB hPbuffer, int iVideoBuffer);
7983464ebd5Sriastradhextern BOOL WINAPI wglReleaseVideoImageNV (HPBUFFERARB hPbuffer, int iVideoBuffer);
7993464ebd5Sriastradhextern BOOL WINAPI wglSendPbufferToVideoNV (HPBUFFERARB hPbuffer, int iBufferType, unsigned long *pulCounterPbuffer, BOOL bBlock);
8003464ebd5Sriastradhextern BOOL WINAPI wglGetVideoInfoNV (HPVIDEODEV hpVideoDevice, unsigned long *pulCounterOutputPbuffer, unsigned long *pulCounterOutputVideo);
8014a49301eSmrg#endif /* WGL_WGLEXT_PROTOTYPES */
8024a49301eSmrgtypedef BOOL (WINAPI * PFNWGLGETVIDEODEVICENVPROC) (HDC hDC, int numDevices, HPVIDEODEV *hVideoDevice);
8034a49301eSmrgtypedef BOOL (WINAPI * PFNWGLRELEASEVIDEODEVICENVPROC) (HPVIDEODEV hVideoDevice);
8044a49301eSmrgtypedef BOOL (WINAPI * PFNWGLBINDVIDEOIMAGENVPROC) (HPVIDEODEV hVideoDevice, HPBUFFERARB hPbuffer, int iVideoBuffer);
8054a49301eSmrgtypedef BOOL (WINAPI * PFNWGLRELEASEVIDEOIMAGENVPROC) (HPBUFFERARB hPbuffer, int iVideoBuffer);
8064a49301eSmrgtypedef BOOL (WINAPI * PFNWGLSENDPBUFFERTOVIDEONVPROC) (HPBUFFERARB hPbuffer, int iBufferType, unsigned long *pulCounterPbuffer, BOOL bBlock);
8074a49301eSmrgtypedef BOOL (WINAPI * PFNWGLGETVIDEOINFONVPROC) (HPVIDEODEV hpVideoDevice, unsigned long *pulCounterOutputPbuffer, unsigned long *pulCounterOutputVideo);
8084a49301eSmrg#endif
8094a49301eSmrg
8104a49301eSmrg#ifndef WGL_NV_swap_group
8114a49301eSmrg#define WGL_NV_swap_group 1
8124a49301eSmrg#ifdef WGL_WGLEXT_PROTOTYPES
8133464ebd5Sriastradhextern BOOL WINAPI wglJoinSwapGroupNV (HDC hDC, GLuint group);
8143464ebd5Sriastradhextern BOOL WINAPI wglBindSwapBarrierNV (GLuint group, GLuint barrier);
8153464ebd5Sriastradhextern BOOL WINAPI wglQuerySwapGroupNV (HDC hDC, GLuint *group, GLuint *barrier);
8163464ebd5Sriastradhextern BOOL WINAPI wglQueryMaxSwapGroupsNV (HDC hDC, GLuint *maxGroups, GLuint *maxBarriers);
8173464ebd5Sriastradhextern BOOL WINAPI wglQueryFrameCountNV (HDC hDC, GLuint *count);
8183464ebd5Sriastradhextern BOOL WINAPI wglResetFrameCountNV (HDC hDC);
8194a49301eSmrg#endif /* WGL_WGLEXT_PROTOTYPES */
8204a49301eSmrgtypedef BOOL (WINAPI * PFNWGLJOINSWAPGROUPNVPROC) (HDC hDC, GLuint group);
8214a49301eSmrgtypedef BOOL (WINAPI * PFNWGLBINDSWAPBARRIERNVPROC) (GLuint group, GLuint barrier);
8224a49301eSmrgtypedef BOOL (WINAPI * PFNWGLQUERYSWAPGROUPNVPROC) (HDC hDC, GLuint *group, GLuint *barrier);
8234a49301eSmrgtypedef BOOL (WINAPI * PFNWGLQUERYMAXSWAPGROUPSNVPROC) (HDC hDC, GLuint *maxGroups, GLuint *maxBarriers);
8244a49301eSmrgtypedef BOOL (WINAPI * PFNWGLQUERYFRAMECOUNTNVPROC) (HDC hDC, GLuint *count);
8254a49301eSmrgtypedef BOOL (WINAPI * PFNWGLRESETFRAMECOUNTNVPROC) (HDC hDC);
8264a49301eSmrg#endif
8274a49301eSmrg
8284a49301eSmrg#ifndef WGL_NV_gpu_affinity
8294a49301eSmrg#define WGL_NV_gpu_affinity 1
8304a49301eSmrg#ifdef WGL_WGLEXT_PROTOTYPES
8313464ebd5Sriastradhextern BOOL WINAPI wglEnumGpusNV (UINT iGpuIndex, HGPUNV *phGpu);
8323464ebd5Sriastradhextern BOOL WINAPI wglEnumGpuDevicesNV (HGPUNV hGpu, UINT iDeviceIndex, PGPU_DEVICE lpGpuDevice);
8333464ebd5Sriastradhextern HDC WINAPI wglCreateAffinityDCNV (const HGPUNV *phGpuList);
8343464ebd5Sriastradhextern BOOL WINAPI wglEnumGpusFromAffinityDCNV (HDC hAffinityDC, UINT iGpuIndex, HGPUNV *hGpu);
8353464ebd5Sriastradhextern BOOL WINAPI wglDeleteDCNV (HDC hdc);
8364a49301eSmrg#endif /* WGL_WGLEXT_PROTOTYPES */
8374a49301eSmrgtypedef BOOL (WINAPI * PFNWGLENUMGPUSNVPROC) (UINT iGpuIndex, HGPUNV *phGpu);
8384a49301eSmrgtypedef BOOL (WINAPI * PFNWGLENUMGPUDEVICESNVPROC) (HGPUNV hGpu, UINT iDeviceIndex, PGPU_DEVICE lpGpuDevice);
8394a49301eSmrgtypedef HDC (WINAPI * PFNWGLCREATEAFFINITYDCNVPROC) (const HGPUNV *phGpuList);
8404a49301eSmrgtypedef BOOL (WINAPI * PFNWGLENUMGPUSFROMAFFINITYDCNVPROC) (HDC hAffinityDC, UINT iGpuIndex, HGPUNV *hGpu);
8414a49301eSmrgtypedef BOOL (WINAPI * PFNWGLDELETEDCNVPROC) (HDC hdc);
8424a49301eSmrg#endif
8434a49301eSmrg
8444a49301eSmrg#ifndef WGL_AMD_gpu_association
8454a49301eSmrg#define WGL_AMD_gpu_association 1
8464a49301eSmrg#ifdef WGL_WGLEXT_PROTOTYPES
8473464ebd5Sriastradhextern UINT WINAPI wglGetGPUIDsAMD (UINT maxCount, UINT *ids);
8483464ebd5Sriastradhextern INT WINAPI wglGetGPUInfoAMD (UINT id, int property, GLenum dataType, UINT size, void *data);
8493464ebd5Sriastradhextern UINT WINAPI wglGetContextGPUIDAMD (HGLRC hglrc);
8503464ebd5Sriastradhextern HGLRC WINAPI wglCreateAssociatedContextAMD (UINT id);
8513464ebd5Sriastradhextern HGLRC WINAPI wglCreateAssociatedContextAttribsAMD (UINT id, HGLRC hShareContext, const int *attribList);
8523464ebd5Sriastradhextern BOOL WINAPI wglDeleteAssociatedContextAMD (HGLRC hglrc);
8533464ebd5Sriastradhextern BOOL WINAPI wglMakeAssociatedContextCurrentAMD (HGLRC hglrc);
8544a49301eSmrgextern HGLRC WINAPI wglGetCurrentAssociatedContextAMD (void);
8553464ebd5Sriastradhextern VOID WINAPI wglBlitContextFramebufferAMD (HGLRC dstCtx, GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
8564a49301eSmrg#endif /* WGL_WGLEXT_PROTOTYPES */
8574a49301eSmrgtypedef UINT (WINAPI * PFNWGLGETGPUIDSAMDPROC) (UINT maxCount, UINT *ids);
8584a49301eSmrgtypedef INT (WINAPI * PFNWGLGETGPUINFOAMDPROC) (UINT id, int property, GLenum dataType, UINT size, void *data);
8594a49301eSmrgtypedef UINT (WINAPI * PFNWGLGETCONTEXTGPUIDAMDPROC) (HGLRC hglrc);
8604a49301eSmrgtypedef HGLRC (WINAPI * PFNWGLCREATEASSOCIATEDCONTEXTAMDPROC) (UINT id);
8614a49301eSmrgtypedef HGLRC (WINAPI * PFNWGLCREATEASSOCIATEDCONTEXTATTRIBSAMDPROC) (UINT id, HGLRC hShareContext, const int *attribList);
8624a49301eSmrgtypedef BOOL (WINAPI * PFNWGLDELETEASSOCIATEDCONTEXTAMDPROC) (HGLRC hglrc);
8634a49301eSmrgtypedef BOOL (WINAPI * PFNWGLMAKEASSOCIATEDCONTEXTCURRENTAMDPROC) (HGLRC hglrc);
8644a49301eSmrgtypedef HGLRC (WINAPI * PFNWGLGETCURRENTASSOCIATEDCONTEXTAMDPROC) (void);
8654a49301eSmrgtypedef 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);
8664a49301eSmrg#endif
8674a49301eSmrg
8684a49301eSmrg#ifndef WGL_NV_video_capture
8694a49301eSmrg#define WGL_NV_video_capture 1
8704a49301eSmrg#ifdef WGL_WGLEXT_PROTOTYPES
8713464ebd5Sriastradhextern BOOL WINAPI wglBindVideoCaptureDeviceNV (UINT uVideoSlot, HVIDEOINPUTDEVICENV hDevice);
8723464ebd5Sriastradhextern UINT WINAPI wglEnumerateVideoCaptureDevicesNV (HDC hDc, HVIDEOINPUTDEVICENV *phDeviceList);
8733464ebd5Sriastradhextern BOOL WINAPI wglLockVideoCaptureDeviceNV (HDC hDc, HVIDEOINPUTDEVICENV hDevice);
8743464ebd5Sriastradhextern BOOL WINAPI wglQueryVideoCaptureDeviceNV (HDC hDc, HVIDEOINPUTDEVICENV hDevice, int iAttribute, int *piValue);
8753464ebd5Sriastradhextern BOOL WINAPI wglReleaseVideoCaptureDeviceNV (HDC hDc, HVIDEOINPUTDEVICENV hDevice);
8764a49301eSmrg#endif /* WGL_WGLEXT_PROTOTYPES */
8774a49301eSmrgtypedef BOOL (WINAPI * PFNWGLBINDVIDEOCAPTUREDEVICENVPROC) (UINT uVideoSlot, HVIDEOINPUTDEVICENV hDevice);
8784a49301eSmrgtypedef UINT (WINAPI * PFNWGLENUMERATEVIDEOCAPTUREDEVICESNVPROC) (HDC hDc, HVIDEOINPUTDEVICENV *phDeviceList);
8794a49301eSmrgtypedef BOOL (WINAPI * PFNWGLLOCKVIDEOCAPTUREDEVICENVPROC) (HDC hDc, HVIDEOINPUTDEVICENV hDevice);
8804a49301eSmrgtypedef BOOL (WINAPI * PFNWGLQUERYVIDEOCAPTUREDEVICENVPROC) (HDC hDc, HVIDEOINPUTDEVICENV hDevice, int iAttribute, int *piValue);
8814a49301eSmrgtypedef BOOL (WINAPI * PFNWGLRELEASEVIDEOCAPTUREDEVICENVPROC) (HDC hDc, HVIDEOINPUTDEVICENV hDevice);
8824a49301eSmrg#endif
8834a49301eSmrg
8844a49301eSmrg#ifndef WGL_NV_copy_image
8854a49301eSmrg#define WGL_NV_copy_image 1
8864a49301eSmrg#ifdef WGL_WGLEXT_PROTOTYPES
8873464ebd5Sriastradhextern BOOL WINAPI 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);
8884a49301eSmrg#endif /* WGL_WGLEXT_PROTOTYPES */
8894a49301eSmrgtypedef 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);
8904a49301eSmrg#endif
8914a49301eSmrg
8923464ebd5Sriastradh#ifndef WGL_NV_multisample_coverage
8933464ebd5Sriastradh#define WGL_NV_multisample_coverage 1
8943464ebd5Sriastradh#endif
8953464ebd5Sriastradh
8964a49301eSmrg
8974a49301eSmrg#ifdef __cplusplus
8984a49301eSmrg}
8994a49301eSmrg#endif
9004a49301eSmrg
9014a49301eSmrg#endif
902