2 ** The OpenGL Extension Wrangler Library
3 ** Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
4 ** Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
5 ** Copyright (C) 2002, Lev Povalahev
6 ** All rights reserved.
8 ** Redistribution and use in source and binary forms, with or without
9 ** modification, are permitted provided that the following conditions are met:
11 ** * Redistributions of source code must retain the above copyright notice,
12 ** this list of conditions and the following disclaimer.
13 ** * Redistributions in binary form must reproduce the above copyright notice,
14 ** this list of conditions and the following disclaimer in the documentation
15 ** and/or other materials provided with the distribution.
16 ** * The name of the author may be used to endorse or promote products
17 ** derived from this software without specific prior written permission.
19 ** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
20 ** AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
21 ** IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
22 ** ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
23 ** LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
24 ** CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
25 ** SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
26 ** INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
27 ** CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
28 ** ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
29 ** THE POSSIBILITY OF SUCH DAMAGE.
33 ** Copyright (c) 2007 The Khronos Group Inc.
35 ** Permission is hereby granted, free of charge, to any person obtaining a
36 ** copy of this software and/or associated documentation files (the
37 ** "Materials"), to deal in the Materials without restriction, including
38 ** without limitation the rights to use, copy, modify, merge, publish,
39 ** distribute, sublicense, and/or sell copies of the Materials, and to
40 ** permit persons to whom the Materials are furnished to do so, subject to
41 ** the following conditions:
43 ** The above copyright notice and this permission notice shall be included
44 ** in all copies or substantial portions of the Materials.
46 ** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
47 ** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
48 ** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
49 ** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
50 ** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
51 ** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
52 ** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
60 #error wglext.h included before wglew.h
66 # ifndef WIN32_LEAN_AND_MEAN
67 # define WIN32_LEAN_AND_MEAN 1
70 # undef WIN32_LEAN_AND_MEAN
74 * GLEW_STATIC needs to be set when using the static version.
75 * GLEW_BUILD is set when building the DLL version.
78 # define GLEWAPI extern
81 # define GLEWAPI extern __declspec(dllexport)
83 # define GLEWAPI extern __declspec(dllimport)
91 /* -------------------------- WGL_3DFX_multisample ------------------------- */
93 #ifndef WGL_3DFX_multisample
94 #define WGL_3DFX_multisample 1
96 #define WGL_SAMPLE_BUFFERS_3DFX 0x2060
97 #define WGL_SAMPLES_3DFX 0x2061
99 #define WGLEW_3DFX_multisample WGLEW_GET_VAR(__WGLEW_3DFX_multisample)
101 #endif /* WGL_3DFX_multisample */
103 /* ------------------------- WGL_3DL_stereo_control ------------------------ */
105 #ifndef WGL_3DL_stereo_control
106 #define WGL_3DL_stereo_control 1
108 #define WGL_STEREO_EMITTER_ENABLE_3DL 0x2055
109 #define WGL_STEREO_EMITTER_DISABLE_3DL 0x2056
110 #define WGL_STEREO_POLARITY_NORMAL_3DL 0x2057
111 #define WGL_STEREO_POLARITY_INVERT_3DL 0x2058
113 typedef BOOL (WINAPI
* PFNWGLSETSTEREOEMITTERSTATE3DLPROC
) (HDC hDC
, UINT uState
);
115 #define wglSetStereoEmitterState3DL WGLEW_GET_FUN(__wglewSetStereoEmitterState3DL)
117 #define WGLEW_3DL_stereo_control WGLEW_GET_VAR(__WGLEW_3DL_stereo_control)
119 #endif /* WGL_3DL_stereo_control */
121 /* ------------------------ WGL_AMD_gpu_association ------------------------ */
123 #ifndef WGL_AMD_gpu_association
124 #define WGL_AMD_gpu_association 1
126 #define WGL_GPU_VENDOR_AMD 0x1F00
127 #define WGL_GPU_RENDERER_STRING_AMD 0x1F01
128 #define WGL_GPU_OPENGL_VERSION_STRING_AMD 0x1F02
129 #define WGL_GPU_FASTEST_TARGET_GPUS_AMD 0x21A2
130 #define WGL_GPU_RAM_AMD 0x21A3
131 #define WGL_GPU_CLOCK_AMD 0x21A4
132 #define WGL_GPU_NUM_PIPES_AMD 0x21A5
133 #define WGL_GPU_NUM_SIMD_AMD 0x21A6
134 #define WGL_GPU_NUM_RB_AMD 0x21A7
135 #define WGL_GPU_NUM_SPI_AMD 0x21A8
137 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
);
138 typedef HGLRC (WINAPI
* PFNWGLCREATEASSOCIATEDCONTEXTAMDPROC
) (UINT id
);
139 typedef HGLRC (WINAPI
* PFNWGLCREATEASSOCIATEDCONTEXTATTRIBSAMDPROC
) (UINT id
, HGLRC hShareContext
, const int* attribList
);
140 typedef BOOL (WINAPI
* PFNWGLDELETEASSOCIATEDCONTEXTAMDPROC
) (HGLRC hglrc
);
141 typedef UINT (WINAPI
* PFNWGLGETCONTEXTGPUIDAMDPROC
) (HGLRC hglrc
);
142 typedef HGLRC (WINAPI
* PFNWGLGETCURRENTASSOCIATEDCONTEXTAMDPROC
) (void);
143 typedef UINT (WINAPI
* PFNWGLGETGPUIDSAMDPROC
) (UINT maxCount
, UINT
* ids
);
144 typedef INT (WINAPI
* PFNWGLGETGPUINFOAMDPROC
) (UINT id
, INT property
, GLenum dataType
, UINT size
, void* data
);
145 typedef BOOL (WINAPI
* PFNWGLMAKEASSOCIATEDCONTEXTCURRENTAMDPROC
) (HGLRC hglrc
);
147 #define wglBlitContextFramebufferAMD WGLEW_GET_FUN(__wglewBlitContextFramebufferAMD)
148 #define wglCreateAssociatedContextAMD WGLEW_GET_FUN(__wglewCreateAssociatedContextAMD)
149 #define wglCreateAssociatedContextAttribsAMD WGLEW_GET_FUN(__wglewCreateAssociatedContextAttribsAMD)
150 #define wglDeleteAssociatedContextAMD WGLEW_GET_FUN(__wglewDeleteAssociatedContextAMD)
151 #define wglGetContextGPUIDAMD WGLEW_GET_FUN(__wglewGetContextGPUIDAMD)
152 #define wglGetCurrentAssociatedContextAMD WGLEW_GET_FUN(__wglewGetCurrentAssociatedContextAMD)
153 #define wglGetGPUIDsAMD WGLEW_GET_FUN(__wglewGetGPUIDsAMD)
154 #define wglGetGPUInfoAMD WGLEW_GET_FUN(__wglewGetGPUInfoAMD)
155 #define wglMakeAssociatedContextCurrentAMD WGLEW_GET_FUN(__wglewMakeAssociatedContextCurrentAMD)
157 #define WGLEW_AMD_gpu_association WGLEW_GET_VAR(__WGLEW_AMD_gpu_association)
159 #endif /* WGL_AMD_gpu_association */
161 /* ------------------------- WGL_ARB_buffer_region ------------------------- */
163 #ifndef WGL_ARB_buffer_region
164 #define WGL_ARB_buffer_region 1
166 #define WGL_FRONT_COLOR_BUFFER_BIT_ARB 0x00000001
167 #define WGL_BACK_COLOR_BUFFER_BIT_ARB 0x00000002
168 #define WGL_DEPTH_BUFFER_BIT_ARB 0x00000004
169 #define WGL_STENCIL_BUFFER_BIT_ARB 0x00000008
171 typedef HANDLE (WINAPI
* PFNWGLCREATEBUFFERREGIONARBPROC
) (HDC hDC
, int iLayerPlane
, UINT uType
);
172 typedef VOID (WINAPI
* PFNWGLDELETEBUFFERREGIONARBPROC
) (HANDLE hRegion
);
173 typedef BOOL (WINAPI
* PFNWGLRESTOREBUFFERREGIONARBPROC
) (HANDLE hRegion
, int x
, int y
, int width
, int height
, int xSrc
, int ySrc
);
174 typedef BOOL (WINAPI
* PFNWGLSAVEBUFFERREGIONARBPROC
) (HANDLE hRegion
, int x
, int y
, int width
, int height
);
176 #define wglCreateBufferRegionARB WGLEW_GET_FUN(__wglewCreateBufferRegionARB)
177 #define wglDeleteBufferRegionARB WGLEW_GET_FUN(__wglewDeleteBufferRegionARB)
178 #define wglRestoreBufferRegionARB WGLEW_GET_FUN(__wglewRestoreBufferRegionARB)
179 #define wglSaveBufferRegionARB WGLEW_GET_FUN(__wglewSaveBufferRegionARB)
181 #define WGLEW_ARB_buffer_region WGLEW_GET_VAR(__WGLEW_ARB_buffer_region)
183 #endif /* WGL_ARB_buffer_region */
185 /* ------------------------- WGL_ARB_create_context ------------------------ */
187 #ifndef WGL_ARB_create_context
188 #define WGL_ARB_create_context 1
190 #define WGL_CONTEXT_DEBUG_BIT_ARB 0x0001
191 #define WGL_CONTEXT_FORWARD_COMPATIBLE_BIT_ARB 0x0002
192 #define WGL_CONTEXT_MAJOR_VERSION_ARB 0x2091
193 #define WGL_CONTEXT_MINOR_VERSION_ARB 0x2092
194 #define WGL_CONTEXT_LAYER_PLANE_ARB 0x2093
195 #define WGL_CONTEXT_FLAGS_ARB 0x2094
197 typedef HGLRC (WINAPI
* PFNWGLCREATECONTEXTATTRIBSARBPROC
) (HDC hDC
, HGLRC hShareContext
, const int* attribList
);
199 #define wglCreateContextAttribsARB WGLEW_GET_FUN(__wglewCreateContextAttribsARB)
201 #define WGLEW_ARB_create_context WGLEW_GET_VAR(__WGLEW_ARB_create_context)
203 #endif /* WGL_ARB_create_context */
205 /* --------------------- WGL_ARB_create_context_profile -------------------- */
207 #ifndef WGL_ARB_create_context_profile
208 #define WGL_ARB_create_context_profile 1
210 #define WGL_CONTEXT_CORE_PROFILE_BIT_ARB 0x00000001
211 #define WGL_CONTEXT_COMPATIBILITY_PROFILE_BIT_ARB 0x00000002
212 #define WGL_CONTEXT_PROFILE_MASK_ARB 0x9126
214 #define WGLEW_ARB_create_context_profile WGLEW_GET_VAR(__WGLEW_ARB_create_context_profile)
216 #endif /* WGL_ARB_create_context_profile */
218 /* ------------------- WGL_ARB_create_context_robustness ------------------- */
220 #ifndef WGL_ARB_create_context_robustness
221 #define WGL_ARB_create_context_robustness 1
223 #define WGL_CONTEXT_ROBUST_ACCESS_BIT_ARB 0x00000004
224 #define WGL_LOSE_CONTEXT_ON_RESET_ARB 0x8252
225 #define WGL_CONTEXT_RESET_NOTIFICATION_STRATEGY_ARB 0x8256
226 #define WGL_NO_RESET_NOTIFICATION_ARB 0x8261
228 #define WGLEW_ARB_create_context_robustness WGLEW_GET_VAR(__WGLEW_ARB_create_context_robustness)
230 #endif /* WGL_ARB_create_context_robustness */
232 /* ----------------------- WGL_ARB_extensions_string ----------------------- */
234 #ifndef WGL_ARB_extensions_string
235 #define WGL_ARB_extensions_string 1
237 typedef const char* (WINAPI
* PFNWGLGETEXTENSIONSSTRINGARBPROC
) (HDC hdc
);
239 #define wglGetExtensionsStringARB WGLEW_GET_FUN(__wglewGetExtensionsStringARB)
241 #define WGLEW_ARB_extensions_string WGLEW_GET_VAR(__WGLEW_ARB_extensions_string)
243 #endif /* WGL_ARB_extensions_string */
245 /* ------------------------ WGL_ARB_framebuffer_sRGB ----------------------- */
247 #ifndef WGL_ARB_framebuffer_sRGB
248 #define WGL_ARB_framebuffer_sRGB 1
250 #define WGL_FRAMEBUFFER_SRGB_CAPABLE_ARB 0x20A9
252 #define WGLEW_ARB_framebuffer_sRGB WGLEW_GET_VAR(__WGLEW_ARB_framebuffer_sRGB)
254 #endif /* WGL_ARB_framebuffer_sRGB */
256 /* ----------------------- WGL_ARB_make_current_read ----------------------- */
258 #ifndef WGL_ARB_make_current_read
259 #define WGL_ARB_make_current_read 1
261 #define ERROR_INVALID_PIXEL_TYPE_ARB 0x2043
262 #define ERROR_INCOMPATIBLE_DEVICE_CONTEXTS_ARB 0x2054
264 typedef HDC (WINAPI
* PFNWGLGETCURRENTREADDCARBPROC
) (VOID
);
265 typedef BOOL (WINAPI
* PFNWGLMAKECONTEXTCURRENTARBPROC
) (HDC hDrawDC
, HDC hReadDC
, HGLRC hglrc
);
267 #define wglGetCurrentReadDCARB WGLEW_GET_FUN(__wglewGetCurrentReadDCARB)
268 #define wglMakeContextCurrentARB WGLEW_GET_FUN(__wglewMakeContextCurrentARB)
270 #define WGLEW_ARB_make_current_read WGLEW_GET_VAR(__WGLEW_ARB_make_current_read)
272 #endif /* WGL_ARB_make_current_read */
274 /* -------------------------- WGL_ARB_multisample -------------------------- */
276 #ifndef WGL_ARB_multisample
277 #define WGL_ARB_multisample 1
279 #define WGL_SAMPLE_BUFFERS_ARB 0x2041
280 #define WGL_SAMPLES_ARB 0x2042
282 #define WGLEW_ARB_multisample WGLEW_GET_VAR(__WGLEW_ARB_multisample)
284 #endif /* WGL_ARB_multisample */
286 /* ---------------------------- WGL_ARB_pbuffer ---------------------------- */
288 #ifndef WGL_ARB_pbuffer
289 #define WGL_ARB_pbuffer 1
291 #define WGL_DRAW_TO_PBUFFER_ARB 0x202D
292 #define WGL_MAX_PBUFFER_PIXELS_ARB 0x202E
293 #define WGL_MAX_PBUFFER_WIDTH_ARB 0x202F
294 #define WGL_MAX_PBUFFER_HEIGHT_ARB 0x2030
295 #define WGL_PBUFFER_LARGEST_ARB 0x2033
296 #define WGL_PBUFFER_WIDTH_ARB 0x2034
297 #define WGL_PBUFFER_HEIGHT_ARB 0x2035
298 #define WGL_PBUFFER_LOST_ARB 0x2036
300 DECLARE_HANDLE(HPBUFFERARB
);
302 typedef HPBUFFERARB (WINAPI
* PFNWGLCREATEPBUFFERARBPROC
) (HDC hDC
, int iPixelFormat
, int iWidth
, int iHeight
, const int* piAttribList
);
303 typedef BOOL (WINAPI
* PFNWGLDESTROYPBUFFERARBPROC
) (HPBUFFERARB hPbuffer
);
304 typedef HDC (WINAPI
* PFNWGLGETPBUFFERDCARBPROC
) (HPBUFFERARB hPbuffer
);
305 typedef BOOL (WINAPI
* PFNWGLQUERYPBUFFERARBPROC
) (HPBUFFERARB hPbuffer
, int iAttribute
, int* piValue
);
306 typedef int (WINAPI
* PFNWGLRELEASEPBUFFERDCARBPROC
) (HPBUFFERARB hPbuffer
, HDC hDC
);
308 #define wglCreatePbufferARB WGLEW_GET_FUN(__wglewCreatePbufferARB)
309 #define wglDestroyPbufferARB WGLEW_GET_FUN(__wglewDestroyPbufferARB)
310 #define wglGetPbufferDCARB WGLEW_GET_FUN(__wglewGetPbufferDCARB)
311 #define wglQueryPbufferARB WGLEW_GET_FUN(__wglewQueryPbufferARB)
312 #define wglReleasePbufferDCARB WGLEW_GET_FUN(__wglewReleasePbufferDCARB)
314 #define WGLEW_ARB_pbuffer WGLEW_GET_VAR(__WGLEW_ARB_pbuffer)
316 #endif /* WGL_ARB_pbuffer */
318 /* -------------------------- WGL_ARB_pixel_format ------------------------- */
320 #ifndef WGL_ARB_pixel_format
321 #define WGL_ARB_pixel_format 1
323 #define WGL_NUMBER_PIXEL_FORMATS_ARB 0x2000
324 #define WGL_DRAW_TO_WINDOW_ARB 0x2001
325 #define WGL_DRAW_TO_BITMAP_ARB 0x2002
326 #define WGL_ACCELERATION_ARB 0x2003
327 #define WGL_NEED_PALETTE_ARB 0x2004
328 #define WGL_NEED_SYSTEM_PALETTE_ARB 0x2005
329 #define WGL_SWAP_LAYER_BUFFERS_ARB 0x2006
330 #define WGL_SWAP_METHOD_ARB 0x2007
331 #define WGL_NUMBER_OVERLAYS_ARB 0x2008
332 #define WGL_NUMBER_UNDERLAYS_ARB 0x2009
333 #define WGL_TRANSPARENT_ARB 0x200A
334 #define WGL_SHARE_DEPTH_ARB 0x200C
335 #define WGL_SHARE_STENCIL_ARB 0x200D
336 #define WGL_SHARE_ACCUM_ARB 0x200E
337 #define WGL_SUPPORT_GDI_ARB 0x200F
338 #define WGL_SUPPORT_OPENGL_ARB 0x2010
339 #define WGL_DOUBLE_BUFFER_ARB 0x2011
340 #define WGL_STEREO_ARB 0x2012
341 #define WGL_PIXEL_TYPE_ARB 0x2013
342 #define WGL_COLOR_BITS_ARB 0x2014
343 #define WGL_RED_BITS_ARB 0x2015
344 #define WGL_RED_SHIFT_ARB 0x2016
345 #define WGL_GREEN_BITS_ARB 0x2017
346 #define WGL_GREEN_SHIFT_ARB 0x2018
347 #define WGL_BLUE_BITS_ARB 0x2019
348 #define WGL_BLUE_SHIFT_ARB 0x201A
349 #define WGL_ALPHA_BITS_ARB 0x201B
350 #define WGL_ALPHA_SHIFT_ARB 0x201C
351 #define WGL_ACCUM_BITS_ARB 0x201D
352 #define WGL_ACCUM_RED_BITS_ARB 0x201E
353 #define WGL_ACCUM_GREEN_BITS_ARB 0x201F
354 #define WGL_ACCUM_BLUE_BITS_ARB 0x2020
355 #define WGL_ACCUM_ALPHA_BITS_ARB 0x2021
356 #define WGL_DEPTH_BITS_ARB 0x2022
357 #define WGL_STENCIL_BITS_ARB 0x2023
358 #define WGL_AUX_BUFFERS_ARB 0x2024
359 #define WGL_NO_ACCELERATION_ARB 0x2025
360 #define WGL_GENERIC_ACCELERATION_ARB 0x2026
361 #define WGL_FULL_ACCELERATION_ARB 0x2027
362 #define WGL_SWAP_EXCHANGE_ARB 0x2028
363 #define WGL_SWAP_COPY_ARB 0x2029
364 #define WGL_SWAP_UNDEFINED_ARB 0x202A
365 #define WGL_TYPE_RGBA_ARB 0x202B
366 #define WGL_TYPE_COLORINDEX_ARB 0x202C
367 #define WGL_TRANSPARENT_RED_VALUE_ARB 0x2037
368 #define WGL_TRANSPARENT_GREEN_VALUE_ARB 0x2038
369 #define WGL_TRANSPARENT_BLUE_VALUE_ARB 0x2039
370 #define WGL_TRANSPARENT_ALPHA_VALUE_ARB 0x203A
371 #define WGL_TRANSPARENT_INDEX_VALUE_ARB 0x203B
373 typedef BOOL (WINAPI
* PFNWGLCHOOSEPIXELFORMATARBPROC
) (HDC hdc
, const int* piAttribIList
, const FLOAT
*pfAttribFList
, UINT nMaxFormats
, int *piFormats
, UINT
*nNumFormats
);
374 typedef BOOL (WINAPI
* PFNWGLGETPIXELFORMATATTRIBFVARBPROC
) (HDC hdc
, int iPixelFormat
, int iLayerPlane
, UINT nAttributes
, const int* piAttributes
, FLOAT
*pfValues
);
375 typedef BOOL (WINAPI
* PFNWGLGETPIXELFORMATATTRIBIVARBPROC
) (HDC hdc
, int iPixelFormat
, int iLayerPlane
, UINT nAttributes
, const int* piAttributes
, int *piValues
);
377 #define wglChoosePixelFormatARB WGLEW_GET_FUN(__wglewChoosePixelFormatARB)
378 #define wglGetPixelFormatAttribfvARB WGLEW_GET_FUN(__wglewGetPixelFormatAttribfvARB)
379 #define wglGetPixelFormatAttribivARB WGLEW_GET_FUN(__wglewGetPixelFormatAttribivARB)
381 #define WGLEW_ARB_pixel_format WGLEW_GET_VAR(__WGLEW_ARB_pixel_format)
383 #endif /* WGL_ARB_pixel_format */
385 /* ----------------------- WGL_ARB_pixel_format_float ---------------------- */
387 #ifndef WGL_ARB_pixel_format_float
388 #define WGL_ARB_pixel_format_float 1
390 #define WGL_TYPE_RGBA_FLOAT_ARB 0x21A0
392 #define WGLEW_ARB_pixel_format_float WGLEW_GET_VAR(__WGLEW_ARB_pixel_format_float)
394 #endif /* WGL_ARB_pixel_format_float */
396 /* ------------------------- WGL_ARB_render_texture ------------------------ */
398 #ifndef WGL_ARB_render_texture
399 #define WGL_ARB_render_texture 1
401 #define WGL_BIND_TO_TEXTURE_RGB_ARB 0x2070
402 #define WGL_BIND_TO_TEXTURE_RGBA_ARB 0x2071
403 #define WGL_TEXTURE_FORMAT_ARB 0x2072
404 #define WGL_TEXTURE_TARGET_ARB 0x2073
405 #define WGL_MIPMAP_TEXTURE_ARB 0x2074
406 #define WGL_TEXTURE_RGB_ARB 0x2075
407 #define WGL_TEXTURE_RGBA_ARB 0x2076
408 #define WGL_NO_TEXTURE_ARB 0x2077
409 #define WGL_TEXTURE_CUBE_MAP_ARB 0x2078
410 #define WGL_TEXTURE_1D_ARB 0x2079
411 #define WGL_TEXTURE_2D_ARB 0x207A
412 #define WGL_MIPMAP_LEVEL_ARB 0x207B
413 #define WGL_CUBE_MAP_FACE_ARB 0x207C
414 #define WGL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB 0x207D
415 #define WGL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB 0x207E
416 #define WGL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB 0x207F
417 #define WGL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB 0x2080
418 #define WGL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB 0x2081
419 #define WGL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB 0x2082
420 #define WGL_FRONT_LEFT_ARB 0x2083
421 #define WGL_FRONT_RIGHT_ARB 0x2084
422 #define WGL_BACK_LEFT_ARB 0x2085
423 #define WGL_BACK_RIGHT_ARB 0x2086
424 #define WGL_AUX0_ARB 0x2087
425 #define WGL_AUX1_ARB 0x2088
426 #define WGL_AUX2_ARB 0x2089
427 #define WGL_AUX3_ARB 0x208A
428 #define WGL_AUX4_ARB 0x208B
429 #define WGL_AUX5_ARB 0x208C
430 #define WGL_AUX6_ARB 0x208D
431 #define WGL_AUX7_ARB 0x208E
432 #define WGL_AUX8_ARB 0x208F
433 #define WGL_AUX9_ARB 0x2090
435 typedef BOOL (WINAPI
* PFNWGLBINDTEXIMAGEARBPROC
) (HPBUFFERARB hPbuffer
, int iBuffer
);
436 typedef BOOL (WINAPI
* PFNWGLRELEASETEXIMAGEARBPROC
) (HPBUFFERARB hPbuffer
, int iBuffer
);
437 typedef BOOL (WINAPI
* PFNWGLSETPBUFFERATTRIBARBPROC
) (HPBUFFERARB hPbuffer
, const int* piAttribList
);
439 #define wglBindTexImageARB WGLEW_GET_FUN(__wglewBindTexImageARB)
440 #define wglReleaseTexImageARB WGLEW_GET_FUN(__wglewReleaseTexImageARB)
441 #define wglSetPbufferAttribARB WGLEW_GET_FUN(__wglewSetPbufferAttribARB)
443 #define WGLEW_ARB_render_texture WGLEW_GET_VAR(__WGLEW_ARB_render_texture)
445 #endif /* WGL_ARB_render_texture */
447 /* ----------------------- WGL_ATI_pixel_format_float ---------------------- */
449 #ifndef WGL_ATI_pixel_format_float
450 #define WGL_ATI_pixel_format_float 1
452 #define WGL_TYPE_RGBA_FLOAT_ATI 0x21A0
453 #define GL_RGBA_FLOAT_MODE_ATI 0x8820
454 #define GL_COLOR_CLEAR_UNCLAMPED_VALUE_ATI 0x8835
456 #define WGLEW_ATI_pixel_format_float WGLEW_GET_VAR(__WGLEW_ATI_pixel_format_float)
458 #endif /* WGL_ATI_pixel_format_float */
460 /* -------------------- WGL_ATI_render_texture_rectangle ------------------- */
462 #ifndef WGL_ATI_render_texture_rectangle
463 #define WGL_ATI_render_texture_rectangle 1
465 #define WGL_TEXTURE_RECTANGLE_ATI 0x21A5
467 #define WGLEW_ATI_render_texture_rectangle WGLEW_GET_VAR(__WGLEW_ATI_render_texture_rectangle)
469 #endif /* WGL_ATI_render_texture_rectangle */
471 /* ------------------- WGL_EXT_create_context_es2_profile ------------------ */
473 #ifndef WGL_EXT_create_context_es2_profile
474 #define WGL_EXT_create_context_es2_profile 1
476 #define WGL_CONTEXT_ES2_PROFILE_BIT_EXT 0x00000004
478 #define WGLEW_EXT_create_context_es2_profile WGLEW_GET_VAR(__WGLEW_EXT_create_context_es2_profile)
480 #endif /* WGL_EXT_create_context_es2_profile */
482 /* -------------------------- WGL_EXT_depth_float -------------------------- */
484 #ifndef WGL_EXT_depth_float
485 #define WGL_EXT_depth_float 1
487 #define WGL_DEPTH_FLOAT_EXT 0x2040
489 #define WGLEW_EXT_depth_float WGLEW_GET_VAR(__WGLEW_EXT_depth_float)
491 #endif /* WGL_EXT_depth_float */
493 /* ---------------------- WGL_EXT_display_color_table ---------------------- */
495 #ifndef WGL_EXT_display_color_table
496 #define WGL_EXT_display_color_table 1
498 typedef GLboolean (WINAPI
* PFNWGLBINDDISPLAYCOLORTABLEEXTPROC
) (GLushort id
);
499 typedef GLboolean (WINAPI
* PFNWGLCREATEDISPLAYCOLORTABLEEXTPROC
) (GLushort id
);
500 typedef void (WINAPI
* PFNWGLDESTROYDISPLAYCOLORTABLEEXTPROC
) (GLushort id
);
501 typedef GLboolean (WINAPI
* PFNWGLLOADDISPLAYCOLORTABLEEXTPROC
) (GLushort
* table
, GLuint length
);
503 #define wglBindDisplayColorTableEXT WGLEW_GET_FUN(__wglewBindDisplayColorTableEXT)
504 #define wglCreateDisplayColorTableEXT WGLEW_GET_FUN(__wglewCreateDisplayColorTableEXT)
505 #define wglDestroyDisplayColorTableEXT WGLEW_GET_FUN(__wglewDestroyDisplayColorTableEXT)
506 #define wglLoadDisplayColorTableEXT WGLEW_GET_FUN(__wglewLoadDisplayColorTableEXT)
508 #define WGLEW_EXT_display_color_table WGLEW_GET_VAR(__WGLEW_EXT_display_color_table)
510 #endif /* WGL_EXT_display_color_table */
512 /* ----------------------- WGL_EXT_extensions_string ----------------------- */
514 #ifndef WGL_EXT_extensions_string
515 #define WGL_EXT_extensions_string 1
517 typedef const char* (WINAPI
* PFNWGLGETEXTENSIONSSTRINGEXTPROC
) (void);
519 #define wglGetExtensionsStringEXT WGLEW_GET_FUN(__wglewGetExtensionsStringEXT)
521 #define WGLEW_EXT_extensions_string WGLEW_GET_VAR(__WGLEW_EXT_extensions_string)
523 #endif /* WGL_EXT_extensions_string */
525 /* ------------------------ WGL_EXT_framebuffer_sRGB ----------------------- */
527 #ifndef WGL_EXT_framebuffer_sRGB
528 #define WGL_EXT_framebuffer_sRGB 1
530 #define WGL_FRAMEBUFFER_SRGB_CAPABLE_EXT 0x20A9
532 #define WGLEW_EXT_framebuffer_sRGB WGLEW_GET_VAR(__WGLEW_EXT_framebuffer_sRGB)
534 #endif /* WGL_EXT_framebuffer_sRGB */
536 /* ----------------------- WGL_EXT_make_current_read ----------------------- */
538 #ifndef WGL_EXT_make_current_read
539 #define WGL_EXT_make_current_read 1
541 #define ERROR_INVALID_PIXEL_TYPE_EXT 0x2043
543 typedef HDC (WINAPI
* PFNWGLGETCURRENTREADDCEXTPROC
) (VOID
);
544 typedef BOOL (WINAPI
* PFNWGLMAKECONTEXTCURRENTEXTPROC
) (HDC hDrawDC
, HDC hReadDC
, HGLRC hglrc
);
546 #define wglGetCurrentReadDCEXT WGLEW_GET_FUN(__wglewGetCurrentReadDCEXT)
547 #define wglMakeContextCurrentEXT WGLEW_GET_FUN(__wglewMakeContextCurrentEXT)
549 #define WGLEW_EXT_make_current_read WGLEW_GET_VAR(__WGLEW_EXT_make_current_read)
551 #endif /* WGL_EXT_make_current_read */
553 /* -------------------------- WGL_EXT_multisample -------------------------- */
555 #ifndef WGL_EXT_multisample
556 #define WGL_EXT_multisample 1
558 #define WGL_SAMPLE_BUFFERS_EXT 0x2041
559 #define WGL_SAMPLES_EXT 0x2042
561 #define WGLEW_EXT_multisample WGLEW_GET_VAR(__WGLEW_EXT_multisample)
563 #endif /* WGL_EXT_multisample */
565 /* ---------------------------- WGL_EXT_pbuffer ---------------------------- */
567 #ifndef WGL_EXT_pbuffer
568 #define WGL_EXT_pbuffer 1
570 #define WGL_DRAW_TO_PBUFFER_EXT 0x202D
571 #define WGL_MAX_PBUFFER_PIXELS_EXT 0x202E
572 #define WGL_MAX_PBUFFER_WIDTH_EXT 0x202F
573 #define WGL_MAX_PBUFFER_HEIGHT_EXT 0x2030
574 #define WGL_OPTIMAL_PBUFFER_WIDTH_EXT 0x2031
575 #define WGL_OPTIMAL_PBUFFER_HEIGHT_EXT 0x2032
576 #define WGL_PBUFFER_LARGEST_EXT 0x2033
577 #define WGL_PBUFFER_WIDTH_EXT 0x2034
578 #define WGL_PBUFFER_HEIGHT_EXT 0x2035
580 DECLARE_HANDLE(HPBUFFEREXT
);
582 typedef HPBUFFEREXT (WINAPI
* PFNWGLCREATEPBUFFEREXTPROC
) (HDC hDC
, int iPixelFormat
, int iWidth
, int iHeight
, const int* piAttribList
);
583 typedef BOOL (WINAPI
* PFNWGLDESTROYPBUFFEREXTPROC
) (HPBUFFEREXT hPbuffer
);
584 typedef HDC (WINAPI
* PFNWGLGETPBUFFERDCEXTPROC
) (HPBUFFEREXT hPbuffer
);
585 typedef BOOL (WINAPI
* PFNWGLQUERYPBUFFEREXTPROC
) (HPBUFFEREXT hPbuffer
, int iAttribute
, int* piValue
);
586 typedef int (WINAPI
* PFNWGLRELEASEPBUFFERDCEXTPROC
) (HPBUFFEREXT hPbuffer
, HDC hDC
);
588 #define wglCreatePbufferEXT WGLEW_GET_FUN(__wglewCreatePbufferEXT)
589 #define wglDestroyPbufferEXT WGLEW_GET_FUN(__wglewDestroyPbufferEXT)
590 #define wglGetPbufferDCEXT WGLEW_GET_FUN(__wglewGetPbufferDCEXT)
591 #define wglQueryPbufferEXT WGLEW_GET_FUN(__wglewQueryPbufferEXT)
592 #define wglReleasePbufferDCEXT WGLEW_GET_FUN(__wglewReleasePbufferDCEXT)
594 #define WGLEW_EXT_pbuffer WGLEW_GET_VAR(__WGLEW_EXT_pbuffer)
596 #endif /* WGL_EXT_pbuffer */
598 /* -------------------------- WGL_EXT_pixel_format ------------------------- */
600 #ifndef WGL_EXT_pixel_format
601 #define WGL_EXT_pixel_format 1
603 #define WGL_NUMBER_PIXEL_FORMATS_EXT 0x2000
604 #define WGL_DRAW_TO_WINDOW_EXT 0x2001
605 #define WGL_DRAW_TO_BITMAP_EXT 0x2002
606 #define WGL_ACCELERATION_EXT 0x2003
607 #define WGL_NEED_PALETTE_EXT 0x2004
608 #define WGL_NEED_SYSTEM_PALETTE_EXT 0x2005
609 #define WGL_SWAP_LAYER_BUFFERS_EXT 0x2006
610 #define WGL_SWAP_METHOD_EXT 0x2007
611 #define WGL_NUMBER_OVERLAYS_EXT 0x2008
612 #define WGL_NUMBER_UNDERLAYS_EXT 0x2009
613 #define WGL_TRANSPARENT_EXT 0x200A
614 #define WGL_TRANSPARENT_VALUE_EXT 0x200B
615 #define WGL_SHARE_DEPTH_EXT 0x200C
616 #define WGL_SHARE_STENCIL_EXT 0x200D
617 #define WGL_SHARE_ACCUM_EXT 0x200E
618 #define WGL_SUPPORT_GDI_EXT 0x200F
619 #define WGL_SUPPORT_OPENGL_EXT 0x2010
620 #define WGL_DOUBLE_BUFFER_EXT 0x2011
621 #define WGL_STEREO_EXT 0x2012
622 #define WGL_PIXEL_TYPE_EXT 0x2013
623 #define WGL_COLOR_BITS_EXT 0x2014
624 #define WGL_RED_BITS_EXT 0x2015
625 #define WGL_RED_SHIFT_EXT 0x2016
626 #define WGL_GREEN_BITS_EXT 0x2017
627 #define WGL_GREEN_SHIFT_EXT 0x2018
628 #define WGL_BLUE_BITS_EXT 0x2019
629 #define WGL_BLUE_SHIFT_EXT 0x201A
630 #define WGL_ALPHA_BITS_EXT 0x201B
631 #define WGL_ALPHA_SHIFT_EXT 0x201C
632 #define WGL_ACCUM_BITS_EXT 0x201D
633 #define WGL_ACCUM_RED_BITS_EXT 0x201E
634 #define WGL_ACCUM_GREEN_BITS_EXT 0x201F
635 #define WGL_ACCUM_BLUE_BITS_EXT 0x2020
636 #define WGL_ACCUM_ALPHA_BITS_EXT 0x2021
637 #define WGL_DEPTH_BITS_EXT 0x2022
638 #define WGL_STENCIL_BITS_EXT 0x2023
639 #define WGL_AUX_BUFFERS_EXT 0x2024
640 #define WGL_NO_ACCELERATION_EXT 0x2025
641 #define WGL_GENERIC_ACCELERATION_EXT 0x2026
642 #define WGL_FULL_ACCELERATION_EXT 0x2027
643 #define WGL_SWAP_EXCHANGE_EXT 0x2028
644 #define WGL_SWAP_COPY_EXT 0x2029
645 #define WGL_SWAP_UNDEFINED_EXT 0x202A
646 #define WGL_TYPE_RGBA_EXT 0x202B
647 #define WGL_TYPE_COLORINDEX_EXT 0x202C
649 typedef BOOL (WINAPI
* PFNWGLCHOOSEPIXELFORMATEXTPROC
) (HDC hdc
, const int* piAttribIList
, const FLOAT
*pfAttribFList
, UINT nMaxFormats
, int *piFormats
, UINT
*nNumFormats
);
650 typedef BOOL (WINAPI
* PFNWGLGETPIXELFORMATATTRIBFVEXTPROC
) (HDC hdc
, int iPixelFormat
, int iLayerPlane
, UINT nAttributes
, int* piAttributes
, FLOAT
*pfValues
);
651 typedef BOOL (WINAPI
* PFNWGLGETPIXELFORMATATTRIBIVEXTPROC
) (HDC hdc
, int iPixelFormat
, int iLayerPlane
, UINT nAttributes
, int* piAttributes
, int *piValues
);
653 #define wglChoosePixelFormatEXT WGLEW_GET_FUN(__wglewChoosePixelFormatEXT)
654 #define wglGetPixelFormatAttribfvEXT WGLEW_GET_FUN(__wglewGetPixelFormatAttribfvEXT)
655 #define wglGetPixelFormatAttribivEXT WGLEW_GET_FUN(__wglewGetPixelFormatAttribivEXT)
657 #define WGLEW_EXT_pixel_format WGLEW_GET_VAR(__WGLEW_EXT_pixel_format)
659 #endif /* WGL_EXT_pixel_format */
661 /* ------------------- WGL_EXT_pixel_format_packed_float ------------------- */
663 #ifndef WGL_EXT_pixel_format_packed_float
664 #define WGL_EXT_pixel_format_packed_float 1
666 #define WGL_TYPE_RGBA_UNSIGNED_FLOAT_EXT 0x20A8
668 #define WGLEW_EXT_pixel_format_packed_float WGLEW_GET_VAR(__WGLEW_EXT_pixel_format_packed_float)
670 #endif /* WGL_EXT_pixel_format_packed_float */
672 /* -------------------------- WGL_EXT_swap_control ------------------------- */
674 #ifndef WGL_EXT_swap_control
675 #define WGL_EXT_swap_control 1
677 typedef int (WINAPI
* PFNWGLGETSWAPINTERVALEXTPROC
) (void);
678 typedef BOOL (WINAPI
* PFNWGLSWAPINTERVALEXTPROC
) (int interval
);
680 #define wglGetSwapIntervalEXT WGLEW_GET_FUN(__wglewGetSwapIntervalEXT)
681 #define wglSwapIntervalEXT WGLEW_GET_FUN(__wglewSwapIntervalEXT)
683 #define WGLEW_EXT_swap_control WGLEW_GET_VAR(__WGLEW_EXT_swap_control)
685 #endif /* WGL_EXT_swap_control */
687 /* --------------------- WGL_I3D_digital_video_control --------------------- */
689 #ifndef WGL_I3D_digital_video_control
690 #define WGL_I3D_digital_video_control 1
692 #define WGL_DIGITAL_VIDEO_CURSOR_ALPHA_FRAMEBUFFER_I3D 0x2050
693 #define WGL_DIGITAL_VIDEO_CURSOR_ALPHA_VALUE_I3D 0x2051
694 #define WGL_DIGITAL_VIDEO_CURSOR_INCLUDED_I3D 0x2052
695 #define WGL_DIGITAL_VIDEO_GAMMA_CORRECTED_I3D 0x2053
697 typedef BOOL (WINAPI
* PFNWGLGETDIGITALVIDEOPARAMETERSI3DPROC
) (HDC hDC
, int iAttribute
, int* piValue
);
698 typedef BOOL (WINAPI
* PFNWGLSETDIGITALVIDEOPARAMETERSI3DPROC
) (HDC hDC
, int iAttribute
, const int* piValue
);
700 #define wglGetDigitalVideoParametersI3D WGLEW_GET_FUN(__wglewGetDigitalVideoParametersI3D)
701 #define wglSetDigitalVideoParametersI3D WGLEW_GET_FUN(__wglewSetDigitalVideoParametersI3D)
703 #define WGLEW_I3D_digital_video_control WGLEW_GET_VAR(__WGLEW_I3D_digital_video_control)
705 #endif /* WGL_I3D_digital_video_control */
707 /* ----------------------------- WGL_I3D_gamma ----------------------------- */
709 #ifndef WGL_I3D_gamma
710 #define WGL_I3D_gamma 1
712 #define WGL_GAMMA_TABLE_SIZE_I3D 0x204E
713 #define WGL_GAMMA_EXCLUDE_DESKTOP_I3D 0x204F
715 typedef BOOL (WINAPI
* PFNWGLGETGAMMATABLEI3DPROC
) (HDC hDC
, int iEntries
, USHORT
* puRed
, USHORT
*puGreen
, USHORT
*puBlue
);
716 typedef BOOL (WINAPI
* PFNWGLGETGAMMATABLEPARAMETERSI3DPROC
) (HDC hDC
, int iAttribute
, int* piValue
);
717 typedef BOOL (WINAPI
* PFNWGLSETGAMMATABLEI3DPROC
) (HDC hDC
, int iEntries
, const USHORT
* puRed
, const USHORT
*puGreen
, const USHORT
*puBlue
);
718 typedef BOOL (WINAPI
* PFNWGLSETGAMMATABLEPARAMETERSI3DPROC
) (HDC hDC
, int iAttribute
, const int* piValue
);
720 #define wglGetGammaTableI3D WGLEW_GET_FUN(__wglewGetGammaTableI3D)
721 #define wglGetGammaTableParametersI3D WGLEW_GET_FUN(__wglewGetGammaTableParametersI3D)
722 #define wglSetGammaTableI3D WGLEW_GET_FUN(__wglewSetGammaTableI3D)
723 #define wglSetGammaTableParametersI3D WGLEW_GET_FUN(__wglewSetGammaTableParametersI3D)
725 #define WGLEW_I3D_gamma WGLEW_GET_VAR(__WGLEW_I3D_gamma)
727 #endif /* WGL_I3D_gamma */
729 /* ---------------------------- WGL_I3D_genlock ---------------------------- */
731 #ifndef WGL_I3D_genlock
732 #define WGL_I3D_genlock 1
734 #define WGL_GENLOCK_SOURCE_MULTIVIEW_I3D 0x2044
735 #define WGL_GENLOCK_SOURCE_EXTERNAL_SYNC_I3D 0x2045
736 #define WGL_GENLOCK_SOURCE_EXTERNAL_FIELD_I3D 0x2046
737 #define WGL_GENLOCK_SOURCE_EXTERNAL_TTL_I3D 0x2047
738 #define WGL_GENLOCK_SOURCE_DIGITAL_SYNC_I3D 0x2048
739 #define WGL_GENLOCK_SOURCE_DIGITAL_FIELD_I3D 0x2049
740 #define WGL_GENLOCK_SOURCE_EDGE_FALLING_I3D 0x204A
741 #define WGL_GENLOCK_SOURCE_EDGE_RISING_I3D 0x204B
742 #define WGL_GENLOCK_SOURCE_EDGE_BOTH_I3D 0x204C
744 typedef BOOL (WINAPI
* PFNWGLDISABLEGENLOCKI3DPROC
) (HDC hDC
);
745 typedef BOOL (WINAPI
* PFNWGLENABLEGENLOCKI3DPROC
) (HDC hDC
);
746 typedef BOOL (WINAPI
* PFNWGLGENLOCKSAMPLERATEI3DPROC
) (HDC hDC
, UINT uRate
);
747 typedef BOOL (WINAPI
* PFNWGLGENLOCKSOURCEDELAYI3DPROC
) (HDC hDC
, UINT uDelay
);
748 typedef BOOL (WINAPI
* PFNWGLGENLOCKSOURCEEDGEI3DPROC
) (HDC hDC
, UINT uEdge
);
749 typedef BOOL (WINAPI
* PFNWGLGENLOCKSOURCEI3DPROC
) (HDC hDC
, UINT uSource
);
750 typedef BOOL (WINAPI
* PFNWGLGETGENLOCKSAMPLERATEI3DPROC
) (HDC hDC
, UINT
* uRate
);
751 typedef BOOL (WINAPI
* PFNWGLGETGENLOCKSOURCEDELAYI3DPROC
) (HDC hDC
, UINT
* uDelay
);
752 typedef BOOL (WINAPI
* PFNWGLGETGENLOCKSOURCEEDGEI3DPROC
) (HDC hDC
, UINT
* uEdge
);
753 typedef BOOL (WINAPI
* PFNWGLGETGENLOCKSOURCEI3DPROC
) (HDC hDC
, UINT
* uSource
);
754 typedef BOOL (WINAPI
* PFNWGLISENABLEDGENLOCKI3DPROC
) (HDC hDC
, BOOL
* pFlag
);
755 typedef BOOL (WINAPI
* PFNWGLQUERYGENLOCKMAXSOURCEDELAYI3DPROC
) (HDC hDC
, UINT
* uMaxLineDelay
, UINT
*uMaxPixelDelay
);
757 #define wglDisableGenlockI3D WGLEW_GET_FUN(__wglewDisableGenlockI3D)
758 #define wglEnableGenlockI3D WGLEW_GET_FUN(__wglewEnableGenlockI3D)
759 #define wglGenlockSampleRateI3D WGLEW_GET_FUN(__wglewGenlockSampleRateI3D)
760 #define wglGenlockSourceDelayI3D WGLEW_GET_FUN(__wglewGenlockSourceDelayI3D)
761 #define wglGenlockSourceEdgeI3D WGLEW_GET_FUN(__wglewGenlockSourceEdgeI3D)
762 #define wglGenlockSourceI3D WGLEW_GET_FUN(__wglewGenlockSourceI3D)
763 #define wglGetGenlockSampleRateI3D WGLEW_GET_FUN(__wglewGetGenlockSampleRateI3D)
764 #define wglGetGenlockSourceDelayI3D WGLEW_GET_FUN(__wglewGetGenlockSourceDelayI3D)
765 #define wglGetGenlockSourceEdgeI3D WGLEW_GET_FUN(__wglewGetGenlockSourceEdgeI3D)
766 #define wglGetGenlockSourceI3D WGLEW_GET_FUN(__wglewGetGenlockSourceI3D)
767 #define wglIsEnabledGenlockI3D WGLEW_GET_FUN(__wglewIsEnabledGenlockI3D)
768 #define wglQueryGenlockMaxSourceDelayI3D WGLEW_GET_FUN(__wglewQueryGenlockMaxSourceDelayI3D)
770 #define WGLEW_I3D_genlock WGLEW_GET_VAR(__WGLEW_I3D_genlock)
772 #endif /* WGL_I3D_genlock */
774 /* -------------------------- WGL_I3D_image_buffer ------------------------- */
776 #ifndef WGL_I3D_image_buffer
777 #define WGL_I3D_image_buffer 1
779 #define WGL_IMAGE_BUFFER_MIN_ACCESS_I3D 0x00000001
780 #define WGL_IMAGE_BUFFER_LOCK_I3D 0x00000002
782 typedef BOOL (WINAPI
* PFNWGLASSOCIATEIMAGEBUFFEREVENTSI3DPROC
) (HDC hdc
, HANDLE
* pEvent
, LPVOID
*pAddress
, DWORD
*pSize
, UINT count
);
783 typedef LPVOID (WINAPI
* PFNWGLCREATEIMAGEBUFFERI3DPROC
) (HDC hDC
, DWORD dwSize
, UINT uFlags
);
784 typedef BOOL (WINAPI
* PFNWGLDESTROYIMAGEBUFFERI3DPROC
) (HDC hDC
, LPVOID pAddress
);
785 typedef BOOL (WINAPI
* PFNWGLRELEASEIMAGEBUFFEREVENTSI3DPROC
) (HDC hdc
, LPVOID
* pAddress
, UINT count
);
787 #define wglAssociateImageBufferEventsI3D WGLEW_GET_FUN(__wglewAssociateImageBufferEventsI3D)
788 #define wglCreateImageBufferI3D WGLEW_GET_FUN(__wglewCreateImageBufferI3D)
789 #define wglDestroyImageBufferI3D WGLEW_GET_FUN(__wglewDestroyImageBufferI3D)
790 #define wglReleaseImageBufferEventsI3D WGLEW_GET_FUN(__wglewReleaseImageBufferEventsI3D)
792 #define WGLEW_I3D_image_buffer WGLEW_GET_VAR(__WGLEW_I3D_image_buffer)
794 #endif /* WGL_I3D_image_buffer */
796 /* ------------------------ WGL_I3D_swap_frame_lock ------------------------ */
798 #ifndef WGL_I3D_swap_frame_lock
799 #define WGL_I3D_swap_frame_lock 1
801 typedef BOOL (WINAPI
* PFNWGLDISABLEFRAMELOCKI3DPROC
) (VOID
);
802 typedef BOOL (WINAPI
* PFNWGLENABLEFRAMELOCKI3DPROC
) (VOID
);
803 typedef BOOL (WINAPI
* PFNWGLISENABLEDFRAMELOCKI3DPROC
) (BOOL
* pFlag
);
804 typedef BOOL (WINAPI
* PFNWGLQUERYFRAMELOCKMASTERI3DPROC
) (BOOL
* pFlag
);
806 #define wglDisableFrameLockI3D WGLEW_GET_FUN(__wglewDisableFrameLockI3D)
807 #define wglEnableFrameLockI3D WGLEW_GET_FUN(__wglewEnableFrameLockI3D)
808 #define wglIsEnabledFrameLockI3D WGLEW_GET_FUN(__wglewIsEnabledFrameLockI3D)
809 #define wglQueryFrameLockMasterI3D WGLEW_GET_FUN(__wglewQueryFrameLockMasterI3D)
811 #define WGLEW_I3D_swap_frame_lock WGLEW_GET_VAR(__WGLEW_I3D_swap_frame_lock)
813 #endif /* WGL_I3D_swap_frame_lock */
815 /* ------------------------ WGL_I3D_swap_frame_usage ----------------------- */
817 #ifndef WGL_I3D_swap_frame_usage
818 #define WGL_I3D_swap_frame_usage 1
820 typedef BOOL (WINAPI
* PFNWGLBEGINFRAMETRACKINGI3DPROC
) (void);
821 typedef BOOL (WINAPI
* PFNWGLENDFRAMETRACKINGI3DPROC
) (void);
822 typedef BOOL (WINAPI
* PFNWGLGETFRAMEUSAGEI3DPROC
) (float* pUsage
);
823 typedef BOOL (WINAPI
* PFNWGLQUERYFRAMETRACKINGI3DPROC
) (DWORD
* pFrameCount
, DWORD
*pMissedFrames
, float *pLastMissedUsage
);
825 #define wglBeginFrameTrackingI3D WGLEW_GET_FUN(__wglewBeginFrameTrackingI3D)
826 #define wglEndFrameTrackingI3D WGLEW_GET_FUN(__wglewEndFrameTrackingI3D)
827 #define wglGetFrameUsageI3D WGLEW_GET_FUN(__wglewGetFrameUsageI3D)
828 #define wglQueryFrameTrackingI3D WGLEW_GET_FUN(__wglewQueryFrameTrackingI3D)
830 #define WGLEW_I3D_swap_frame_usage WGLEW_GET_VAR(__WGLEW_I3D_swap_frame_usage)
832 #endif /* WGL_I3D_swap_frame_usage */
834 /* --------------------------- WGL_NV_copy_image --------------------------- */
836 #ifndef WGL_NV_copy_image
837 #define WGL_NV_copy_image 1
839 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
);
841 #define wglCopyImageSubDataNV WGLEW_GET_FUN(__wglewCopyImageSubDataNV)
843 #define WGLEW_NV_copy_image WGLEW_GET_VAR(__WGLEW_NV_copy_image)
845 #endif /* WGL_NV_copy_image */
847 /* -------------------------- WGL_NV_float_buffer -------------------------- */
849 #ifndef WGL_NV_float_buffer
850 #define WGL_NV_float_buffer 1
852 #define WGL_FLOAT_COMPONENTS_NV 0x20B0
853 #define WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_R_NV 0x20B1
854 #define WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RG_NV 0x20B2
855 #define WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RGB_NV 0x20B3
856 #define WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RGBA_NV 0x20B4
857 #define WGL_TEXTURE_FLOAT_R_NV 0x20B5
858 #define WGL_TEXTURE_FLOAT_RG_NV 0x20B6
859 #define WGL_TEXTURE_FLOAT_RGB_NV 0x20B7
860 #define WGL_TEXTURE_FLOAT_RGBA_NV 0x20B8
862 #define WGLEW_NV_float_buffer WGLEW_GET_VAR(__WGLEW_NV_float_buffer)
864 #endif /* WGL_NV_float_buffer */
866 /* -------------------------- WGL_NV_gpu_affinity -------------------------- */
868 #ifndef WGL_NV_gpu_affinity
869 #define WGL_NV_gpu_affinity 1
871 #define WGL_ERROR_INCOMPATIBLE_AFFINITY_MASKS_NV 0x20D0
872 #define WGL_ERROR_MISSING_AFFINITY_MASK_NV 0x20D1
874 DECLARE_HANDLE(HGPUNV
);
875 typedef struct _GPU_DEVICE
{
878 CHAR DeviceString
[128];
880 RECT rcVirtualScreen
;
881 } GPU_DEVICE
, *PGPU_DEVICE
;
883 typedef HDC (WINAPI
* PFNWGLCREATEAFFINITYDCNVPROC
) (const HGPUNV
*phGpuList
);
884 typedef BOOL (WINAPI
* PFNWGLDELETEDCNVPROC
) (HDC hdc
);
885 typedef BOOL (WINAPI
* PFNWGLENUMGPUDEVICESNVPROC
) (HGPUNV hGpu
, UINT iDeviceIndex
, PGPU_DEVICE lpGpuDevice
);
886 typedef BOOL (WINAPI
* PFNWGLENUMGPUSFROMAFFINITYDCNVPROC
) (HDC hAffinityDC
, UINT iGpuIndex
, HGPUNV
*hGpu
);
887 typedef BOOL (WINAPI
* PFNWGLENUMGPUSNVPROC
) (UINT iGpuIndex
, HGPUNV
*phGpu
);
889 #define wglCreateAffinityDCNV WGLEW_GET_FUN(__wglewCreateAffinityDCNV)
890 #define wglDeleteDCNV WGLEW_GET_FUN(__wglewDeleteDCNV)
891 #define wglEnumGpuDevicesNV WGLEW_GET_FUN(__wglewEnumGpuDevicesNV)
892 #define wglEnumGpusFromAffinityDCNV WGLEW_GET_FUN(__wglewEnumGpusFromAffinityDCNV)
893 #define wglEnumGpusNV WGLEW_GET_FUN(__wglewEnumGpusNV)
895 #define WGLEW_NV_gpu_affinity WGLEW_GET_VAR(__WGLEW_NV_gpu_affinity)
897 #endif /* WGL_NV_gpu_affinity */
899 /* ---------------------- WGL_NV_multisample_coverage ---------------------- */
901 #ifndef WGL_NV_multisample_coverage
902 #define WGL_NV_multisample_coverage 1
904 #define WGL_COVERAGE_SAMPLES_NV 0x2042
905 #define WGL_COLOR_SAMPLES_NV 0x20B9
907 #define WGLEW_NV_multisample_coverage WGLEW_GET_VAR(__WGLEW_NV_multisample_coverage)
909 #endif /* WGL_NV_multisample_coverage */
911 /* -------------------------- WGL_NV_present_video ------------------------- */
913 #ifndef WGL_NV_present_video
914 #define WGL_NV_present_video 1
916 #define WGL_NUM_VIDEO_SLOTS_NV 0x20F0
918 DECLARE_HANDLE(HVIDEOOUTPUTDEVICENV
);
920 typedef BOOL (WINAPI
* PFNWGLBINDVIDEODEVICENVPROC
) (HDC hDc
, unsigned int uVideoSlot
, HVIDEOOUTPUTDEVICENV hVideoDevice
, const int* piAttribList
);
921 typedef int (WINAPI
* PFNWGLENUMERATEVIDEODEVICESNVPROC
) (HDC hDc
, HVIDEOOUTPUTDEVICENV
* phDeviceList
);
922 typedef BOOL (WINAPI
* PFNWGLQUERYCURRENTCONTEXTNVPROC
) (int iAttribute
, int* piValue
);
924 #define wglBindVideoDeviceNV WGLEW_GET_FUN(__wglewBindVideoDeviceNV)
925 #define wglEnumerateVideoDevicesNV WGLEW_GET_FUN(__wglewEnumerateVideoDevicesNV)
926 #define wglQueryCurrentContextNV WGLEW_GET_FUN(__wglewQueryCurrentContextNV)
928 #define WGLEW_NV_present_video WGLEW_GET_VAR(__WGLEW_NV_present_video)
930 #endif /* WGL_NV_present_video */
932 /* ---------------------- WGL_NV_render_depth_texture ---------------------- */
934 #ifndef WGL_NV_render_depth_texture
935 #define WGL_NV_render_depth_texture 1
937 #define WGL_NO_TEXTURE_ARB 0x2077
938 #define WGL_BIND_TO_TEXTURE_DEPTH_NV 0x20A3
939 #define WGL_BIND_TO_TEXTURE_RECTANGLE_DEPTH_NV 0x20A4
940 #define WGL_DEPTH_TEXTURE_FORMAT_NV 0x20A5
941 #define WGL_TEXTURE_DEPTH_COMPONENT_NV 0x20A6
942 #define WGL_DEPTH_COMPONENT_NV 0x20A7
944 #define WGLEW_NV_render_depth_texture WGLEW_GET_VAR(__WGLEW_NV_render_depth_texture)
946 #endif /* WGL_NV_render_depth_texture */
948 /* -------------------- WGL_NV_render_texture_rectangle -------------------- */
950 #ifndef WGL_NV_render_texture_rectangle
951 #define WGL_NV_render_texture_rectangle 1
953 #define WGL_BIND_TO_TEXTURE_RECTANGLE_RGB_NV 0x20A0
954 #define WGL_BIND_TO_TEXTURE_RECTANGLE_RGBA_NV 0x20A1
955 #define WGL_TEXTURE_RECTANGLE_NV 0x20A2
957 #define WGLEW_NV_render_texture_rectangle WGLEW_GET_VAR(__WGLEW_NV_render_texture_rectangle)
959 #endif /* WGL_NV_render_texture_rectangle */
961 /* --------------------------- WGL_NV_swap_group --------------------------- */
963 #ifndef WGL_NV_swap_group
964 #define WGL_NV_swap_group 1
966 typedef BOOL (WINAPI
* PFNWGLBINDSWAPBARRIERNVPROC
) (GLuint group
, GLuint barrier
);
967 typedef BOOL (WINAPI
* PFNWGLJOINSWAPGROUPNVPROC
) (HDC hDC
, GLuint group
);
968 typedef BOOL (WINAPI
* PFNWGLQUERYFRAMECOUNTNVPROC
) (HDC hDC
, GLuint
* count
);
969 typedef BOOL (WINAPI
* PFNWGLQUERYMAXSWAPGROUPSNVPROC
) (HDC hDC
, GLuint
* maxGroups
, GLuint
*maxBarriers
);
970 typedef BOOL (WINAPI
* PFNWGLQUERYSWAPGROUPNVPROC
) (HDC hDC
, GLuint
* group
, GLuint
*barrier
);
971 typedef BOOL (WINAPI
* PFNWGLRESETFRAMECOUNTNVPROC
) (HDC hDC
);
973 #define wglBindSwapBarrierNV WGLEW_GET_FUN(__wglewBindSwapBarrierNV)
974 #define wglJoinSwapGroupNV WGLEW_GET_FUN(__wglewJoinSwapGroupNV)
975 #define wglQueryFrameCountNV WGLEW_GET_FUN(__wglewQueryFrameCountNV)
976 #define wglQueryMaxSwapGroupsNV WGLEW_GET_FUN(__wglewQueryMaxSwapGroupsNV)
977 #define wglQuerySwapGroupNV WGLEW_GET_FUN(__wglewQuerySwapGroupNV)
978 #define wglResetFrameCountNV WGLEW_GET_FUN(__wglewResetFrameCountNV)
980 #define WGLEW_NV_swap_group WGLEW_GET_VAR(__WGLEW_NV_swap_group)
982 #endif /* WGL_NV_swap_group */
984 /* ----------------------- WGL_NV_vertex_array_range ----------------------- */
986 #ifndef WGL_NV_vertex_array_range
987 #define WGL_NV_vertex_array_range 1
989 typedef void * (WINAPI
* PFNWGLALLOCATEMEMORYNVPROC
) (GLsizei size
, GLfloat readFrequency
, GLfloat writeFrequency
, GLfloat priority
);
990 typedef void (WINAPI
* PFNWGLFREEMEMORYNVPROC
) (void *pointer
);
992 #define wglAllocateMemoryNV WGLEW_GET_FUN(__wglewAllocateMemoryNV)
993 #define wglFreeMemoryNV WGLEW_GET_FUN(__wglewFreeMemoryNV)
995 #define WGLEW_NV_vertex_array_range WGLEW_GET_VAR(__WGLEW_NV_vertex_array_range)
997 #endif /* WGL_NV_vertex_array_range */
999 /* -------------------------- WGL_NV_video_output -------------------------- */
1001 #ifndef WGL_NV_video_output
1002 #define WGL_NV_video_output 1
1004 #define WGL_BIND_TO_VIDEO_RGB_NV 0x20C0
1005 #define WGL_BIND_TO_VIDEO_RGBA_NV 0x20C1
1006 #define WGL_BIND_TO_VIDEO_RGB_AND_DEPTH_NV 0x20C2
1007 #define WGL_VIDEO_OUT_COLOR_NV 0x20C3
1008 #define WGL_VIDEO_OUT_ALPHA_NV 0x20C4
1009 #define WGL_VIDEO_OUT_DEPTH_NV 0x20C5
1010 #define WGL_VIDEO_OUT_COLOR_AND_ALPHA_NV 0x20C6
1011 #define WGL_VIDEO_OUT_COLOR_AND_DEPTH_NV 0x20C7
1012 #define WGL_VIDEO_OUT_FRAME 0x20C8
1013 #define WGL_VIDEO_OUT_FIELD_1 0x20C9
1014 #define WGL_VIDEO_OUT_FIELD_2 0x20CA
1015 #define WGL_VIDEO_OUT_STACKED_FIELDS_1_2 0x20CB
1016 #define WGL_VIDEO_OUT_STACKED_FIELDS_2_1 0x20CC
1018 DECLARE_HANDLE(HPVIDEODEV
);
1020 typedef BOOL (WINAPI
* PFNWGLBINDVIDEOIMAGENVPROC
) (HPVIDEODEV hVideoDevice
, HPBUFFERARB hPbuffer
, int iVideoBuffer
);
1021 typedef BOOL (WINAPI
* PFNWGLGETVIDEODEVICENVPROC
) (HDC hDC
, int numDevices
, HPVIDEODEV
* hVideoDevice
);
1022 typedef BOOL (WINAPI
* PFNWGLGETVIDEOINFONVPROC
) (HPVIDEODEV hpVideoDevice
, unsigned long* pulCounterOutputPbuffer
, unsigned long *pulCounterOutputVideo
);
1023 typedef BOOL (WINAPI
* PFNWGLRELEASEVIDEODEVICENVPROC
) (HPVIDEODEV hVideoDevice
);
1024 typedef BOOL (WINAPI
* PFNWGLRELEASEVIDEOIMAGENVPROC
) (HPBUFFERARB hPbuffer
, int iVideoBuffer
);
1025 typedef BOOL (WINAPI
* PFNWGLSENDPBUFFERTOVIDEONVPROC
) (HPBUFFERARB hPbuffer
, int iBufferType
, unsigned long* pulCounterPbuffer
, BOOL bBlock
);
1027 #define wglBindVideoImageNV WGLEW_GET_FUN(__wglewBindVideoImageNV)
1028 #define wglGetVideoDeviceNV WGLEW_GET_FUN(__wglewGetVideoDeviceNV)
1029 #define wglGetVideoInfoNV WGLEW_GET_FUN(__wglewGetVideoInfoNV)
1030 #define wglReleaseVideoDeviceNV WGLEW_GET_FUN(__wglewReleaseVideoDeviceNV)
1031 #define wglReleaseVideoImageNV WGLEW_GET_FUN(__wglewReleaseVideoImageNV)
1032 #define wglSendPbufferToVideoNV WGLEW_GET_FUN(__wglewSendPbufferToVideoNV)
1034 #define WGLEW_NV_video_output WGLEW_GET_VAR(__WGLEW_NV_video_output)
1036 #endif /* WGL_NV_video_output */
1038 /* -------------------------- WGL_OML_sync_control ------------------------- */
1040 #ifndef WGL_OML_sync_control
1041 #define WGL_OML_sync_control 1
1043 typedef BOOL (WINAPI
* PFNWGLGETMSCRATEOMLPROC
) (HDC hdc
, INT32
* numerator
, INT32
*denominator
);
1044 typedef BOOL (WINAPI
* PFNWGLGETSYNCVALUESOMLPROC
) (HDC hdc
, INT64
* ust
, INT64
*msc
, INT64
*sbc
);
1045 typedef INT64 (WINAPI
* PFNWGLSWAPBUFFERSMSCOMLPROC
) (HDC hdc
, INT64 target_msc
, INT64 divisor
, INT64 remainder
);
1046 typedef INT64 (WINAPI
* PFNWGLSWAPLAYERBUFFERSMSCOMLPROC
) (HDC hdc
, INT fuPlanes
, INT64 target_msc
, INT64 divisor
, INT64 remainder
);
1047 typedef BOOL (WINAPI
* PFNWGLWAITFORMSCOMLPROC
) (HDC hdc
, INT64 target_msc
, INT64 divisor
, INT64 remainder
, INT64
* ust
, INT64
*msc
, INT64
*sbc
);
1048 typedef BOOL (WINAPI
* PFNWGLWAITFORSBCOMLPROC
) (HDC hdc
, INT64 target_sbc
, INT64
* ust
, INT64
*msc
, INT64
*sbc
);
1050 #define wglGetMscRateOML WGLEW_GET_FUN(__wglewGetMscRateOML)
1051 #define wglGetSyncValuesOML WGLEW_GET_FUN(__wglewGetSyncValuesOML)
1052 #define wglSwapBuffersMscOML WGLEW_GET_FUN(__wglewSwapBuffersMscOML)
1053 #define wglSwapLayerBuffersMscOML WGLEW_GET_FUN(__wglewSwapLayerBuffersMscOML)
1054 #define wglWaitForMscOML WGLEW_GET_FUN(__wglewWaitForMscOML)
1055 #define wglWaitForSbcOML WGLEW_GET_FUN(__wglewWaitForSbcOML)
1057 #define WGLEW_OML_sync_control WGLEW_GET_VAR(__WGLEW_OML_sync_control)
1059 #endif /* WGL_OML_sync_control */
1061 /* ------------------------------------------------------------------------- */
1064 #define WGLEW_EXPORT
1066 #define WGLEW_EXPORT GLEWAPI
1067 #endif /* GLEW_MX */
1070 struct WGLEWContextStruct
1072 #endif /* GLEW_MX */
1074 WGLEW_EXPORT PFNWGLSETSTEREOEMITTERSTATE3DLPROC __wglewSetStereoEmitterState3DL
;
1076 WGLEW_EXPORT PFNWGLBLITCONTEXTFRAMEBUFFERAMDPROC __wglewBlitContextFramebufferAMD
;
1077 WGLEW_EXPORT PFNWGLCREATEASSOCIATEDCONTEXTAMDPROC __wglewCreateAssociatedContextAMD
;
1078 WGLEW_EXPORT PFNWGLCREATEASSOCIATEDCONTEXTATTRIBSAMDPROC __wglewCreateAssociatedContextAttribsAMD
;
1079 WGLEW_EXPORT PFNWGLDELETEASSOCIATEDCONTEXTAMDPROC __wglewDeleteAssociatedContextAMD
;
1080 WGLEW_EXPORT PFNWGLGETCONTEXTGPUIDAMDPROC __wglewGetContextGPUIDAMD
;
1081 WGLEW_EXPORT PFNWGLGETCURRENTASSOCIATEDCONTEXTAMDPROC __wglewGetCurrentAssociatedContextAMD
;
1082 WGLEW_EXPORT PFNWGLGETGPUIDSAMDPROC __wglewGetGPUIDsAMD
;
1083 WGLEW_EXPORT PFNWGLGETGPUINFOAMDPROC __wglewGetGPUInfoAMD
;
1084 WGLEW_EXPORT PFNWGLMAKEASSOCIATEDCONTEXTCURRENTAMDPROC __wglewMakeAssociatedContextCurrentAMD
;
1086 WGLEW_EXPORT PFNWGLCREATEBUFFERREGIONARBPROC __wglewCreateBufferRegionARB
;
1087 WGLEW_EXPORT PFNWGLDELETEBUFFERREGIONARBPROC __wglewDeleteBufferRegionARB
;
1088 WGLEW_EXPORT PFNWGLRESTOREBUFFERREGIONARBPROC __wglewRestoreBufferRegionARB
;
1089 WGLEW_EXPORT PFNWGLSAVEBUFFERREGIONARBPROC __wglewSaveBufferRegionARB
;
1091 WGLEW_EXPORT PFNWGLCREATECONTEXTATTRIBSARBPROC __wglewCreateContextAttribsARB
;
1093 WGLEW_EXPORT PFNWGLGETEXTENSIONSSTRINGARBPROC __wglewGetExtensionsStringARB
;
1095 WGLEW_EXPORT PFNWGLGETCURRENTREADDCARBPROC __wglewGetCurrentReadDCARB
;
1096 WGLEW_EXPORT PFNWGLMAKECONTEXTCURRENTARBPROC __wglewMakeContextCurrentARB
;
1098 WGLEW_EXPORT PFNWGLCREATEPBUFFERARBPROC __wglewCreatePbufferARB
;
1099 WGLEW_EXPORT PFNWGLDESTROYPBUFFERARBPROC __wglewDestroyPbufferARB
;
1100 WGLEW_EXPORT PFNWGLGETPBUFFERDCARBPROC __wglewGetPbufferDCARB
;
1101 WGLEW_EXPORT PFNWGLQUERYPBUFFERARBPROC __wglewQueryPbufferARB
;
1102 WGLEW_EXPORT PFNWGLRELEASEPBUFFERDCARBPROC __wglewReleasePbufferDCARB
;
1104 WGLEW_EXPORT PFNWGLCHOOSEPIXELFORMATARBPROC __wglewChoosePixelFormatARB
;
1105 WGLEW_EXPORT PFNWGLGETPIXELFORMATATTRIBFVARBPROC __wglewGetPixelFormatAttribfvARB
;
1106 WGLEW_EXPORT PFNWGLGETPIXELFORMATATTRIBIVARBPROC __wglewGetPixelFormatAttribivARB
;
1108 WGLEW_EXPORT PFNWGLBINDTEXIMAGEARBPROC __wglewBindTexImageARB
;
1109 WGLEW_EXPORT PFNWGLRELEASETEXIMAGEARBPROC __wglewReleaseTexImageARB
;
1110 WGLEW_EXPORT PFNWGLSETPBUFFERATTRIBARBPROC __wglewSetPbufferAttribARB
;
1112 WGLEW_EXPORT PFNWGLBINDDISPLAYCOLORTABLEEXTPROC __wglewBindDisplayColorTableEXT
;
1113 WGLEW_EXPORT PFNWGLCREATEDISPLAYCOLORTABLEEXTPROC __wglewCreateDisplayColorTableEXT
;
1114 WGLEW_EXPORT PFNWGLDESTROYDISPLAYCOLORTABLEEXTPROC __wglewDestroyDisplayColorTableEXT
;
1115 WGLEW_EXPORT PFNWGLLOADDISPLAYCOLORTABLEEXTPROC __wglewLoadDisplayColorTableEXT
;
1117 WGLEW_EXPORT PFNWGLGETEXTENSIONSSTRINGEXTPROC __wglewGetExtensionsStringEXT
;
1119 WGLEW_EXPORT PFNWGLGETCURRENTREADDCEXTPROC __wglewGetCurrentReadDCEXT
;
1120 WGLEW_EXPORT PFNWGLMAKECONTEXTCURRENTEXTPROC __wglewMakeContextCurrentEXT
;
1122 WGLEW_EXPORT PFNWGLCREATEPBUFFEREXTPROC __wglewCreatePbufferEXT
;
1123 WGLEW_EXPORT PFNWGLDESTROYPBUFFEREXTPROC __wglewDestroyPbufferEXT
;
1124 WGLEW_EXPORT PFNWGLGETPBUFFERDCEXTPROC __wglewGetPbufferDCEXT
;
1125 WGLEW_EXPORT PFNWGLQUERYPBUFFEREXTPROC __wglewQueryPbufferEXT
;
1126 WGLEW_EXPORT PFNWGLRELEASEPBUFFERDCEXTPROC __wglewReleasePbufferDCEXT
;
1128 WGLEW_EXPORT PFNWGLCHOOSEPIXELFORMATEXTPROC __wglewChoosePixelFormatEXT
;
1129 WGLEW_EXPORT PFNWGLGETPIXELFORMATATTRIBFVEXTPROC __wglewGetPixelFormatAttribfvEXT
;
1130 WGLEW_EXPORT PFNWGLGETPIXELFORMATATTRIBIVEXTPROC __wglewGetPixelFormatAttribivEXT
;
1132 WGLEW_EXPORT PFNWGLGETSWAPINTERVALEXTPROC __wglewGetSwapIntervalEXT
;
1133 WGLEW_EXPORT PFNWGLSWAPINTERVALEXTPROC __wglewSwapIntervalEXT
;
1135 WGLEW_EXPORT PFNWGLGETDIGITALVIDEOPARAMETERSI3DPROC __wglewGetDigitalVideoParametersI3D
;
1136 WGLEW_EXPORT PFNWGLSETDIGITALVIDEOPARAMETERSI3DPROC __wglewSetDigitalVideoParametersI3D
;
1138 WGLEW_EXPORT PFNWGLGETGAMMATABLEI3DPROC __wglewGetGammaTableI3D
;
1139 WGLEW_EXPORT PFNWGLGETGAMMATABLEPARAMETERSI3DPROC __wglewGetGammaTableParametersI3D
;
1140 WGLEW_EXPORT PFNWGLSETGAMMATABLEI3DPROC __wglewSetGammaTableI3D
;
1141 WGLEW_EXPORT PFNWGLSETGAMMATABLEPARAMETERSI3DPROC __wglewSetGammaTableParametersI3D
;
1143 WGLEW_EXPORT PFNWGLDISABLEGENLOCKI3DPROC __wglewDisableGenlockI3D
;
1144 WGLEW_EXPORT PFNWGLENABLEGENLOCKI3DPROC __wglewEnableGenlockI3D
;
1145 WGLEW_EXPORT PFNWGLGENLOCKSAMPLERATEI3DPROC __wglewGenlockSampleRateI3D
;
1146 WGLEW_EXPORT PFNWGLGENLOCKSOURCEDELAYI3DPROC __wglewGenlockSourceDelayI3D
;
1147 WGLEW_EXPORT PFNWGLGENLOCKSOURCEEDGEI3DPROC __wglewGenlockSourceEdgeI3D
;
1148 WGLEW_EXPORT PFNWGLGENLOCKSOURCEI3DPROC __wglewGenlockSourceI3D
;
1149 WGLEW_EXPORT PFNWGLGETGENLOCKSAMPLERATEI3DPROC __wglewGetGenlockSampleRateI3D
;
1150 WGLEW_EXPORT PFNWGLGETGENLOCKSOURCEDELAYI3DPROC __wglewGetGenlockSourceDelayI3D
;
1151 WGLEW_EXPORT PFNWGLGETGENLOCKSOURCEEDGEI3DPROC __wglewGetGenlockSourceEdgeI3D
;
1152 WGLEW_EXPORT PFNWGLGETGENLOCKSOURCEI3DPROC __wglewGetGenlockSourceI3D
;
1153 WGLEW_EXPORT PFNWGLISENABLEDGENLOCKI3DPROC __wglewIsEnabledGenlockI3D
;
1154 WGLEW_EXPORT PFNWGLQUERYGENLOCKMAXSOURCEDELAYI3DPROC __wglewQueryGenlockMaxSourceDelayI3D
;
1156 WGLEW_EXPORT PFNWGLASSOCIATEIMAGEBUFFEREVENTSI3DPROC __wglewAssociateImageBufferEventsI3D
;
1157 WGLEW_EXPORT PFNWGLCREATEIMAGEBUFFERI3DPROC __wglewCreateImageBufferI3D
;
1158 WGLEW_EXPORT PFNWGLDESTROYIMAGEBUFFERI3DPROC __wglewDestroyImageBufferI3D
;
1159 WGLEW_EXPORT PFNWGLRELEASEIMAGEBUFFEREVENTSI3DPROC __wglewReleaseImageBufferEventsI3D
;
1161 WGLEW_EXPORT PFNWGLDISABLEFRAMELOCKI3DPROC __wglewDisableFrameLockI3D
;
1162 WGLEW_EXPORT PFNWGLENABLEFRAMELOCKI3DPROC __wglewEnableFrameLockI3D
;
1163 WGLEW_EXPORT PFNWGLISENABLEDFRAMELOCKI3DPROC __wglewIsEnabledFrameLockI3D
;
1164 WGLEW_EXPORT PFNWGLQUERYFRAMELOCKMASTERI3DPROC __wglewQueryFrameLockMasterI3D
;
1166 WGLEW_EXPORT PFNWGLBEGINFRAMETRACKINGI3DPROC __wglewBeginFrameTrackingI3D
;
1167 WGLEW_EXPORT PFNWGLENDFRAMETRACKINGI3DPROC __wglewEndFrameTrackingI3D
;
1168 WGLEW_EXPORT PFNWGLGETFRAMEUSAGEI3DPROC __wglewGetFrameUsageI3D
;
1169 WGLEW_EXPORT PFNWGLQUERYFRAMETRACKINGI3DPROC __wglewQueryFrameTrackingI3D
;
1171 WGLEW_EXPORT PFNWGLCOPYIMAGESUBDATANVPROC __wglewCopyImageSubDataNV
;
1173 WGLEW_EXPORT PFNWGLCREATEAFFINITYDCNVPROC __wglewCreateAffinityDCNV
;
1174 WGLEW_EXPORT PFNWGLDELETEDCNVPROC __wglewDeleteDCNV
;
1175 WGLEW_EXPORT PFNWGLENUMGPUDEVICESNVPROC __wglewEnumGpuDevicesNV
;
1176 WGLEW_EXPORT PFNWGLENUMGPUSFROMAFFINITYDCNVPROC __wglewEnumGpusFromAffinityDCNV
;
1177 WGLEW_EXPORT PFNWGLENUMGPUSNVPROC __wglewEnumGpusNV
;
1179 WGLEW_EXPORT PFNWGLBINDVIDEODEVICENVPROC __wglewBindVideoDeviceNV
;
1180 WGLEW_EXPORT PFNWGLENUMERATEVIDEODEVICESNVPROC __wglewEnumerateVideoDevicesNV
;
1181 WGLEW_EXPORT PFNWGLQUERYCURRENTCONTEXTNVPROC __wglewQueryCurrentContextNV
;
1183 WGLEW_EXPORT PFNWGLBINDSWAPBARRIERNVPROC __wglewBindSwapBarrierNV
;
1184 WGLEW_EXPORT PFNWGLJOINSWAPGROUPNVPROC __wglewJoinSwapGroupNV
;
1185 WGLEW_EXPORT PFNWGLQUERYFRAMECOUNTNVPROC __wglewQueryFrameCountNV
;
1186 WGLEW_EXPORT PFNWGLQUERYMAXSWAPGROUPSNVPROC __wglewQueryMaxSwapGroupsNV
;
1187 WGLEW_EXPORT PFNWGLQUERYSWAPGROUPNVPROC __wglewQuerySwapGroupNV
;
1188 WGLEW_EXPORT PFNWGLRESETFRAMECOUNTNVPROC __wglewResetFrameCountNV
;
1190 WGLEW_EXPORT PFNWGLALLOCATEMEMORYNVPROC __wglewAllocateMemoryNV
;
1191 WGLEW_EXPORT PFNWGLFREEMEMORYNVPROC __wglewFreeMemoryNV
;
1193 WGLEW_EXPORT PFNWGLBINDVIDEOIMAGENVPROC __wglewBindVideoImageNV
;
1194 WGLEW_EXPORT PFNWGLGETVIDEODEVICENVPROC __wglewGetVideoDeviceNV
;
1195 WGLEW_EXPORT PFNWGLGETVIDEOINFONVPROC __wglewGetVideoInfoNV
;
1196 WGLEW_EXPORT PFNWGLRELEASEVIDEODEVICENVPROC __wglewReleaseVideoDeviceNV
;
1197 WGLEW_EXPORT PFNWGLRELEASEVIDEOIMAGENVPROC __wglewReleaseVideoImageNV
;
1198 WGLEW_EXPORT PFNWGLSENDPBUFFERTOVIDEONVPROC __wglewSendPbufferToVideoNV
;
1200 WGLEW_EXPORT PFNWGLGETMSCRATEOMLPROC __wglewGetMscRateOML
;
1201 WGLEW_EXPORT PFNWGLGETSYNCVALUESOMLPROC __wglewGetSyncValuesOML
;
1202 WGLEW_EXPORT PFNWGLSWAPBUFFERSMSCOMLPROC __wglewSwapBuffersMscOML
;
1203 WGLEW_EXPORT PFNWGLSWAPLAYERBUFFERSMSCOMLPROC __wglewSwapLayerBuffersMscOML
;
1204 WGLEW_EXPORT PFNWGLWAITFORMSCOMLPROC __wglewWaitForMscOML
;
1205 WGLEW_EXPORT PFNWGLWAITFORSBCOMLPROC __wglewWaitForSbcOML
;
1206 WGLEW_EXPORT GLboolean __WGLEW_3DFX_multisample
;
1207 WGLEW_EXPORT GLboolean __WGLEW_3DL_stereo_control
;
1208 WGLEW_EXPORT GLboolean __WGLEW_AMD_gpu_association
;
1209 WGLEW_EXPORT GLboolean __WGLEW_ARB_buffer_region
;
1210 WGLEW_EXPORT GLboolean __WGLEW_ARB_create_context
;
1211 WGLEW_EXPORT GLboolean __WGLEW_ARB_create_context_profile
;
1212 WGLEW_EXPORT GLboolean __WGLEW_ARB_create_context_robustness
;
1213 WGLEW_EXPORT GLboolean __WGLEW_ARB_extensions_string
;
1214 WGLEW_EXPORT GLboolean __WGLEW_ARB_framebuffer_sRGB
;
1215 WGLEW_EXPORT GLboolean __WGLEW_ARB_make_current_read
;
1216 WGLEW_EXPORT GLboolean __WGLEW_ARB_multisample
;
1217 WGLEW_EXPORT GLboolean __WGLEW_ARB_pbuffer
;
1218 WGLEW_EXPORT GLboolean __WGLEW_ARB_pixel_format
;
1219 WGLEW_EXPORT GLboolean __WGLEW_ARB_pixel_format_float
;
1220 WGLEW_EXPORT GLboolean __WGLEW_ARB_render_texture
;
1221 WGLEW_EXPORT GLboolean __WGLEW_ATI_pixel_format_float
;
1222 WGLEW_EXPORT GLboolean __WGLEW_ATI_render_texture_rectangle
;
1223 WGLEW_EXPORT GLboolean __WGLEW_EXT_create_context_es2_profile
;
1224 WGLEW_EXPORT GLboolean __WGLEW_EXT_depth_float
;
1225 WGLEW_EXPORT GLboolean __WGLEW_EXT_display_color_table
;
1226 WGLEW_EXPORT GLboolean __WGLEW_EXT_extensions_string
;
1227 WGLEW_EXPORT GLboolean __WGLEW_EXT_framebuffer_sRGB
;
1228 WGLEW_EXPORT GLboolean __WGLEW_EXT_make_current_read
;
1229 WGLEW_EXPORT GLboolean __WGLEW_EXT_multisample
;
1230 WGLEW_EXPORT GLboolean __WGLEW_EXT_pbuffer
;
1231 WGLEW_EXPORT GLboolean __WGLEW_EXT_pixel_format
;
1232 WGLEW_EXPORT GLboolean __WGLEW_EXT_pixel_format_packed_float
;
1233 WGLEW_EXPORT GLboolean __WGLEW_EXT_swap_control
;
1234 WGLEW_EXPORT GLboolean __WGLEW_I3D_digital_video_control
;
1235 WGLEW_EXPORT GLboolean __WGLEW_I3D_gamma
;
1236 WGLEW_EXPORT GLboolean __WGLEW_I3D_genlock
;
1237 WGLEW_EXPORT GLboolean __WGLEW_I3D_image_buffer
;
1238 WGLEW_EXPORT GLboolean __WGLEW_I3D_swap_frame_lock
;
1239 WGLEW_EXPORT GLboolean __WGLEW_I3D_swap_frame_usage
;
1240 WGLEW_EXPORT GLboolean __WGLEW_NV_copy_image
;
1241 WGLEW_EXPORT GLboolean __WGLEW_NV_float_buffer
;
1242 WGLEW_EXPORT GLboolean __WGLEW_NV_gpu_affinity
;
1243 WGLEW_EXPORT GLboolean __WGLEW_NV_multisample_coverage
;
1244 WGLEW_EXPORT GLboolean __WGLEW_NV_present_video
;
1245 WGLEW_EXPORT GLboolean __WGLEW_NV_render_depth_texture
;
1246 WGLEW_EXPORT GLboolean __WGLEW_NV_render_texture_rectangle
;
1247 WGLEW_EXPORT GLboolean __WGLEW_NV_swap_group
;
1248 WGLEW_EXPORT GLboolean __WGLEW_NV_vertex_array_range
;
1249 WGLEW_EXPORT GLboolean __WGLEW_NV_video_output
;
1250 WGLEW_EXPORT GLboolean __WGLEW_OML_sync_control
;
1253 }; /* WGLEWContextStruct */
1254 #endif /* GLEW_MX */
1256 /* ------------------------------------------------------------------------- */
1260 typedef struct WGLEWContextStruct WGLEWContext
;
1261 GLEWAPI GLenum
wglewContextInit (WGLEWContext
* ctx
);
1262 GLEWAPI GLboolean
wglewContextIsSupported (const WGLEWContext
* ctx
, const char* name
);
1264 #define wglewInit() wglewContextInit(wglewGetContext())
1265 #define wglewIsSupported(x) wglewContextIsSupported(wglewGetContext(), x)
1267 #define WGLEW_GET_VAR(x) (*(const GLboolean*)&(wglewGetContext()->x))
1268 #define WGLEW_GET_FUN(x) wglewGetContext()->x
1272 #define WGLEW_GET_VAR(x) (*(const GLboolean*)&x)
1273 #define WGLEW_GET_FUN(x) x
1275 GLEWAPI GLboolean
wglewIsSupported (const char* name
);
1277 #endif /* GLEW_MX */
1279 GLEWAPI GLboolean
wglewGetExtension (const char* name
);
1287 #endif /* __wglew_h__ */