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
78 # define GLEWAPI extern
81 # define GLEWAPI extern __declspec(dllexport)
83 # define GLEWAPI extern __declspec(dllimport)
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)
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
115 #define wglSetStereoEmitterState3DL WGLEW_GET_FUN(__wglewSetStereoEmitterState3DL)
117 #define WGLEW_3DL_stereo_control WGLEW_GET_VAR(__WGLEW_3DL_stereo_control)
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);
140 typedef BOOL (WINAPI * PFNWGLDELETEASSOCIATEDCONTEXTAMDPROC) (
HGLRC hglrc);
141 typedef UINT (WINAPI * PFNWGLGETCONTEXTGPUIDAMDPROC) (
HGLRC hglrc);
142 typedef HGLRC (WINAPI * PFNWGLGETCURRENTASSOCIATEDCONTEXTAMDPROC) (
void);
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)
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
172 typedef VOID (WINAPI * PFNWGLDELETEBUFFERREGIONARBPROC) (
HANDLE hRegion);
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)
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
199 #define wglCreateContextAttribsARB WGLEW_GET_FUN(__wglewCreateContextAttribsARB)
201 #define WGLEW_ARB_create_context WGLEW_GET_VAR(__WGLEW_ARB_create_context)
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)
220 #ifndef WGL_ARB_extensions_string
221 #define WGL_ARB_extensions_string 1
225 #define wglGetExtensionsStringARB WGLEW_GET_FUN(__wglewGetExtensionsStringARB)
227 #define WGLEW_ARB_extensions_string WGLEW_GET_VAR(__WGLEW_ARB_extensions_string)
233 #ifndef WGL_ARB_framebuffer_sRGB
234 #define WGL_ARB_framebuffer_sRGB 1
236 #define WGL_FRAMEBUFFER_SRGB_CAPABLE_ARB 0x20A9
238 #define WGLEW_ARB_framebuffer_sRGB WGLEW_GET_VAR(__WGLEW_ARB_framebuffer_sRGB)
244 #ifndef WGL_ARB_make_current_read
245 #define WGL_ARB_make_current_read 1
247 #define ERROR_INVALID_PIXEL_TYPE_ARB 0x2043
248 #define ERROR_INCOMPATIBLE_DEVICE_CONTEXTS_ARB 0x2054
250 typedef HDC (WINAPI * PFNWGLGETCURRENTREADDCARBPROC) (
VOID);
253 #define wglGetCurrentReadDCARB WGLEW_GET_FUN(__wglewGetCurrentReadDCARB)
254 #define wglMakeContextCurrentARB WGLEW_GET_FUN(__wglewMakeContextCurrentARB)
256 #define WGLEW_ARB_make_current_read WGLEW_GET_VAR(__WGLEW_ARB_make_current_read)
262 #ifndef WGL_ARB_multisample
263 #define WGL_ARB_multisample 1
265 #define WGL_SAMPLE_BUFFERS_ARB 0x2041
266 #define WGL_SAMPLES_ARB 0x2042
268 #define WGLEW_ARB_multisample WGLEW_GET_VAR(__WGLEW_ARB_multisample)
274 #ifndef WGL_ARB_pbuffer
275 #define WGL_ARB_pbuffer 1
277 #define WGL_DRAW_TO_PBUFFER_ARB 0x202D
278 #define WGL_MAX_PBUFFER_PIXELS_ARB 0x202E
279 #define WGL_MAX_PBUFFER_WIDTH_ARB 0x202F
280 #define WGL_MAX_PBUFFER_HEIGHT_ARB 0x2030
281 #define WGL_PBUFFER_LARGEST_ARB 0x2033
282 #define WGL_PBUFFER_WIDTH_ARB 0x2034
283 #define WGL_PBUFFER_HEIGHT_ARB 0x2035
284 #define WGL_PBUFFER_LOST_ARB 0x2036
294 #define wglCreatePbufferARB WGLEW_GET_FUN(__wglewCreatePbufferARB)
295 #define wglDestroyPbufferARB WGLEW_GET_FUN(__wglewDestroyPbufferARB)
296 #define wglGetPbufferDCARB WGLEW_GET_FUN(__wglewGetPbufferDCARB)
297 #define wglQueryPbufferARB WGLEW_GET_FUN(__wglewQueryPbufferARB)
298 #define wglReleasePbufferDCARB WGLEW_GET_FUN(__wglewReleasePbufferDCARB)
300 #define WGLEW_ARB_pbuffer WGLEW_GET_VAR(__WGLEW_ARB_pbuffer)
306 #ifndef WGL_ARB_pixel_format
307 #define WGL_ARB_pixel_format 1
309 #define WGL_NUMBER_PIXEL_FORMATS_ARB 0x2000
310 #define WGL_DRAW_TO_WINDOW_ARB 0x2001
311 #define WGL_DRAW_TO_BITMAP_ARB 0x2002
312 #define WGL_ACCELERATION_ARB 0x2003
313 #define WGL_NEED_PALETTE_ARB 0x2004
314 #define WGL_NEED_SYSTEM_PALETTE_ARB 0x2005
315 #define WGL_SWAP_LAYER_BUFFERS_ARB 0x2006
316 #define WGL_SWAP_METHOD_ARB 0x2007
317 #define WGL_NUMBER_OVERLAYS_ARB 0x2008
318 #define WGL_NUMBER_UNDERLAYS_ARB 0x2009
319 #define WGL_TRANSPARENT_ARB 0x200A
320 #define WGL_SHARE_DEPTH_ARB 0x200C
321 #define WGL_SHARE_STENCIL_ARB 0x200D
322 #define WGL_SHARE_ACCUM_ARB 0x200E
323 #define WGL_SUPPORT_GDI_ARB 0x200F
324 #define WGL_SUPPORT_OPENGL_ARB 0x2010
325 #define WGL_DOUBLE_BUFFER_ARB 0x2011
326 #define WGL_STEREO_ARB 0x2012
327 #define WGL_PIXEL_TYPE_ARB 0x2013
328 #define WGL_COLOR_BITS_ARB 0x2014
329 #define WGL_RED_BITS_ARB 0x2015
330 #define WGL_RED_SHIFT_ARB 0x2016
331 #define WGL_GREEN_BITS_ARB 0x2017
332 #define WGL_GREEN_SHIFT_ARB 0x2018
333 #define WGL_BLUE_BITS_ARB 0x2019
334 #define WGL_BLUE_SHIFT_ARB 0x201A
335 #define WGL_ALPHA_BITS_ARB 0x201B
336 #define WGL_ALPHA_SHIFT_ARB 0x201C
337 #define WGL_ACCUM_BITS_ARB 0x201D
338 #define WGL_ACCUM_RED_BITS_ARB 0x201E
339 #define WGL_ACCUM_GREEN_BITS_ARB 0x201F
340 #define WGL_ACCUM_BLUE_BITS_ARB 0x2020
341 #define WGL_ACCUM_ALPHA_BITS_ARB 0x2021
342 #define WGL_DEPTH_BITS_ARB 0x2022
343 #define WGL_STENCIL_BITS_ARB 0x2023
344 #define WGL_AUX_BUFFERS_ARB 0x2024
345 #define WGL_NO_ACCELERATION_ARB 0x2025
346 #define WGL_GENERIC_ACCELERATION_ARB 0x2026
347 #define WGL_FULL_ACCELERATION_ARB 0x2027
348 #define WGL_SWAP_EXCHANGE_ARB 0x2028
349 #define WGL_SWAP_COPY_ARB 0x2029
350 #define WGL_SWAP_UNDEFINED_ARB 0x202A
351 #define WGL_TYPE_RGBA_ARB 0x202B
352 #define WGL_TYPE_COLORINDEX_ARB 0x202C
353 #define WGL_TRANSPARENT_RED_VALUE_ARB 0x2037
354 #define WGL_TRANSPARENT_GREEN_VALUE_ARB 0x2038
355 #define WGL_TRANSPARENT_BLUE_VALUE_ARB 0x2039
356 #define WGL_TRANSPARENT_ALPHA_VALUE_ARB 0x203A
357 #define WGL_TRANSPARENT_INDEX_VALUE_ARB 0x203B
363 #define wglChoosePixelFormatARB WGLEW_GET_FUN(__wglewChoosePixelFormatARB)
364 #define wglGetPixelFormatAttribfvARB WGLEW_GET_FUN(__wglewGetPixelFormatAttribfvARB)
365 #define wglGetPixelFormatAttribivARB WGLEW_GET_FUN(__wglewGetPixelFormatAttribivARB)
367 #define WGLEW_ARB_pixel_format WGLEW_GET_VAR(__WGLEW_ARB_pixel_format)
373 #ifndef WGL_ARB_pixel_format_float
374 #define WGL_ARB_pixel_format_float 1
376 #define WGL_TYPE_RGBA_FLOAT_ARB 0x21A0
378 #define WGLEW_ARB_pixel_format_float WGLEW_GET_VAR(__WGLEW_ARB_pixel_format_float)
384 #ifndef WGL_ARB_render_texture
385 #define WGL_ARB_render_texture 1
387 #define WGL_BIND_TO_TEXTURE_RGB_ARB 0x2070
388 #define WGL_BIND_TO_TEXTURE_RGBA_ARB 0x2071
389 #define WGL_TEXTURE_FORMAT_ARB 0x2072
390 #define WGL_TEXTURE_TARGET_ARB 0x2073
391 #define WGL_MIPMAP_TEXTURE_ARB 0x2074
392 #define WGL_TEXTURE_RGB_ARB 0x2075
393 #define WGL_TEXTURE_RGBA_ARB 0x2076
394 #define WGL_NO_TEXTURE_ARB 0x2077
395 #define WGL_TEXTURE_CUBE_MAP_ARB 0x2078
396 #define WGL_TEXTURE_1D_ARB 0x2079
397 #define WGL_TEXTURE_2D_ARB 0x207A
398 #define WGL_MIPMAP_LEVEL_ARB 0x207B
399 #define WGL_CUBE_MAP_FACE_ARB 0x207C
400 #define WGL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB 0x207D
401 #define WGL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB 0x207E
402 #define WGL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB 0x207F
403 #define WGL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB 0x2080
404 #define WGL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB 0x2081
405 #define WGL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB 0x2082
406 #define WGL_FRONT_LEFT_ARB 0x2083
407 #define WGL_FRONT_RIGHT_ARB 0x2084
408 #define WGL_BACK_LEFT_ARB 0x2085
409 #define WGL_BACK_RIGHT_ARB 0x2086
410 #define WGL_AUX0_ARB 0x2087
411 #define WGL_AUX1_ARB 0x2088
412 #define WGL_AUX2_ARB 0x2089
413 #define WGL_AUX3_ARB 0x208A
414 #define WGL_AUX4_ARB 0x208B
415 #define WGL_AUX5_ARB 0x208C
416 #define WGL_AUX6_ARB 0x208D
417 #define WGL_AUX7_ARB 0x208E
418 #define WGL_AUX8_ARB 0x208F
419 #define WGL_AUX9_ARB 0x2090
425 #define wglBindTexImageARB WGLEW_GET_FUN(__wglewBindTexImageARB)
426 #define wglReleaseTexImageARB WGLEW_GET_FUN(__wglewReleaseTexImageARB)
427 #define wglSetPbufferAttribARB WGLEW_GET_FUN(__wglewSetPbufferAttribARB)
429 #define WGLEW_ARB_render_texture WGLEW_GET_VAR(__WGLEW_ARB_render_texture)
435 #ifndef WGL_ATI_pixel_format_float
436 #define WGL_ATI_pixel_format_float 1
438 #define WGL_TYPE_RGBA_FLOAT_ATI 0x21A0
439 #define GL_RGBA_FLOAT_MODE_ATI 0x8820
440 #define GL_COLOR_CLEAR_UNCLAMPED_VALUE_ATI 0x8835
442 #define WGLEW_ATI_pixel_format_float WGLEW_GET_VAR(__WGLEW_ATI_pixel_format_float)
448 #ifndef WGL_ATI_render_texture_rectangle
449 #define WGL_ATI_render_texture_rectangle 1
451 #define WGL_TEXTURE_RECTANGLE_ATI 0x21A5
453 #define WGLEW_ATI_render_texture_rectangle WGLEW_GET_VAR(__WGLEW_ATI_render_texture_rectangle)
459 #ifndef WGL_EXT_depth_float
460 #define WGL_EXT_depth_float 1
462 #define WGL_DEPTH_FLOAT_EXT 0x2040
464 #define WGLEW_EXT_depth_float WGLEW_GET_VAR(__WGLEW_EXT_depth_float)
470 #ifndef WGL_EXT_display_color_table
471 #define WGL_EXT_display_color_table 1
475 typedef void (WINAPI * PFNWGLDESTROYDISPLAYCOLORTABLEEXTPROC) (
GLushort id);
478 #define wglBindDisplayColorTableEXT WGLEW_GET_FUN(__wglewBindDisplayColorTableEXT)
479 #define wglCreateDisplayColorTableEXT WGLEW_GET_FUN(__wglewCreateDisplayColorTableEXT)
480 #define wglDestroyDisplayColorTableEXT WGLEW_GET_FUN(__wglewDestroyDisplayColorTableEXT)
481 #define wglLoadDisplayColorTableEXT WGLEW_GET_FUN(__wglewLoadDisplayColorTableEXT)
483 #define WGLEW_EXT_display_color_table WGLEW_GET_VAR(__WGLEW_EXT_display_color_table)
489 #ifndef WGL_EXT_extensions_string
490 #define WGL_EXT_extensions_string 1
494 #define wglGetExtensionsStringEXT WGLEW_GET_FUN(__wglewGetExtensionsStringEXT)
496 #define WGLEW_EXT_extensions_string WGLEW_GET_VAR(__WGLEW_EXT_extensions_string)
502 #ifndef WGL_EXT_framebuffer_sRGB
503 #define WGL_EXT_framebuffer_sRGB 1
505 #define WGL_FRAMEBUFFER_SRGB_CAPABLE_EXT 0x20A9
507 #define WGLEW_EXT_framebuffer_sRGB WGLEW_GET_VAR(__WGLEW_EXT_framebuffer_sRGB)
513 #ifndef WGL_EXT_make_current_read
514 #define WGL_EXT_make_current_read 1
516 #define ERROR_INVALID_PIXEL_TYPE_EXT 0x2043
518 typedef HDC (WINAPI * PFNWGLGETCURRENTREADDCEXTPROC) (
VOID);
521 #define wglGetCurrentReadDCEXT WGLEW_GET_FUN(__wglewGetCurrentReadDCEXT)
522 #define wglMakeContextCurrentEXT WGLEW_GET_FUN(__wglewMakeContextCurrentEXT)
524 #define WGLEW_EXT_make_current_read WGLEW_GET_VAR(__WGLEW_EXT_make_current_read)
530 #ifndef WGL_EXT_multisample
531 #define WGL_EXT_multisample 1
533 #define WGL_SAMPLE_BUFFERS_EXT 0x2041
534 #define WGL_SAMPLES_EXT 0x2042
536 #define WGLEW_EXT_multisample WGLEW_GET_VAR(__WGLEW_EXT_multisample)
542 #ifndef WGL_EXT_pbuffer
543 #define WGL_EXT_pbuffer 1
545 #define WGL_DRAW_TO_PBUFFER_EXT 0x202D
546 #define WGL_MAX_PBUFFER_PIXELS_EXT 0x202E
547 #define WGL_MAX_PBUFFER_WIDTH_EXT 0x202F
548 #define WGL_MAX_PBUFFER_HEIGHT_EXT 0x2030
549 #define WGL_OPTIMAL_PBUFFER_WIDTH_EXT 0x2031
550 #define WGL_OPTIMAL_PBUFFER_HEIGHT_EXT 0x2032
551 #define WGL_PBUFFER_LARGEST_EXT 0x2033
552 #define WGL_PBUFFER_WIDTH_EXT 0x2034
553 #define WGL_PBUFFER_HEIGHT_EXT 0x2035
563 #define wglCreatePbufferEXT WGLEW_GET_FUN(__wglewCreatePbufferEXT)
564 #define wglDestroyPbufferEXT WGLEW_GET_FUN(__wglewDestroyPbufferEXT)
565 #define wglGetPbufferDCEXT WGLEW_GET_FUN(__wglewGetPbufferDCEXT)
566 #define wglQueryPbufferEXT WGLEW_GET_FUN(__wglewQueryPbufferEXT)
567 #define wglReleasePbufferDCEXT WGLEW_GET_FUN(__wglewReleasePbufferDCEXT)
569 #define WGLEW_EXT_pbuffer WGLEW_GET_VAR(__WGLEW_EXT_pbuffer)
575 #ifndef WGL_EXT_pixel_format
576 #define WGL_EXT_pixel_format 1
578 #define WGL_NUMBER_PIXEL_FORMATS_EXT 0x2000
579 #define WGL_DRAW_TO_WINDOW_EXT 0x2001
580 #define WGL_DRAW_TO_BITMAP_EXT 0x2002
581 #define WGL_ACCELERATION_EXT 0x2003
582 #define WGL_NEED_PALETTE_EXT 0x2004
583 #define WGL_NEED_SYSTEM_PALETTE_EXT 0x2005
584 #define WGL_SWAP_LAYER_BUFFERS_EXT 0x2006
585 #define WGL_SWAP_METHOD_EXT 0x2007
586 #define WGL_NUMBER_OVERLAYS_EXT 0x2008
587 #define WGL_NUMBER_UNDERLAYS_EXT 0x2009
588 #define WGL_TRANSPARENT_EXT 0x200A
589 #define WGL_TRANSPARENT_VALUE_EXT 0x200B
590 #define WGL_SHARE_DEPTH_EXT 0x200C
591 #define WGL_SHARE_STENCIL_EXT 0x200D
592 #define WGL_SHARE_ACCUM_EXT 0x200E
593 #define WGL_SUPPORT_GDI_EXT 0x200F
594 #define WGL_SUPPORT_OPENGL_EXT 0x2010
595 #define WGL_DOUBLE_BUFFER_EXT 0x2011
596 #define WGL_STEREO_EXT 0x2012
597 #define WGL_PIXEL_TYPE_EXT 0x2013
598 #define WGL_COLOR_BITS_EXT 0x2014
599 #define WGL_RED_BITS_EXT 0x2015
600 #define WGL_RED_SHIFT_EXT 0x2016
601 #define WGL_GREEN_BITS_EXT 0x2017
602 #define WGL_GREEN_SHIFT_EXT 0x2018
603 #define WGL_BLUE_BITS_EXT 0x2019
604 #define WGL_BLUE_SHIFT_EXT 0x201A
605 #define WGL_ALPHA_BITS_EXT 0x201B
606 #define WGL_ALPHA_SHIFT_EXT 0x201C
607 #define WGL_ACCUM_BITS_EXT 0x201D
608 #define WGL_ACCUM_RED_BITS_EXT 0x201E
609 #define WGL_ACCUM_GREEN_BITS_EXT 0x201F
610 #define WGL_ACCUM_BLUE_BITS_EXT 0x2020
611 #define WGL_ACCUM_ALPHA_BITS_EXT 0x2021
612 #define WGL_DEPTH_BITS_EXT 0x2022
613 #define WGL_STENCIL_BITS_EXT 0x2023
614 #define WGL_AUX_BUFFERS_EXT 0x2024
615 #define WGL_NO_ACCELERATION_EXT 0x2025
616 #define WGL_GENERIC_ACCELERATION_EXT 0x2026
617 #define WGL_FULL_ACCELERATION_EXT 0x2027
618 #define WGL_SWAP_EXCHANGE_EXT 0x2028
619 #define WGL_SWAP_COPY_EXT 0x2029
620 #define WGL_SWAP_UNDEFINED_EXT 0x202A
621 #define WGL_TYPE_RGBA_EXT 0x202B
622 #define WGL_TYPE_COLORINDEX_EXT 0x202C
628 #define wglChoosePixelFormatEXT WGLEW_GET_FUN(__wglewChoosePixelFormatEXT)
629 #define wglGetPixelFormatAttribfvEXT WGLEW_GET_FUN(__wglewGetPixelFormatAttribfvEXT)
630 #define wglGetPixelFormatAttribivEXT WGLEW_GET_FUN(__wglewGetPixelFormatAttribivEXT)
632 #define WGLEW_EXT_pixel_format WGLEW_GET_VAR(__WGLEW_EXT_pixel_format)
638 #ifndef WGL_EXT_pixel_format_packed_float
639 #define WGL_EXT_pixel_format_packed_float 1
641 #define WGL_TYPE_RGBA_UNSIGNED_FLOAT_EXT 0x20A8
643 #define WGLEW_EXT_pixel_format_packed_float WGLEW_GET_VAR(__WGLEW_EXT_pixel_format_packed_float)
649 #ifndef WGL_EXT_swap_control
650 #define WGL_EXT_swap_control 1
652 typedef int (WINAPI * PFNWGLGETSWAPINTERVALEXTPROC) (
void);
653 typedef BOOL (WINAPI * PFNWGLSWAPINTERVALEXTPROC) (
int interval);
655 #define wglGetSwapIntervalEXT WGLEW_GET_FUN(__wglewGetSwapIntervalEXT)
656 #define wglSwapIntervalEXT WGLEW_GET_FUN(__wglewSwapIntervalEXT)
658 #define WGLEW_EXT_swap_control WGLEW_GET_VAR(__WGLEW_EXT_swap_control)
664 #ifndef WGL_I3D_digital_video_control
665 #define WGL_I3D_digital_video_control 1
667 #define WGL_DIGITAL_VIDEO_CURSOR_ALPHA_FRAMEBUFFER_I3D 0x2050
668 #define WGL_DIGITAL_VIDEO_CURSOR_ALPHA_VALUE_I3D 0x2051
669 #define WGL_DIGITAL_VIDEO_CURSOR_INCLUDED_I3D 0x2052
670 #define WGL_DIGITAL_VIDEO_GAMMA_CORRECTED_I3D 0x2053
675 #define wglGetDigitalVideoParametersI3D WGLEW_GET_FUN(__wglewGetDigitalVideoParametersI3D)
676 #define wglSetDigitalVideoParametersI3D WGLEW_GET_FUN(__wglewSetDigitalVideoParametersI3D)
678 #define WGLEW_I3D_digital_video_control WGLEW_GET_VAR(__WGLEW_I3D_digital_video_control)
684 #ifndef WGL_I3D_gamma
685 #define WGL_I3D_gamma 1
687 #define WGL_GAMMA_TABLE_SIZE_I3D 0x204E
688 #define WGL_GAMMA_EXCLUDE_DESKTOP_I3D 0x204F
695 #define wglGetGammaTableI3D WGLEW_GET_FUN(__wglewGetGammaTableI3D)
696 #define wglGetGammaTableParametersI3D WGLEW_GET_FUN(__wglewGetGammaTableParametersI3D)
697 #define wglSetGammaTableI3D WGLEW_GET_FUN(__wglewSetGammaTableI3D)
698 #define wglSetGammaTableParametersI3D WGLEW_GET_FUN(__wglewSetGammaTableParametersI3D)
700 #define WGLEW_I3D_gamma WGLEW_GET_VAR(__WGLEW_I3D_gamma)
706 #ifndef WGL_I3D_genlock
707 #define WGL_I3D_genlock 1
709 #define WGL_GENLOCK_SOURCE_MULTIVIEW_I3D 0x2044
710 #define WGL_GENLOCK_SOURCE_EXTERNAL_SYNC_I3D 0x2045
711 #define WGL_GENLOCK_SOURCE_EXTERNAL_FIELD_I3D 0x2046
712 #define WGL_GENLOCK_SOURCE_EXTERNAL_TTL_I3D 0x2047
713 #define WGL_GENLOCK_SOURCE_DIGITAL_SYNC_I3D 0x2048
714 #define WGL_GENLOCK_SOURCE_DIGITAL_FIELD_I3D 0x2049
715 #define WGL_GENLOCK_SOURCE_EDGE_FALLING_I3D 0x204A
716 #define WGL_GENLOCK_SOURCE_EDGE_RISING_I3D 0x204B
717 #define WGL_GENLOCK_SOURCE_EDGE_BOTH_I3D 0x204C
719 typedef BOOL (WINAPI * PFNWGLDISABLEGENLOCKI3DPROC) (
HDC hDC);
720 typedef BOOL (WINAPI * PFNWGLENABLEGENLOCKI3DPROC) (
HDC hDC);
732 #define wglDisableGenlockI3D WGLEW_GET_FUN(__wglewDisableGenlockI3D)
733 #define wglEnableGenlockI3D WGLEW_GET_FUN(__wglewEnableGenlockI3D)
734 #define wglGenlockSampleRateI3D WGLEW_GET_FUN(__wglewGenlockSampleRateI3D)
735 #define wglGenlockSourceDelayI3D WGLEW_GET_FUN(__wglewGenlockSourceDelayI3D)
736 #define wglGenlockSourceEdgeI3D WGLEW_GET_FUN(__wglewGenlockSourceEdgeI3D)
737 #define wglGenlockSourceI3D WGLEW_GET_FUN(__wglewGenlockSourceI3D)
738 #define wglGetGenlockSampleRateI3D WGLEW_GET_FUN(__wglewGetGenlockSampleRateI3D)
739 #define wglGetGenlockSourceDelayI3D WGLEW_GET_FUN(__wglewGetGenlockSourceDelayI3D)
740 #define wglGetGenlockSourceEdgeI3D WGLEW_GET_FUN(__wglewGetGenlockSourceEdgeI3D)
741 #define wglGetGenlockSourceI3D WGLEW_GET_FUN(__wglewGetGenlockSourceI3D)
742 #define wglIsEnabledGenlockI3D WGLEW_GET_FUN(__wglewIsEnabledGenlockI3D)
743 #define wglQueryGenlockMaxSourceDelayI3D WGLEW_GET_FUN(__wglewQueryGenlockMaxSourceDelayI3D)
745 #define WGLEW_I3D_genlock WGLEW_GET_VAR(__WGLEW_I3D_genlock)
751 #ifndef WGL_I3D_image_buffer
752 #define WGL_I3D_image_buffer 1
754 #define WGL_IMAGE_BUFFER_MIN_ACCESS_I3D 0x00000001
755 #define WGL_IMAGE_BUFFER_LOCK_I3D 0x00000002
762 #define wglAssociateImageBufferEventsI3D WGLEW_GET_FUN(__wglewAssociateImageBufferEventsI3D)
763 #define wglCreateImageBufferI3D WGLEW_GET_FUN(__wglewCreateImageBufferI3D)
764 #define wglDestroyImageBufferI3D WGLEW_GET_FUN(__wglewDestroyImageBufferI3D)
765 #define wglReleaseImageBufferEventsI3D WGLEW_GET_FUN(__wglewReleaseImageBufferEventsI3D)
767 #define WGLEW_I3D_image_buffer WGLEW_GET_VAR(__WGLEW_I3D_image_buffer)
773 #ifndef WGL_I3D_swap_frame_lock
774 #define WGL_I3D_swap_frame_lock 1
776 typedef BOOL (WINAPI * PFNWGLDISABLEFRAMELOCKI3DPROC) (
VOID);
777 typedef BOOL (WINAPI * PFNWGLENABLEFRAMELOCKI3DPROC) (
VOID);
778 typedef BOOL (WINAPI * PFNWGLISENABLEDFRAMELOCKI3DPROC) (
BOOL*
pFlag);
779 typedef BOOL (WINAPI * PFNWGLQUERYFRAMELOCKMASTERI3DPROC) (
BOOL*
pFlag);
781 #define wglDisableFrameLockI3D WGLEW_GET_FUN(__wglewDisableFrameLockI3D)
782 #define wglEnableFrameLockI3D WGLEW_GET_FUN(__wglewEnableFrameLockI3D)
783 #define wglIsEnabledFrameLockI3D WGLEW_GET_FUN(__wglewIsEnabledFrameLockI3D)
784 #define wglQueryFrameLockMasterI3D WGLEW_GET_FUN(__wglewQueryFrameLockMasterI3D)
786 #define WGLEW_I3D_swap_frame_lock WGLEW_GET_VAR(__WGLEW_I3D_swap_frame_lock)
792 #ifndef WGL_I3D_swap_frame_usage
793 #define WGL_I3D_swap_frame_usage 1
795 typedef BOOL (WINAPI * PFNWGLBEGINFRAMETRACKINGI3DPROC) (
void);
796 typedef BOOL (WINAPI * PFNWGLENDFRAMETRACKINGI3DPROC) (
void);
797 typedef BOOL (WINAPI * PFNWGLGETFRAMEUSAGEI3DPROC) (
float* pUsage);
800 #define wglBeginFrameTrackingI3D WGLEW_GET_FUN(__wglewBeginFrameTrackingI3D)
801 #define wglEndFrameTrackingI3D WGLEW_GET_FUN(__wglewEndFrameTrackingI3D)
802 #define wglGetFrameUsageI3D WGLEW_GET_FUN(__wglewGetFrameUsageI3D)
803 #define wglQueryFrameTrackingI3D WGLEW_GET_FUN(__wglewQueryFrameTrackingI3D)
805 #define WGLEW_I3D_swap_frame_usage WGLEW_GET_VAR(__WGLEW_I3D_swap_frame_usage)
811 #ifndef WGL_NV_copy_image
812 #define WGL_NV_copy_image 1
814 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);
816 #define wglCopyImageSubDataNV WGLEW_GET_FUN(__wglewCopyImageSubDataNV)
818 #define WGLEW_NV_copy_image WGLEW_GET_VAR(__WGLEW_NV_copy_image)
824 #ifndef WGL_NV_float_buffer
825 #define WGL_NV_float_buffer 1
827 #define WGL_FLOAT_COMPONENTS_NV 0x20B0
828 #define WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_R_NV 0x20B1
829 #define WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RG_NV 0x20B2
830 #define WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RGB_NV 0x20B3
831 #define WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RGBA_NV 0x20B4
832 #define WGL_TEXTURE_FLOAT_R_NV 0x20B5
833 #define WGL_TEXTURE_FLOAT_RG_NV 0x20B6
834 #define WGL_TEXTURE_FLOAT_RGB_NV 0x20B7
835 #define WGL_TEXTURE_FLOAT_RGBA_NV 0x20B8
837 #define WGLEW_NV_float_buffer WGLEW_GET_VAR(__WGLEW_NV_float_buffer)
843 #ifndef WGL_NV_gpu_affinity
844 #define WGL_NV_gpu_affinity 1
846 #define WGL_ERROR_INCOMPATIBLE_AFFINITY_MASKS_NV 0x20D0
847 #define WGL_ERROR_MISSING_AFFINITY_MASK_NV 0x20D1
858 typedef HDC (WINAPI * PFNWGLCREATEAFFINITYDCNVPROC) (
const HGPUNV *phGpuList);
859 typedef BOOL (WINAPI * PFNWGLDELETEDCNVPROC) (
HDC hdc);
864 #define wglCreateAffinityDCNV WGLEW_GET_FUN(__wglewCreateAffinityDCNV)
865 #define wglDeleteDCNV WGLEW_GET_FUN(__wglewDeleteDCNV)
866 #define wglEnumGpuDevicesNV WGLEW_GET_FUN(__wglewEnumGpuDevicesNV)
867 #define wglEnumGpusFromAffinityDCNV WGLEW_GET_FUN(__wglewEnumGpusFromAffinityDCNV)
868 #define wglEnumGpusNV WGLEW_GET_FUN(__wglewEnumGpusNV)
870 #define WGLEW_NV_gpu_affinity WGLEW_GET_VAR(__WGLEW_NV_gpu_affinity)
876 #ifndef WGL_NV_multisample_coverage
877 #define WGL_NV_multisample_coverage 1
879 #define WGL_COVERAGE_SAMPLES_NV 0x2042
880 #define WGL_COLOR_SAMPLES_NV 0x20B9
882 #define WGLEW_NV_multisample_coverage WGLEW_GET_VAR(__WGLEW_NV_multisample_coverage)
888 #ifndef WGL_NV_present_video
889 #define WGL_NV_present_video 1
891 #define WGL_NUM_VIDEO_SLOTS_NV 0x20F0
896 typedef int (WINAPI * PFNWGLENUMERATEVIDEODEVICESNVPROC) (
HDC hDc, HVIDEOOUTPUTDEVICENV*
phDeviceList);
899 #define wglBindVideoDeviceNV WGLEW_GET_FUN(__wglewBindVideoDeviceNV)
900 #define wglEnumerateVideoDevicesNV WGLEW_GET_FUN(__wglewEnumerateVideoDevicesNV)
901 #define wglQueryCurrentContextNV WGLEW_GET_FUN(__wglewQueryCurrentContextNV)
903 #define WGLEW_NV_present_video WGLEW_GET_VAR(__WGLEW_NV_present_video)
909 #ifndef WGL_NV_render_depth_texture
910 #define WGL_NV_render_depth_texture 1
912 #define WGL_NO_TEXTURE_ARB 0x2077
913 #define WGL_BIND_TO_TEXTURE_DEPTH_NV 0x20A3
914 #define WGL_BIND_TO_TEXTURE_RECTANGLE_DEPTH_NV 0x20A4
915 #define WGL_DEPTH_TEXTURE_FORMAT_NV 0x20A5
916 #define WGL_TEXTURE_DEPTH_COMPONENT_NV 0x20A6
917 #define WGL_DEPTH_COMPONENT_NV 0x20A7
919 #define WGLEW_NV_render_depth_texture WGLEW_GET_VAR(__WGLEW_NV_render_depth_texture)
925 #ifndef WGL_NV_render_texture_rectangle
926 #define WGL_NV_render_texture_rectangle 1
928 #define WGL_BIND_TO_TEXTURE_RECTANGLE_RGB_NV 0x20A0
929 #define WGL_BIND_TO_TEXTURE_RECTANGLE_RGBA_NV 0x20A1
930 #define WGL_TEXTURE_RECTANGLE_NV 0x20A2
932 #define WGLEW_NV_render_texture_rectangle WGLEW_GET_VAR(__WGLEW_NV_render_texture_rectangle)
938 #ifndef WGL_NV_swap_group
939 #define WGL_NV_swap_group 1
946 typedef BOOL (WINAPI * PFNWGLRESETFRAMECOUNTNVPROC) (
HDC hDC);
948 #define wglBindSwapBarrierNV WGLEW_GET_FUN(__wglewBindSwapBarrierNV)
949 #define wglJoinSwapGroupNV WGLEW_GET_FUN(__wglewJoinSwapGroupNV)
950 #define wglQueryFrameCountNV WGLEW_GET_FUN(__wglewQueryFrameCountNV)
951 #define wglQueryMaxSwapGroupsNV WGLEW_GET_FUN(__wglewQueryMaxSwapGroupsNV)
952 #define wglQuerySwapGroupNV WGLEW_GET_FUN(__wglewQuerySwapGroupNV)
953 #define wglResetFrameCountNV WGLEW_GET_FUN(__wglewResetFrameCountNV)
955 #define WGLEW_NV_swap_group WGLEW_GET_VAR(__WGLEW_NV_swap_group)
961 #ifndef WGL_NV_vertex_array_range
962 #define WGL_NV_vertex_array_range 1
965 typedef void (WINAPI * PFNWGLFREEMEMORYNVPROC) (
void *
pointer);
967 #define wglAllocateMemoryNV WGLEW_GET_FUN(__wglewAllocateMemoryNV)
968 #define wglFreeMemoryNV WGLEW_GET_FUN(__wglewFreeMemoryNV)
970 #define WGLEW_NV_vertex_array_range WGLEW_GET_VAR(__WGLEW_NV_vertex_array_range)
976 #ifndef WGL_NV_video_output
977 #define WGL_NV_video_output 1
979 #define WGL_BIND_TO_VIDEO_RGB_NV 0x20C0
980 #define WGL_BIND_TO_VIDEO_RGBA_NV 0x20C1
981 #define WGL_BIND_TO_VIDEO_RGB_AND_DEPTH_NV 0x20C2
982 #define WGL_VIDEO_OUT_COLOR_NV 0x20C3
983 #define WGL_VIDEO_OUT_ALPHA_NV 0x20C4
984 #define WGL_VIDEO_OUT_DEPTH_NV 0x20C5
985 #define WGL_VIDEO_OUT_COLOR_AND_ALPHA_NV 0x20C6
986 #define WGL_VIDEO_OUT_COLOR_AND_DEPTH_NV 0x20C7
987 #define WGL_VIDEO_OUT_FRAME 0x20C8
988 #define WGL_VIDEO_OUT_FIELD_1 0x20C9
989 #define WGL_VIDEO_OUT_FIELD_2 0x20CA
990 #define WGL_VIDEO_OUT_STACKED_FIELDS_1_2 0x20CB
991 #define WGL_VIDEO_OUT_STACKED_FIELDS_2_1 0x20CC
998 typedef BOOL (WINAPI * PFNWGLRELEASEVIDEODEVICENVPROC) (HPVIDEODEV
hVideoDevice);
1002 #define wglBindVideoImageNV WGLEW_GET_FUN(__wglewBindVideoImageNV)
1003 #define wglGetVideoDeviceNV WGLEW_GET_FUN(__wglewGetVideoDeviceNV)
1004 #define wglGetVideoInfoNV WGLEW_GET_FUN(__wglewGetVideoInfoNV)
1005 #define wglReleaseVideoDeviceNV WGLEW_GET_FUN(__wglewReleaseVideoDeviceNV)
1006 #define wglReleaseVideoImageNV WGLEW_GET_FUN(__wglewReleaseVideoImageNV)
1007 #define wglSendPbufferToVideoNV WGLEW_GET_FUN(__wglewSendPbufferToVideoNV)
1009 #define WGLEW_NV_video_output WGLEW_GET_VAR(__WGLEW_NV_video_output)
1015 #ifndef WGL_OML_sync_control
1016 #define WGL_OML_sync_control 1
1025 #define wglGetMscRateOML WGLEW_GET_FUN(__wglewGetMscRateOML)
1026 #define wglGetSyncValuesOML WGLEW_GET_FUN(__wglewGetSyncValuesOML)
1027 #define wglSwapBuffersMscOML WGLEW_GET_FUN(__wglewSwapBuffersMscOML)
1028 #define wglSwapLayerBuffersMscOML WGLEW_GET_FUN(__wglewSwapLayerBuffersMscOML)
1029 #define wglWaitForMscOML WGLEW_GET_FUN(__wglewWaitForMscOML)
1030 #define wglWaitForSbcOML WGLEW_GET_FUN(__wglewWaitForSbcOML)
1032 #define WGLEW_OML_sync_control WGLEW_GET_VAR(__WGLEW_OML_sync_control)
1039 #define WGLEW_EXPORT
1041 #define WGLEW_EXPORT GLEWAPI
1045 struct WGLEWContextStruct
1233 typedef struct WGLEWContextStruct WGLEWContext;
1237 #define wglewInit() wglewContextInit(wglewGetContext())
1238 #define wglewIsSupported(x) wglewContextIsSupported(wglewGetContext(), x)
1240 #define WGLEW_GET_VAR(x) (*(const GLboolean*)&(wglewGetContext()->x))
1241 #define WGLEW_GET_FUN(x) wglewGetContext()->x
1245 #define WGLEW_GET_VAR(x) (*(const GLboolean*)&x)
1246 #define WGLEW_GET_FUN(x) x