1493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef __wglext_h_
2493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define __wglext_h_
3493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
4493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifdef __cplusplus
5493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paulextern "C" {
6493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
7493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
8493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul/*
979ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paul** Copyright (c) 2007-2010 The Khronos Group Inc.
10493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul**
11493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul** Permission is hereby granted, free of charge, to any person obtaining a
12493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul** copy of this software and/or associated documentation files (the
13493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul** "Materials"), to deal in the Materials without restriction, including
14493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul** without limitation the rights to use, copy, modify, merge, publish,
15493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul** distribute, sublicense, and/or sell copies of the Materials, and to
16493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul** permit persons to whom the Materials are furnished to do so, subject to
17493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul** the following conditions:
18493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul**
19493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul** The above copyright notice and this permission notice shall be included
20493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul** in all copies or substantial portions of the Materials.
21493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul**
22493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
23493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
24493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
25493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
26493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
27493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
28493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
29493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul*/
30493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
3181a0ef3f2068448a8b544826eaa7d3382b9c769bBrian Paul/* Function declaration macros - to move into glplatform.h */
3281a0ef3f2068448a8b544826eaa7d3382b9c769bBrian Paul
33493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#if defined(_WIN32) && !defined(APIENTRY) && !defined(__CYGWIN__) && !defined(__SCITECH_SNAP__)
34493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WIN32_LEAN_AND_MEAN 1
35493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#include <windows.h>
36493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
37493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
38493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef APIENTRY
39493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define APIENTRY
40493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
41493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef APIENTRYP
42493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define APIENTRYP APIENTRY *
43493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
44493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef GLAPI
45493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define GLAPI extern
46493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
47493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
48493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul/*************************************************************/
49493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
50493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul/* Header file version number */
5179ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paul/* wglext.h last updated 2010/08/06 */
52493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul/* Current version at http://www.opengl.org/registry/ */
5379ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paul#define WGL_WGLEXT_VERSION 22
54493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
55493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_ARB_buffer_region
56493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_FRONT_COLOR_BUFFER_BIT_ARB 0x00000001
57493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_BACK_COLOR_BUFFER_BIT_ARB  0x00000002
58493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_DEPTH_BUFFER_BIT_ARB       0x00000004
59493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_STENCIL_BUFFER_BIT_ARB     0x00000008
60493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
61493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
62493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_ARB_multisample
63493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_SAMPLE_BUFFERS_ARB         0x2041
64493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_SAMPLES_ARB                0x2042
65493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
66493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
67493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_ARB_extensions_string
68493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
69493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
70493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_ARB_pixel_format
71493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_NUMBER_PIXEL_FORMATS_ARB   0x2000
72493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_DRAW_TO_WINDOW_ARB         0x2001
73493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_DRAW_TO_BITMAP_ARB         0x2002
74493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_ACCELERATION_ARB           0x2003
75493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_NEED_PALETTE_ARB           0x2004
76493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_NEED_SYSTEM_PALETTE_ARB    0x2005
77493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_SWAP_LAYER_BUFFERS_ARB     0x2006
78493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_SWAP_METHOD_ARB            0x2007
79493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_NUMBER_OVERLAYS_ARB        0x2008
80493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_NUMBER_UNDERLAYS_ARB       0x2009
81493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_TRANSPARENT_ARB            0x200A
82493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_TRANSPARENT_RED_VALUE_ARB  0x2037
83493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_TRANSPARENT_GREEN_VALUE_ARB 0x2038
84493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_TRANSPARENT_BLUE_VALUE_ARB 0x2039
85493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_TRANSPARENT_ALPHA_VALUE_ARB 0x203A
86493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_TRANSPARENT_INDEX_VALUE_ARB 0x203B
87493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_SHARE_DEPTH_ARB            0x200C
88493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_SHARE_STENCIL_ARB          0x200D
89493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_SHARE_ACCUM_ARB            0x200E
90493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_SUPPORT_GDI_ARB            0x200F
91493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_SUPPORT_OPENGL_ARB         0x2010
92493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_DOUBLE_BUFFER_ARB          0x2011
93493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_STEREO_ARB                 0x2012
94493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_PIXEL_TYPE_ARB             0x2013
95493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_COLOR_BITS_ARB             0x2014
96493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_RED_BITS_ARB               0x2015
97493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_RED_SHIFT_ARB              0x2016
98493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_GREEN_BITS_ARB             0x2017
99493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_GREEN_SHIFT_ARB            0x2018
100493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_BLUE_BITS_ARB              0x2019
101493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_BLUE_SHIFT_ARB             0x201A
102493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_ALPHA_BITS_ARB             0x201B
103493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_ALPHA_SHIFT_ARB            0x201C
104493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_ACCUM_BITS_ARB             0x201D
105493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_ACCUM_RED_BITS_ARB         0x201E
106493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_ACCUM_GREEN_BITS_ARB       0x201F
107493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_ACCUM_BLUE_BITS_ARB        0x2020
108493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_ACCUM_ALPHA_BITS_ARB       0x2021
109493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_DEPTH_BITS_ARB             0x2022
110493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_STENCIL_BITS_ARB           0x2023
111493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_AUX_BUFFERS_ARB            0x2024
112493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_NO_ACCELERATION_ARB        0x2025
113493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_GENERIC_ACCELERATION_ARB   0x2026
114493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_FULL_ACCELERATION_ARB      0x2027
115493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_SWAP_EXCHANGE_ARB          0x2028
116493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_SWAP_COPY_ARB              0x2029
117493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_SWAP_UNDEFINED_ARB         0x202A
118493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_TYPE_RGBA_ARB              0x202B
119493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_TYPE_COLORINDEX_ARB        0x202C
120493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
121493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
122493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_ARB_make_current_read
123493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define ERROR_INVALID_PIXEL_TYPE_ARB   0x2043
124493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define ERROR_INCOMPATIBLE_DEVICE_CONTEXTS_ARB 0x2054
125493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
126493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
127493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_ARB_pbuffer
128493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_DRAW_TO_PBUFFER_ARB        0x202D
129493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_MAX_PBUFFER_PIXELS_ARB     0x202E
130493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_MAX_PBUFFER_WIDTH_ARB      0x202F
131493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_MAX_PBUFFER_HEIGHT_ARB     0x2030
132493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_PBUFFER_LARGEST_ARB        0x2033
133493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_PBUFFER_WIDTH_ARB          0x2034
134493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_PBUFFER_HEIGHT_ARB         0x2035
135493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_PBUFFER_LOST_ARB           0x2036
136493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
137493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
138493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_ARB_render_texture
139493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_BIND_TO_TEXTURE_RGB_ARB    0x2070
140493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_BIND_TO_TEXTURE_RGBA_ARB   0x2071
141493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_TEXTURE_FORMAT_ARB         0x2072
142493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_TEXTURE_TARGET_ARB         0x2073
143493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_MIPMAP_TEXTURE_ARB         0x2074
144493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_TEXTURE_RGB_ARB            0x2075
145493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_TEXTURE_RGBA_ARB           0x2076
146493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_NO_TEXTURE_ARB             0x2077
147493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_TEXTURE_CUBE_MAP_ARB       0x2078
148493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_TEXTURE_1D_ARB             0x2079
149493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_TEXTURE_2D_ARB             0x207A
150493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_MIPMAP_LEVEL_ARB           0x207B
151493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_CUBE_MAP_FACE_ARB          0x207C
152493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB 0x207D
153493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB 0x207E
154493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB 0x207F
155493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB 0x2080
156493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB 0x2081
157493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB 0x2082
158493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_FRONT_LEFT_ARB             0x2083
159493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_FRONT_RIGHT_ARB            0x2084
160493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_BACK_LEFT_ARB              0x2085
161493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_BACK_RIGHT_ARB             0x2086
162493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_AUX0_ARB                   0x2087
163493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_AUX1_ARB                   0x2088
164493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_AUX2_ARB                   0x2089
165493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_AUX3_ARB                   0x208A
166493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_AUX4_ARB                   0x208B
167493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_AUX5_ARB                   0x208C
168493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_AUX6_ARB                   0x208D
169493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_AUX7_ARB                   0x208E
170493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_AUX8_ARB                   0x208F
171493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_AUX9_ARB                   0x2090
172493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
173493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
174493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_ARB_pixel_format_float
175493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_TYPE_RGBA_FLOAT_ARB        0x21A0
176493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
177493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
17879ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paul#ifndef WGL_ARB_framebuffer_sRGB
17979ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paul#define WGL_FRAMEBUFFER_SRGB_CAPABLE_ARB 0x20A9
18079ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paul#endif
18179ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paul
182493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_ARB_create_context
18327148ccaba9ceee44a3d9fb4649f4a953b3062a7Brian Paul#define WGL_CONTEXT_DEBUG_BIT_ARB      0x00000001
18427148ccaba9ceee44a3d9fb4649f4a953b3062a7Brian Paul#define WGL_CONTEXT_FORWARD_COMPATIBLE_BIT_ARB 0x00000002
185493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_CONTEXT_MAJOR_VERSION_ARB  0x2091
186493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_CONTEXT_MINOR_VERSION_ARB  0x2092
187493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_CONTEXT_LAYER_PLANE_ARB    0x2093
188493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_CONTEXT_FLAGS_ARB          0x2094
189493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define ERROR_INVALID_VERSION_ARB      0x2095
190493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
191493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
19227148ccaba9ceee44a3d9fb4649f4a953b3062a7Brian Paul#ifndef WGL_ARB_create_context_profile
19327148ccaba9ceee44a3d9fb4649f4a953b3062a7Brian Paul#define WGL_CONTEXT_PROFILE_MASK_ARB   0x9126
19427148ccaba9ceee44a3d9fb4649f4a953b3062a7Brian Paul#define WGL_CONTEXT_CORE_PROFILE_BIT_ARB 0x00000001
19527148ccaba9ceee44a3d9fb4649f4a953b3062a7Brian Paul#define WGL_CONTEXT_COMPATIBILITY_PROFILE_BIT_ARB 0x00000002
19627148ccaba9ceee44a3d9fb4649f4a953b3062a7Brian Paul#define ERROR_INVALID_PROFILE_ARB      0x2096
19727148ccaba9ceee44a3d9fb4649f4a953b3062a7Brian Paul#endif
19827148ccaba9ceee44a3d9fb4649f4a953b3062a7Brian Paul
19979ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paul#ifndef WGL_ARB_create_context_robustness
20079ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paul#define WGL_CONTEXT_ROBUST_ACCESS_BIT_ARB 0x00000004
20179ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paul#define WGL_LOSE_CONTEXT_ON_RESET_ARB  0x8252
20279ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paul#define WGL_CONTEXT_RESET_NOTIFICATION_STRATEGY_ARB 0x8256
20379ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paul#define WGL_NO_RESET_NOTIFICATION_ARB  0x8261
20479ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paul#endif
20579ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paul
206493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_EXT_make_current_read
207493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define ERROR_INVALID_PIXEL_TYPE_EXT   0x2043
208493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
209493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
210493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_EXT_pixel_format
211493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_NUMBER_PIXEL_FORMATS_EXT   0x2000
212493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_DRAW_TO_WINDOW_EXT         0x2001
213493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_DRAW_TO_BITMAP_EXT         0x2002
214493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_ACCELERATION_EXT           0x2003
215493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_NEED_PALETTE_EXT           0x2004
216493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_NEED_SYSTEM_PALETTE_EXT    0x2005
217493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_SWAP_LAYER_BUFFERS_EXT     0x2006
218493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_SWAP_METHOD_EXT            0x2007
219493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_NUMBER_OVERLAYS_EXT        0x2008
220493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_NUMBER_UNDERLAYS_EXT       0x2009
221493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_TRANSPARENT_EXT            0x200A
222493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_TRANSPARENT_VALUE_EXT      0x200B
223493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_SHARE_DEPTH_EXT            0x200C
224493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_SHARE_STENCIL_EXT          0x200D
225493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_SHARE_ACCUM_EXT            0x200E
226493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_SUPPORT_GDI_EXT            0x200F
227493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_SUPPORT_OPENGL_EXT         0x2010
228493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_DOUBLE_BUFFER_EXT          0x2011
229493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_STEREO_EXT                 0x2012
230493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_PIXEL_TYPE_EXT             0x2013
231493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_COLOR_BITS_EXT             0x2014
232493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_RED_BITS_EXT               0x2015
233493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_RED_SHIFT_EXT              0x2016
234493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_GREEN_BITS_EXT             0x2017
235493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_GREEN_SHIFT_EXT            0x2018
236493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_BLUE_BITS_EXT              0x2019
237493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_BLUE_SHIFT_EXT             0x201A
238493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_ALPHA_BITS_EXT             0x201B
239493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_ALPHA_SHIFT_EXT            0x201C
240493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_ACCUM_BITS_EXT             0x201D
241493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_ACCUM_RED_BITS_EXT         0x201E
242493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_ACCUM_GREEN_BITS_EXT       0x201F
243493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_ACCUM_BLUE_BITS_EXT        0x2020
244493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_ACCUM_ALPHA_BITS_EXT       0x2021
245493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_DEPTH_BITS_EXT             0x2022
246493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_STENCIL_BITS_EXT           0x2023
247493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_AUX_BUFFERS_EXT            0x2024
248493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_NO_ACCELERATION_EXT        0x2025
249493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_GENERIC_ACCELERATION_EXT   0x2026
250493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_FULL_ACCELERATION_EXT      0x2027
251493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_SWAP_EXCHANGE_EXT          0x2028
252493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_SWAP_COPY_EXT              0x2029
253493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_SWAP_UNDEFINED_EXT         0x202A
254493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_TYPE_RGBA_EXT              0x202B
255493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_TYPE_COLORINDEX_EXT        0x202C
256493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
257493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
258493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_EXT_pbuffer
259493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_DRAW_TO_PBUFFER_EXT        0x202D
260493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_MAX_PBUFFER_PIXELS_EXT     0x202E
261493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_MAX_PBUFFER_WIDTH_EXT      0x202F
262493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_MAX_PBUFFER_HEIGHT_EXT     0x2030
263493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_OPTIMAL_PBUFFER_WIDTH_EXT  0x2031
264493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_OPTIMAL_PBUFFER_HEIGHT_EXT 0x2032
265493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_PBUFFER_LARGEST_EXT        0x2033
266493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_PBUFFER_WIDTH_EXT          0x2034
267493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_PBUFFER_HEIGHT_EXT         0x2035
268493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
269493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
270493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_EXT_depth_float
271493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_DEPTH_FLOAT_EXT            0x2040
272493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
273493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
274493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_3DFX_multisample
275493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_SAMPLE_BUFFERS_3DFX        0x2060
276493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_SAMPLES_3DFX               0x2061
277493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
278493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
279493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_EXT_multisample
280493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_SAMPLE_BUFFERS_EXT         0x2041
281493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_SAMPLES_EXT                0x2042
282493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
283493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
284493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_I3D_digital_video_control
285493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_DIGITAL_VIDEO_CURSOR_ALPHA_FRAMEBUFFER_I3D 0x2050
286493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_DIGITAL_VIDEO_CURSOR_ALPHA_VALUE_I3D 0x2051
287493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_DIGITAL_VIDEO_CURSOR_INCLUDED_I3D 0x2052
288493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_DIGITAL_VIDEO_GAMMA_CORRECTED_I3D 0x2053
289493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
290493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
291493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_I3D_gamma
292493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_GAMMA_TABLE_SIZE_I3D       0x204E
293493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_GAMMA_EXCLUDE_DESKTOP_I3D  0x204F
294493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
295493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
296493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_I3D_genlock
297493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_GENLOCK_SOURCE_MULTIVIEW_I3D 0x2044
298493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_GENLOCK_SOURCE_EXTENAL_SYNC_I3D 0x2045
299493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_GENLOCK_SOURCE_EXTENAL_FIELD_I3D 0x2046
300493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_GENLOCK_SOURCE_EXTENAL_TTL_I3D 0x2047
301493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_GENLOCK_SOURCE_DIGITAL_SYNC_I3D 0x2048
302493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_GENLOCK_SOURCE_DIGITAL_FIELD_I3D 0x2049
303493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_GENLOCK_SOURCE_EDGE_FALLING_I3D 0x204A
304493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_GENLOCK_SOURCE_EDGE_RISING_I3D 0x204B
305493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_GENLOCK_SOURCE_EDGE_BOTH_I3D 0x204C
306493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
307493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
308493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_I3D_image_buffer
309493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_IMAGE_BUFFER_MIN_ACCESS_I3D 0x00000001
310493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_IMAGE_BUFFER_LOCK_I3D      0x00000002
311493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
312493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
313493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_I3D_swap_frame_lock
314493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
315493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
316493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_NV_render_depth_texture
317493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_BIND_TO_TEXTURE_DEPTH_NV   0x20A3
318493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_BIND_TO_TEXTURE_RECTANGLE_DEPTH_NV 0x20A4
319493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_DEPTH_TEXTURE_FORMAT_NV    0x20A5
320493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_TEXTURE_DEPTH_COMPONENT_NV 0x20A6
321493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_DEPTH_COMPONENT_NV         0x20A7
322493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
323493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
324493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_NV_render_texture_rectangle
325493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_BIND_TO_TEXTURE_RECTANGLE_RGB_NV 0x20A0
326493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_BIND_TO_TEXTURE_RECTANGLE_RGBA_NV 0x20A1
327493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_TEXTURE_RECTANGLE_NV       0x20A2
328493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
329493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
330493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_ATI_pixel_format_float
331493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_TYPE_RGBA_FLOAT_ATI        0x21A0
332493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
333493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
334493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_NV_float_buffer
335493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_FLOAT_COMPONENTS_NV        0x20B0
336493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_R_NV 0x20B1
337493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RG_NV 0x20B2
338493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RGB_NV 0x20B3
339493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RGBA_NV 0x20B4
340493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_TEXTURE_FLOAT_R_NV         0x20B5
341493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_TEXTURE_FLOAT_RG_NV        0x20B6
342493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_TEXTURE_FLOAT_RGB_NV       0x20B7
343493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_TEXTURE_FLOAT_RGBA_NV      0x20B8
344493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
345493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
346493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_3DL_stereo_control
347493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_STEREO_EMITTER_ENABLE_3DL  0x2055
348493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_STEREO_EMITTER_DISABLE_3DL 0x2056
349493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_STEREO_POLARITY_NORMAL_3DL 0x2057
350493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_STEREO_POLARITY_INVERT_3DL 0x2058
351493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
352493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
353493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_EXT_pixel_format_packed_float
354493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_TYPE_RGBA_UNSIGNED_FLOAT_EXT 0x20A8
355493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
356493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
357493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_EXT_framebuffer_sRGB
358493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_FRAMEBUFFER_SRGB_CAPABLE_EXT 0x20A9
359493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
360493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
361493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_NV_present_video
362493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_NUM_VIDEO_SLOTS_NV         0x20F0
363493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
364493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
365493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_NV_video_out
366493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_BIND_TO_VIDEO_RGB_NV       0x20C0
367493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_BIND_TO_VIDEO_RGBA_NV      0x20C1
368493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_BIND_TO_VIDEO_RGB_AND_DEPTH_NV 0x20C2
369493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_VIDEO_OUT_COLOR_NV         0x20C3
370493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_VIDEO_OUT_ALPHA_NV         0x20C4
371493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_VIDEO_OUT_DEPTH_NV         0x20C5
372493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_VIDEO_OUT_COLOR_AND_ALPHA_NV 0x20C6
373493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_VIDEO_OUT_COLOR_AND_DEPTH_NV 0x20C7
374493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_VIDEO_OUT_FRAME            0x20C8
375493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_VIDEO_OUT_FIELD_1          0x20C9
376493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_VIDEO_OUT_FIELD_2          0x20CA
377493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_VIDEO_OUT_STACKED_FIELDS_1_2 0x20CB
378493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_VIDEO_OUT_STACKED_FIELDS_2_1 0x20CC
379493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
380493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
381493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_NV_swap_group
382493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
383493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
384493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_NV_gpu_affinity
385493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_ERROR_INCOMPATIBLE_AFFINITY_MASKS_NV 0x20D0
386493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_ERROR_MISSING_AFFINITY_MASK_NV 0x20D1
387493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
388493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
389493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_AMD_gpu_association
390493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_GPU_VENDOR_AMD             0x1F00
391493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_GPU_RENDERER_STRING_AMD    0x1F01
392493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_GPU_OPENGL_VERSION_STRING_AMD 0x1F02
393493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_GPU_FASTEST_TARGET_GPUS_AMD 0x21A2
394493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_GPU_RAM_AMD                0x21A3
395493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_GPU_CLOCK_AMD              0x21A4
396493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_GPU_NUM_PIPES_AMD          0x21A5
397493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_GPU_NUM_SIMD_AMD           0x21A6
398493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_GPU_NUM_RB_AMD             0x21A7
399493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_GPU_NUM_SPI_AMD            0x21A8
400493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
401493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
40279ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paul#ifndef WGL_NV_video_capture
4035c0dc902e738adb6d2e84b907adafb3006d40296Brian Paul#define WGL_UNIQUE_ID_NV               0x20CE
4045c0dc902e738adb6d2e84b907adafb3006d40296Brian Paul#define WGL_NUM_VIDEO_CAPTURE_SLOTS_NV 0x20CF
4055c0dc902e738adb6d2e84b907adafb3006d40296Brian Paul#endif
4065c0dc902e738adb6d2e84b907adafb3006d40296Brian Paul
40779ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paul#ifndef WGL_NV_copy_image
40879ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paul#endif
40979ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paul
41079ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paul#ifndef WGL_NV_multisample_coverage
41179ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paul#define WGL_COVERAGE_SAMPLES_NV        0x2042
41279ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paul#define WGL_COLOR_SAMPLES_NV           0x20B9
41379ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paul#endif
41479ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paul
41579ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paul#ifndef WGL_EXT_create_context_es2_profile
41679ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paul#define WGL_CONTEXT_ES2_PROFILE_BIT_EXT 0x00000004
4175c0dc902e738adb6d2e84b907adafb3006d40296Brian Paul#endif
4185c0dc902e738adb6d2e84b907adafb3006d40296Brian Paul
419493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
420493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul/*************************************************************/
421493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
422493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_ARB_pbuffer
423493b69a0c8887ddf5544f24750410e25c6baef2cBrian PaulDECLARE_HANDLE(HPBUFFERARB);
424493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
425493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_EXT_pbuffer
426493b69a0c8887ddf5544f24750410e25c6baef2cBrian PaulDECLARE_HANDLE(HPBUFFEREXT);
427493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
428493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_NV_present_video
429493b69a0c8887ddf5544f24750410e25c6baef2cBrian PaulDECLARE_HANDLE(HVIDEOOUTPUTDEVICENV);
430493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
4315c0dc902e738adb6d2e84b907adafb3006d40296Brian Paul#ifndef WGL_NV_video_output
432493b69a0c8887ddf5544f24750410e25c6baef2cBrian PaulDECLARE_HANDLE(HPVIDEODEV);
433493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
434493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_NV_gpu_affinity
435493b69a0c8887ddf5544f24750410e25c6baef2cBrian PaulDECLARE_HANDLE(HPGPUNV);
436493b69a0c8887ddf5544f24750410e25c6baef2cBrian PaulDECLARE_HANDLE(HGPUNV);
437493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
438493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef struct _GPU_DEVICE {
439493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul    DWORD  cb;
440493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul    CHAR   DeviceName[32];
441493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul    CHAR   DeviceString[128];
442493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul    DWORD  Flags;
443493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul    RECT   rcVirtualScreen;
444493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul} GPU_DEVICE, *PGPU_DEVICE;
445493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
4465c0dc902e738adb6d2e84b907adafb3006d40296Brian Paul#ifndef WGL_NV_video_capture
4475c0dc902e738adb6d2e84b907adafb3006d40296Brian PaulDECLARE_HANDLE(HVIDEOINPUTDEVICENV);
4485c0dc902e738adb6d2e84b907adafb3006d40296Brian Paul#endif
449493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
450493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_ARB_buffer_region
451493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_ARB_buffer_region 1
452493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifdef WGL_WGLEXT_PROTOTYPES
45379ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern HANDLE WINAPI wglCreateBufferRegionARB (HDC hDC, int iLayerPlane, UINT uType);
45479ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern VOID WINAPI wglDeleteBufferRegionARB (HANDLE hRegion);
45579ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglSaveBufferRegionARB (HANDLE hRegion, int x, int y, int width, int height);
45679ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglRestoreBufferRegionARB (HANDLE hRegion, int x, int y, int width, int height, int xSrc, int ySrc);
457493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif /* WGL_WGLEXT_PROTOTYPES */
458493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef HANDLE (WINAPI * PFNWGLCREATEBUFFERREGIONARBPROC) (HDC hDC, int iLayerPlane, UINT uType);
459493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef VOID (WINAPI * PFNWGLDELETEBUFFERREGIONARBPROC) (HANDLE hRegion);
460493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLSAVEBUFFERREGIONARBPROC) (HANDLE hRegion, int x, int y, int width, int height);
461493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLRESTOREBUFFERREGIONARBPROC) (HANDLE hRegion, int x, int y, int width, int height, int xSrc, int ySrc);
462493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
463493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
464493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_ARB_multisample
465493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_ARB_multisample 1
466493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
467493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
468493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_ARB_extensions_string
469493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_ARB_extensions_string 1
470493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifdef WGL_WGLEXT_PROTOTYPES
47179ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern const char * WINAPI wglGetExtensionsStringARB (HDC hdc);
472493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif /* WGL_WGLEXT_PROTOTYPES */
473493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef const char * (WINAPI * PFNWGLGETEXTENSIONSSTRINGARBPROC) (HDC hdc);
474493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
475493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
476493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_ARB_pixel_format
477493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_ARB_pixel_format 1
478493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifdef WGL_WGLEXT_PROTOTYPES
47979ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglGetPixelFormatAttribivARB (HDC hdc, int iPixelFormat, int iLayerPlane, UINT nAttributes, const int *piAttributes, int *piValues);
48079ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglGetPixelFormatAttribfvARB (HDC hdc, int iPixelFormat, int iLayerPlane, UINT nAttributes, const int *piAttributes, FLOAT *pfValues);
48179ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglChoosePixelFormatARB (HDC hdc, const int *piAttribIList, const FLOAT *pfAttribFList, UINT nMaxFormats, int *piFormats, UINT *nNumFormats);
482493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif /* WGL_WGLEXT_PROTOTYPES */
483493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLGETPIXELFORMATATTRIBIVARBPROC) (HDC hdc, int iPixelFormat, int iLayerPlane, UINT nAttributes, const int *piAttributes, int *piValues);
484493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLGETPIXELFORMATATTRIBFVARBPROC) (HDC hdc, int iPixelFormat, int iLayerPlane, UINT nAttributes, const int *piAttributes, FLOAT *pfValues);
485493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLCHOOSEPIXELFORMATARBPROC) (HDC hdc, const int *piAttribIList, const FLOAT *pfAttribFList, UINT nMaxFormats, int *piFormats, UINT *nNumFormats);
486493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
487493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
488493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_ARB_make_current_read
489493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_ARB_make_current_read 1
490493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifdef WGL_WGLEXT_PROTOTYPES
49179ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglMakeContextCurrentARB (HDC hDrawDC, HDC hReadDC, HGLRC hglrc);
492493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paulextern HDC WINAPI wglGetCurrentReadDCARB (void);
493493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif /* WGL_WGLEXT_PROTOTYPES */
494493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLMAKECONTEXTCURRENTARBPROC) (HDC hDrawDC, HDC hReadDC, HGLRC hglrc);
495493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef HDC (WINAPI * PFNWGLGETCURRENTREADDCARBPROC) (void);
496493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
497493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
498493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_ARB_pbuffer
499493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_ARB_pbuffer 1
500493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifdef WGL_WGLEXT_PROTOTYPES
50179ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern HPBUFFERARB WINAPI wglCreatePbufferARB (HDC hDC, int iPixelFormat, int iWidth, int iHeight, const int *piAttribList);
50279ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern HDC WINAPI wglGetPbufferDCARB (HPBUFFERARB hPbuffer);
50379ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern int WINAPI wglReleasePbufferDCARB (HPBUFFERARB hPbuffer, HDC hDC);
50479ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglDestroyPbufferARB (HPBUFFERARB hPbuffer);
50579ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglQueryPbufferARB (HPBUFFERARB hPbuffer, int iAttribute, int *piValue);
506493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif /* WGL_WGLEXT_PROTOTYPES */
507493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef HPBUFFERARB (WINAPI * PFNWGLCREATEPBUFFERARBPROC) (HDC hDC, int iPixelFormat, int iWidth, int iHeight, const int *piAttribList);
508493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef HDC (WINAPI * PFNWGLGETPBUFFERDCARBPROC) (HPBUFFERARB hPbuffer);
509493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef int (WINAPI * PFNWGLRELEASEPBUFFERDCARBPROC) (HPBUFFERARB hPbuffer, HDC hDC);
510493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLDESTROYPBUFFERARBPROC) (HPBUFFERARB hPbuffer);
511493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLQUERYPBUFFERARBPROC) (HPBUFFERARB hPbuffer, int iAttribute, int *piValue);
512493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
513493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
514493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_ARB_render_texture
515493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_ARB_render_texture 1
516493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifdef WGL_WGLEXT_PROTOTYPES
51779ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglBindTexImageARB (HPBUFFERARB hPbuffer, int iBuffer);
51879ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglReleaseTexImageARB (HPBUFFERARB hPbuffer, int iBuffer);
51979ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglSetPbufferAttribARB (HPBUFFERARB hPbuffer, const int *piAttribList);
520493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif /* WGL_WGLEXT_PROTOTYPES */
521493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLBINDTEXIMAGEARBPROC) (HPBUFFERARB hPbuffer, int iBuffer);
522493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLRELEASETEXIMAGEARBPROC) (HPBUFFERARB hPbuffer, int iBuffer);
523493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLSETPBUFFERATTRIBARBPROC) (HPBUFFERARB hPbuffer, const int *piAttribList);
524493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
525493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
526493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_ARB_pixel_format_float
527493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_ARB_pixel_format_float 1
528493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
529493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
53079ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paul#ifndef WGL_ARB_framebuffer_sRGB
53179ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paul#define WGL_ARB_framebuffer_sRGB 1
53279ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paul#endif
53379ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paul
534493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_ARB_create_context
535493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_ARB_create_context 1
536493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifdef WGL_WGLEXT_PROTOTYPES
53779ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern HGLRC WINAPI wglCreateContextAttribsARB (HDC hDC, HGLRC hShareContext, const int *attribList);
538493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif /* WGL_WGLEXT_PROTOTYPES */
539493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef HGLRC (WINAPI * PFNWGLCREATECONTEXTATTRIBSARBPROC) (HDC hDC, HGLRC hShareContext, const int *attribList);
540493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
541493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
54227148ccaba9ceee44a3d9fb4649f4a953b3062a7Brian Paul#ifndef WGL_ARB_create_context_profile
54327148ccaba9ceee44a3d9fb4649f4a953b3062a7Brian Paul#define WGL_ARB_create_context_profile 1
54427148ccaba9ceee44a3d9fb4649f4a953b3062a7Brian Paul#endif
54527148ccaba9ceee44a3d9fb4649f4a953b3062a7Brian Paul
54679ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paul#ifndef WGL_ARB_create_context_robustness
54779ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paul#define WGL_ARB_create_context_robustness 1
54879ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paul#endif
54979ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paul
550493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_EXT_display_color_table
551493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_EXT_display_color_table 1
552493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifdef WGL_WGLEXT_PROTOTYPES
55379ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern GLboolean WINAPI wglCreateDisplayColorTableEXT (GLushort id);
55479ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern GLboolean WINAPI wglLoadDisplayColorTableEXT (const GLushort *table, GLuint length);
55579ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern GLboolean WINAPI wglBindDisplayColorTableEXT (GLushort id);
55679ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern VOID WINAPI wglDestroyDisplayColorTableEXT (GLushort id);
557493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif /* WGL_WGLEXT_PROTOTYPES */
558493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef GLboolean (WINAPI * PFNWGLCREATEDISPLAYCOLORTABLEEXTPROC) (GLushort id);
559493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef GLboolean (WINAPI * PFNWGLLOADDISPLAYCOLORTABLEEXTPROC) (const GLushort *table, GLuint length);
560493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef GLboolean (WINAPI * PFNWGLBINDDISPLAYCOLORTABLEEXTPROC) (GLushort id);
561493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef VOID (WINAPI * PFNWGLDESTROYDISPLAYCOLORTABLEEXTPROC) (GLushort id);
562493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
563493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
564493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_EXT_extensions_string
565493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_EXT_extensions_string 1
566493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifdef WGL_WGLEXT_PROTOTYPES
567493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paulextern const char * WINAPI wglGetExtensionsStringEXT (void);
568493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif /* WGL_WGLEXT_PROTOTYPES */
569493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef const char * (WINAPI * PFNWGLGETEXTENSIONSSTRINGEXTPROC) (void);
570493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
571493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
572493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_EXT_make_current_read
573493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_EXT_make_current_read 1
574493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifdef WGL_WGLEXT_PROTOTYPES
57579ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglMakeContextCurrentEXT (HDC hDrawDC, HDC hReadDC, HGLRC hglrc);
576493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paulextern HDC WINAPI wglGetCurrentReadDCEXT (void);
577493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif /* WGL_WGLEXT_PROTOTYPES */
578493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLMAKECONTEXTCURRENTEXTPROC) (HDC hDrawDC, HDC hReadDC, HGLRC hglrc);
579493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef HDC (WINAPI * PFNWGLGETCURRENTREADDCEXTPROC) (void);
580493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
581493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
582493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_EXT_pbuffer
583493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_EXT_pbuffer 1
584493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifdef WGL_WGLEXT_PROTOTYPES
58579ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern HPBUFFEREXT WINAPI wglCreatePbufferEXT (HDC hDC, int iPixelFormat, int iWidth, int iHeight, const int *piAttribList);
58679ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern HDC WINAPI wglGetPbufferDCEXT (HPBUFFEREXT hPbuffer);
58779ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern int WINAPI wglReleasePbufferDCEXT (HPBUFFEREXT hPbuffer, HDC hDC);
58879ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglDestroyPbufferEXT (HPBUFFEREXT hPbuffer);
58979ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglQueryPbufferEXT (HPBUFFEREXT hPbuffer, int iAttribute, int *piValue);
590493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif /* WGL_WGLEXT_PROTOTYPES */
591493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef HPBUFFEREXT (WINAPI * PFNWGLCREATEPBUFFEREXTPROC) (HDC hDC, int iPixelFormat, int iWidth, int iHeight, const int *piAttribList);
592493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef HDC (WINAPI * PFNWGLGETPBUFFERDCEXTPROC) (HPBUFFEREXT hPbuffer);
593493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef int (WINAPI * PFNWGLRELEASEPBUFFERDCEXTPROC) (HPBUFFEREXT hPbuffer, HDC hDC);
594493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLDESTROYPBUFFEREXTPROC) (HPBUFFEREXT hPbuffer);
595493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLQUERYPBUFFEREXTPROC) (HPBUFFEREXT hPbuffer, int iAttribute, int *piValue);
596493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
597493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
598493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_EXT_pixel_format
599493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_EXT_pixel_format 1
600493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifdef WGL_WGLEXT_PROTOTYPES
60179ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglGetPixelFormatAttribivEXT (HDC hdc, int iPixelFormat, int iLayerPlane, UINT nAttributes, int *piAttributes, int *piValues);
60279ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglGetPixelFormatAttribfvEXT (HDC hdc, int iPixelFormat, int iLayerPlane, UINT nAttributes, int *piAttributes, FLOAT *pfValues);
60379ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglChoosePixelFormatEXT (HDC hdc, const int *piAttribIList, const FLOAT *pfAttribFList, UINT nMaxFormats, int *piFormats, UINT *nNumFormats);
604493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif /* WGL_WGLEXT_PROTOTYPES */
605493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLGETPIXELFORMATATTRIBIVEXTPROC) (HDC hdc, int iPixelFormat, int iLayerPlane, UINT nAttributes, int *piAttributes, int *piValues);
606493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLGETPIXELFORMATATTRIBFVEXTPROC) (HDC hdc, int iPixelFormat, int iLayerPlane, UINT nAttributes, int *piAttributes, FLOAT *pfValues);
607493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLCHOOSEPIXELFORMATEXTPROC) (HDC hdc, const int *piAttribIList, const FLOAT *pfAttribFList, UINT nMaxFormats, int *piFormats, UINT *nNumFormats);
608493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
609493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
610493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_EXT_swap_control
611493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_EXT_swap_control 1
612493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifdef WGL_WGLEXT_PROTOTYPES
61379ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglSwapIntervalEXT (int interval);
614493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paulextern int WINAPI wglGetSwapIntervalEXT (void);
615493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif /* WGL_WGLEXT_PROTOTYPES */
616493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLSWAPINTERVALEXTPROC) (int interval);
617493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef int (WINAPI * PFNWGLGETSWAPINTERVALEXTPROC) (void);
618493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
619493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
620493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_EXT_depth_float
621493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_EXT_depth_float 1
622493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
623493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
624493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_NV_vertex_array_range
625493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_NV_vertex_array_range 1
626493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifdef WGL_WGLEXT_PROTOTYPES
62779ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern void* WINAPI wglAllocateMemoryNV (GLsizei size, GLfloat readfreq, GLfloat writefreq, GLfloat priority);
62879ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern void WINAPI wglFreeMemoryNV (void *pointer);
629493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif /* WGL_WGLEXT_PROTOTYPES */
630493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef void* (WINAPI * PFNWGLALLOCATEMEMORYNVPROC) (GLsizei size, GLfloat readfreq, GLfloat writefreq, GLfloat priority);
631493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef void (WINAPI * PFNWGLFREEMEMORYNVPROC) (void *pointer);
632493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
633493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
634493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_3DFX_multisample
635493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_3DFX_multisample 1
636493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
637493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
638493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_EXT_multisample
639493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_EXT_multisample 1
640493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
641493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
642493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_OML_sync_control
643493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_OML_sync_control 1
644493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifdef WGL_WGLEXT_PROTOTYPES
64579ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglGetSyncValuesOML (HDC hdc, INT64 *ust, INT64 *msc, INT64 *sbc);
64679ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglGetMscRateOML (HDC hdc, INT32 *numerator, INT32 *denominator);
64779ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern INT64 WINAPI wglSwapBuffersMscOML (HDC hdc, INT64 target_msc, INT64 divisor, INT64 remainder);
64879ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern INT64 WINAPI wglSwapLayerBuffersMscOML (HDC hdc, int fuPlanes, INT64 target_msc, INT64 divisor, INT64 remainder);
64979ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglWaitForMscOML (HDC hdc, INT64 target_msc, INT64 divisor, INT64 remainder, INT64 *ust, INT64 *msc, INT64 *sbc);
65079ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglWaitForSbcOML (HDC hdc, INT64 target_sbc, INT64 *ust, INT64 *msc, INT64 *sbc);
651493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif /* WGL_WGLEXT_PROTOTYPES */
652493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLGETSYNCVALUESOMLPROC) (HDC hdc, INT64 *ust, INT64 *msc, INT64 *sbc);
653493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLGETMSCRATEOMLPROC) (HDC hdc, INT32 *numerator, INT32 *denominator);
654493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef INT64 (WINAPI * PFNWGLSWAPBUFFERSMSCOMLPROC) (HDC hdc, INT64 target_msc, INT64 divisor, INT64 remainder);
655493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef INT64 (WINAPI * PFNWGLSWAPLAYERBUFFERSMSCOMLPROC) (HDC hdc, int fuPlanes, INT64 target_msc, INT64 divisor, INT64 remainder);
656493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLWAITFORMSCOMLPROC) (HDC hdc, INT64 target_msc, INT64 divisor, INT64 remainder, INT64 *ust, INT64 *msc, INT64 *sbc);
657493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLWAITFORSBCOMLPROC) (HDC hdc, INT64 target_sbc, INT64 *ust, INT64 *msc, INT64 *sbc);
658493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
659493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
660493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_I3D_digital_video_control
661493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_I3D_digital_video_control 1
662493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifdef WGL_WGLEXT_PROTOTYPES
66379ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglGetDigitalVideoParametersI3D (HDC hDC, int iAttribute, int *piValue);
66479ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglSetDigitalVideoParametersI3D (HDC hDC, int iAttribute, const int *piValue);
665493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif /* WGL_WGLEXT_PROTOTYPES */
666493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLGETDIGITALVIDEOPARAMETERSI3DPROC) (HDC hDC, int iAttribute, int *piValue);
667493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLSETDIGITALVIDEOPARAMETERSI3DPROC) (HDC hDC, int iAttribute, const int *piValue);
668493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
669493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
670493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_I3D_gamma
671493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_I3D_gamma 1
672493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifdef WGL_WGLEXT_PROTOTYPES
67379ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglGetGammaTableParametersI3D (HDC hDC, int iAttribute, int *piValue);
67479ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglSetGammaTableParametersI3D (HDC hDC, int iAttribute, const int *piValue);
67579ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglGetGammaTableI3D (HDC hDC, int iEntries, USHORT *puRed, USHORT *puGreen, USHORT *puBlue);
67679ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglSetGammaTableI3D (HDC hDC, int iEntries, const USHORT *puRed, const USHORT *puGreen, const USHORT *puBlue);
677493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif /* WGL_WGLEXT_PROTOTYPES */
678493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLGETGAMMATABLEPARAMETERSI3DPROC) (HDC hDC, int iAttribute, int *piValue);
679493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLSETGAMMATABLEPARAMETERSI3DPROC) (HDC hDC, int iAttribute, const int *piValue);
680493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLGETGAMMATABLEI3DPROC) (HDC hDC, int iEntries, USHORT *puRed, USHORT *puGreen, USHORT *puBlue);
681493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLSETGAMMATABLEI3DPROC) (HDC hDC, int iEntries, const USHORT *puRed, const USHORT *puGreen, const USHORT *puBlue);
682493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
683493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
684493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_I3D_genlock
685493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_I3D_genlock 1
686493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifdef WGL_WGLEXT_PROTOTYPES
68779ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglEnableGenlockI3D (HDC hDC);
68879ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglDisableGenlockI3D (HDC hDC);
68979ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglIsEnabledGenlockI3D (HDC hDC, BOOL *pFlag);
69079ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglGenlockSourceI3D (HDC hDC, UINT uSource);
69179ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglGetGenlockSourceI3D (HDC hDC, UINT *uSource);
69279ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglGenlockSourceEdgeI3D (HDC hDC, UINT uEdge);
69379ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglGetGenlockSourceEdgeI3D (HDC hDC, UINT *uEdge);
69479ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglGenlockSampleRateI3D (HDC hDC, UINT uRate);
69579ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglGetGenlockSampleRateI3D (HDC hDC, UINT *uRate);
69679ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglGenlockSourceDelayI3D (HDC hDC, UINT uDelay);
69779ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglGetGenlockSourceDelayI3D (HDC hDC, UINT *uDelay);
69879ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglQueryGenlockMaxSourceDelayI3D (HDC hDC, UINT *uMaxLineDelay, UINT *uMaxPixelDelay);
699493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif /* WGL_WGLEXT_PROTOTYPES */
700493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLENABLEGENLOCKI3DPROC) (HDC hDC);
701493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLDISABLEGENLOCKI3DPROC) (HDC hDC);
702493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLISENABLEDGENLOCKI3DPROC) (HDC hDC, BOOL *pFlag);
703493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLGENLOCKSOURCEI3DPROC) (HDC hDC, UINT uSource);
704493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLGETGENLOCKSOURCEI3DPROC) (HDC hDC, UINT *uSource);
705493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLGENLOCKSOURCEEDGEI3DPROC) (HDC hDC, UINT uEdge);
706493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLGETGENLOCKSOURCEEDGEI3DPROC) (HDC hDC, UINT *uEdge);
707493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLGENLOCKSAMPLERATEI3DPROC) (HDC hDC, UINT uRate);
708493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLGETGENLOCKSAMPLERATEI3DPROC) (HDC hDC, UINT *uRate);
709493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLGENLOCKSOURCEDELAYI3DPROC) (HDC hDC, UINT uDelay);
710493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLGETGENLOCKSOURCEDELAYI3DPROC) (HDC hDC, UINT *uDelay);
711493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLQUERYGENLOCKMAXSOURCEDELAYI3DPROC) (HDC hDC, UINT *uMaxLineDelay, UINT *uMaxPixelDelay);
712493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
713493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
714493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_I3D_image_buffer
715493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_I3D_image_buffer 1
716493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifdef WGL_WGLEXT_PROTOTYPES
71779ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern LPVOID WINAPI wglCreateImageBufferI3D (HDC hDC, DWORD dwSize, UINT uFlags);
71879ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglDestroyImageBufferI3D (HDC hDC, LPVOID pAddress);
71979ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglAssociateImageBufferEventsI3D (HDC hDC, const HANDLE *pEvent, const LPVOID *pAddress, const DWORD *pSize, UINT count);
72079ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglReleaseImageBufferEventsI3D (HDC hDC, const LPVOID *pAddress, UINT count);
721493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif /* WGL_WGLEXT_PROTOTYPES */
722493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef LPVOID (WINAPI * PFNWGLCREATEIMAGEBUFFERI3DPROC) (HDC hDC, DWORD dwSize, UINT uFlags);
723493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLDESTROYIMAGEBUFFERI3DPROC) (HDC hDC, LPVOID pAddress);
724493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLASSOCIATEIMAGEBUFFEREVENTSI3DPROC) (HDC hDC, const HANDLE *pEvent, const LPVOID *pAddress, const DWORD *pSize, UINT count);
725493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLRELEASEIMAGEBUFFEREVENTSI3DPROC) (HDC hDC, const LPVOID *pAddress, UINT count);
726493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
727493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
728493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_I3D_swap_frame_lock
729493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_I3D_swap_frame_lock 1
730493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifdef WGL_WGLEXT_PROTOTYPES
731493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paulextern BOOL WINAPI wglEnableFrameLockI3D (void);
732493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paulextern BOOL WINAPI wglDisableFrameLockI3D (void);
73379ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglIsEnabledFrameLockI3D (BOOL *pFlag);
73479ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglQueryFrameLockMasterI3D (BOOL *pFlag);
735493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif /* WGL_WGLEXT_PROTOTYPES */
736493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLENABLEFRAMELOCKI3DPROC) (void);
737493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLDISABLEFRAMELOCKI3DPROC) (void);
738493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLISENABLEDFRAMELOCKI3DPROC) (BOOL *pFlag);
739493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLQUERYFRAMELOCKMASTERI3DPROC) (BOOL *pFlag);
740493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
741493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
742493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_I3D_swap_frame_usage
743493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_I3D_swap_frame_usage 1
744493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifdef WGL_WGLEXT_PROTOTYPES
74579ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglGetFrameUsageI3D (float *pUsage);
746493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paulextern BOOL WINAPI wglBeginFrameTrackingI3D (void);
747493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paulextern BOOL WINAPI wglEndFrameTrackingI3D (void);
74879ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglQueryFrameTrackingI3D (DWORD *pFrameCount, DWORD *pMissedFrames, float *pLastMissedUsage);
749493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif /* WGL_WGLEXT_PROTOTYPES */
750493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLGETFRAMEUSAGEI3DPROC) (float *pUsage);
751493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLBEGINFRAMETRACKINGI3DPROC) (void);
752493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLENDFRAMETRACKINGI3DPROC) (void);
753493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLQUERYFRAMETRACKINGI3DPROC) (DWORD *pFrameCount, DWORD *pMissedFrames, float *pLastMissedUsage);
754493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
755493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
756493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_ATI_pixel_format_float
757493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_ATI_pixel_format_float 1
758493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
759493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
760493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_NV_float_buffer
761493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_NV_float_buffer 1
762493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
763493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
76481a0ef3f2068448a8b544826eaa7d3382b9c769bBrian Paul#ifndef WGL_3DL_stereo_control
76581a0ef3f2068448a8b544826eaa7d3382b9c769bBrian Paul#define WGL_3DL_stereo_control 1
76681a0ef3f2068448a8b544826eaa7d3382b9c769bBrian Paul#ifdef WGL_WGLEXT_PROTOTYPES
76779ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglSetStereoEmitterState3DL (HDC hDC, UINT uState);
76881a0ef3f2068448a8b544826eaa7d3382b9c769bBrian Paul#endif /* WGL_WGLEXT_PROTOTYPES */
7694c034441a8f12e4bf60b8c5f58202d5ae00ff31dMichal Kroltypedef BOOL (WINAPI * PFNWGLSETSTEREOEMITTERSTATE3DLPROC) (HDC hDC, UINT uState);
77081a0ef3f2068448a8b544826eaa7d3382b9c769bBrian Paul#endif
77181a0ef3f2068448a8b544826eaa7d3382b9c769bBrian Paul
772493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_EXT_pixel_format_packed_float
773493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_EXT_pixel_format_packed_float 1
774493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
775493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
776493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_EXT_framebuffer_sRGB
777493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_EXT_framebuffer_sRGB 1
778493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
779493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
780493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_NV_present_video
781493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_NV_present_video 1
782493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifdef WGL_WGLEXT_PROTOTYPES
78379ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern int WINAPI wglEnumerateVideoDevicesNV (HDC hDC, HVIDEOOUTPUTDEVICENV *phDeviceList);
78479ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglBindVideoDeviceNV (HDC hDC, unsigned int uVideoSlot, HVIDEOOUTPUTDEVICENV hVideoDevice, const int *piAttribList);
78579ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglQueryCurrentContextNV (int iAttribute, int *piValue);
786493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif /* WGL_WGLEXT_PROTOTYPES */
787493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef int (WINAPI * PFNWGLENUMERATEVIDEODEVICESNVPROC) (HDC hDC, HVIDEOOUTPUTDEVICENV *phDeviceList);
788493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLBINDVIDEODEVICENVPROC) (HDC hDC, unsigned int uVideoSlot, HVIDEOOUTPUTDEVICENV hVideoDevice, const int *piAttribList);
789493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLQUERYCURRENTCONTEXTNVPROC) (int iAttribute, int *piValue);
790493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
791493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
7925c0dc902e738adb6d2e84b907adafb3006d40296Brian Paul#ifndef WGL_NV_video_output
7935c0dc902e738adb6d2e84b907adafb3006d40296Brian Paul#define WGL_NV_video_output 1
794493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifdef WGL_WGLEXT_PROTOTYPES
79579ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglGetVideoDeviceNV (HDC hDC, int numDevices, HPVIDEODEV *hVideoDevice);
79679ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglReleaseVideoDeviceNV (HPVIDEODEV hVideoDevice);
79779ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglBindVideoImageNV (HPVIDEODEV hVideoDevice, HPBUFFERARB hPbuffer, int iVideoBuffer);
79879ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglReleaseVideoImageNV (HPBUFFERARB hPbuffer, int iVideoBuffer);
79979ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglSendPbufferToVideoNV (HPBUFFERARB hPbuffer, int iBufferType, unsigned long *pulCounterPbuffer, BOOL bBlock);
80079ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglGetVideoInfoNV (HPVIDEODEV hpVideoDevice, unsigned long *pulCounterOutputPbuffer, unsigned long *pulCounterOutputVideo);
801493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif /* WGL_WGLEXT_PROTOTYPES */
802493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLGETVIDEODEVICENVPROC) (HDC hDC, int numDevices, HPVIDEODEV *hVideoDevice);
803493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLRELEASEVIDEODEVICENVPROC) (HPVIDEODEV hVideoDevice);
804493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLBINDVIDEOIMAGENVPROC) (HPVIDEODEV hVideoDevice, HPBUFFERARB hPbuffer, int iVideoBuffer);
805493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLRELEASEVIDEOIMAGENVPROC) (HPBUFFERARB hPbuffer, int iVideoBuffer);
806493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLSENDPBUFFERTOVIDEONVPROC) (HPBUFFERARB hPbuffer, int iBufferType, unsigned long *pulCounterPbuffer, BOOL bBlock);
807493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLGETVIDEOINFONVPROC) (HPVIDEODEV hpVideoDevice, unsigned long *pulCounterOutputPbuffer, unsigned long *pulCounterOutputVideo);
808493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
809493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
810493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_NV_swap_group
811493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_NV_swap_group 1
812493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifdef WGL_WGLEXT_PROTOTYPES
81379ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglJoinSwapGroupNV (HDC hDC, GLuint group);
81479ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglBindSwapBarrierNV (GLuint group, GLuint barrier);
81579ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglQuerySwapGroupNV (HDC hDC, GLuint *group, GLuint *barrier);
81679ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglQueryMaxSwapGroupsNV (HDC hDC, GLuint *maxGroups, GLuint *maxBarriers);
81779ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglQueryFrameCountNV (HDC hDC, GLuint *count);
81879ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglResetFrameCountNV (HDC hDC);
819493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif /* WGL_WGLEXT_PROTOTYPES */
820493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLJOINSWAPGROUPNVPROC) (HDC hDC, GLuint group);
821493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLBINDSWAPBARRIERNVPROC) (GLuint group, GLuint barrier);
822493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLQUERYSWAPGROUPNVPROC) (HDC hDC, GLuint *group, GLuint *barrier);
823493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLQUERYMAXSWAPGROUPSNVPROC) (HDC hDC, GLuint *maxGroups, GLuint *maxBarriers);
824493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLQUERYFRAMECOUNTNVPROC) (HDC hDC, GLuint *count);
825493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLRESETFRAMECOUNTNVPROC) (HDC hDC);
826493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
827493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
828493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_NV_gpu_affinity
829493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_NV_gpu_affinity 1
830493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifdef WGL_WGLEXT_PROTOTYPES
83179ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglEnumGpusNV (UINT iGpuIndex, HGPUNV *phGpu);
83279ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglEnumGpuDevicesNV (HGPUNV hGpu, UINT iDeviceIndex, PGPU_DEVICE lpGpuDevice);
83379ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern HDC WINAPI wglCreateAffinityDCNV (const HGPUNV *phGpuList);
83479ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglEnumGpusFromAffinityDCNV (HDC hAffinityDC, UINT iGpuIndex, HGPUNV *hGpu);
83579ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglDeleteDCNV (HDC hdc);
836493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif /* WGL_WGLEXT_PROTOTYPES */
837493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLENUMGPUSNVPROC) (UINT iGpuIndex, HGPUNV *phGpu);
838493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLENUMGPUDEVICESNVPROC) (HGPUNV hGpu, UINT iDeviceIndex, PGPU_DEVICE lpGpuDevice);
839493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef HDC (WINAPI * PFNWGLCREATEAFFINITYDCNVPROC) (const HGPUNV *phGpuList);
840493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLENUMGPUSFROMAFFINITYDCNVPROC) (HDC hAffinityDC, UINT iGpuIndex, HGPUNV *hGpu);
841493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLDELETEDCNVPROC) (HDC hdc);
842493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
843493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
844493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifndef WGL_AMD_gpu_association
845493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#define WGL_AMD_gpu_association 1
846493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifdef WGL_WGLEXT_PROTOTYPES
84779ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern UINT WINAPI wglGetGPUIDsAMD (UINT maxCount, UINT *ids);
84879ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern INT WINAPI wglGetGPUInfoAMD (UINT id, int property, GLenum dataType, UINT size, void *data);
84979ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern UINT WINAPI wglGetContextGPUIDAMD (HGLRC hglrc);
85079ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern HGLRC WINAPI wglCreateAssociatedContextAMD (UINT id);
85179ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern HGLRC WINAPI wglCreateAssociatedContextAttribsAMD (UINT id, HGLRC hShareContext, const int *attribList);
85279ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglDeleteAssociatedContextAMD (HGLRC hglrc);
85379ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglMakeAssociatedContextCurrentAMD (HGLRC hglrc);
854493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paulextern HGLRC WINAPI wglGetCurrentAssociatedContextAMD (void);
85579ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern 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);
856493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif /* WGL_WGLEXT_PROTOTYPES */
857493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef UINT (WINAPI * PFNWGLGETGPUIDSAMDPROC) (UINT maxCount, UINT *ids);
858493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef INT (WINAPI * PFNWGLGETGPUINFOAMDPROC) (UINT id, int property, GLenum dataType, UINT size, void *data);
859493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef UINT (WINAPI * PFNWGLGETCONTEXTGPUIDAMDPROC) (HGLRC hglrc);
860493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef HGLRC (WINAPI * PFNWGLCREATEASSOCIATEDCONTEXTAMDPROC) (UINT id);
861493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef HGLRC (WINAPI * PFNWGLCREATEASSOCIATEDCONTEXTATTRIBSAMDPROC) (UINT id, HGLRC hShareContext, const int *attribList);
862493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLDELETEASSOCIATEDCONTEXTAMDPROC) (HGLRC hglrc);
863493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef BOOL (WINAPI * PFNWGLMAKEASSOCIATEDCONTEXTCURRENTAMDPROC) (HGLRC hglrc);
864493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef HGLRC (WINAPI * PFNWGLGETCURRENTASSOCIATEDCONTEXTAMDPROC) (void);
865493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paultypedef 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);
866493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
867493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
8685c0dc902e738adb6d2e84b907adafb3006d40296Brian Paul#ifndef WGL_NV_video_capture
8695c0dc902e738adb6d2e84b907adafb3006d40296Brian Paul#define WGL_NV_video_capture 1
8705c0dc902e738adb6d2e84b907adafb3006d40296Brian Paul#ifdef WGL_WGLEXT_PROTOTYPES
87179ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglBindVideoCaptureDeviceNV (UINT uVideoSlot, HVIDEOINPUTDEVICENV hDevice);
87279ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern UINT WINAPI wglEnumerateVideoCaptureDevicesNV (HDC hDc, HVIDEOINPUTDEVICENV *phDeviceList);
87379ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglLockVideoCaptureDeviceNV (HDC hDc, HVIDEOINPUTDEVICENV hDevice);
87479ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglQueryVideoCaptureDeviceNV (HDC hDc, HVIDEOINPUTDEVICENV hDevice, int iAttribute, int *piValue);
87579ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern BOOL WINAPI wglReleaseVideoCaptureDeviceNV (HDC hDc, HVIDEOINPUTDEVICENV hDevice);
8765c0dc902e738adb6d2e84b907adafb3006d40296Brian Paul#endif /* WGL_WGLEXT_PROTOTYPES */
8775c0dc902e738adb6d2e84b907adafb3006d40296Brian Paultypedef BOOL (WINAPI * PFNWGLBINDVIDEOCAPTUREDEVICENVPROC) (UINT uVideoSlot, HVIDEOINPUTDEVICENV hDevice);
8785c0dc902e738adb6d2e84b907adafb3006d40296Brian Paultypedef UINT (WINAPI * PFNWGLENUMERATEVIDEOCAPTUREDEVICESNVPROC) (HDC hDc, HVIDEOINPUTDEVICENV *phDeviceList);
8795c0dc902e738adb6d2e84b907adafb3006d40296Brian Paultypedef BOOL (WINAPI * PFNWGLLOCKVIDEOCAPTUREDEVICENVPROC) (HDC hDc, HVIDEOINPUTDEVICENV hDevice);
8805c0dc902e738adb6d2e84b907adafb3006d40296Brian Paultypedef BOOL (WINAPI * PFNWGLQUERYVIDEOCAPTUREDEVICENVPROC) (HDC hDc, HVIDEOINPUTDEVICENV hDevice, int iAttribute, int *piValue);
8815c0dc902e738adb6d2e84b907adafb3006d40296Brian Paultypedef BOOL (WINAPI * PFNWGLRELEASEVIDEOCAPTUREDEVICENVPROC) (HDC hDc, HVIDEOINPUTDEVICENV hDevice);
8825c0dc902e738adb6d2e84b907adafb3006d40296Brian Paul#endif
8835c0dc902e738adb6d2e84b907adafb3006d40296Brian Paul
8845c0dc902e738adb6d2e84b907adafb3006d40296Brian Paul#ifndef WGL_NV_copy_image
8855c0dc902e738adb6d2e84b907adafb3006d40296Brian Paul#define WGL_NV_copy_image 1
8865c0dc902e738adb6d2e84b907adafb3006d40296Brian Paul#ifdef WGL_WGLEXT_PROTOTYPES
88779ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paulextern 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);
8885c0dc902e738adb6d2e84b907adafb3006d40296Brian Paul#endif /* WGL_WGLEXT_PROTOTYPES */
8895c0dc902e738adb6d2e84b907adafb3006d40296Brian Paultypedef 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);
8905c0dc902e738adb6d2e84b907adafb3006d40296Brian Paul#endif
8915c0dc902e738adb6d2e84b907adafb3006d40296Brian Paul
89279ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paul#ifndef WGL_NV_multisample_coverage
89379ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paul#define WGL_NV_multisample_coverage 1
89479ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paul#endif
89579ab394cd2ca3f88ad854503b95e886a6c5d47d5Brian Paul
896493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
897493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#ifdef __cplusplus
898493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul}
899493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
900493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul
901493b69a0c8887ddf5544f24750410e25c6baef2cBrian Paul#endif
902