1 /*
2 ** The OpenGL Extension Wrangler Library
3 ** Copyright (C) 2008-2015, Nigel Stewart <nigels[]users sourceforge net>
4 ** Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
5 ** Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
6 ** Copyright (C) 2002, Lev Povalahev
7 ** All rights reserved.
8 **
9 ** Redistribution and use in source and binary forms, with or without
10 ** modification, are permitted provided that the following conditions are met:
11 **
12 ** * Redistributions of source code must retain the above copyright notice,
13 **   this list of conditions and the following disclaimer.
14 ** * Redistributions in binary form must reproduce the above copyright notice,
15 **   this list of conditions and the following disclaimer in the documentation
16 **   and/or other materials provided with the distribution.
17 ** * The name of the author may be used to endorse or promote products
18 **   derived from this software without specific prior written permission.
19 **
20 ** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
21 ** AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
22 ** IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
23 ** ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
24 ** LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
25 ** CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
26 ** SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
27 ** INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
28 ** CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
29 ** ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
30 ** THE POSSIBILITY OF SUCH DAMAGE.
31 */
32 
33 /*
34 ** Copyright (c) 2007 The Khronos Group Inc.
35 **
36 ** Permission is hereby granted, free of charge, to any person obtaining a
37 ** copy of this software and/or associated documentation files (the
38 ** "Materials"), to deal in the Materials without restriction, including
39 ** without limitation the rights to use, copy, modify, merge, publish,
40 ** distribute, sublicense, and/or sell copies of the Materials, and to
41 ** permit persons to whom the Materials are furnished to do so, subject to
42 ** the following conditions:
43 **
44 ** The above copyright notice and this permission notice shall be included
45 ** in all copies or substantial portions of the Materials.
46 **
47 ** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
48 ** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
49 ** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
50 ** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
51 ** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
52 ** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
53 ** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
54 */
55 
56 #ifndef __wglew_h__
57 #define __wglew_h__
58 #define __WGLEW_H__
59 
60 #ifdef __wglext_h_
61 #error wglext.h included before wglew.h
62 #endif
63 
64 #define __wglext_h_
65 
66 #if !defined(WINAPI)
67 #  ifndef WIN32_LEAN_AND_MEAN
68 #    define WIN32_LEAN_AND_MEAN 1
69 #  endif
70 #  ifdef NOGDI
71 #    undef NOGDI
72 #  endif
73 #include <windows.h>
74 #  undef WIN32_LEAN_AND_MEAN
75 #endif
76 
77 /*
78  * GLEW_STATIC needs to be set when using the static version.
79  * GLEW_BUILD is set when building the DLL version.
80  */
81 #ifdef GLEW_STATIC
82 #  define GLEWAPI extern
83 #else
84 #  ifdef GLEW_BUILD
85 #    define GLEWAPI extern __declspec(dllexport)
86 #  else
87 #    define GLEWAPI extern __declspec(dllimport)
88 #  endif
89 #endif
90 
91 #ifdef __cplusplus
92 extern "C" {
93 #endif
94 
95 /* -------------------------- WGL_3DFX_multisample ------------------------- */
96 
97 #ifndef WGL_3DFX_multisample
98 #define WGL_3DFX_multisample 1
99 
100 #define WGL_SAMPLE_BUFFERS_3DFX 0x2060
101 #define WGL_SAMPLES_3DFX 0x2061
102 
103 #define WGLEW_3DFX_multisample WGLEW_GET_VAR(__WGLEW_3DFX_multisample)
104 
105 #endif /* WGL_3DFX_multisample */
106 
107 /* ------------------------- WGL_3DL_stereo_control ------------------------ */
108 
109 #ifndef WGL_3DL_stereo_control
110 #define WGL_3DL_stereo_control 1
111 
112 #define WGL_STEREO_EMITTER_ENABLE_3DL 0x2055
113 #define WGL_STEREO_EMITTER_DISABLE_3DL 0x2056
114 #define WGL_STEREO_POLARITY_NORMAL_3DL 0x2057
115 #define WGL_STEREO_POLARITY_INVERT_3DL 0x2058
116 
117 typedef BOOL (WINAPI * PFNWGLSETSTEREOEMITTERSTATE3DLPROC) (HDC hDC, UINT uState);
118 
119 #define wglSetStereoEmitterState3DL WGLEW_GET_FUN(__wglewSetStereoEmitterState3DL)
120 
121 #define WGLEW_3DL_stereo_control WGLEW_GET_VAR(__WGLEW_3DL_stereo_control)
122 
123 #endif /* WGL_3DL_stereo_control */
124 
125 /* ------------------------ WGL_AMD_gpu_association ------------------------ */
126 
127 #ifndef WGL_AMD_gpu_association
128 #define WGL_AMD_gpu_association 1
129 
130 #define WGL_GPU_VENDOR_AMD 0x1F00
131 #define WGL_GPU_RENDERER_STRING_AMD 0x1F01
132 #define WGL_GPU_OPENGL_VERSION_STRING_AMD 0x1F02
133 #define WGL_GPU_FASTEST_TARGET_GPUS_AMD 0x21A2
134 #define WGL_GPU_RAM_AMD 0x21A3
135 #define WGL_GPU_CLOCK_AMD 0x21A4
136 #define WGL_GPU_NUM_PIPES_AMD 0x21A5
137 #define WGL_GPU_NUM_SIMD_AMD 0x21A6
138 #define WGL_GPU_NUM_RB_AMD 0x21A7
139 #define WGL_GPU_NUM_SPI_AMD 0x21A8
140 
141 typedef 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);
142 typedef HGLRC (WINAPI * PFNWGLCREATEASSOCIATEDCONTEXTAMDPROC) (UINT id);
143 typedef HGLRC (WINAPI * PFNWGLCREATEASSOCIATEDCONTEXTATTRIBSAMDPROC) (UINT id, HGLRC hShareContext, const int* attribList);
144 typedef BOOL (WINAPI * PFNWGLDELETEASSOCIATEDCONTEXTAMDPROC) (HGLRC hglrc);
145 typedef UINT (WINAPI * PFNWGLGETCONTEXTGPUIDAMDPROC) (HGLRC hglrc);
146 typedef HGLRC (WINAPI * PFNWGLGETCURRENTASSOCIATEDCONTEXTAMDPROC) (void);
147 typedef UINT (WINAPI * PFNWGLGETGPUIDSAMDPROC) (UINT maxCount, UINT* ids);
148 typedef INT (WINAPI * PFNWGLGETGPUINFOAMDPROC) (UINT id, INT property, GLenum dataType, UINT size, void* data);
149 typedef BOOL (WINAPI * PFNWGLMAKEASSOCIATEDCONTEXTCURRENTAMDPROC) (HGLRC hglrc);
150 
151 #define wglBlitContextFramebufferAMD WGLEW_GET_FUN(__wglewBlitContextFramebufferAMD)
152 #define wglCreateAssociatedContextAMD WGLEW_GET_FUN(__wglewCreateAssociatedContextAMD)
153 #define wglCreateAssociatedContextAttribsAMD WGLEW_GET_FUN(__wglewCreateAssociatedContextAttribsAMD)
154 #define wglDeleteAssociatedContextAMD WGLEW_GET_FUN(__wglewDeleteAssociatedContextAMD)
155 #define wglGetContextGPUIDAMD WGLEW_GET_FUN(__wglewGetContextGPUIDAMD)
156 #define wglGetCurrentAssociatedContextAMD WGLEW_GET_FUN(__wglewGetCurrentAssociatedContextAMD)
157 #define wglGetGPUIDsAMD WGLEW_GET_FUN(__wglewGetGPUIDsAMD)
158 #define wglGetGPUInfoAMD WGLEW_GET_FUN(__wglewGetGPUInfoAMD)
159 #define wglMakeAssociatedContextCurrentAMD WGLEW_GET_FUN(__wglewMakeAssociatedContextCurrentAMD)
160 
161 #define WGLEW_AMD_gpu_association WGLEW_GET_VAR(__WGLEW_AMD_gpu_association)
162 
163 #endif /* WGL_AMD_gpu_association */
164 
165 /* ------------------------- WGL_ARB_buffer_region ------------------------- */
166 
167 #ifndef WGL_ARB_buffer_region
168 #define WGL_ARB_buffer_region 1
169 
170 #define WGL_FRONT_COLOR_BUFFER_BIT_ARB 0x00000001
171 #define WGL_BACK_COLOR_BUFFER_BIT_ARB 0x00000002
172 #define WGL_DEPTH_BUFFER_BIT_ARB 0x00000004
173 #define WGL_STENCIL_BUFFER_BIT_ARB 0x00000008
174 
175 typedef HANDLE (WINAPI * PFNWGLCREATEBUFFERREGIONARBPROC) (HDC hDC, int iLayerPlane, UINT uType);
176 typedef VOID (WINAPI * PFNWGLDELETEBUFFERREGIONARBPROC) (HANDLE hRegion);
177 typedef BOOL (WINAPI * PFNWGLRESTOREBUFFERREGIONARBPROC) (HANDLE hRegion, int x, int y, int width, int height, int xSrc, int ySrc);
178 typedef BOOL (WINAPI * PFNWGLSAVEBUFFERREGIONARBPROC) (HANDLE hRegion, int x, int y, int width, int height);
179 
180 #define wglCreateBufferRegionARB WGLEW_GET_FUN(__wglewCreateBufferRegionARB)
181 #define wglDeleteBufferRegionARB WGLEW_GET_FUN(__wglewDeleteBufferRegionARB)
182 #define wglRestoreBufferRegionARB WGLEW_GET_FUN(__wglewRestoreBufferRegionARB)
183 #define wglSaveBufferRegionARB WGLEW_GET_FUN(__wglewSaveBufferRegionARB)
184 
185 #define WGLEW_ARB_buffer_region WGLEW_GET_VAR(__WGLEW_ARB_buffer_region)
186 
187 #endif /* WGL_ARB_buffer_region */
188 
189 /* --------------------- WGL_ARB_context_flush_control --------------------- */
190 
191 #ifndef WGL_ARB_context_flush_control
192 #define WGL_ARB_context_flush_control 1
193 
194 #define WGL_CONTEXT_RELEASE_BEHAVIOR_NONE_ARB 0x0000
195 #define WGL_CONTEXT_RELEASE_BEHAVIOR_ARB 0x2097
196 #define WGL_CONTEXT_RELEASE_BEHAVIOR_FLUSH_ARB 0x2098
197 
198 #define WGLEW_ARB_context_flush_control WGLEW_GET_VAR(__WGLEW_ARB_context_flush_control)
199 
200 #endif /* WGL_ARB_context_flush_control */
201 
202 /* ------------------------- WGL_ARB_create_context ------------------------ */
203 
204 #ifndef WGL_ARB_create_context
205 #define WGL_ARB_create_context 1
206 
207 #define WGL_CONTEXT_DEBUG_BIT_ARB 0x0001
208 #define WGL_CONTEXT_FORWARD_COMPATIBLE_BIT_ARB 0x0002
209 #define WGL_CONTEXT_MAJOR_VERSION_ARB 0x2091
210 #define WGL_CONTEXT_MINOR_VERSION_ARB 0x2092
211 #define WGL_CONTEXT_LAYER_PLANE_ARB 0x2093
212 #define WGL_CONTEXT_FLAGS_ARB 0x2094
213 #define ERROR_INVALID_VERSION_ARB 0x2095
214 #define ERROR_INVALID_PROFILE_ARB 0x2096
215 
216 typedef HGLRC (WINAPI * PFNWGLCREATECONTEXTATTRIBSARBPROC) (HDC hDC, HGLRC hShareContext, const int* attribList);
217 
218 #define wglCreateContextAttribsARB WGLEW_GET_FUN(__wglewCreateContextAttribsARB)
219 
220 #define WGLEW_ARB_create_context WGLEW_GET_VAR(__WGLEW_ARB_create_context)
221 
222 #endif /* WGL_ARB_create_context */
223 
224 /* --------------------- WGL_ARB_create_context_profile -------------------- */
225 
226 #ifndef WGL_ARB_create_context_profile
227 #define WGL_ARB_create_context_profile 1
228 
229 #define WGL_CONTEXT_CORE_PROFILE_BIT_ARB 0x00000001
230 #define WGL_CONTEXT_COMPATIBILITY_PROFILE_BIT_ARB 0x00000002
231 #define WGL_CONTEXT_PROFILE_MASK_ARB 0x9126
232 
233 #define WGLEW_ARB_create_context_profile WGLEW_GET_VAR(__WGLEW_ARB_create_context_profile)
234 
235 #endif /* WGL_ARB_create_context_profile */
236 
237 /* ------------------- WGL_ARB_create_context_robustness ------------------- */
238 
239 #ifndef WGL_ARB_create_context_robustness
240 #define WGL_ARB_create_context_robustness 1
241 
242 #define WGL_CONTEXT_ROBUST_ACCESS_BIT_ARB 0x00000004
243 #define WGL_LOSE_CONTEXT_ON_RESET_ARB 0x8252
244 #define WGL_CONTEXT_RESET_NOTIFICATION_STRATEGY_ARB 0x8256
245 #define WGL_NO_RESET_NOTIFICATION_ARB 0x8261
246 
247 #define WGLEW_ARB_create_context_robustness WGLEW_GET_VAR(__WGLEW_ARB_create_context_robustness)
248 
249 #endif /* WGL_ARB_create_context_robustness */
250 
251 /* ----------------------- WGL_ARB_extensions_string ----------------------- */
252 
253 #ifndef WGL_ARB_extensions_string
254 #define WGL_ARB_extensions_string 1
255 
256 typedef const char* (WINAPI * PFNWGLGETEXTENSIONSSTRINGARBPROC) (HDC hdc);
257 
258 #define wglGetExtensionsStringARB WGLEW_GET_FUN(__wglewGetExtensionsStringARB)
259 
260 #define WGLEW_ARB_extensions_string WGLEW_GET_VAR(__WGLEW_ARB_extensions_string)
261 
262 #endif /* WGL_ARB_extensions_string */
263 
264 /* ------------------------ WGL_ARB_framebuffer_sRGB ----------------------- */
265 
266 #ifndef WGL_ARB_framebuffer_sRGB
267 #define WGL_ARB_framebuffer_sRGB 1
268 
269 #define WGL_FRAMEBUFFER_SRGB_CAPABLE_ARB 0x20A9
270 
271 #define WGLEW_ARB_framebuffer_sRGB WGLEW_GET_VAR(__WGLEW_ARB_framebuffer_sRGB)
272 
273 #endif /* WGL_ARB_framebuffer_sRGB */
274 
275 /* ----------------------- WGL_ARB_make_current_read ----------------------- */
276 
277 #ifndef WGL_ARB_make_current_read
278 #define WGL_ARB_make_current_read 1
279 
280 #define ERROR_INVALID_PIXEL_TYPE_ARB 0x2043
281 #define ERROR_INCOMPATIBLE_DEVICE_CONTEXTS_ARB 0x2054
282 
283 typedef HDC (WINAPI * PFNWGLGETCURRENTREADDCARBPROC) (VOID);
284 typedef BOOL (WINAPI * PFNWGLMAKECONTEXTCURRENTARBPROC) (HDC hDrawDC, HDC hReadDC, HGLRC hglrc);
285 
286 #define wglGetCurrentReadDCARB WGLEW_GET_FUN(__wglewGetCurrentReadDCARB)
287 #define wglMakeContextCurrentARB WGLEW_GET_FUN(__wglewMakeContextCurrentARB)
288 
289 #define WGLEW_ARB_make_current_read WGLEW_GET_VAR(__WGLEW_ARB_make_current_read)
290 
291 #endif /* WGL_ARB_make_current_read */
292 
293 /* -------------------------- WGL_ARB_multisample -------------------------- */
294 
295 #ifndef WGL_ARB_multisample
296 #define WGL_ARB_multisample 1
297 
298 #define WGL_SAMPLE_BUFFERS_ARB 0x2041
299 #define WGL_SAMPLES_ARB 0x2042
300 
301 #define WGLEW_ARB_multisample WGLEW_GET_VAR(__WGLEW_ARB_multisample)
302 
303 #endif /* WGL_ARB_multisample */
304 
305 /* ---------------------------- WGL_ARB_pbuffer ---------------------------- */
306 
307 #ifndef WGL_ARB_pbuffer
308 #define WGL_ARB_pbuffer 1
309 
310 #define WGL_DRAW_TO_PBUFFER_ARB 0x202D
311 #define WGL_MAX_PBUFFER_PIXELS_ARB 0x202E
312 #define WGL_MAX_PBUFFER_WIDTH_ARB 0x202F
313 #define WGL_MAX_PBUFFER_HEIGHT_ARB 0x2030
314 #define WGL_PBUFFER_LARGEST_ARB 0x2033
315 #define WGL_PBUFFER_WIDTH_ARB 0x2034
316 #define WGL_PBUFFER_HEIGHT_ARB 0x2035
317 #define WGL_PBUFFER_LOST_ARB 0x2036
318 
319 DECLARE_HANDLE(HPBUFFERARB);
320 
321 typedef HPBUFFERARB (WINAPI * PFNWGLCREATEPBUFFERARBPROC) (HDC hDC, int iPixelFormat, int iWidth, int iHeight, const int* piAttribList);
322 typedef BOOL (WINAPI * PFNWGLDESTROYPBUFFERARBPROC) (HPBUFFERARB hPbuffer);
323 typedef HDC (WINAPI * PFNWGLGETPBUFFERDCARBPROC) (HPBUFFERARB hPbuffer);
324 typedef BOOL (WINAPI * PFNWGLQUERYPBUFFERARBPROC) (HPBUFFERARB hPbuffer, int iAttribute, int* piValue);
325 typedef int (WINAPI * PFNWGLRELEASEPBUFFERDCARBPROC) (HPBUFFERARB hPbuffer, HDC hDC);
326 
327 #define wglCreatePbufferARB WGLEW_GET_FUN(__wglewCreatePbufferARB)
328 #define wglDestroyPbufferARB WGLEW_GET_FUN(__wglewDestroyPbufferARB)
329 #define wglGetPbufferDCARB WGLEW_GET_FUN(__wglewGetPbufferDCARB)
330 #define wglQueryPbufferARB WGLEW_GET_FUN(__wglewQueryPbufferARB)
331 #define wglReleasePbufferDCARB WGLEW_GET_FUN(__wglewReleasePbufferDCARB)
332 
333 #define WGLEW_ARB_pbuffer WGLEW_GET_VAR(__WGLEW_ARB_pbuffer)
334 
335 #endif /* WGL_ARB_pbuffer */
336 
337 /* -------------------------- WGL_ARB_pixel_format ------------------------- */
338 
339 #ifndef WGL_ARB_pixel_format
340 #define WGL_ARB_pixel_format 1
341 
342 #define WGL_NUMBER_PIXEL_FORMATS_ARB 0x2000
343 #define WGL_DRAW_TO_WINDOW_ARB 0x2001
344 #define WGL_DRAW_TO_BITMAP_ARB 0x2002
345 #define WGL_ACCELERATION_ARB 0x2003
346 #define WGL_NEED_PALETTE_ARB 0x2004
347 #define WGL_NEED_SYSTEM_PALETTE_ARB 0x2005
348 #define WGL_SWAP_LAYER_BUFFERS_ARB 0x2006
349 #define WGL_SWAP_METHOD_ARB 0x2007
350 #define WGL_NUMBER_OVERLAYS_ARB 0x2008
351 #define WGL_NUMBER_UNDERLAYS_ARB 0x2009
352 #define WGL_TRANSPARENT_ARB 0x200A
353 #define WGL_SHARE_DEPTH_ARB 0x200C
354 #define WGL_SHARE_STENCIL_ARB 0x200D
355 #define WGL_SHARE_ACCUM_ARB 0x200E
356 #define WGL_SUPPORT_GDI_ARB 0x200F
357 #define WGL_SUPPORT_OPENGL_ARB 0x2010
358 #define WGL_DOUBLE_BUFFER_ARB 0x2011
359 #define WGL_STEREO_ARB 0x2012
360 #define WGL_PIXEL_TYPE_ARB 0x2013
361 #define WGL_COLOR_BITS_ARB 0x2014
362 #define WGL_RED_BITS_ARB 0x2015
363 #define WGL_RED_SHIFT_ARB 0x2016
364 #define WGL_GREEN_BITS_ARB 0x2017
365 #define WGL_GREEN_SHIFT_ARB 0x2018
366 #define WGL_BLUE_BITS_ARB 0x2019
367 #define WGL_BLUE_SHIFT_ARB 0x201A
368 #define WGL_ALPHA_BITS_ARB 0x201B
369 #define WGL_ALPHA_SHIFT_ARB 0x201C
370 #define WGL_ACCUM_BITS_ARB 0x201D
371 #define WGL_ACCUM_RED_BITS_ARB 0x201E
372 #define WGL_ACCUM_GREEN_BITS_ARB 0x201F
373 #define WGL_ACCUM_BLUE_BITS_ARB 0x2020
374 #define WGL_ACCUM_ALPHA_BITS_ARB 0x2021
375 #define WGL_DEPTH_BITS_ARB 0x2022
376 #define WGL_STENCIL_BITS_ARB 0x2023
377 #define WGL_AUX_BUFFERS_ARB 0x2024
378 #define WGL_NO_ACCELERATION_ARB 0x2025
379 #define WGL_GENERIC_ACCELERATION_ARB 0x2026
380 #define WGL_FULL_ACCELERATION_ARB 0x2027
381 #define WGL_SWAP_EXCHANGE_ARB 0x2028
382 #define WGL_SWAP_COPY_ARB 0x2029
383 #define WGL_SWAP_UNDEFINED_ARB 0x202A
384 #define WGL_TYPE_RGBA_ARB 0x202B
385 #define WGL_TYPE_COLORINDEX_ARB 0x202C
386 #define WGL_TRANSPARENT_RED_VALUE_ARB 0x2037
387 #define WGL_TRANSPARENT_GREEN_VALUE_ARB 0x2038
388 #define WGL_TRANSPARENT_BLUE_VALUE_ARB 0x2039
389 #define WGL_TRANSPARENT_ALPHA_VALUE_ARB 0x203A
390 #define WGL_TRANSPARENT_INDEX_VALUE_ARB 0x203B
391 
392 typedef BOOL (WINAPI * PFNWGLCHOOSEPIXELFORMATARBPROC) (HDC hdc, const int* piAttribIList, const FLOAT *pfAttribFList, UINT nMaxFormats, int *piFormats, UINT *nNumFormats);
393 typedef BOOL (WINAPI * PFNWGLGETPIXELFORMATATTRIBFVARBPROC) (HDC hdc, int iPixelFormat, int iLayerPlane, UINT nAttributes, const int* piAttributes, FLOAT *pfValues);
394 typedef BOOL (WINAPI * PFNWGLGETPIXELFORMATATTRIBIVARBPROC) (HDC hdc, int iPixelFormat, int iLayerPlane, UINT nAttributes, const int* piAttributes, int *piValues);
395 
396 #define wglChoosePixelFormatARB WGLEW_GET_FUN(__wglewChoosePixelFormatARB)
397 #define wglGetPixelFormatAttribfvARB WGLEW_GET_FUN(__wglewGetPixelFormatAttribfvARB)
398 #define wglGetPixelFormatAttribivARB WGLEW_GET_FUN(__wglewGetPixelFormatAttribivARB)
399 
400 #define WGLEW_ARB_pixel_format WGLEW_GET_VAR(__WGLEW_ARB_pixel_format)
401 
402 #endif /* WGL_ARB_pixel_format */
403 
404 /* ----------------------- WGL_ARB_pixel_format_float ---------------------- */
405 
406 #ifndef WGL_ARB_pixel_format_float
407 #define WGL_ARB_pixel_format_float 1
408 
409 #define WGL_TYPE_RGBA_FLOAT_ARB 0x21A0
410 
411 #define WGLEW_ARB_pixel_format_float WGLEW_GET_VAR(__WGLEW_ARB_pixel_format_float)
412 
413 #endif /* WGL_ARB_pixel_format_float */
414 
415 /* ------------------------- WGL_ARB_render_texture ------------------------ */
416 
417 #ifndef WGL_ARB_render_texture
418 #define WGL_ARB_render_texture 1
419 
420 #define WGL_BIND_TO_TEXTURE_RGB_ARB 0x2070
421 #define WGL_BIND_TO_TEXTURE_RGBA_ARB 0x2071
422 #define WGL_TEXTURE_FORMAT_ARB 0x2072
423 #define WGL_TEXTURE_TARGET_ARB 0x2073
424 #define WGL_MIPMAP_TEXTURE_ARB 0x2074
425 #define WGL_TEXTURE_RGB_ARB 0x2075
426 #define WGL_TEXTURE_RGBA_ARB 0x2076
427 #define WGL_NO_TEXTURE_ARB 0x2077
428 #define WGL_TEXTURE_CUBE_MAP_ARB 0x2078
429 #define WGL_TEXTURE_1D_ARB 0x2079
430 #define WGL_TEXTURE_2D_ARB 0x207A
431 #define WGL_MIPMAP_LEVEL_ARB 0x207B
432 #define WGL_CUBE_MAP_FACE_ARB 0x207C
433 #define WGL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB 0x207D
434 #define WGL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB 0x207E
435 #define WGL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB 0x207F
436 #define WGL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB 0x2080
437 #define WGL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB 0x2081
438 #define WGL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB 0x2082
439 #define WGL_FRONT_LEFT_ARB 0x2083
440 #define WGL_FRONT_RIGHT_ARB 0x2084
441 #define WGL_BACK_LEFT_ARB 0x2085
442 #define WGL_BACK_RIGHT_ARB 0x2086
443 #define WGL_AUX0_ARB 0x2087
444 #define WGL_AUX1_ARB 0x2088
445 #define WGL_AUX2_ARB 0x2089
446 #define WGL_AUX3_ARB 0x208A
447 #define WGL_AUX4_ARB 0x208B
448 #define WGL_AUX5_ARB 0x208C
449 #define WGL_AUX6_ARB 0x208D
450 #define WGL_AUX7_ARB 0x208E
451 #define WGL_AUX8_ARB 0x208F
452 #define WGL_AUX9_ARB 0x2090
453 
454 typedef BOOL (WINAPI * PFNWGLBINDTEXIMAGEARBPROC) (HPBUFFERARB hPbuffer, int iBuffer);
455 typedef BOOL (WINAPI * PFNWGLRELEASETEXIMAGEARBPROC) (HPBUFFERARB hPbuffer, int iBuffer);
456 typedef BOOL (WINAPI * PFNWGLSETPBUFFERATTRIBARBPROC) (HPBUFFERARB hPbuffer, const int* piAttribList);
457 
458 #define wglBindTexImageARB WGLEW_GET_FUN(__wglewBindTexImageARB)
459 #define wglReleaseTexImageARB WGLEW_GET_FUN(__wglewReleaseTexImageARB)
460 #define wglSetPbufferAttribARB WGLEW_GET_FUN(__wglewSetPbufferAttribARB)
461 
462 #define WGLEW_ARB_render_texture WGLEW_GET_VAR(__WGLEW_ARB_render_texture)
463 
464 #endif /* WGL_ARB_render_texture */
465 
466 /* ---------------- WGL_ARB_robustness_application_isolation --------------- */
467 
468 #ifndef WGL_ARB_robustness_application_isolation
469 #define WGL_ARB_robustness_application_isolation 1
470 
471 #define WGL_CONTEXT_RESET_ISOLATION_BIT_ARB 0x00000008
472 
473 #define WGLEW_ARB_robustness_application_isolation WGLEW_GET_VAR(__WGLEW_ARB_robustness_application_isolation)
474 
475 #endif /* WGL_ARB_robustness_application_isolation */
476 
477 /* ---------------- WGL_ARB_robustness_share_group_isolation --------------- */
478 
479 #ifndef WGL_ARB_robustness_share_group_isolation
480 #define WGL_ARB_robustness_share_group_isolation 1
481 
482 #define WGL_CONTEXT_RESET_ISOLATION_BIT_ARB 0x00000008
483 
484 #define WGLEW_ARB_robustness_share_group_isolation WGLEW_GET_VAR(__WGLEW_ARB_robustness_share_group_isolation)
485 
486 #endif /* WGL_ARB_robustness_share_group_isolation */
487 
488 /* ----------------------- WGL_ATI_pixel_format_float ---------------------- */
489 
490 #ifndef WGL_ATI_pixel_format_float
491 #define WGL_ATI_pixel_format_float 1
492 
493 #define WGL_TYPE_RGBA_FLOAT_ATI 0x21A0
494 #define GL_RGBA_FLOAT_MODE_ATI 0x8820
495 #define GL_COLOR_CLEAR_UNCLAMPED_VALUE_ATI 0x8835
496 
497 #define WGLEW_ATI_pixel_format_float WGLEW_GET_VAR(__WGLEW_ATI_pixel_format_float)
498 
499 #endif /* WGL_ATI_pixel_format_float */
500 
501 /* -------------------- WGL_ATI_render_texture_rectangle ------------------- */
502 
503 #ifndef WGL_ATI_render_texture_rectangle
504 #define WGL_ATI_render_texture_rectangle 1
505 
506 #define WGL_TEXTURE_RECTANGLE_ATI 0x21A5
507 
508 #define WGLEW_ATI_render_texture_rectangle WGLEW_GET_VAR(__WGLEW_ATI_render_texture_rectangle)
509 
510 #endif /* WGL_ATI_render_texture_rectangle */
511 
512 /* ------------------- WGL_EXT_create_context_es2_profile ------------------ */
513 
514 #ifndef WGL_EXT_create_context_es2_profile
515 #define WGL_EXT_create_context_es2_profile 1
516 
517 #define WGL_CONTEXT_ES2_PROFILE_BIT_EXT 0x00000004
518 
519 #define WGLEW_EXT_create_context_es2_profile WGLEW_GET_VAR(__WGLEW_EXT_create_context_es2_profile)
520 
521 #endif /* WGL_EXT_create_context_es2_profile */
522 
523 /* ------------------- WGL_EXT_create_context_es_profile ------------------- */
524 
525 #ifndef WGL_EXT_create_context_es_profile
526 #define WGL_EXT_create_context_es_profile 1
527 
528 #define WGL_CONTEXT_ES_PROFILE_BIT_EXT 0x00000004
529 
530 #define WGLEW_EXT_create_context_es_profile WGLEW_GET_VAR(__WGLEW_EXT_create_context_es_profile)
531 
532 #endif /* WGL_EXT_create_context_es_profile */
533 
534 /* -------------------------- WGL_EXT_depth_float -------------------------- */
535 
536 #ifndef WGL_EXT_depth_float
537 #define WGL_EXT_depth_float 1
538 
539 #define WGL_DEPTH_FLOAT_EXT 0x2040
540 
541 #define WGLEW_EXT_depth_float WGLEW_GET_VAR(__WGLEW_EXT_depth_float)
542 
543 #endif /* WGL_EXT_depth_float */
544 
545 /* ---------------------- WGL_EXT_display_color_table ---------------------- */
546 
547 #ifndef WGL_EXT_display_color_table
548 #define WGL_EXT_display_color_table 1
549 
550 typedef GLboolean (WINAPI * PFNWGLBINDDISPLAYCOLORTABLEEXTPROC) (GLushort id);
551 typedef GLboolean (WINAPI * PFNWGLCREATEDISPLAYCOLORTABLEEXTPROC) (GLushort id);
552 typedef void (WINAPI * PFNWGLDESTROYDISPLAYCOLORTABLEEXTPROC) (GLushort id);
553 typedef GLboolean (WINAPI * PFNWGLLOADDISPLAYCOLORTABLEEXTPROC) (GLushort* table, GLuint length);
554 
555 #define wglBindDisplayColorTableEXT WGLEW_GET_FUN(__wglewBindDisplayColorTableEXT)
556 #define wglCreateDisplayColorTableEXT WGLEW_GET_FUN(__wglewCreateDisplayColorTableEXT)
557 #define wglDestroyDisplayColorTableEXT WGLEW_GET_FUN(__wglewDestroyDisplayColorTableEXT)
558 #define wglLoadDisplayColorTableEXT WGLEW_GET_FUN(__wglewLoadDisplayColorTableEXT)
559 
560 #define WGLEW_EXT_display_color_table WGLEW_GET_VAR(__WGLEW_EXT_display_color_table)
561 
562 #endif /* WGL_EXT_display_color_table */
563 
564 /* ----------------------- WGL_EXT_extensions_string ----------------------- */
565 
566 #ifndef WGL_EXT_extensions_string
567 #define WGL_EXT_extensions_string 1
568 
569 typedef const char* (WINAPI * PFNWGLGETEXTENSIONSSTRINGEXTPROC) (void);
570 
571 #define wglGetExtensionsStringEXT WGLEW_GET_FUN(__wglewGetExtensionsStringEXT)
572 
573 #define WGLEW_EXT_extensions_string WGLEW_GET_VAR(__WGLEW_EXT_extensions_string)
574 
575 #endif /* WGL_EXT_extensions_string */
576 
577 /* ------------------------ WGL_EXT_framebuffer_sRGB ----------------------- */
578 
579 #ifndef WGL_EXT_framebuffer_sRGB
580 #define WGL_EXT_framebuffer_sRGB 1
581 
582 #define WGL_FRAMEBUFFER_SRGB_CAPABLE_EXT 0x20A9
583 
584 #define WGLEW_EXT_framebuffer_sRGB WGLEW_GET_VAR(__WGLEW_EXT_framebuffer_sRGB)
585 
586 #endif /* WGL_EXT_framebuffer_sRGB */
587 
588 /* ----------------------- WGL_EXT_make_current_read ----------------------- */
589 
590 #ifndef WGL_EXT_make_current_read
591 #define WGL_EXT_make_current_read 1
592 
593 #define ERROR_INVALID_PIXEL_TYPE_EXT 0x2043
594 
595 typedef HDC (WINAPI * PFNWGLGETCURRENTREADDCEXTPROC) (VOID);
596 typedef BOOL (WINAPI * PFNWGLMAKECONTEXTCURRENTEXTPROC) (HDC hDrawDC, HDC hReadDC, HGLRC hglrc);
597 
598 #define wglGetCurrentReadDCEXT WGLEW_GET_FUN(__wglewGetCurrentReadDCEXT)
599 #define wglMakeContextCurrentEXT WGLEW_GET_FUN(__wglewMakeContextCurrentEXT)
600 
601 #define WGLEW_EXT_make_current_read WGLEW_GET_VAR(__WGLEW_EXT_make_current_read)
602 
603 #endif /* WGL_EXT_make_current_read */
604 
605 /* -------------------------- WGL_EXT_multisample -------------------------- */
606 
607 #ifndef WGL_EXT_multisample
608 #define WGL_EXT_multisample 1
609 
610 #define WGL_SAMPLE_BUFFERS_EXT 0x2041
611 #define WGL_SAMPLES_EXT 0x2042
612 
613 #define WGLEW_EXT_multisample WGLEW_GET_VAR(__WGLEW_EXT_multisample)
614 
615 #endif /* WGL_EXT_multisample */
616 
617 /* ---------------------------- WGL_EXT_pbuffer ---------------------------- */
618 
619 #ifndef WGL_EXT_pbuffer
620 #define WGL_EXT_pbuffer 1
621 
622 #define WGL_DRAW_TO_PBUFFER_EXT 0x202D
623 #define WGL_MAX_PBUFFER_PIXELS_EXT 0x202E
624 #define WGL_MAX_PBUFFER_WIDTH_EXT 0x202F
625 #define WGL_MAX_PBUFFER_HEIGHT_EXT 0x2030
626 #define WGL_OPTIMAL_PBUFFER_WIDTH_EXT 0x2031
627 #define WGL_OPTIMAL_PBUFFER_HEIGHT_EXT 0x2032
628 #define WGL_PBUFFER_LARGEST_EXT 0x2033
629 #define WGL_PBUFFER_WIDTH_EXT 0x2034
630 #define WGL_PBUFFER_HEIGHT_EXT 0x2035
631 
632 DECLARE_HANDLE(HPBUFFEREXT);
633 
634 typedef HPBUFFEREXT (WINAPI * PFNWGLCREATEPBUFFEREXTPROC) (HDC hDC, int iPixelFormat, int iWidth, int iHeight, const int* piAttribList);
635 typedef BOOL (WINAPI * PFNWGLDESTROYPBUFFEREXTPROC) (HPBUFFEREXT hPbuffer);
636 typedef HDC (WINAPI * PFNWGLGETPBUFFERDCEXTPROC) (HPBUFFEREXT hPbuffer);
637 typedef BOOL (WINAPI * PFNWGLQUERYPBUFFEREXTPROC) (HPBUFFEREXT hPbuffer, int iAttribute, int* piValue);
638 typedef int (WINAPI * PFNWGLRELEASEPBUFFERDCEXTPROC) (HPBUFFEREXT hPbuffer, HDC hDC);
639 
640 #define wglCreatePbufferEXT WGLEW_GET_FUN(__wglewCreatePbufferEXT)
641 #define wglDestroyPbufferEXT WGLEW_GET_FUN(__wglewDestroyPbufferEXT)
642 #define wglGetPbufferDCEXT WGLEW_GET_FUN(__wglewGetPbufferDCEXT)
643 #define wglQueryPbufferEXT WGLEW_GET_FUN(__wglewQueryPbufferEXT)
644 #define wglReleasePbufferDCEXT WGLEW_GET_FUN(__wglewReleasePbufferDCEXT)
645 
646 #define WGLEW_EXT_pbuffer WGLEW_GET_VAR(__WGLEW_EXT_pbuffer)
647 
648 #endif /* WGL_EXT_pbuffer */
649 
650 /* -------------------------- WGL_EXT_pixel_format ------------------------- */
651 
652 #ifndef WGL_EXT_pixel_format
653 #define WGL_EXT_pixel_format 1
654 
655 #define WGL_NUMBER_PIXEL_FORMATS_EXT 0x2000
656 #define WGL_DRAW_TO_WINDOW_EXT 0x2001
657 #define WGL_DRAW_TO_BITMAP_EXT 0x2002
658 #define WGL_ACCELERATION_EXT 0x2003
659 #define WGL_NEED_PALETTE_EXT 0x2004
660 #define WGL_NEED_SYSTEM_PALETTE_EXT 0x2005
661 #define WGL_SWAP_LAYER_BUFFERS_EXT 0x2006
662 #define WGL_SWAP_METHOD_EXT 0x2007
663 #define WGL_NUMBER_OVERLAYS_EXT 0x2008
664 #define WGL_NUMBER_UNDERLAYS_EXT 0x2009
665 #define WGL_TRANSPARENT_EXT 0x200A
666 #define WGL_TRANSPARENT_VALUE_EXT 0x200B
667 #define WGL_SHARE_DEPTH_EXT 0x200C
668 #define WGL_SHARE_STENCIL_EXT 0x200D
669 #define WGL_SHARE_ACCUM_EXT 0x200E
670 #define WGL_SUPPORT_GDI_EXT 0x200F
671 #define WGL_SUPPORT_OPENGL_EXT 0x2010
672 #define WGL_DOUBLE_BUFFER_EXT 0x2011
673 #define WGL_STEREO_EXT 0x2012
674 #define WGL_PIXEL_TYPE_EXT 0x2013
675 #define WGL_COLOR_BITS_EXT 0x2014
676 #define WGL_RED_BITS_EXT 0x2015
677 #define WGL_RED_SHIFT_EXT 0x2016
678 #define WGL_GREEN_BITS_EXT 0x2017
679 #define WGL_GREEN_SHIFT_EXT 0x2018
680 #define WGL_BLUE_BITS_EXT 0x2019
681 #define WGL_BLUE_SHIFT_EXT 0x201A
682 #define WGL_ALPHA_BITS_EXT 0x201B
683 #define WGL_ALPHA_SHIFT_EXT 0x201C
684 #define WGL_ACCUM_BITS_EXT 0x201D
685 #define WGL_ACCUM_RED_BITS_EXT 0x201E
686 #define WGL_ACCUM_GREEN_BITS_EXT 0x201F
687 #define WGL_ACCUM_BLUE_BITS_EXT 0x2020
688 #define WGL_ACCUM_ALPHA_BITS_EXT 0x2021
689 #define WGL_DEPTH_BITS_EXT 0x2022
690 #define WGL_STENCIL_BITS_EXT 0x2023
691 #define WGL_AUX_BUFFERS_EXT 0x2024
692 #define WGL_NO_ACCELERATION_EXT 0x2025
693 #define WGL_GENERIC_ACCELERATION_EXT 0x2026
694 #define WGL_FULL_ACCELERATION_EXT 0x2027
695 #define WGL_SWAP_EXCHANGE_EXT 0x2028
696 #define WGL_SWAP_COPY_EXT 0x2029
697 #define WGL_SWAP_UNDEFINED_EXT 0x202A
698 #define WGL_TYPE_RGBA_EXT 0x202B
699 #define WGL_TYPE_COLORINDEX_EXT 0x202C
700 
701 typedef BOOL (WINAPI * PFNWGLCHOOSEPIXELFORMATEXTPROC) (HDC hdc, const int* piAttribIList, const FLOAT *pfAttribFList, UINT nMaxFormats, int *piFormats, UINT *nNumFormats);
702 typedef BOOL (WINAPI * PFNWGLGETPIXELFORMATATTRIBFVEXTPROC) (HDC hdc, int iPixelFormat, int iLayerPlane, UINT nAttributes, int* piAttributes, FLOAT *pfValues);
703 typedef BOOL (WINAPI * PFNWGLGETPIXELFORMATATTRIBIVEXTPROC) (HDC hdc, int iPixelFormat, int iLayerPlane, UINT nAttributes, int* piAttributes, int *piValues);
704 
705 #define wglChoosePixelFormatEXT WGLEW_GET_FUN(__wglewChoosePixelFormatEXT)
706 #define wglGetPixelFormatAttribfvEXT WGLEW_GET_FUN(__wglewGetPixelFormatAttribfvEXT)
707 #define wglGetPixelFormatAttribivEXT WGLEW_GET_FUN(__wglewGetPixelFormatAttribivEXT)
708 
709 #define WGLEW_EXT_pixel_format WGLEW_GET_VAR(__WGLEW_EXT_pixel_format)
710 
711 #endif /* WGL_EXT_pixel_format */
712 
713 /* ------------------- WGL_EXT_pixel_format_packed_float ------------------- */
714 
715 #ifndef WGL_EXT_pixel_format_packed_float
716 #define WGL_EXT_pixel_format_packed_float 1
717 
718 #define WGL_TYPE_RGBA_UNSIGNED_FLOAT_EXT 0x20A8
719 
720 #define WGLEW_EXT_pixel_format_packed_float WGLEW_GET_VAR(__WGLEW_EXT_pixel_format_packed_float)
721 
722 #endif /* WGL_EXT_pixel_format_packed_float */
723 
724 /* -------------------------- WGL_EXT_swap_control ------------------------- */
725 
726 #ifndef WGL_EXT_swap_control
727 #define WGL_EXT_swap_control 1
728 
729 typedef int (WINAPI * PFNWGLGETSWAPINTERVALEXTPROC) (void);
730 typedef BOOL (WINAPI * PFNWGLSWAPINTERVALEXTPROC) (int interval);
731 
732 #define wglGetSwapIntervalEXT WGLEW_GET_FUN(__wglewGetSwapIntervalEXT)
733 #define wglSwapIntervalEXT WGLEW_GET_FUN(__wglewSwapIntervalEXT)
734 
735 #define WGLEW_EXT_swap_control WGLEW_GET_VAR(__WGLEW_EXT_swap_control)
736 
737 #endif /* WGL_EXT_swap_control */
738 
739 /* ----------------------- WGL_EXT_swap_control_tear ----------------------- */
740 
741 #ifndef WGL_EXT_swap_control_tear
742 #define WGL_EXT_swap_control_tear 1
743 
744 #define WGLEW_EXT_swap_control_tear WGLEW_GET_VAR(__WGLEW_EXT_swap_control_tear)
745 
746 #endif /* WGL_EXT_swap_control_tear */
747 
748 /* --------------------- WGL_I3D_digital_video_control --------------------- */
749 
750 #ifndef WGL_I3D_digital_video_control
751 #define WGL_I3D_digital_video_control 1
752 
753 #define WGL_DIGITAL_VIDEO_CURSOR_ALPHA_FRAMEBUFFER_I3D 0x2050
754 #define WGL_DIGITAL_VIDEO_CURSOR_ALPHA_VALUE_I3D 0x2051
755 #define WGL_DIGITAL_VIDEO_CURSOR_INCLUDED_I3D 0x2052
756 #define WGL_DIGITAL_VIDEO_GAMMA_CORRECTED_I3D 0x2053
757 
758 typedef BOOL (WINAPI * PFNWGLGETDIGITALVIDEOPARAMETERSI3DPROC) (HDC hDC, int iAttribute, int* piValue);
759 typedef BOOL (WINAPI * PFNWGLSETDIGITALVIDEOPARAMETERSI3DPROC) (HDC hDC, int iAttribute, const int* piValue);
760 
761 #define wglGetDigitalVideoParametersI3D WGLEW_GET_FUN(__wglewGetDigitalVideoParametersI3D)
762 #define wglSetDigitalVideoParametersI3D WGLEW_GET_FUN(__wglewSetDigitalVideoParametersI3D)
763 
764 #define WGLEW_I3D_digital_video_control WGLEW_GET_VAR(__WGLEW_I3D_digital_video_control)
765 
766 #endif /* WGL_I3D_digital_video_control */
767 
768 /* ----------------------------- WGL_I3D_gamma ----------------------------- */
769 
770 #ifndef WGL_I3D_gamma
771 #define WGL_I3D_gamma 1
772 
773 #define WGL_GAMMA_TABLE_SIZE_I3D 0x204E
774 #define WGL_GAMMA_EXCLUDE_DESKTOP_I3D 0x204F
775 
776 typedef BOOL (WINAPI * PFNWGLGETGAMMATABLEI3DPROC) (HDC hDC, int iEntries, USHORT* puRed, USHORT *puGreen, USHORT *puBlue);
777 typedef BOOL (WINAPI * PFNWGLGETGAMMATABLEPARAMETERSI3DPROC) (HDC hDC, int iAttribute, int* piValue);
778 typedef BOOL (WINAPI * PFNWGLSETGAMMATABLEI3DPROC) (HDC hDC, int iEntries, const USHORT* puRed, const USHORT *puGreen, const USHORT *puBlue);
779 typedef BOOL (WINAPI * PFNWGLSETGAMMATABLEPARAMETERSI3DPROC) (HDC hDC, int iAttribute, const int* piValue);
780 
781 #define wglGetGammaTableI3D WGLEW_GET_FUN(__wglewGetGammaTableI3D)
782 #define wglGetGammaTableParametersI3D WGLEW_GET_FUN(__wglewGetGammaTableParametersI3D)
783 #define wglSetGammaTableI3D WGLEW_GET_FUN(__wglewSetGammaTableI3D)
784 #define wglSetGammaTableParametersI3D WGLEW_GET_FUN(__wglewSetGammaTableParametersI3D)
785 
786 #define WGLEW_I3D_gamma WGLEW_GET_VAR(__WGLEW_I3D_gamma)
787 
788 #endif /* WGL_I3D_gamma */
789 
790 /* ---------------------------- WGL_I3D_genlock ---------------------------- */
791 
792 #ifndef WGL_I3D_genlock
793 #define WGL_I3D_genlock 1
794 
795 #define WGL_GENLOCK_SOURCE_MULTIVIEW_I3D 0x2044
796 #define WGL_GENLOCK_SOURCE_EXTERNAL_SYNC_I3D 0x2045
797 #define WGL_GENLOCK_SOURCE_EXTERNAL_FIELD_I3D 0x2046
798 #define WGL_GENLOCK_SOURCE_EXTERNAL_TTL_I3D 0x2047
799 #define WGL_GENLOCK_SOURCE_DIGITAL_SYNC_I3D 0x2048
800 #define WGL_GENLOCK_SOURCE_DIGITAL_FIELD_I3D 0x2049
801 #define WGL_GENLOCK_SOURCE_EDGE_FALLING_I3D 0x204A
802 #define WGL_GENLOCK_SOURCE_EDGE_RISING_I3D 0x204B
803 #define WGL_GENLOCK_SOURCE_EDGE_BOTH_I3D 0x204C
804 
805 typedef BOOL (WINAPI * PFNWGLDISABLEGENLOCKI3DPROC) (HDC hDC);
806 typedef BOOL (WINAPI * PFNWGLENABLEGENLOCKI3DPROC) (HDC hDC);
807 typedef BOOL (WINAPI * PFNWGLGENLOCKSAMPLERATEI3DPROC) (HDC hDC, UINT uRate);
808 typedef BOOL (WINAPI * PFNWGLGENLOCKSOURCEDELAYI3DPROC) (HDC hDC, UINT uDelay);
809 typedef BOOL (WINAPI * PFNWGLGENLOCKSOURCEEDGEI3DPROC) (HDC hDC, UINT uEdge);
810 typedef BOOL (WINAPI * PFNWGLGENLOCKSOURCEI3DPROC) (HDC hDC, UINT uSource);
811 typedef BOOL (WINAPI * PFNWGLGETGENLOCKSAMPLERATEI3DPROC) (HDC hDC, UINT* uRate);
812 typedef BOOL (WINAPI * PFNWGLGETGENLOCKSOURCEDELAYI3DPROC) (HDC hDC, UINT* uDelay);
813 typedef BOOL (WINAPI * PFNWGLGETGENLOCKSOURCEEDGEI3DPROC) (HDC hDC, UINT* uEdge);
814 typedef BOOL (WINAPI * PFNWGLGETGENLOCKSOURCEI3DPROC) (HDC hDC, UINT* uSource);
815 typedef BOOL (WINAPI * PFNWGLISENABLEDGENLOCKI3DPROC) (HDC hDC, BOOL* pFlag);
816 typedef BOOL (WINAPI * PFNWGLQUERYGENLOCKMAXSOURCEDELAYI3DPROC) (HDC hDC, UINT* uMaxLineDelay, UINT *uMaxPixelDelay);
817 
818 #define wglDisableGenlockI3D WGLEW_GET_FUN(__wglewDisableGenlockI3D)
819 #define wglEnableGenlockI3D WGLEW_GET_FUN(__wglewEnableGenlockI3D)
820 #define wglGenlockSampleRateI3D WGLEW_GET_FUN(__wglewGenlockSampleRateI3D)
821 #define wglGenlockSourceDelayI3D WGLEW_GET_FUN(__wglewGenlockSourceDelayI3D)
822 #define wglGenlockSourceEdgeI3D WGLEW_GET_FUN(__wglewGenlockSourceEdgeI3D)
823 #define wglGenlockSourceI3D WGLEW_GET_FUN(__wglewGenlockSourceI3D)
824 #define wglGetGenlockSampleRateI3D WGLEW_GET_FUN(__wglewGetGenlockSampleRateI3D)
825 #define wglGetGenlockSourceDelayI3D WGLEW_GET_FUN(__wglewGetGenlockSourceDelayI3D)
826 #define wglGetGenlockSourceEdgeI3D WGLEW_GET_FUN(__wglewGetGenlockSourceEdgeI3D)
827 #define wglGetGenlockSourceI3D WGLEW_GET_FUN(__wglewGetGenlockSourceI3D)
828 #define wglIsEnabledGenlockI3D WGLEW_GET_FUN(__wglewIsEnabledGenlockI3D)
829 #define wglQueryGenlockMaxSourceDelayI3D WGLEW_GET_FUN(__wglewQueryGenlockMaxSourceDelayI3D)
830 
831 #define WGLEW_I3D_genlock WGLEW_GET_VAR(__WGLEW_I3D_genlock)
832 
833 #endif /* WGL_I3D_genlock */
834 
835 /* -------------------------- WGL_I3D_image_buffer ------------------------- */
836 
837 #ifndef WGL_I3D_image_buffer
838 #define WGL_I3D_image_buffer 1
839 
840 #define WGL_IMAGE_BUFFER_MIN_ACCESS_I3D 0x00000001
841 #define WGL_IMAGE_BUFFER_LOCK_I3D 0x00000002
842 
843 typedef BOOL (WINAPI * PFNWGLASSOCIATEIMAGEBUFFEREVENTSI3DPROC) (HDC hdc, HANDLE* pEvent, LPVOID *pAddress, DWORD *pSize, UINT count);
844 typedef LPVOID (WINAPI * PFNWGLCREATEIMAGEBUFFERI3DPROC) (HDC hDC, DWORD dwSize, UINT uFlags);
845 typedef BOOL (WINAPI * PFNWGLDESTROYIMAGEBUFFERI3DPROC) (HDC hDC, LPVOID pAddress);
846 typedef BOOL (WINAPI * PFNWGLRELEASEIMAGEBUFFEREVENTSI3DPROC) (HDC hdc, LPVOID* pAddress, UINT count);
847 
848 #define wglAssociateImageBufferEventsI3D WGLEW_GET_FUN(__wglewAssociateImageBufferEventsI3D)
849 #define wglCreateImageBufferI3D WGLEW_GET_FUN(__wglewCreateImageBufferI3D)
850 #define wglDestroyImageBufferI3D WGLEW_GET_FUN(__wglewDestroyImageBufferI3D)
851 #define wglReleaseImageBufferEventsI3D WGLEW_GET_FUN(__wglewReleaseImageBufferEventsI3D)
852 
853 #define WGLEW_I3D_image_buffer WGLEW_GET_VAR(__WGLEW_I3D_image_buffer)
854 
855 #endif /* WGL_I3D_image_buffer */
856 
857 /* ------------------------ WGL_I3D_swap_frame_lock ------------------------ */
858 
859 #ifndef WGL_I3D_swap_frame_lock
860 #define WGL_I3D_swap_frame_lock 1
861 
862 typedef BOOL (WINAPI * PFNWGLDISABLEFRAMELOCKI3DPROC) (VOID);
863 typedef BOOL (WINAPI * PFNWGLENABLEFRAMELOCKI3DPROC) (VOID);
864 typedef BOOL (WINAPI * PFNWGLISENABLEDFRAMELOCKI3DPROC) (BOOL* pFlag);
865 typedef BOOL (WINAPI * PFNWGLQUERYFRAMELOCKMASTERI3DPROC) (BOOL* pFlag);
866 
867 #define wglDisableFrameLockI3D WGLEW_GET_FUN(__wglewDisableFrameLockI3D)
868 #define wglEnableFrameLockI3D WGLEW_GET_FUN(__wglewEnableFrameLockI3D)
869 #define wglIsEnabledFrameLockI3D WGLEW_GET_FUN(__wglewIsEnabledFrameLockI3D)
870 #define wglQueryFrameLockMasterI3D WGLEW_GET_FUN(__wglewQueryFrameLockMasterI3D)
871 
872 #define WGLEW_I3D_swap_frame_lock WGLEW_GET_VAR(__WGLEW_I3D_swap_frame_lock)
873 
874 #endif /* WGL_I3D_swap_frame_lock */
875 
876 /* ------------------------ WGL_I3D_swap_frame_usage ----------------------- */
877 
878 #ifndef WGL_I3D_swap_frame_usage
879 #define WGL_I3D_swap_frame_usage 1
880 
881 typedef BOOL (WINAPI * PFNWGLBEGINFRAMETRACKINGI3DPROC) (void);
882 typedef BOOL (WINAPI * PFNWGLENDFRAMETRACKINGI3DPROC) (void);
883 typedef BOOL (WINAPI * PFNWGLGETFRAMEUSAGEI3DPROC) (float* pUsage);
884 typedef BOOL (WINAPI * PFNWGLQUERYFRAMETRACKINGI3DPROC) (DWORD* pFrameCount, DWORD *pMissedFrames, float *pLastMissedUsage);
885 
886 #define wglBeginFrameTrackingI3D WGLEW_GET_FUN(__wglewBeginFrameTrackingI3D)
887 #define wglEndFrameTrackingI3D WGLEW_GET_FUN(__wglewEndFrameTrackingI3D)
888 #define wglGetFrameUsageI3D WGLEW_GET_FUN(__wglewGetFrameUsageI3D)
889 #define wglQueryFrameTrackingI3D WGLEW_GET_FUN(__wglewQueryFrameTrackingI3D)
890 
891 #define WGLEW_I3D_swap_frame_usage WGLEW_GET_VAR(__WGLEW_I3D_swap_frame_usage)
892 
893 #endif /* WGL_I3D_swap_frame_usage */
894 
895 /* --------------------------- WGL_NV_DX_interop --------------------------- */
896 
897 #ifndef WGL_NV_DX_interop
898 #define WGL_NV_DX_interop 1
899 
900 #define WGL_ACCESS_READ_ONLY_NV 0x0000
901 #define WGL_ACCESS_READ_WRITE_NV 0x0001
902 #define WGL_ACCESS_WRITE_DISCARD_NV 0x0002
903 
904 typedef BOOL (WINAPI * PFNWGLDXCLOSEDEVICENVPROC) (HANDLE hDevice);
905 typedef BOOL (WINAPI * PFNWGLDXLOCKOBJECTSNVPROC) (HANDLE hDevice, GLint count, HANDLE* hObjects);
906 typedef BOOL (WINAPI * PFNWGLDXOBJECTACCESSNVPROC) (HANDLE hObject, GLenum access);
907 typedef HANDLE (WINAPI * PFNWGLDXOPENDEVICENVPROC) (void* dxDevice);
908 typedef HANDLE (WINAPI * PFNWGLDXREGISTEROBJECTNVPROC) (HANDLE hDevice, void* dxObject, GLuint name, GLenum type, GLenum access);
909 typedef BOOL (WINAPI * PFNWGLDXSETRESOURCESHAREHANDLENVPROC) (void* dxObject, HANDLE shareHandle);
910 typedef BOOL (WINAPI * PFNWGLDXUNLOCKOBJECTSNVPROC) (HANDLE hDevice, GLint count, HANDLE* hObjects);
911 typedef BOOL (WINAPI * PFNWGLDXUNREGISTEROBJECTNVPROC) (HANDLE hDevice, HANDLE hObject);
912 
913 #define wglDXCloseDeviceNV WGLEW_GET_FUN(__wglewDXCloseDeviceNV)
914 #define wglDXLockObjectsNV WGLEW_GET_FUN(__wglewDXLockObjectsNV)
915 #define wglDXObjectAccessNV WGLEW_GET_FUN(__wglewDXObjectAccessNV)
916 #define wglDXOpenDeviceNV WGLEW_GET_FUN(__wglewDXOpenDeviceNV)
917 #define wglDXRegisterObjectNV WGLEW_GET_FUN(__wglewDXRegisterObjectNV)
918 #define wglDXSetResourceShareHandleNV WGLEW_GET_FUN(__wglewDXSetResourceShareHandleNV)
919 #define wglDXUnlockObjectsNV WGLEW_GET_FUN(__wglewDXUnlockObjectsNV)
920 #define wglDXUnregisterObjectNV WGLEW_GET_FUN(__wglewDXUnregisterObjectNV)
921 
922 #define WGLEW_NV_DX_interop WGLEW_GET_VAR(__WGLEW_NV_DX_interop)
923 
924 #endif /* WGL_NV_DX_interop */
925 
926 /* --------------------------- WGL_NV_DX_interop2 -------------------------- */
927 
928 #ifndef WGL_NV_DX_interop2
929 #define WGL_NV_DX_interop2 1
930 
931 #define WGLEW_NV_DX_interop2 WGLEW_GET_VAR(__WGLEW_NV_DX_interop2)
932 
933 #endif /* WGL_NV_DX_interop2 */
934 
935 /* --------------------------- WGL_NV_copy_image --------------------------- */
936 
937 #ifndef WGL_NV_copy_image
938 #define WGL_NV_copy_image 1
939 
940 typedef 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);
941 
942 #define wglCopyImageSubDataNV WGLEW_GET_FUN(__wglewCopyImageSubDataNV)
943 
944 #define WGLEW_NV_copy_image WGLEW_GET_VAR(__WGLEW_NV_copy_image)
945 
946 #endif /* WGL_NV_copy_image */
947 
948 /* ------------------------ WGL_NV_delay_before_swap ----------------------- */
949 
950 #ifndef WGL_NV_delay_before_swap
951 #define WGL_NV_delay_before_swap 1
952 
953 typedef BOOL (WINAPI * PFNWGLDELAYBEFORESWAPNVPROC) (HDC hDC, GLfloat seconds);
954 
955 #define wglDelayBeforeSwapNV WGLEW_GET_FUN(__wglewDelayBeforeSwapNV)
956 
957 #define WGLEW_NV_delay_before_swap WGLEW_GET_VAR(__WGLEW_NV_delay_before_swap)
958 
959 #endif /* WGL_NV_delay_before_swap */
960 
961 /* -------------------------- WGL_NV_float_buffer -------------------------- */
962 
963 #ifndef WGL_NV_float_buffer
964 #define WGL_NV_float_buffer 1
965 
966 #define WGL_FLOAT_COMPONENTS_NV 0x20B0
967 #define WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_R_NV 0x20B1
968 #define WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RG_NV 0x20B2
969 #define WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RGB_NV 0x20B3
970 #define WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RGBA_NV 0x20B4
971 #define WGL_TEXTURE_FLOAT_R_NV 0x20B5
972 #define WGL_TEXTURE_FLOAT_RG_NV 0x20B6
973 #define WGL_TEXTURE_FLOAT_RGB_NV 0x20B7
974 #define WGL_TEXTURE_FLOAT_RGBA_NV 0x20B8
975 
976 #define WGLEW_NV_float_buffer WGLEW_GET_VAR(__WGLEW_NV_float_buffer)
977 
978 #endif /* WGL_NV_float_buffer */
979 
980 /* -------------------------- WGL_NV_gpu_affinity -------------------------- */
981 
982 #ifndef WGL_NV_gpu_affinity
983 #define WGL_NV_gpu_affinity 1
984 
985 #define WGL_ERROR_INCOMPATIBLE_AFFINITY_MASKS_NV 0x20D0
986 #define WGL_ERROR_MISSING_AFFINITY_MASK_NV 0x20D1
987 
988 DECLARE_HANDLE(HGPUNV);
989 typedef struct _GPU_DEVICE {
990   DWORD cb;
991   CHAR DeviceName[32];
992   CHAR DeviceString[128];
993   DWORD Flags;
994   RECT rcVirtualScreen;
995 } GPU_DEVICE, *PGPU_DEVICE;
996 
997 typedef HDC (WINAPI * PFNWGLCREATEAFFINITYDCNVPROC) (const HGPUNV *phGpuList);
998 typedef BOOL (WINAPI * PFNWGLDELETEDCNVPROC) (HDC hdc);
999 typedef BOOL (WINAPI * PFNWGLENUMGPUDEVICESNVPROC) (HGPUNV hGpu, UINT iDeviceIndex, PGPU_DEVICE lpGpuDevice);
1000 typedef BOOL (WINAPI * PFNWGLENUMGPUSFROMAFFINITYDCNVPROC) (HDC hAffinityDC, UINT iGpuIndex, HGPUNV *hGpu);
1001 typedef BOOL (WINAPI * PFNWGLENUMGPUSNVPROC) (UINT iGpuIndex, HGPUNV *phGpu);
1002 
1003 #define wglCreateAffinityDCNV WGLEW_GET_FUN(__wglewCreateAffinityDCNV)
1004 #define wglDeleteDCNV WGLEW_GET_FUN(__wglewDeleteDCNV)
1005 #define wglEnumGpuDevicesNV WGLEW_GET_FUN(__wglewEnumGpuDevicesNV)
1006 #define wglEnumGpusFromAffinityDCNV WGLEW_GET_FUN(__wglewEnumGpusFromAffinityDCNV)
1007 #define wglEnumGpusNV WGLEW_GET_FUN(__wglewEnumGpusNV)
1008 
1009 #define WGLEW_NV_gpu_affinity WGLEW_GET_VAR(__WGLEW_NV_gpu_affinity)
1010 
1011 #endif /* WGL_NV_gpu_affinity */
1012 
1013 /* ---------------------- WGL_NV_multisample_coverage ---------------------- */
1014 
1015 #ifndef WGL_NV_multisample_coverage
1016 #define WGL_NV_multisample_coverage 1
1017 
1018 #define WGL_COVERAGE_SAMPLES_NV 0x2042
1019 #define WGL_COLOR_SAMPLES_NV 0x20B9
1020 
1021 #define WGLEW_NV_multisample_coverage WGLEW_GET_VAR(__WGLEW_NV_multisample_coverage)
1022 
1023 #endif /* WGL_NV_multisample_coverage */
1024 
1025 /* -------------------------- WGL_NV_present_video ------------------------- */
1026 
1027 #ifndef WGL_NV_present_video
1028 #define WGL_NV_present_video 1
1029 
1030 #define WGL_NUM_VIDEO_SLOTS_NV 0x20F0
1031 
1032 DECLARE_HANDLE(HVIDEOOUTPUTDEVICENV);
1033 
1034 typedef BOOL (WINAPI * PFNWGLBINDVIDEODEVICENVPROC) (HDC hDc, unsigned int uVideoSlot, HVIDEOOUTPUTDEVICENV hVideoDevice, const int* piAttribList);
1035 typedef int (WINAPI * PFNWGLENUMERATEVIDEODEVICESNVPROC) (HDC hDc, HVIDEOOUTPUTDEVICENV* phDeviceList);
1036 typedef BOOL (WINAPI * PFNWGLQUERYCURRENTCONTEXTNVPROC) (int iAttribute, int* piValue);
1037 
1038 #define wglBindVideoDeviceNV WGLEW_GET_FUN(__wglewBindVideoDeviceNV)
1039 #define wglEnumerateVideoDevicesNV WGLEW_GET_FUN(__wglewEnumerateVideoDevicesNV)
1040 #define wglQueryCurrentContextNV WGLEW_GET_FUN(__wglewQueryCurrentContextNV)
1041 
1042 #define WGLEW_NV_present_video WGLEW_GET_VAR(__WGLEW_NV_present_video)
1043 
1044 #endif /* WGL_NV_present_video */
1045 
1046 /* ---------------------- WGL_NV_render_depth_texture ---------------------- */
1047 
1048 #ifndef WGL_NV_render_depth_texture
1049 #define WGL_NV_render_depth_texture 1
1050 
1051 #define WGL_NO_TEXTURE_ARB 0x2077
1052 #define WGL_BIND_TO_TEXTURE_DEPTH_NV 0x20A3
1053 #define WGL_BIND_TO_TEXTURE_RECTANGLE_DEPTH_NV 0x20A4
1054 #define WGL_DEPTH_TEXTURE_FORMAT_NV 0x20A5
1055 #define WGL_TEXTURE_DEPTH_COMPONENT_NV 0x20A6
1056 #define WGL_DEPTH_COMPONENT_NV 0x20A7
1057 
1058 #define WGLEW_NV_render_depth_texture WGLEW_GET_VAR(__WGLEW_NV_render_depth_texture)
1059 
1060 #endif /* WGL_NV_render_depth_texture */
1061 
1062 /* -------------------- WGL_NV_render_texture_rectangle -------------------- */
1063 
1064 #ifndef WGL_NV_render_texture_rectangle
1065 #define WGL_NV_render_texture_rectangle 1
1066 
1067 #define WGL_BIND_TO_TEXTURE_RECTANGLE_RGB_NV 0x20A0
1068 #define WGL_BIND_TO_TEXTURE_RECTANGLE_RGBA_NV 0x20A1
1069 #define WGL_TEXTURE_RECTANGLE_NV 0x20A2
1070 
1071 #define WGLEW_NV_render_texture_rectangle WGLEW_GET_VAR(__WGLEW_NV_render_texture_rectangle)
1072 
1073 #endif /* WGL_NV_render_texture_rectangle */
1074 
1075 /* --------------------------- WGL_NV_swap_group --------------------------- */
1076 
1077 #ifndef WGL_NV_swap_group
1078 #define WGL_NV_swap_group 1
1079 
1080 typedef BOOL (WINAPI * PFNWGLBINDSWAPBARRIERNVPROC) (GLuint group, GLuint barrier);
1081 typedef BOOL (WINAPI * PFNWGLJOINSWAPGROUPNVPROC) (HDC hDC, GLuint group);
1082 typedef BOOL (WINAPI * PFNWGLQUERYFRAMECOUNTNVPROC) (HDC hDC, GLuint* count);
1083 typedef BOOL (WINAPI * PFNWGLQUERYMAXSWAPGROUPSNVPROC) (HDC hDC, GLuint* maxGroups, GLuint *maxBarriers);
1084 typedef BOOL (WINAPI * PFNWGLQUERYSWAPGROUPNVPROC) (HDC hDC, GLuint* group, GLuint *barrier);
1085 typedef BOOL (WINAPI * PFNWGLRESETFRAMECOUNTNVPROC) (HDC hDC);
1086 
1087 #define wglBindSwapBarrierNV WGLEW_GET_FUN(__wglewBindSwapBarrierNV)
1088 #define wglJoinSwapGroupNV WGLEW_GET_FUN(__wglewJoinSwapGroupNV)
1089 #define wglQueryFrameCountNV WGLEW_GET_FUN(__wglewQueryFrameCountNV)
1090 #define wglQueryMaxSwapGroupsNV WGLEW_GET_FUN(__wglewQueryMaxSwapGroupsNV)
1091 #define wglQuerySwapGroupNV WGLEW_GET_FUN(__wglewQuerySwapGroupNV)
1092 #define wglResetFrameCountNV WGLEW_GET_FUN(__wglewResetFrameCountNV)
1093 
1094 #define WGLEW_NV_swap_group WGLEW_GET_VAR(__WGLEW_NV_swap_group)
1095 
1096 #endif /* WGL_NV_swap_group */
1097 
1098 /* ----------------------- WGL_NV_vertex_array_range ----------------------- */
1099 
1100 #ifndef WGL_NV_vertex_array_range
1101 #define WGL_NV_vertex_array_range 1
1102 
1103 typedef void * (WINAPI * PFNWGLALLOCATEMEMORYNVPROC) (GLsizei size, GLfloat readFrequency, GLfloat writeFrequency, GLfloat priority);
1104 typedef void (WINAPI * PFNWGLFREEMEMORYNVPROC) (void *pointer);
1105 
1106 #define wglAllocateMemoryNV WGLEW_GET_FUN(__wglewAllocateMemoryNV)
1107 #define wglFreeMemoryNV WGLEW_GET_FUN(__wglewFreeMemoryNV)
1108 
1109 #define WGLEW_NV_vertex_array_range WGLEW_GET_VAR(__WGLEW_NV_vertex_array_range)
1110 
1111 #endif /* WGL_NV_vertex_array_range */
1112 
1113 /* -------------------------- WGL_NV_video_capture ------------------------- */
1114 
1115 #ifndef WGL_NV_video_capture
1116 #define WGL_NV_video_capture 1
1117 
1118 #define WGL_UNIQUE_ID_NV 0x20CE
1119 #define WGL_NUM_VIDEO_CAPTURE_SLOTS_NV 0x20CF
1120 
1121 DECLARE_HANDLE(HVIDEOINPUTDEVICENV);
1122 
1123 typedef BOOL (WINAPI * PFNWGLBINDVIDEOCAPTUREDEVICENVPROC) (UINT uVideoSlot, HVIDEOINPUTDEVICENV hDevice);
1124 typedef UINT (WINAPI * PFNWGLENUMERATEVIDEOCAPTUREDEVICESNVPROC) (HDC hDc, HVIDEOINPUTDEVICENV* phDeviceList);
1125 typedef BOOL (WINAPI * PFNWGLLOCKVIDEOCAPTUREDEVICENVPROC) (HDC hDc, HVIDEOINPUTDEVICENV hDevice);
1126 typedef BOOL (WINAPI * PFNWGLQUERYVIDEOCAPTUREDEVICENVPROC) (HDC hDc, HVIDEOINPUTDEVICENV hDevice, int iAttribute, int* piValue);
1127 typedef BOOL (WINAPI * PFNWGLRELEASEVIDEOCAPTUREDEVICENVPROC) (HDC hDc, HVIDEOINPUTDEVICENV hDevice);
1128 
1129 #define wglBindVideoCaptureDeviceNV WGLEW_GET_FUN(__wglewBindVideoCaptureDeviceNV)
1130 #define wglEnumerateVideoCaptureDevicesNV WGLEW_GET_FUN(__wglewEnumerateVideoCaptureDevicesNV)
1131 #define wglLockVideoCaptureDeviceNV WGLEW_GET_FUN(__wglewLockVideoCaptureDeviceNV)
1132 #define wglQueryVideoCaptureDeviceNV WGLEW_GET_FUN(__wglewQueryVideoCaptureDeviceNV)
1133 #define wglReleaseVideoCaptureDeviceNV WGLEW_GET_FUN(__wglewReleaseVideoCaptureDeviceNV)
1134 
1135 #define WGLEW_NV_video_capture WGLEW_GET_VAR(__WGLEW_NV_video_capture)
1136 
1137 #endif /* WGL_NV_video_capture */
1138 
1139 /* -------------------------- WGL_NV_video_output -------------------------- */
1140 
1141 #ifndef WGL_NV_video_output
1142 #define WGL_NV_video_output 1
1143 
1144 #define WGL_BIND_TO_VIDEO_RGB_NV 0x20C0
1145 #define WGL_BIND_TO_VIDEO_RGBA_NV 0x20C1
1146 #define WGL_BIND_TO_VIDEO_RGB_AND_DEPTH_NV 0x20C2
1147 #define WGL_VIDEO_OUT_COLOR_NV 0x20C3
1148 #define WGL_VIDEO_OUT_ALPHA_NV 0x20C4
1149 #define WGL_VIDEO_OUT_DEPTH_NV 0x20C5
1150 #define WGL_VIDEO_OUT_COLOR_AND_ALPHA_NV 0x20C6
1151 #define WGL_VIDEO_OUT_COLOR_AND_DEPTH_NV 0x20C7
1152 #define WGL_VIDEO_OUT_FRAME 0x20C8
1153 #define WGL_VIDEO_OUT_FIELD_1 0x20C9
1154 #define WGL_VIDEO_OUT_FIELD_2 0x20CA
1155 #define WGL_VIDEO_OUT_STACKED_FIELDS_1_2 0x20CB
1156 #define WGL_VIDEO_OUT_STACKED_FIELDS_2_1 0x20CC
1157 
1158 DECLARE_HANDLE(HPVIDEODEV);
1159 
1160 typedef BOOL (WINAPI * PFNWGLBINDVIDEOIMAGENVPROC) (HPVIDEODEV hVideoDevice, HPBUFFERARB hPbuffer, int iVideoBuffer);
1161 typedef BOOL (WINAPI * PFNWGLGETVIDEODEVICENVPROC) (HDC hDC, int numDevices, HPVIDEODEV* hVideoDevice);
1162 typedef BOOL (WINAPI * PFNWGLGETVIDEOINFONVPROC) (HPVIDEODEV hpVideoDevice, unsigned long* pulCounterOutputPbuffer, unsigned long *pulCounterOutputVideo);
1163 typedef BOOL (WINAPI * PFNWGLRELEASEVIDEODEVICENVPROC) (HPVIDEODEV hVideoDevice);
1164 typedef BOOL (WINAPI * PFNWGLRELEASEVIDEOIMAGENVPROC) (HPBUFFERARB hPbuffer, int iVideoBuffer);
1165 typedef BOOL (WINAPI * PFNWGLSENDPBUFFERTOVIDEONVPROC) (HPBUFFERARB hPbuffer, int iBufferType, unsigned long* pulCounterPbuffer, BOOL bBlock);
1166 
1167 #define wglBindVideoImageNV WGLEW_GET_FUN(__wglewBindVideoImageNV)
1168 #define wglGetVideoDeviceNV WGLEW_GET_FUN(__wglewGetVideoDeviceNV)
1169 #define wglGetVideoInfoNV WGLEW_GET_FUN(__wglewGetVideoInfoNV)
1170 #define wglReleaseVideoDeviceNV WGLEW_GET_FUN(__wglewReleaseVideoDeviceNV)
1171 #define wglReleaseVideoImageNV WGLEW_GET_FUN(__wglewReleaseVideoImageNV)
1172 #define wglSendPbufferToVideoNV WGLEW_GET_FUN(__wglewSendPbufferToVideoNV)
1173 
1174 #define WGLEW_NV_video_output WGLEW_GET_VAR(__WGLEW_NV_video_output)
1175 
1176 #endif /* WGL_NV_video_output */
1177 
1178 /* -------------------------- WGL_OML_sync_control ------------------------- */
1179 
1180 #ifndef WGL_OML_sync_control
1181 #define WGL_OML_sync_control 1
1182 
1183 typedef BOOL (WINAPI * PFNWGLGETMSCRATEOMLPROC) (HDC hdc, INT32* numerator, INT32 *denominator);
1184 typedef BOOL (WINAPI * PFNWGLGETSYNCVALUESOMLPROC) (HDC hdc, INT64* ust, INT64 *msc, INT64 *sbc);
1185 typedef INT64 (WINAPI * PFNWGLSWAPBUFFERSMSCOMLPROC) (HDC hdc, INT64 target_msc, INT64 divisor, INT64 remainder);
1186 typedef INT64 (WINAPI * PFNWGLSWAPLAYERBUFFERSMSCOMLPROC) (HDC hdc, INT fuPlanes, INT64 target_msc, INT64 divisor, INT64 remainder);
1187 typedef BOOL (WINAPI * PFNWGLWAITFORMSCOMLPROC) (HDC hdc, INT64 target_msc, INT64 divisor, INT64 remainder, INT64* ust, INT64 *msc, INT64 *sbc);
1188 typedef BOOL (WINAPI * PFNWGLWAITFORSBCOMLPROC) (HDC hdc, INT64 target_sbc, INT64* ust, INT64 *msc, INT64 *sbc);
1189 
1190 #define wglGetMscRateOML WGLEW_GET_FUN(__wglewGetMscRateOML)
1191 #define wglGetSyncValuesOML WGLEW_GET_FUN(__wglewGetSyncValuesOML)
1192 #define wglSwapBuffersMscOML WGLEW_GET_FUN(__wglewSwapBuffersMscOML)
1193 #define wglSwapLayerBuffersMscOML WGLEW_GET_FUN(__wglewSwapLayerBuffersMscOML)
1194 #define wglWaitForMscOML WGLEW_GET_FUN(__wglewWaitForMscOML)
1195 #define wglWaitForSbcOML WGLEW_GET_FUN(__wglewWaitForSbcOML)
1196 
1197 #define WGLEW_OML_sync_control WGLEW_GET_VAR(__WGLEW_OML_sync_control)
1198 
1199 #endif /* WGL_OML_sync_control */
1200 
1201 /* ------------------------------------------------------------------------- */
1202 
1203 #ifdef GLEW_MX
1204 #define WGLEW_FUN_EXPORT
1205 #define WGLEW_VAR_EXPORT
1206 #else
1207 #define WGLEW_FUN_EXPORT GLEW_FUN_EXPORT
1208 #define WGLEW_VAR_EXPORT GLEW_VAR_EXPORT
1209 #endif /* GLEW_MX */
1210 
1211 #ifdef GLEW_MX
1212 struct WGLEWContextStruct
1213 {
1214 #endif /* GLEW_MX */
1215 
1216 WGLEW_FUN_EXPORT PFNWGLSETSTEREOEMITTERSTATE3DLPROC __wglewSetStereoEmitterState3DL;
1217 
1218 WGLEW_FUN_EXPORT PFNWGLBLITCONTEXTFRAMEBUFFERAMDPROC __wglewBlitContextFramebufferAMD;
1219 WGLEW_FUN_EXPORT PFNWGLCREATEASSOCIATEDCONTEXTAMDPROC __wglewCreateAssociatedContextAMD;
1220 WGLEW_FUN_EXPORT PFNWGLCREATEASSOCIATEDCONTEXTATTRIBSAMDPROC __wglewCreateAssociatedContextAttribsAMD;
1221 WGLEW_FUN_EXPORT PFNWGLDELETEASSOCIATEDCONTEXTAMDPROC __wglewDeleteAssociatedContextAMD;
1222 WGLEW_FUN_EXPORT PFNWGLGETCONTEXTGPUIDAMDPROC __wglewGetContextGPUIDAMD;
1223 WGLEW_FUN_EXPORT PFNWGLGETCURRENTASSOCIATEDCONTEXTAMDPROC __wglewGetCurrentAssociatedContextAMD;
1224 WGLEW_FUN_EXPORT PFNWGLGETGPUIDSAMDPROC __wglewGetGPUIDsAMD;
1225 WGLEW_FUN_EXPORT PFNWGLGETGPUINFOAMDPROC __wglewGetGPUInfoAMD;
1226 WGLEW_FUN_EXPORT PFNWGLMAKEASSOCIATEDCONTEXTCURRENTAMDPROC __wglewMakeAssociatedContextCurrentAMD;
1227 
1228 WGLEW_FUN_EXPORT PFNWGLCREATEBUFFERREGIONARBPROC __wglewCreateBufferRegionARB;
1229 WGLEW_FUN_EXPORT PFNWGLDELETEBUFFERREGIONARBPROC __wglewDeleteBufferRegionARB;
1230 WGLEW_FUN_EXPORT PFNWGLRESTOREBUFFERREGIONARBPROC __wglewRestoreBufferRegionARB;
1231 WGLEW_FUN_EXPORT PFNWGLSAVEBUFFERREGIONARBPROC __wglewSaveBufferRegionARB;
1232 
1233 WGLEW_FUN_EXPORT PFNWGLCREATECONTEXTATTRIBSARBPROC __wglewCreateContextAttribsARB;
1234 
1235 WGLEW_FUN_EXPORT PFNWGLGETEXTENSIONSSTRINGARBPROC __wglewGetExtensionsStringARB;
1236 
1237 WGLEW_FUN_EXPORT PFNWGLGETCURRENTREADDCARBPROC __wglewGetCurrentReadDCARB;
1238 WGLEW_FUN_EXPORT PFNWGLMAKECONTEXTCURRENTARBPROC __wglewMakeContextCurrentARB;
1239 
1240 WGLEW_FUN_EXPORT PFNWGLCREATEPBUFFERARBPROC __wglewCreatePbufferARB;
1241 WGLEW_FUN_EXPORT PFNWGLDESTROYPBUFFERARBPROC __wglewDestroyPbufferARB;
1242 WGLEW_FUN_EXPORT PFNWGLGETPBUFFERDCARBPROC __wglewGetPbufferDCARB;
1243 WGLEW_FUN_EXPORT PFNWGLQUERYPBUFFERARBPROC __wglewQueryPbufferARB;
1244 WGLEW_FUN_EXPORT PFNWGLRELEASEPBUFFERDCARBPROC __wglewReleasePbufferDCARB;
1245 
1246 WGLEW_FUN_EXPORT PFNWGLCHOOSEPIXELFORMATARBPROC __wglewChoosePixelFormatARB;
1247 WGLEW_FUN_EXPORT PFNWGLGETPIXELFORMATATTRIBFVARBPROC __wglewGetPixelFormatAttribfvARB;
1248 WGLEW_FUN_EXPORT PFNWGLGETPIXELFORMATATTRIBIVARBPROC __wglewGetPixelFormatAttribivARB;
1249 
1250 WGLEW_FUN_EXPORT PFNWGLBINDTEXIMAGEARBPROC __wglewBindTexImageARB;
1251 WGLEW_FUN_EXPORT PFNWGLRELEASETEXIMAGEARBPROC __wglewReleaseTexImageARB;
1252 WGLEW_FUN_EXPORT PFNWGLSETPBUFFERATTRIBARBPROC __wglewSetPbufferAttribARB;
1253 
1254 WGLEW_FUN_EXPORT PFNWGLBINDDISPLAYCOLORTABLEEXTPROC __wglewBindDisplayColorTableEXT;
1255 WGLEW_FUN_EXPORT PFNWGLCREATEDISPLAYCOLORTABLEEXTPROC __wglewCreateDisplayColorTableEXT;
1256 WGLEW_FUN_EXPORT PFNWGLDESTROYDISPLAYCOLORTABLEEXTPROC __wglewDestroyDisplayColorTableEXT;
1257 WGLEW_FUN_EXPORT PFNWGLLOADDISPLAYCOLORTABLEEXTPROC __wglewLoadDisplayColorTableEXT;
1258 
1259 WGLEW_FUN_EXPORT PFNWGLGETEXTENSIONSSTRINGEXTPROC __wglewGetExtensionsStringEXT;
1260 
1261 WGLEW_FUN_EXPORT PFNWGLGETCURRENTREADDCEXTPROC __wglewGetCurrentReadDCEXT;
1262 WGLEW_FUN_EXPORT PFNWGLMAKECONTEXTCURRENTEXTPROC __wglewMakeContextCurrentEXT;
1263 
1264 WGLEW_FUN_EXPORT PFNWGLCREATEPBUFFEREXTPROC __wglewCreatePbufferEXT;
1265 WGLEW_FUN_EXPORT PFNWGLDESTROYPBUFFEREXTPROC __wglewDestroyPbufferEXT;
1266 WGLEW_FUN_EXPORT PFNWGLGETPBUFFERDCEXTPROC __wglewGetPbufferDCEXT;
1267 WGLEW_FUN_EXPORT PFNWGLQUERYPBUFFEREXTPROC __wglewQueryPbufferEXT;
1268 WGLEW_FUN_EXPORT PFNWGLRELEASEPBUFFERDCEXTPROC __wglewReleasePbufferDCEXT;
1269 
1270 WGLEW_FUN_EXPORT PFNWGLCHOOSEPIXELFORMATEXTPROC __wglewChoosePixelFormatEXT;
1271 WGLEW_FUN_EXPORT PFNWGLGETPIXELFORMATATTRIBFVEXTPROC __wglewGetPixelFormatAttribfvEXT;
1272 WGLEW_FUN_EXPORT PFNWGLGETPIXELFORMATATTRIBIVEXTPROC __wglewGetPixelFormatAttribivEXT;
1273 
1274 WGLEW_FUN_EXPORT PFNWGLGETSWAPINTERVALEXTPROC __wglewGetSwapIntervalEXT;
1275 WGLEW_FUN_EXPORT PFNWGLSWAPINTERVALEXTPROC __wglewSwapIntervalEXT;
1276 
1277 WGLEW_FUN_EXPORT PFNWGLGETDIGITALVIDEOPARAMETERSI3DPROC __wglewGetDigitalVideoParametersI3D;
1278 WGLEW_FUN_EXPORT PFNWGLSETDIGITALVIDEOPARAMETERSI3DPROC __wglewSetDigitalVideoParametersI3D;
1279 
1280 WGLEW_FUN_EXPORT PFNWGLGETGAMMATABLEI3DPROC __wglewGetGammaTableI3D;
1281 WGLEW_FUN_EXPORT PFNWGLGETGAMMATABLEPARAMETERSI3DPROC __wglewGetGammaTableParametersI3D;
1282 WGLEW_FUN_EXPORT PFNWGLSETGAMMATABLEI3DPROC __wglewSetGammaTableI3D;
1283 WGLEW_FUN_EXPORT PFNWGLSETGAMMATABLEPARAMETERSI3DPROC __wglewSetGammaTableParametersI3D;
1284 
1285 WGLEW_FUN_EXPORT PFNWGLDISABLEGENLOCKI3DPROC __wglewDisableGenlockI3D;
1286 WGLEW_FUN_EXPORT PFNWGLENABLEGENLOCKI3DPROC __wglewEnableGenlockI3D;
1287 WGLEW_FUN_EXPORT PFNWGLGENLOCKSAMPLERATEI3DPROC __wglewGenlockSampleRateI3D;
1288 WGLEW_FUN_EXPORT PFNWGLGENLOCKSOURCEDELAYI3DPROC __wglewGenlockSourceDelayI3D;
1289 WGLEW_FUN_EXPORT PFNWGLGENLOCKSOURCEEDGEI3DPROC __wglewGenlockSourceEdgeI3D;
1290 WGLEW_FUN_EXPORT PFNWGLGENLOCKSOURCEI3DPROC __wglewGenlockSourceI3D;
1291 WGLEW_FUN_EXPORT PFNWGLGETGENLOCKSAMPLERATEI3DPROC __wglewGetGenlockSampleRateI3D;
1292 WGLEW_FUN_EXPORT PFNWGLGETGENLOCKSOURCEDELAYI3DPROC __wglewGetGenlockSourceDelayI3D;
1293 WGLEW_FUN_EXPORT PFNWGLGETGENLOCKSOURCEEDGEI3DPROC __wglewGetGenlockSourceEdgeI3D;
1294 WGLEW_FUN_EXPORT PFNWGLGETGENLOCKSOURCEI3DPROC __wglewGetGenlockSourceI3D;
1295 WGLEW_FUN_EXPORT PFNWGLISENABLEDGENLOCKI3DPROC __wglewIsEnabledGenlockI3D;
1296 WGLEW_FUN_EXPORT PFNWGLQUERYGENLOCKMAXSOURCEDELAYI3DPROC __wglewQueryGenlockMaxSourceDelayI3D;
1297 
1298 WGLEW_FUN_EXPORT PFNWGLASSOCIATEIMAGEBUFFEREVENTSI3DPROC __wglewAssociateImageBufferEventsI3D;
1299 WGLEW_FUN_EXPORT PFNWGLCREATEIMAGEBUFFERI3DPROC __wglewCreateImageBufferI3D;
1300 WGLEW_FUN_EXPORT PFNWGLDESTROYIMAGEBUFFERI3DPROC __wglewDestroyImageBufferI3D;
1301 WGLEW_FUN_EXPORT PFNWGLRELEASEIMAGEBUFFEREVENTSI3DPROC __wglewReleaseImageBufferEventsI3D;
1302 
1303 WGLEW_FUN_EXPORT PFNWGLDISABLEFRAMELOCKI3DPROC __wglewDisableFrameLockI3D;
1304 WGLEW_FUN_EXPORT PFNWGLENABLEFRAMELOCKI3DPROC __wglewEnableFrameLockI3D;
1305 WGLEW_FUN_EXPORT PFNWGLISENABLEDFRAMELOCKI3DPROC __wglewIsEnabledFrameLockI3D;
1306 WGLEW_FUN_EXPORT PFNWGLQUERYFRAMELOCKMASTERI3DPROC __wglewQueryFrameLockMasterI3D;
1307 
1308 WGLEW_FUN_EXPORT PFNWGLBEGINFRAMETRACKINGI3DPROC __wglewBeginFrameTrackingI3D;
1309 WGLEW_FUN_EXPORT PFNWGLENDFRAMETRACKINGI3DPROC __wglewEndFrameTrackingI3D;
1310 WGLEW_FUN_EXPORT PFNWGLGETFRAMEUSAGEI3DPROC __wglewGetFrameUsageI3D;
1311 WGLEW_FUN_EXPORT PFNWGLQUERYFRAMETRACKINGI3DPROC __wglewQueryFrameTrackingI3D;
1312 
1313 WGLEW_FUN_EXPORT PFNWGLDXCLOSEDEVICENVPROC __wglewDXCloseDeviceNV;
1314 WGLEW_FUN_EXPORT PFNWGLDXLOCKOBJECTSNVPROC __wglewDXLockObjectsNV;
1315 WGLEW_FUN_EXPORT PFNWGLDXOBJECTACCESSNVPROC __wglewDXObjectAccessNV;
1316 WGLEW_FUN_EXPORT PFNWGLDXOPENDEVICENVPROC __wglewDXOpenDeviceNV;
1317 WGLEW_FUN_EXPORT PFNWGLDXREGISTEROBJECTNVPROC __wglewDXRegisterObjectNV;
1318 WGLEW_FUN_EXPORT PFNWGLDXSETRESOURCESHAREHANDLENVPROC __wglewDXSetResourceShareHandleNV;
1319 WGLEW_FUN_EXPORT PFNWGLDXUNLOCKOBJECTSNVPROC __wglewDXUnlockObjectsNV;
1320 WGLEW_FUN_EXPORT PFNWGLDXUNREGISTEROBJECTNVPROC __wglewDXUnregisterObjectNV;
1321 
1322 WGLEW_FUN_EXPORT PFNWGLCOPYIMAGESUBDATANVPROC __wglewCopyImageSubDataNV;
1323 
1324 WGLEW_FUN_EXPORT PFNWGLDELAYBEFORESWAPNVPROC __wglewDelayBeforeSwapNV;
1325 
1326 WGLEW_FUN_EXPORT PFNWGLCREATEAFFINITYDCNVPROC __wglewCreateAffinityDCNV;
1327 WGLEW_FUN_EXPORT PFNWGLDELETEDCNVPROC __wglewDeleteDCNV;
1328 WGLEW_FUN_EXPORT PFNWGLENUMGPUDEVICESNVPROC __wglewEnumGpuDevicesNV;
1329 WGLEW_FUN_EXPORT PFNWGLENUMGPUSFROMAFFINITYDCNVPROC __wglewEnumGpusFromAffinityDCNV;
1330 WGLEW_FUN_EXPORT PFNWGLENUMGPUSNVPROC __wglewEnumGpusNV;
1331 
1332 WGLEW_FUN_EXPORT PFNWGLBINDVIDEODEVICENVPROC __wglewBindVideoDeviceNV;
1333 WGLEW_FUN_EXPORT PFNWGLENUMERATEVIDEODEVICESNVPROC __wglewEnumerateVideoDevicesNV;
1334 WGLEW_FUN_EXPORT PFNWGLQUERYCURRENTCONTEXTNVPROC __wglewQueryCurrentContextNV;
1335 
1336 WGLEW_FUN_EXPORT PFNWGLBINDSWAPBARRIERNVPROC __wglewBindSwapBarrierNV;
1337 WGLEW_FUN_EXPORT PFNWGLJOINSWAPGROUPNVPROC __wglewJoinSwapGroupNV;
1338 WGLEW_FUN_EXPORT PFNWGLQUERYFRAMECOUNTNVPROC __wglewQueryFrameCountNV;
1339 WGLEW_FUN_EXPORT PFNWGLQUERYMAXSWAPGROUPSNVPROC __wglewQueryMaxSwapGroupsNV;
1340 WGLEW_FUN_EXPORT PFNWGLQUERYSWAPGROUPNVPROC __wglewQuerySwapGroupNV;
1341 WGLEW_FUN_EXPORT PFNWGLRESETFRAMECOUNTNVPROC __wglewResetFrameCountNV;
1342 
1343 WGLEW_FUN_EXPORT PFNWGLALLOCATEMEMORYNVPROC __wglewAllocateMemoryNV;
1344 WGLEW_FUN_EXPORT PFNWGLFREEMEMORYNVPROC __wglewFreeMemoryNV;
1345 
1346 WGLEW_FUN_EXPORT PFNWGLBINDVIDEOCAPTUREDEVICENVPROC __wglewBindVideoCaptureDeviceNV;
1347 WGLEW_FUN_EXPORT PFNWGLENUMERATEVIDEOCAPTUREDEVICESNVPROC __wglewEnumerateVideoCaptureDevicesNV;
1348 WGLEW_FUN_EXPORT PFNWGLLOCKVIDEOCAPTUREDEVICENVPROC __wglewLockVideoCaptureDeviceNV;
1349 WGLEW_FUN_EXPORT PFNWGLQUERYVIDEOCAPTUREDEVICENVPROC __wglewQueryVideoCaptureDeviceNV;
1350 WGLEW_FUN_EXPORT PFNWGLRELEASEVIDEOCAPTUREDEVICENVPROC __wglewReleaseVideoCaptureDeviceNV;
1351 
1352 WGLEW_FUN_EXPORT PFNWGLBINDVIDEOIMAGENVPROC __wglewBindVideoImageNV;
1353 WGLEW_FUN_EXPORT PFNWGLGETVIDEODEVICENVPROC __wglewGetVideoDeviceNV;
1354 WGLEW_FUN_EXPORT PFNWGLGETVIDEOINFONVPROC __wglewGetVideoInfoNV;
1355 WGLEW_FUN_EXPORT PFNWGLRELEASEVIDEODEVICENVPROC __wglewReleaseVideoDeviceNV;
1356 WGLEW_FUN_EXPORT PFNWGLRELEASEVIDEOIMAGENVPROC __wglewReleaseVideoImageNV;
1357 WGLEW_FUN_EXPORT PFNWGLSENDPBUFFERTOVIDEONVPROC __wglewSendPbufferToVideoNV;
1358 
1359 WGLEW_FUN_EXPORT PFNWGLGETMSCRATEOMLPROC __wglewGetMscRateOML;
1360 WGLEW_FUN_EXPORT PFNWGLGETSYNCVALUESOMLPROC __wglewGetSyncValuesOML;
1361 WGLEW_FUN_EXPORT PFNWGLSWAPBUFFERSMSCOMLPROC __wglewSwapBuffersMscOML;
1362 WGLEW_FUN_EXPORT PFNWGLSWAPLAYERBUFFERSMSCOMLPROC __wglewSwapLayerBuffersMscOML;
1363 WGLEW_FUN_EXPORT PFNWGLWAITFORMSCOMLPROC __wglewWaitForMscOML;
1364 WGLEW_FUN_EXPORT PFNWGLWAITFORSBCOMLPROC __wglewWaitForSbcOML;
1365 WGLEW_VAR_EXPORT GLboolean __WGLEW_3DFX_multisample;
1366 WGLEW_VAR_EXPORT GLboolean __WGLEW_3DL_stereo_control;
1367 WGLEW_VAR_EXPORT GLboolean __WGLEW_AMD_gpu_association;
1368 WGLEW_VAR_EXPORT GLboolean __WGLEW_ARB_buffer_region;
1369 WGLEW_VAR_EXPORT GLboolean __WGLEW_ARB_context_flush_control;
1370 WGLEW_VAR_EXPORT GLboolean __WGLEW_ARB_create_context;
1371 WGLEW_VAR_EXPORT GLboolean __WGLEW_ARB_create_context_profile;
1372 WGLEW_VAR_EXPORT GLboolean __WGLEW_ARB_create_context_robustness;
1373 WGLEW_VAR_EXPORT GLboolean __WGLEW_ARB_extensions_string;
1374 WGLEW_VAR_EXPORT GLboolean __WGLEW_ARB_framebuffer_sRGB;
1375 WGLEW_VAR_EXPORT GLboolean __WGLEW_ARB_make_current_read;
1376 WGLEW_VAR_EXPORT GLboolean __WGLEW_ARB_multisample;
1377 WGLEW_VAR_EXPORT GLboolean __WGLEW_ARB_pbuffer;
1378 WGLEW_VAR_EXPORT GLboolean __WGLEW_ARB_pixel_format;
1379 WGLEW_VAR_EXPORT GLboolean __WGLEW_ARB_pixel_format_float;
1380 WGLEW_VAR_EXPORT GLboolean __WGLEW_ARB_render_texture;
1381 WGLEW_VAR_EXPORT GLboolean __WGLEW_ARB_robustness_application_isolation;
1382 WGLEW_VAR_EXPORT GLboolean __WGLEW_ARB_robustness_share_group_isolation;
1383 WGLEW_VAR_EXPORT GLboolean __WGLEW_ATI_pixel_format_float;
1384 WGLEW_VAR_EXPORT GLboolean __WGLEW_ATI_render_texture_rectangle;
1385 WGLEW_VAR_EXPORT GLboolean __WGLEW_EXT_create_context_es2_profile;
1386 WGLEW_VAR_EXPORT GLboolean __WGLEW_EXT_create_context_es_profile;
1387 WGLEW_VAR_EXPORT GLboolean __WGLEW_EXT_depth_float;
1388 WGLEW_VAR_EXPORT GLboolean __WGLEW_EXT_display_color_table;
1389 WGLEW_VAR_EXPORT GLboolean __WGLEW_EXT_extensions_string;
1390 WGLEW_VAR_EXPORT GLboolean __WGLEW_EXT_framebuffer_sRGB;
1391 WGLEW_VAR_EXPORT GLboolean __WGLEW_EXT_make_current_read;
1392 WGLEW_VAR_EXPORT GLboolean __WGLEW_EXT_multisample;
1393 WGLEW_VAR_EXPORT GLboolean __WGLEW_EXT_pbuffer;
1394 WGLEW_VAR_EXPORT GLboolean __WGLEW_EXT_pixel_format;
1395 WGLEW_VAR_EXPORT GLboolean __WGLEW_EXT_pixel_format_packed_float;
1396 WGLEW_VAR_EXPORT GLboolean __WGLEW_EXT_swap_control;
1397 WGLEW_VAR_EXPORT GLboolean __WGLEW_EXT_swap_control_tear;
1398 WGLEW_VAR_EXPORT GLboolean __WGLEW_I3D_digital_video_control;
1399 WGLEW_VAR_EXPORT GLboolean __WGLEW_I3D_gamma;
1400 WGLEW_VAR_EXPORT GLboolean __WGLEW_I3D_genlock;
1401 WGLEW_VAR_EXPORT GLboolean __WGLEW_I3D_image_buffer;
1402 WGLEW_VAR_EXPORT GLboolean __WGLEW_I3D_swap_frame_lock;
1403 WGLEW_VAR_EXPORT GLboolean __WGLEW_I3D_swap_frame_usage;
1404 WGLEW_VAR_EXPORT GLboolean __WGLEW_NV_DX_interop;
1405 WGLEW_VAR_EXPORT GLboolean __WGLEW_NV_DX_interop2;
1406 WGLEW_VAR_EXPORT GLboolean __WGLEW_NV_copy_image;
1407 WGLEW_VAR_EXPORT GLboolean __WGLEW_NV_delay_before_swap;
1408 WGLEW_VAR_EXPORT GLboolean __WGLEW_NV_float_buffer;
1409 WGLEW_VAR_EXPORT GLboolean __WGLEW_NV_gpu_affinity;
1410 WGLEW_VAR_EXPORT GLboolean __WGLEW_NV_multisample_coverage;
1411 WGLEW_VAR_EXPORT GLboolean __WGLEW_NV_present_video;
1412 WGLEW_VAR_EXPORT GLboolean __WGLEW_NV_render_depth_texture;
1413 WGLEW_VAR_EXPORT GLboolean __WGLEW_NV_render_texture_rectangle;
1414 WGLEW_VAR_EXPORT GLboolean __WGLEW_NV_swap_group;
1415 WGLEW_VAR_EXPORT GLboolean __WGLEW_NV_vertex_array_range;
1416 WGLEW_VAR_EXPORT GLboolean __WGLEW_NV_video_capture;
1417 WGLEW_VAR_EXPORT GLboolean __WGLEW_NV_video_output;
1418 WGLEW_VAR_EXPORT GLboolean __WGLEW_OML_sync_control;
1419 
1420 #ifdef GLEW_MX
1421 }; /* WGLEWContextStruct */
1422 #endif /* GLEW_MX */
1423 
1424 /* ------------------------------------------------------------------------- */
1425 
1426 #ifdef GLEW_MX
1427 
1428 typedef struct WGLEWContextStruct WGLEWContext;
1429 GLEWAPI GLenum GLEWAPIENTRY wglewContextInit (WGLEWContext *ctx);
1430 GLEWAPI GLboolean GLEWAPIENTRY wglewContextIsSupported (const WGLEWContext *ctx, const char *name);
1431 
1432 #define wglewInit() wglewContextInit(wglewGetContext())
1433 #define wglewIsSupported(x) wglewContextIsSupported(wglewGetContext(), x)
1434 
1435 #define WGLEW_GET_VAR(x) (*(const GLboolean*)&(wglewGetContext()->x))
1436 #define WGLEW_GET_FUN(x) wglewGetContext()->x
1437 
1438 #else /* GLEW_MX */
1439 
1440 GLEWAPI GLenum GLEWAPIENTRY wglewInit ();
1441 GLEWAPI GLboolean GLEWAPIENTRY wglewIsSupported (const char *name);
1442 
1443 #define WGLEW_GET_VAR(x) (*(const GLboolean*)&x)
1444 #define WGLEW_GET_FUN(x) x
1445 
1446 #endif /* GLEW_MX */
1447 
1448 GLEWAPI GLboolean GLEWAPIENTRY wglewGetExtension (const char *name);
1449 
1450 #ifdef __cplusplus
1451 }
1452 #endif
1453 
1454 #undef GLEWAPI
1455 
1456 #endif /* __wglew_h__ */
1457