wglew.h

Go to the documentation of this file.
00001 /*
00002 ** The OpenGL Extension Wrangler Library
00003 ** Copyright (C) 2002-2007, Milan Ikits <milan ikits[]ieee org>
00004 ** Copyright (C) 2002-2007, Marcelo E. Magallon <mmagallo[]debian org>
00005 ** Copyright (C) 2002, Lev Povalahev
00006 ** All rights reserved.
00007 ** 
00008 ** Redistribution and use in source and binary forms, with or without 
00009 ** modification, are permitted provided that the following conditions are met:
00010 ** 
00011 ** * Redistributions of source code must retain the above copyright notice, 
00012 **   this list of conditions and the following disclaimer.
00013 ** * Redistributions in binary form must reproduce the above copyright notice, 
00014 **   this list of conditions and the following disclaimer in the documentation 
00015 **   and/or other materials provided with the distribution.
00016 ** * The name of the author may be used to endorse or promote products 
00017 **   derived from this software without specific prior written permission.
00018 **
00019 ** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 
00020 ** AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
00021 ** IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
00022 ** ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
00023 ** LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
00024 ** CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
00025 ** SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
00026 ** INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
00027 ** CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
00028 ** ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
00029 ** THE POSSIBILITY OF SUCH DAMAGE.
00030 */
00031 
00032 #ifndef __wglew_h__
00033 #define __wglew_h__
00034 #define __WGLEW_H__
00035 
00036 #ifdef __wglext_h_
00037 #error wglext.h included before wglew.h
00038 #endif
00039 
00040 #define __wglext_h_
00041 
00042 #if !defined(APIENTRY) && !defined(__CYGWIN__)
00043 #  ifndef WIN32_LEAN_AND_MEAN
00044 #    define WIN32_LEAN_AND_MEAN 1
00045 #  endif
00046 #include <windows.h>
00047 #endif
00048 
00049 /*
00050  * GLEW_STATIC needs to be set when using the static version.
00051  * GLEW_BUILD is set when building the DLL version.
00052  */
00053 #ifdef GLEW_STATIC
00054 #  define GLEWAPI extern
00055 #else
00056 #  ifdef GLEW_BUILD
00057 #    define GLEWAPI extern __declspec(dllexport)
00058 #  else
00059 #    define GLEWAPI extern __declspec(dllimport)
00060 #  endif
00061 #endif
00062 
00063 #ifdef __cplusplus
00064 extern "C" {
00065 #endif
00066 
00067 /* -------------------------- WGL_3DFX_multisample ------------------------- */
00068 
00069 #ifndef WGL_3DFX_multisample
00070 #define WGL_3DFX_multisample 1
00071 
00072 #define WGL_SAMPLE_BUFFERS_3DFX 0x2060
00073 #define WGL_SAMPLES_3DFX 0x2061
00074 
00075 #define WGLEW_3DFX_multisample WGLEW_GET_VAR(__WGLEW_3DFX_multisample)
00076 
00077 #endif /* WGL_3DFX_multisample */
00078 
00079 /* ------------------------- WGL_3DL_stereo_control ------------------------ */
00080 
00081 #ifndef WGL_3DL_stereo_control
00082 #define WGL_3DL_stereo_control 1
00083 
00084 #define WGL_STEREO_EMITTER_ENABLE_3DL 0x2055
00085 #define WGL_STEREO_EMITTER_DISABLE_3DL 0x2056
00086 #define WGL_STEREO_POLARITY_NORMAL_3DL 0x2057
00087 #define WGL_STEREO_POLARITY_INVERT_3DL 0x2058
00088 
00089 typedef BOOL (WINAPI * PFNWGLSETSTEREOEMITTERSTATE3DLPROC) (HDC hDC, UINT uState);
00090 
00091 #define wglSetStereoEmitterState3DL WGLEW_GET_FUN(__wglewSetStereoEmitterState3DL)
00092 
00093 #define WGLEW_3DL_stereo_control WGLEW_GET_VAR(__WGLEW_3DL_stereo_control)
00094 
00095 #endif /* WGL_3DL_stereo_control */
00096 
00097 /* ------------------------- WGL_ARB_buffer_region ------------------------- */
00098 
00099 #ifndef WGL_ARB_buffer_region
00100 #define WGL_ARB_buffer_region 1
00101 
00102 #define WGL_FRONT_COLOR_BUFFER_BIT_ARB 0x00000001
00103 #define WGL_BACK_COLOR_BUFFER_BIT_ARB 0x00000002
00104 #define WGL_DEPTH_BUFFER_BIT_ARB 0x00000004
00105 #define WGL_STENCIL_BUFFER_BIT_ARB 0x00000008
00106 
00107 typedef HANDLE (WINAPI * PFNWGLCREATEBUFFERREGIONARBPROC) (HDC hDC, int iLayerPlane, UINT uType);
00108 typedef VOID (WINAPI * PFNWGLDELETEBUFFERREGIONARBPROC) (HANDLE hRegion);
00109 typedef BOOL (WINAPI * PFNWGLRESTOREBUFFERREGIONARBPROC) (HANDLE hRegion, int x, int y, int width, int height, int xSrc, int ySrc);
00110 typedef BOOL (WINAPI * PFNWGLSAVEBUFFERREGIONARBPROC) (HANDLE hRegion, int x, int y, int width, int height);
00111 
00112 #define wglCreateBufferRegionARB WGLEW_GET_FUN(__wglewCreateBufferRegionARB)
00113 #define wglDeleteBufferRegionARB WGLEW_GET_FUN(__wglewDeleteBufferRegionARB)
00114 #define wglRestoreBufferRegionARB WGLEW_GET_FUN(__wglewRestoreBufferRegionARB)
00115 #define wglSaveBufferRegionARB WGLEW_GET_FUN(__wglewSaveBufferRegionARB)
00116 
00117 #define WGLEW_ARB_buffer_region WGLEW_GET_VAR(__WGLEW_ARB_buffer_region)
00118 
00119 #endif /* WGL_ARB_buffer_region */
00120 
00121 /* ----------------------- WGL_ARB_extensions_string ----------------------- */
00122 
00123 #ifndef WGL_ARB_extensions_string
00124 #define WGL_ARB_extensions_string 1
00125 
00126 typedef const char* (WINAPI * PFNWGLGETEXTENSIONSSTRINGARBPROC) (HDC hdc);
00127 
00128 #define wglGetExtensionsStringARB WGLEW_GET_FUN(__wglewGetExtensionsStringARB)
00129 
00130 #define WGLEW_ARB_extensions_string WGLEW_GET_VAR(__WGLEW_ARB_extensions_string)
00131 
00132 #endif /* WGL_ARB_extensions_string */
00133 
00134 /* ----------------------- WGL_ARB_make_current_read ----------------------- */
00135 
00136 #ifndef WGL_ARB_make_current_read
00137 #define WGL_ARB_make_current_read 1
00138 
00139 typedef HDC (WINAPI * PFNWGLGETCURRENTREADDCARBPROC) (VOID);
00140 typedef BOOL (WINAPI * PFNWGLMAKECONTEXTCURRENTARBPROC) (HDC hDrawDC, HDC hReadDC, HGLRC hglrc);
00141 
00142 #define wglGetCurrentReadDCARB WGLEW_GET_FUN(__wglewGetCurrentReadDCARB)
00143 #define wglMakeContextCurrentARB WGLEW_GET_FUN(__wglewMakeContextCurrentARB)
00144 
00145 #define WGLEW_ARB_make_current_read WGLEW_GET_VAR(__WGLEW_ARB_make_current_read)
00146 
00147 #endif /* WGL_ARB_make_current_read */
00148 
00149 /* -------------------------- WGL_ARB_multisample -------------------------- */
00150 
00151 #ifndef WGL_ARB_multisample
00152 #define WGL_ARB_multisample 1
00153 
00154 #define WGL_SAMPLE_BUFFERS_ARB 0x2041
00155 #define WGL_SAMPLES_ARB 0x2042
00156 
00157 #define WGLEW_ARB_multisample WGLEW_GET_VAR(__WGLEW_ARB_multisample)
00158 
00159 #endif /* WGL_ARB_multisample */
00160 
00161 /* ---------------------------- WGL_ARB_pbuffer ---------------------------- */
00162 
00163 #ifndef WGL_ARB_pbuffer
00164 #define WGL_ARB_pbuffer 1
00165 
00166 #define WGL_DRAW_TO_PBUFFER_ARB 0x202D
00167 #define WGL_MAX_PBUFFER_PIXELS_ARB 0x202E
00168 #define WGL_MAX_PBUFFER_WIDTH_ARB 0x202F
00169 #define WGL_MAX_PBUFFER_HEIGHT_ARB 0x2030
00170 #define WGL_PBUFFER_LARGEST_ARB 0x2033
00171 #define WGL_PBUFFER_WIDTH_ARB 0x2034
00172 #define WGL_PBUFFER_HEIGHT_ARB 0x2035
00173 #define WGL_PBUFFER_LOST_ARB 0x2036
00174 
00175 DECLARE_HANDLE(HPBUFFERARB);
00176 
00177 typedef HPBUFFERARB (WINAPI * PFNWGLCREATEPBUFFERARBPROC) (HDC hDC, int iPixelFormat, int iWidth, int iHeight, const int* piAttribList);
00178 typedef BOOL (WINAPI * PFNWGLDESTROYPBUFFERARBPROC) (HPBUFFERARB hPbuffer);
00179 typedef HDC (WINAPI * PFNWGLGETPBUFFERDCARBPROC) (HPBUFFERARB hPbuffer);
00180 typedef BOOL (WINAPI * PFNWGLQUERYPBUFFERARBPROC) (HPBUFFERARB hPbuffer, int iAttribute, int* piValue);
00181 typedef int (WINAPI * PFNWGLRELEASEPBUFFERDCARBPROC) (HPBUFFERARB hPbuffer, HDC hDC);
00182 
00183 #define wglCreatePbufferARB WGLEW_GET_FUN(__wglewCreatePbufferARB)
00184 #define wglDestroyPbufferARB WGLEW_GET_FUN(__wglewDestroyPbufferARB)
00185 #define wglGetPbufferDCARB WGLEW_GET_FUN(__wglewGetPbufferDCARB)
00186 #define wglQueryPbufferARB WGLEW_GET_FUN(__wglewQueryPbufferARB)
00187 #define wglReleasePbufferDCARB WGLEW_GET_FUN(__wglewReleasePbufferDCARB)
00188 
00189 #define WGLEW_ARB_pbuffer WGLEW_GET_VAR(__WGLEW_ARB_pbuffer)
00190 
00191 #endif /* WGL_ARB_pbuffer */
00192 
00193 /* -------------------------- WGL_ARB_pixel_format ------------------------- */
00194 
00195 #ifndef WGL_ARB_pixel_format
00196 #define WGL_ARB_pixel_format 1
00197 
00198 #define WGL_NUMBER_PIXEL_FORMATS_ARB 0x2000
00199 #define WGL_DRAW_TO_WINDOW_ARB 0x2001
00200 #define WGL_DRAW_TO_BITMAP_ARB 0x2002
00201 #define WGL_ACCELERATION_ARB 0x2003
00202 #define WGL_NEED_PALETTE_ARB 0x2004
00203 #define WGL_NEED_SYSTEM_PALETTE_ARB 0x2005
00204 #define WGL_SWAP_LAYER_BUFFERS_ARB 0x2006
00205 #define WGL_SWAP_METHOD_ARB 0x2007
00206 #define WGL_NUMBER_OVERLAYS_ARB 0x2008
00207 #define WGL_NUMBER_UNDERLAYS_ARB 0x2009
00208 #define WGL_TRANSPARENT_ARB 0x200A
00209 #define WGL_SHARE_DEPTH_ARB 0x200C
00210 #define WGL_SHARE_STENCIL_ARB 0x200D
00211 #define WGL_SHARE_ACCUM_ARB 0x200E
00212 #define WGL_SUPPORT_GDI_ARB 0x200F
00213 #define WGL_SUPPORT_OPENGL_ARB 0x2010
00214 #define WGL_DOUBLE_BUFFER_ARB 0x2011
00215 #define WGL_STEREO_ARB 0x2012
00216 #define WGL_PIXEL_TYPE_ARB 0x2013
00217 #define WGL_COLOR_BITS_ARB 0x2014
00218 #define WGL_RED_BITS_ARB 0x2015
00219 #define WGL_RED_SHIFT_ARB 0x2016
00220 #define WGL_GREEN_BITS_ARB 0x2017
00221 #define WGL_GREEN_SHIFT_ARB 0x2018
00222 #define WGL_BLUE_BITS_ARB 0x2019
00223 #define WGL_BLUE_SHIFT_ARB 0x201A
00224 #define WGL_ALPHA_BITS_ARB 0x201B
00225 #define WGL_ALPHA_SHIFT_ARB 0x201C
00226 #define WGL_ACCUM_BITS_ARB 0x201D
00227 #define WGL_ACCUM_RED_BITS_ARB 0x201E
00228 #define WGL_ACCUM_GREEN_BITS_ARB 0x201F
00229 #define WGL_ACCUM_BLUE_BITS_ARB 0x2020
00230 #define WGL_ACCUM_ALPHA_BITS_ARB 0x2021
00231 #define WGL_DEPTH_BITS_ARB 0x2022
00232 #define WGL_STENCIL_BITS_ARB 0x2023
00233 #define WGL_AUX_BUFFERS_ARB 0x2024
00234 #define WGL_NO_ACCELERATION_ARB 0x2025
00235 #define WGL_GENERIC_ACCELERATION_ARB 0x2026
00236 #define WGL_FULL_ACCELERATION_ARB 0x2027
00237 #define WGL_SWAP_EXCHANGE_ARB 0x2028
00238 #define WGL_SWAP_COPY_ARB 0x2029
00239 #define WGL_SWAP_UNDEFINED_ARB 0x202A
00240 #define WGL_TYPE_RGBA_ARB 0x202B
00241 #define WGL_TYPE_COLORINDEX_ARB 0x202C
00242 #define WGL_TRANSPARENT_RED_VALUE_ARB 0x2037
00243 #define WGL_TRANSPARENT_GREEN_VALUE_ARB 0x2038
00244 #define WGL_TRANSPARENT_BLUE_VALUE_ARB 0x2039
00245 #define WGL_TRANSPARENT_ALPHA_VALUE_ARB 0x203A
00246 #define WGL_TRANSPARENT_INDEX_VALUE_ARB 0x203B
00247 
00248 typedef BOOL (WINAPI * PFNWGLCHOOSEPIXELFORMATARBPROC) (HDC hdc, const int* piAttribIList, const FLOAT *pfAttribFList, UINT nMaxFormats, int *piFormats, UINT *nNumFormats);
00249 typedef BOOL (WINAPI * PFNWGLGETPIXELFORMATATTRIBFVARBPROC) (HDC hdc, int iPixelFormat, int iLayerPlane, UINT nAttributes, const int* piAttributes, FLOAT *pfValues);
00250 typedef BOOL (WINAPI * PFNWGLGETPIXELFORMATATTRIBIVARBPROC) (HDC hdc, int iPixelFormat, int iLayerPlane, UINT nAttributes, const int* piAttributes, int *piValues);
00251 
00252 #define wglChoosePixelFormatARB WGLEW_GET_FUN(__wglewChoosePixelFormatARB)
00253 #define wglGetPixelFormatAttribfvARB WGLEW_GET_FUN(__wglewGetPixelFormatAttribfvARB)
00254 #define wglGetPixelFormatAttribivARB WGLEW_GET_FUN(__wglewGetPixelFormatAttribivARB)
00255 
00256 #define WGLEW_ARB_pixel_format WGLEW_GET_VAR(__WGLEW_ARB_pixel_format)
00257 
00258 #endif /* WGL_ARB_pixel_format */
00259 
00260 /* ----------------------- WGL_ARB_pixel_format_float ---------------------- */
00261 
00262 #ifndef WGL_ARB_pixel_format_float
00263 #define WGL_ARB_pixel_format_float 1
00264 
00265 #define WGL_TYPE_RGBA_FLOAT_ARB 0x21A0
00266 
00267 #define WGLEW_ARB_pixel_format_float WGLEW_GET_VAR(__WGLEW_ARB_pixel_format_float)
00268 
00269 #endif /* WGL_ARB_pixel_format_float */
00270 
00271 /* ------------------------- WGL_ARB_render_texture ------------------------ */
00272 
00273 #ifndef WGL_ARB_render_texture
00274 #define WGL_ARB_render_texture 1
00275 
00276 #define WGL_BIND_TO_TEXTURE_RGB_ARB 0x2070
00277 #define WGL_BIND_TO_TEXTURE_RGBA_ARB 0x2071
00278 #define WGL_TEXTURE_FORMAT_ARB 0x2072
00279 #define WGL_TEXTURE_TARGET_ARB 0x2073
00280 #define WGL_MIPMAP_TEXTURE_ARB 0x2074
00281 #define WGL_TEXTURE_RGB_ARB 0x2075
00282 #define WGL_TEXTURE_RGBA_ARB 0x2076
00283 #define WGL_NO_TEXTURE_ARB 0x2077
00284 #define WGL_TEXTURE_CUBE_MAP_ARB 0x2078
00285 #define WGL_TEXTURE_1D_ARB 0x2079
00286 #define WGL_TEXTURE_2D_ARB 0x207A
00287 #define WGL_MIPMAP_LEVEL_ARB 0x207B
00288 #define WGL_CUBE_MAP_FACE_ARB 0x207C
00289 #define WGL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB 0x207D
00290 #define WGL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB 0x207E
00291 #define WGL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB 0x207F
00292 #define WGL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB 0x2080
00293 #define WGL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB 0x2081
00294 #define WGL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB 0x2082
00295 #define WGL_FRONT_LEFT_ARB 0x2083
00296 #define WGL_FRONT_RIGHT_ARB 0x2084
00297 #define WGL_BACK_LEFT_ARB 0x2085
00298 #define WGL_BACK_RIGHT_ARB 0x2086
00299 #define WGL_AUX0_ARB 0x2087
00300 #define WGL_AUX1_ARB 0x2088
00301 #define WGL_AUX2_ARB 0x2089
00302 #define WGL_AUX3_ARB 0x208A
00303 #define WGL_AUX4_ARB 0x208B
00304 #define WGL_AUX5_ARB 0x208C
00305 #define WGL_AUX6_ARB 0x208D
00306 #define WGL_AUX7_ARB 0x208E
00307 #define WGL_AUX8_ARB 0x208F
00308 #define WGL_AUX9_ARB 0x2090
00309 
00310 typedef BOOL (WINAPI * PFNWGLBINDTEXIMAGEARBPROC) (HPBUFFERARB hPbuffer, int iBuffer);
00311 typedef BOOL (WINAPI * PFNWGLRELEASETEXIMAGEARBPROC) (HPBUFFERARB hPbuffer, int iBuffer);
00312 typedef BOOL (WINAPI * PFNWGLSETPBUFFERATTRIBARBPROC) (HPBUFFERARB hPbuffer, const int* piAttribList);
00313 
00314 #define wglBindTexImageARB WGLEW_GET_FUN(__wglewBindTexImageARB)
00315 #define wglReleaseTexImageARB WGLEW_GET_FUN(__wglewReleaseTexImageARB)
00316 #define wglSetPbufferAttribARB WGLEW_GET_FUN(__wglewSetPbufferAttribARB)
00317 
00318 #define WGLEW_ARB_render_texture WGLEW_GET_VAR(__WGLEW_ARB_render_texture)
00319 
00320 #endif /* WGL_ARB_render_texture */
00321 
00322 /* ----------------------- WGL_ATI_pixel_format_float ---------------------- */
00323 
00324 #ifndef WGL_ATI_pixel_format_float
00325 #define WGL_ATI_pixel_format_float 1
00326 
00327 #define WGL_TYPE_RGBA_FLOAT_ATI 0x21A0
00328 #define GL_RGBA_FLOAT_MODE_ATI 0x8820
00329 #define GL_COLOR_CLEAR_UNCLAMPED_VALUE_ATI 0x8835
00330 
00331 #define WGLEW_ATI_pixel_format_float WGLEW_GET_VAR(__WGLEW_ATI_pixel_format_float)
00332 
00333 #endif /* WGL_ATI_pixel_format_float */
00334 
00335 /* -------------------- WGL_ATI_render_texture_rectangle ------------------- */
00336 
00337 #ifndef WGL_ATI_render_texture_rectangle
00338 #define WGL_ATI_render_texture_rectangle 1
00339 
00340 #define WGL_TEXTURE_RECTANGLE_ATI 0x21A5
00341 
00342 #define WGLEW_ATI_render_texture_rectangle WGLEW_GET_VAR(__WGLEW_ATI_render_texture_rectangle)
00343 
00344 #endif /* WGL_ATI_render_texture_rectangle */
00345 
00346 /* -------------------------- WGL_EXT_depth_float -------------------------- */
00347 
00348 #ifndef WGL_EXT_depth_float
00349 #define WGL_EXT_depth_float 1
00350 
00351 #define WGL_DEPTH_FLOAT_EXT 0x2040
00352 
00353 #define WGLEW_EXT_depth_float WGLEW_GET_VAR(__WGLEW_EXT_depth_float)
00354 
00355 #endif /* WGL_EXT_depth_float */
00356 
00357 /* ---------------------- WGL_EXT_display_color_table ---------------------- */
00358 
00359 #ifndef WGL_EXT_display_color_table
00360 #define WGL_EXT_display_color_table 1
00361 
00362 typedef GLboolean (WINAPI * PFNWGLBINDDISPLAYCOLORTABLEEXTPROC) (GLushort id);
00363 typedef GLboolean (WINAPI * PFNWGLCREATEDISPLAYCOLORTABLEEXTPROC) (GLushort id);
00364 typedef void (WINAPI * PFNWGLDESTROYDISPLAYCOLORTABLEEXTPROC) (GLushort id);
00365 typedef GLboolean (WINAPI * PFNWGLLOADDISPLAYCOLORTABLEEXTPROC) (GLushort* table, GLuint length);
00366 
00367 #define wglBindDisplayColorTableEXT WGLEW_GET_FUN(__wglewBindDisplayColorTableEXT)
00368 #define wglCreateDisplayColorTableEXT WGLEW_GET_FUN(__wglewCreateDisplayColorTableEXT)
00369 #define wglDestroyDisplayColorTableEXT WGLEW_GET_FUN(__wglewDestroyDisplayColorTableEXT)
00370 #define wglLoadDisplayColorTableEXT WGLEW_GET_FUN(__wglewLoadDisplayColorTableEXT)
00371 
00372 #define WGLEW_EXT_display_color_table WGLEW_GET_VAR(__WGLEW_EXT_display_color_table)
00373 
00374 #endif /* WGL_EXT_display_color_table */
00375 
00376 /* ----------------------- WGL_EXT_extensions_string ----------------------- */
00377 
00378 #ifndef WGL_EXT_extensions_string
00379 #define WGL_EXT_extensions_string 1
00380 
00381 typedef const char* (WINAPI * PFNWGLGETEXTENSIONSSTRINGEXTPROC) (void);
00382 
00383 #define wglGetExtensionsStringEXT WGLEW_GET_FUN(__wglewGetExtensionsStringEXT)
00384 
00385 #define WGLEW_EXT_extensions_string WGLEW_GET_VAR(__WGLEW_EXT_extensions_string)
00386 
00387 #endif /* WGL_EXT_extensions_string */
00388 
00389 /* ------------------------ WGL_EXT_framebuffer_sRGB ----------------------- */
00390 
00391 #ifndef WGL_EXT_framebuffer_sRGB
00392 #define WGL_EXT_framebuffer_sRGB 1
00393 
00394 #define WGL_FRAMEBUFFER_SRGB_CAPABLE_EXT 0x20A9
00395 
00396 #define WGLEW_EXT_framebuffer_sRGB WGLEW_GET_VAR(__WGLEW_EXT_framebuffer_sRGB)
00397 
00398 #endif /* WGL_EXT_framebuffer_sRGB */
00399 
00400 /* ----------------------- WGL_EXT_make_current_read ----------------------- */
00401 
00402 #ifndef WGL_EXT_make_current_read
00403 #define WGL_EXT_make_current_read 1
00404 
00405 typedef HDC (WINAPI * PFNWGLGETCURRENTREADDCEXTPROC) (VOID);
00406 typedef BOOL (WINAPI * PFNWGLMAKECONTEXTCURRENTEXTPROC) (HDC hDrawDC, HDC hReadDC, HGLRC hglrc);
00407 
00408 #define wglGetCurrentReadDCEXT WGLEW_GET_FUN(__wglewGetCurrentReadDCEXT)
00409 #define wglMakeContextCurrentEXT WGLEW_GET_FUN(__wglewMakeContextCurrentEXT)
00410 
00411 #define WGLEW_EXT_make_current_read WGLEW_GET_VAR(__WGLEW_EXT_make_current_read)
00412 
00413 #endif /* WGL_EXT_make_current_read */
00414 
00415 /* -------------------------- WGL_EXT_multisample -------------------------- */
00416 
00417 #ifndef WGL_EXT_multisample
00418 #define WGL_EXT_multisample 1
00419 
00420 #define WGL_SAMPLE_BUFFERS_EXT 0x2041
00421 #define WGL_SAMPLES_EXT 0x2042
00422 
00423 #define WGLEW_EXT_multisample WGLEW_GET_VAR(__WGLEW_EXT_multisample)
00424 
00425 #endif /* WGL_EXT_multisample */
00426 
00427 /* ---------------------------- WGL_EXT_pbuffer ---------------------------- */
00428 
00429 #ifndef WGL_EXT_pbuffer
00430 #define WGL_EXT_pbuffer 1
00431 
00432 #define WGL_DRAW_TO_PBUFFER_EXT 0x202D
00433 #define WGL_MAX_PBUFFER_PIXELS_EXT 0x202E
00434 #define WGL_MAX_PBUFFER_WIDTH_EXT 0x202F
00435 #define WGL_MAX_PBUFFER_HEIGHT_EXT 0x2030
00436 #define WGL_OPTIMAL_PBUFFER_WIDTH_EXT 0x2031
00437 #define WGL_OPTIMAL_PBUFFER_HEIGHT_EXT 0x2032
00438 #define WGL_PBUFFER_LARGEST_EXT 0x2033
00439 #define WGL_PBUFFER_WIDTH_EXT 0x2034
00440 #define WGL_PBUFFER_HEIGHT_EXT 0x2035
00441 
00442 DECLARE_HANDLE(HPBUFFEREXT);
00443 
00444 typedef HPBUFFEREXT (WINAPI * PFNWGLCREATEPBUFFEREXTPROC) (HDC hDC, int iPixelFormat, int iWidth, int iHeight, const int* piAttribList);
00445 typedef BOOL (WINAPI * PFNWGLDESTROYPBUFFEREXTPROC) (HPBUFFEREXT hPbuffer);
00446 typedef HDC (WINAPI * PFNWGLGETPBUFFERDCEXTPROC) (HPBUFFEREXT hPbuffer);
00447 typedef BOOL (WINAPI * PFNWGLQUERYPBUFFEREXTPROC) (HPBUFFEREXT hPbuffer, int iAttribute, int* piValue);
00448 typedef int (WINAPI * PFNWGLRELEASEPBUFFERDCEXTPROC) (HPBUFFEREXT hPbuffer, HDC hDC);
00449 
00450 #define wglCreatePbufferEXT WGLEW_GET_FUN(__wglewCreatePbufferEXT)
00451 #define wglDestroyPbufferEXT WGLEW_GET_FUN(__wglewDestroyPbufferEXT)
00452 #define wglGetPbufferDCEXT WGLEW_GET_FUN(__wglewGetPbufferDCEXT)
00453 #define wglQueryPbufferEXT WGLEW_GET_FUN(__wglewQueryPbufferEXT)
00454 #define wglReleasePbufferDCEXT WGLEW_GET_FUN(__wglewReleasePbufferDCEXT)
00455 
00456 #define WGLEW_EXT_pbuffer WGLEW_GET_VAR(__WGLEW_EXT_pbuffer)
00457 
00458 #endif /* WGL_EXT_pbuffer */
00459 
00460 /* -------------------------- WGL_EXT_pixel_format ------------------------- */
00461 
00462 #ifndef WGL_EXT_pixel_format
00463 #define WGL_EXT_pixel_format 1
00464 
00465 #define WGL_NUMBER_PIXEL_FORMATS_EXT 0x2000
00466 #define WGL_DRAW_TO_WINDOW_EXT 0x2001
00467 #define WGL_DRAW_TO_BITMAP_EXT 0x2002
00468 #define WGL_ACCELERATION_EXT 0x2003
00469 #define WGL_NEED_PALETTE_EXT 0x2004
00470 #define WGL_NEED_SYSTEM_PALETTE_EXT 0x2005
00471 #define WGL_SWAP_LAYER_BUFFERS_EXT 0x2006
00472 #define WGL_SWAP_METHOD_EXT 0x2007
00473 #define WGL_NUMBER_OVERLAYS_EXT 0x2008
00474 #define WGL_NUMBER_UNDERLAYS_EXT 0x2009
00475 #define WGL_TRANSPARENT_EXT 0x200A
00476 #define WGL_TRANSPARENT_VALUE_EXT 0x200B
00477 #define WGL_SHARE_DEPTH_EXT 0x200C
00478 #define WGL_SHARE_STENCIL_EXT 0x200D
00479 #define WGL_SHARE_ACCUM_EXT 0x200E
00480 #define WGL_SUPPORT_GDI_EXT 0x200F
00481 #define WGL_SUPPORT_OPENGL_EXT 0x2010
00482 #define WGL_DOUBLE_BUFFER_EXT 0x2011
00483 #define WGL_STEREO_EXT 0x2012
00484 #define WGL_PIXEL_TYPE_EXT 0x2013
00485 #define WGL_COLOR_BITS_EXT 0x2014
00486 #define WGL_RED_BITS_EXT 0x2015
00487 #define WGL_RED_SHIFT_EXT 0x2016
00488 #define WGL_GREEN_BITS_EXT 0x2017
00489 #define WGL_GREEN_SHIFT_EXT 0x2018
00490 #define WGL_BLUE_BITS_EXT 0x2019
00491 #define WGL_BLUE_SHIFT_EXT 0x201A
00492 #define WGL_ALPHA_BITS_EXT 0x201B
00493 #define WGL_ALPHA_SHIFT_EXT 0x201C
00494 #define WGL_ACCUM_BITS_EXT 0x201D
00495 #define WGL_ACCUM_RED_BITS_EXT 0x201E
00496 #define WGL_ACCUM_GREEN_BITS_EXT 0x201F
00497 #define WGL_ACCUM_BLUE_BITS_EXT 0x2020
00498 #define WGL_ACCUM_ALPHA_BITS_EXT 0x2021
00499 #define WGL_DEPTH_BITS_EXT 0x2022
00500 #define WGL_STENCIL_BITS_EXT 0x2023
00501 #define WGL_AUX_BUFFERS_EXT 0x2024
00502 #define WGL_NO_ACCELERATION_EXT 0x2025
00503 #define WGL_GENERIC_ACCELERATION_EXT 0x2026
00504 #define WGL_FULL_ACCELERATION_EXT 0x2027
00505 #define WGL_SWAP_EXCHANGE_EXT 0x2028
00506 #define WGL_SWAP_COPY_EXT 0x2029
00507 #define WGL_SWAP_UNDEFINED_EXT 0x202A
00508 #define WGL_TYPE_RGBA_EXT 0x202B
00509 #define WGL_TYPE_COLORINDEX_EXT 0x202C
00510 
00511 typedef BOOL (WINAPI * PFNWGLCHOOSEPIXELFORMATEXTPROC) (HDC hdc, const int* piAttribIList, const FLOAT *pfAttribFList, UINT nMaxFormats, int *piFormats, UINT *nNumFormats);
00512 typedef BOOL (WINAPI * PFNWGLGETPIXELFORMATATTRIBFVEXTPROC) (HDC hdc, int iPixelFormat, int iLayerPlane, UINT nAttributes, int* piAttributes, FLOAT *pfValues);
00513 typedef BOOL (WINAPI * PFNWGLGETPIXELFORMATATTRIBIVEXTPROC) (HDC hdc, int iPixelFormat, int iLayerPlane, UINT nAttributes, int* piAttributes, int *piValues);
00514 
00515 #define wglChoosePixelFormatEXT WGLEW_GET_FUN(__wglewChoosePixelFormatEXT)
00516 #define wglGetPixelFormatAttribfvEXT WGLEW_GET_FUN(__wglewGetPixelFormatAttribfvEXT)
00517 #define wglGetPixelFormatAttribivEXT WGLEW_GET_FUN(__wglewGetPixelFormatAttribivEXT)
00518 
00519 #define WGLEW_EXT_pixel_format WGLEW_GET_VAR(__WGLEW_EXT_pixel_format)
00520 
00521 #endif /* WGL_EXT_pixel_format */
00522 
00523 /* ------------------- WGL_EXT_pixel_format_packed_float ------------------- */
00524 
00525 #ifndef WGL_EXT_pixel_format_packed_float
00526 #define WGL_EXT_pixel_format_packed_float 1
00527 
00528 #define WGL_TYPE_RGBA_UNSIGNED_FLOAT_EXT 0x20A8
00529 
00530 #define WGLEW_EXT_pixel_format_packed_float WGLEW_GET_VAR(__WGLEW_EXT_pixel_format_packed_float)
00531 
00532 #endif /* WGL_EXT_pixel_format_packed_float */
00533 
00534 /* -------------------------- WGL_EXT_swap_control ------------------------- */
00535 
00536 #ifndef WGL_EXT_swap_control
00537 #define WGL_EXT_swap_control 1
00538 
00539 typedef int (WINAPI * PFNWGLGETSWAPINTERVALEXTPROC) (void);
00540 typedef BOOL (WINAPI * PFNWGLSWAPINTERVALEXTPROC) (int interval);
00541 
00542 #define wglGetSwapIntervalEXT WGLEW_GET_FUN(__wglewGetSwapIntervalEXT)
00543 #define wglSwapIntervalEXT WGLEW_GET_FUN(__wglewSwapIntervalEXT)
00544 
00545 #define WGLEW_EXT_swap_control WGLEW_GET_VAR(__WGLEW_EXT_swap_control)
00546 
00547 #endif /* WGL_EXT_swap_control */
00548 
00549 /* --------------------- WGL_I3D_digital_video_control --------------------- */
00550 
00551 #ifndef WGL_I3D_digital_video_control
00552 #define WGL_I3D_digital_video_control 1
00553 
00554 #define WGL_DIGITAL_VIDEO_CURSOR_ALPHA_FRAMEBUFFER_I3D 0x2050
00555 #define WGL_DIGITAL_VIDEO_CURSOR_ALPHA_VALUE_I3D 0x2051
00556 #define WGL_DIGITAL_VIDEO_CURSOR_INCLUDED_I3D 0x2052
00557 #define WGL_DIGITAL_VIDEO_GAMMA_CORRECTED_I3D 0x2053
00558 
00559 typedef BOOL (WINAPI * PFNWGLGETDIGITALVIDEOPARAMETERSI3DPROC) (HDC hDC, int iAttribute, int* piValue);
00560 typedef BOOL (WINAPI * PFNWGLSETDIGITALVIDEOPARAMETERSI3DPROC) (HDC hDC, int iAttribute, const int* piValue);
00561 
00562 #define wglGetDigitalVideoParametersI3D WGLEW_GET_FUN(__wglewGetDigitalVideoParametersI3D)
00563 #define wglSetDigitalVideoParametersI3D WGLEW_GET_FUN(__wglewSetDigitalVideoParametersI3D)
00564 
00565 #define WGLEW_I3D_digital_video_control WGLEW_GET_VAR(__WGLEW_I3D_digital_video_control)
00566 
00567 #endif /* WGL_I3D_digital_video_control */
00568 
00569 /* ----------------------------- WGL_I3D_gamma ----------------------------- */
00570 
00571 #ifndef WGL_I3D_gamma
00572 #define WGL_I3D_gamma 1
00573 
00574 #define WGL_GAMMA_TABLE_SIZE_I3D 0x204E
00575 #define WGL_GAMMA_EXCLUDE_DESKTOP_I3D 0x204F
00576 
00577 typedef BOOL (WINAPI * PFNWGLGETGAMMATABLEI3DPROC) (HDC hDC, int iEntries, USHORT* puRed, USHORT *puGreen, USHORT *puBlue);
00578 typedef BOOL (WINAPI * PFNWGLGETGAMMATABLEPARAMETERSI3DPROC) (HDC hDC, int iAttribute, int* piValue);
00579 typedef BOOL (WINAPI * PFNWGLSETGAMMATABLEI3DPROC) (HDC hDC, int iEntries, const USHORT* puRed, const USHORT *puGreen, const USHORT *puBlue);
00580 typedef BOOL (WINAPI * PFNWGLSETGAMMATABLEPARAMETERSI3DPROC) (HDC hDC, int iAttribute, const int* piValue);
00581 
00582 #define wglGetGammaTableI3D WGLEW_GET_FUN(__wglewGetGammaTableI3D)
00583 #define wglGetGammaTableParametersI3D WGLEW_GET_FUN(__wglewGetGammaTableParametersI3D)
00584 #define wglSetGammaTableI3D WGLEW_GET_FUN(__wglewSetGammaTableI3D)
00585 #define wglSetGammaTableParametersI3D WGLEW_GET_FUN(__wglewSetGammaTableParametersI3D)
00586 
00587 #define WGLEW_I3D_gamma WGLEW_GET_VAR(__WGLEW_I3D_gamma)
00588 
00589 #endif /* WGL_I3D_gamma */
00590 
00591 /* ---------------------------- WGL_I3D_genlock ---------------------------- */
00592 
00593 #ifndef WGL_I3D_genlock
00594 #define WGL_I3D_genlock 1
00595 
00596 #define WGL_GENLOCK_SOURCE_MULTIVIEW_I3D 0x2044
00597 #define WGL_GENLOCK_SOURCE_EXTERNAL_SYNC_I3D 0x2045
00598 #define WGL_GENLOCK_SOURCE_EXTERNAL_FIELD_I3D 0x2046
00599 #define WGL_GENLOCK_SOURCE_EXTERNAL_TTL_I3D 0x2047
00600 #define WGL_GENLOCK_SOURCE_DIGITAL_SYNC_I3D 0x2048
00601 #define WGL_GENLOCK_SOURCE_DIGITAL_FIELD_I3D 0x2049
00602 #define WGL_GENLOCK_SOURCE_EDGE_FALLING_I3D 0x204A
00603 #define WGL_GENLOCK_SOURCE_EDGE_RISING_I3D 0x204B
00604 #define WGL_GENLOCK_SOURCE_EDGE_BOTH_I3D 0x204C
00605 
00606 typedef BOOL (WINAPI * PFNWGLDISABLEGENLOCKI3DPROC) (HDC hDC);
00607 typedef BOOL (WINAPI * PFNWGLENABLEGENLOCKI3DPROC) (HDC hDC);
00608 typedef BOOL (WINAPI * PFNWGLGENLOCKSAMPLERATEI3DPROC) (HDC hDC, UINT uRate);
00609 typedef BOOL (WINAPI * PFNWGLGENLOCKSOURCEDELAYI3DPROC) (HDC hDC, UINT uDelay);
00610 typedef BOOL (WINAPI * PFNWGLGENLOCKSOURCEEDGEI3DPROC) (HDC hDC, UINT uEdge);
00611 typedef BOOL (WINAPI * PFNWGLGENLOCKSOURCEI3DPROC) (HDC hDC, UINT uSource);
00612 typedef BOOL (WINAPI * PFNWGLGETGENLOCKSAMPLERATEI3DPROC) (HDC hDC, UINT* uRate);
00613 typedef BOOL (WINAPI * PFNWGLGETGENLOCKSOURCEDELAYI3DPROC) (HDC hDC, UINT* uDelay);
00614 typedef BOOL (WINAPI * PFNWGLGETGENLOCKSOURCEEDGEI3DPROC) (HDC hDC, UINT* uEdge);
00615 typedef BOOL (WINAPI * PFNWGLGETGENLOCKSOURCEI3DPROC) (HDC hDC, UINT* uSource);
00616 typedef BOOL (WINAPI * PFNWGLISENABLEDGENLOCKI3DPROC) (HDC hDC, BOOL* pFlag);
00617 typedef BOOL (WINAPI * PFNWGLQUERYGENLOCKMAXSOURCEDELAYI3DPROC) (HDC hDC, UINT* uMaxLineDelay, UINT *uMaxPixelDelay);
00618 
00619 #define wglDisableGenlockI3D WGLEW_GET_FUN(__wglewDisableGenlockI3D)
00620 #define wglEnableGenlockI3D WGLEW_GET_FUN(__wglewEnableGenlockI3D)
00621 #define wglGenlockSampleRateI3D WGLEW_GET_FUN(__wglewGenlockSampleRateI3D)
00622 #define wglGenlockSourceDelayI3D WGLEW_GET_FUN(__wglewGenlockSourceDelayI3D)
00623 #define wglGenlockSourceEdgeI3D WGLEW_GET_FUN(__wglewGenlockSourceEdgeI3D)
00624 #define wglGenlockSourceI3D WGLEW_GET_FUN(__wglewGenlockSourceI3D)
00625 #define wglGetGenlockSampleRateI3D WGLEW_GET_FUN(__wglewGetGenlockSampleRateI3D)
00626 #define wglGetGenlockSourceDelayI3D WGLEW_GET_FUN(__wglewGetGenlockSourceDelayI3D)
00627 #define wglGetGenlockSourceEdgeI3D WGLEW_GET_FUN(__wglewGetGenlockSourceEdgeI3D)
00628 #define wglGetGenlockSourceI3D WGLEW_GET_FUN(__wglewGetGenlockSourceI3D)
00629 #define wglIsEnabledGenlockI3D WGLEW_GET_FUN(__wglewIsEnabledGenlockI3D)
00630 #define wglQueryGenlockMaxSourceDelayI3D WGLEW_GET_FUN(__wglewQueryGenlockMaxSourceDelayI3D)
00631 
00632 #define WGLEW_I3D_genlock WGLEW_GET_VAR(__WGLEW_I3D_genlock)
00633 
00634 #endif /* WGL_I3D_genlock */
00635 
00636 /* -------------------------- WGL_I3D_image_buffer ------------------------- */
00637 
00638 #ifndef WGL_I3D_image_buffer
00639 #define WGL_I3D_image_buffer 1
00640 
00641 #define WGL_IMAGE_BUFFER_MIN_ACCESS_I3D 0x00000001
00642 #define WGL_IMAGE_BUFFER_LOCK_I3D 0x00000002
00643 
00644 typedef BOOL (WINAPI * PFNWGLASSOCIATEIMAGEBUFFEREVENTSI3DPROC) (HDC hdc, HANDLE* pEvent, LPVOID *pAddress, DWORD *pSize, UINT count);
00645 typedef LPVOID (WINAPI * PFNWGLCREATEIMAGEBUFFERI3DPROC) (HDC hDC, DWORD dwSize, UINT uFlags);
00646 typedef BOOL (WINAPI * PFNWGLDESTROYIMAGEBUFFERI3DPROC) (HDC hDC, LPVOID pAddress);
00647 typedef BOOL (WINAPI * PFNWGLRELEASEIMAGEBUFFEREVENTSI3DPROC) (HDC hdc, LPVOID* pAddress, UINT count);
00648 
00649 #define wglAssociateImageBufferEventsI3D WGLEW_GET_FUN(__wglewAssociateImageBufferEventsI3D)
00650 #define wglCreateImageBufferI3D WGLEW_GET_FUN(__wglewCreateImageBufferI3D)
00651 #define wglDestroyImageBufferI3D WGLEW_GET_FUN(__wglewDestroyImageBufferI3D)
00652 #define wglReleaseImageBufferEventsI3D WGLEW_GET_FUN(__wglewReleaseImageBufferEventsI3D)
00653 
00654 #define WGLEW_I3D_image_buffer WGLEW_GET_VAR(__WGLEW_I3D_image_buffer)
00655 
00656 #endif /* WGL_I3D_image_buffer */
00657 
00658 /* ------------------------ WGL_I3D_swap_frame_lock ------------------------ */
00659 
00660 #ifndef WGL_I3D_swap_frame_lock
00661 #define WGL_I3D_swap_frame_lock 1
00662 
00663 typedef BOOL (WINAPI * PFNWGLDISABLEFRAMELOCKI3DPROC) (VOID);
00664 typedef BOOL (WINAPI * PFNWGLENABLEFRAMELOCKI3DPROC) (VOID);
00665 typedef BOOL (WINAPI * PFNWGLISENABLEDFRAMELOCKI3DPROC) (BOOL* pFlag);
00666 typedef BOOL (WINAPI * PFNWGLQUERYFRAMELOCKMASTERI3DPROC) (BOOL* pFlag);
00667 
00668 #define wglDisableFrameLockI3D WGLEW_GET_FUN(__wglewDisableFrameLockI3D)
00669 #define wglEnableFrameLockI3D WGLEW_GET_FUN(__wglewEnableFrameLockI3D)
00670 #define wglIsEnabledFrameLockI3D WGLEW_GET_FUN(__wglewIsEnabledFrameLockI3D)
00671 #define wglQueryFrameLockMasterI3D WGLEW_GET_FUN(__wglewQueryFrameLockMasterI3D)
00672 
00673 #define WGLEW_I3D_swap_frame_lock WGLEW_GET_VAR(__WGLEW_I3D_swap_frame_lock)
00674 
00675 #endif /* WGL_I3D_swap_frame_lock */
00676 
00677 /* ------------------------ WGL_I3D_swap_frame_usage ----------------------- */
00678 
00679 #ifndef WGL_I3D_swap_frame_usage
00680 #define WGL_I3D_swap_frame_usage 1
00681 
00682 typedef BOOL (WINAPI * PFNWGLBEGINFRAMETRACKINGI3DPROC) (void);
00683 typedef BOOL (WINAPI * PFNWGLENDFRAMETRACKINGI3DPROC) (void);
00684 typedef BOOL (WINAPI * PFNWGLGETFRAMEUSAGEI3DPROC) (float* pUsage);
00685 typedef BOOL (WINAPI * PFNWGLQUERYFRAMETRACKINGI3DPROC) (DWORD* pFrameCount, DWORD *pMissedFrames, float *pLastMissedUsage);
00686 
00687 #define wglBeginFrameTrackingI3D WGLEW_GET_FUN(__wglewBeginFrameTrackingI3D)
00688 #define wglEndFrameTrackingI3D WGLEW_GET_FUN(__wglewEndFrameTrackingI3D)
00689 #define wglGetFrameUsageI3D WGLEW_GET_FUN(__wglewGetFrameUsageI3D)
00690 #define wglQueryFrameTrackingI3D WGLEW_GET_FUN(__wglewQueryFrameTrackingI3D)
00691 
00692 #define WGLEW_I3D_swap_frame_usage WGLEW_GET_VAR(__WGLEW_I3D_swap_frame_usage)
00693 
00694 #endif /* WGL_I3D_swap_frame_usage */
00695 
00696 /* -------------------------- WGL_NV_float_buffer -------------------------- */
00697 
00698 #ifndef WGL_NV_float_buffer
00699 #define WGL_NV_float_buffer 1
00700 
00701 #define WGL_FLOAT_COMPONENTS_NV 0x20B0
00702 #define WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_R_NV 0x20B1
00703 #define WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RG_NV 0x20B2
00704 #define WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RGB_NV 0x20B3
00705 #define WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RGBA_NV 0x20B4
00706 #define WGL_TEXTURE_FLOAT_R_NV 0x20B5
00707 #define WGL_TEXTURE_FLOAT_RG_NV 0x20B6
00708 #define WGL_TEXTURE_FLOAT_RGB_NV 0x20B7
00709 #define WGL_TEXTURE_FLOAT_RGBA_NV 0x20B8
00710 
00711 #define WGLEW_NV_float_buffer WGLEW_GET_VAR(__WGLEW_NV_float_buffer)
00712 
00713 #endif /* WGL_NV_float_buffer */
00714 
00715 /* -------------------------- WGL_NV_gpu_affinity -------------------------- */
00716 
00717 #ifndef WGL_NV_gpu_affinity
00718 #define WGL_NV_gpu_affinity 1
00719 
00720 #define WGL_ERROR_INCOMPATIBLE_AFFINITY_MASKS_NV 0x20D0
00721 #define WGL_ERROR_MISSING_AFFINITY_MASK_NV 0x20D1
00722 
00723 DECLARE_HANDLE(HGPUNV);
00724 typedef struct _GPU_DEVICE {
00725   DWORD cb; 
00726   CHAR DeviceName[32]; 
00727   CHAR DeviceString[128]; 
00728   DWORD Flags; 
00729   RECT rcVirtualScreen; 
00730 } GPU_DEVICE, *PGPU_DEVICE;
00731 
00732 typedef HDC (WINAPI * PFNWGLCREATEAFFINITYDCNVPROC) (const HGPUNV *phGpuList);
00733 typedef BOOL (WINAPI * PFNWGLDELETEDCNVPROC) (HDC hdc);
00734 typedef BOOL (WINAPI * PFNWGLENUMGPUDEVICESNVPROC) (HGPUNV hGpu, UINT iDeviceIndex, PGPU_DEVICE lpGpuDevice);
00735 typedef BOOL (WINAPI * PFNWGLENUMGPUSFROMAFFINITYDCNVPROC) (HDC hAffinityDC, UINT iGpuIndex, HGPUNV *hGpu);
00736 typedef BOOL (WINAPI * PFNWGLENUMGPUSNVPROC) (UINT iGpuIndex, HGPUNV *phGpu);
00737 
00738 #define wglCreateAffinityDCNV WGLEW_GET_FUN(__wglewCreateAffinityDCNV)
00739 #define wglDeleteDCNV WGLEW_GET_FUN(__wglewDeleteDCNV)
00740 #define wglEnumGpuDevicesNV WGLEW_GET_FUN(__wglewEnumGpuDevicesNV)
00741 #define wglEnumGpusFromAffinityDCNV WGLEW_GET_FUN(__wglewEnumGpusFromAffinityDCNV)
00742 #define wglEnumGpusNV WGLEW_GET_FUN(__wglewEnumGpusNV)
00743 
00744 #define WGLEW_NV_gpu_affinity WGLEW_GET_VAR(__WGLEW_NV_gpu_affinity)
00745 
00746 #endif /* WGL_NV_gpu_affinity */
00747 
00748 /* ---------------------- WGL_NV_render_depth_texture ---------------------- */
00749 
00750 #ifndef WGL_NV_render_depth_texture
00751 #define WGL_NV_render_depth_texture 1
00752 
00753 #define WGL_NO_TEXTURE_ARB 0x2077
00754 #define WGL_BIND_TO_TEXTURE_DEPTH_NV 0x20A3
00755 #define WGL_BIND_TO_TEXTURE_RECTANGLE_DEPTH_NV 0x20A4
00756 #define WGL_DEPTH_TEXTURE_FORMAT_NV 0x20A5
00757 #define WGL_TEXTURE_DEPTH_COMPONENT_NV 0x20A6
00758 #define WGL_DEPTH_COMPONENT_NV 0x20A7
00759 
00760 #define WGLEW_NV_render_depth_texture WGLEW_GET_VAR(__WGLEW_NV_render_depth_texture)
00761 
00762 #endif /* WGL_NV_render_depth_texture */
00763 
00764 /* -------------------- WGL_NV_render_texture_rectangle -------------------- */
00765 
00766 #ifndef WGL_NV_render_texture_rectangle
00767 #define WGL_NV_render_texture_rectangle 1
00768 
00769 #define WGL_BIND_TO_TEXTURE_RECTANGLE_RGB_NV 0x20A0
00770 #define WGL_BIND_TO_TEXTURE_RECTANGLE_RGBA_NV 0x20A1
00771 #define WGL_TEXTURE_RECTANGLE_NV 0x20A2
00772 
00773 #define WGLEW_NV_render_texture_rectangle WGLEW_GET_VAR(__WGLEW_NV_render_texture_rectangle)
00774 
00775 #endif /* WGL_NV_render_texture_rectangle */
00776 
00777 /* ----------------------- WGL_NV_vertex_array_range ----------------------- */
00778 
00779 #ifndef WGL_NV_vertex_array_range
00780 #define WGL_NV_vertex_array_range 1
00781 
00782 typedef void * (WINAPI * PFNWGLALLOCATEMEMORYNVPROC) (GLsizei size, GLfloat readFrequency, GLfloat writeFrequency, GLfloat priority);
00783 typedef void (WINAPI * PFNWGLFREEMEMORYNVPROC) (void *pointer);
00784 
00785 #define wglAllocateMemoryNV WGLEW_GET_FUN(__wglewAllocateMemoryNV)
00786 #define wglFreeMemoryNV WGLEW_GET_FUN(__wglewFreeMemoryNV)
00787 
00788 #define WGLEW_NV_vertex_array_range WGLEW_GET_VAR(__WGLEW_NV_vertex_array_range)
00789 
00790 #endif /* WGL_NV_vertex_array_range */
00791 
00792 /* -------------------------- WGL_OML_sync_control ------------------------- */
00793 
00794 #ifndef WGL_OML_sync_control
00795 #define WGL_OML_sync_control 1
00796 
00797 typedef BOOL (WINAPI * PFNWGLGETMSCRATEOMLPROC) (HDC hdc, INT32* numerator, INT32 *denominator);
00798 typedef BOOL (WINAPI * PFNWGLGETSYNCVALUESOMLPROC) (HDC hdc, INT64* ust, INT64 *msc, INT64 *sbc);
00799 typedef INT64 (WINAPI * PFNWGLSWAPBUFFERSMSCOMLPROC) (HDC hdc, INT64 target_msc, INT64 divisor, INT64 remainder);
00800 typedef INT64 (WINAPI * PFNWGLSWAPLAYERBUFFERSMSCOMLPROC) (HDC hdc, INT fuPlanes, INT64 target_msc, INT64 divisor, INT64 remainder);
00801 typedef BOOL (WINAPI * PFNWGLWAITFORMSCOMLPROC) (HDC hdc, INT64 target_msc, INT64 divisor, INT64 remainder, INT64* ust, INT64 *msc, INT64 *sbc);
00802 typedef BOOL (WINAPI * PFNWGLWAITFORSBCOMLPROC) (HDC hdc, INT64 target_sbc, INT64* ust, INT64 *msc, INT64 *sbc);
00803 
00804 #define wglGetMscRateOML WGLEW_GET_FUN(__wglewGetMscRateOML)
00805 #define wglGetSyncValuesOML WGLEW_GET_FUN(__wglewGetSyncValuesOML)
00806 #define wglSwapBuffersMscOML WGLEW_GET_FUN(__wglewSwapBuffersMscOML)
00807 #define wglSwapLayerBuffersMscOML WGLEW_GET_FUN(__wglewSwapLayerBuffersMscOML)
00808 #define wglWaitForMscOML WGLEW_GET_FUN(__wglewWaitForMscOML)
00809 #define wglWaitForSbcOML WGLEW_GET_FUN(__wglewWaitForSbcOML)
00810 
00811 #define WGLEW_OML_sync_control WGLEW_GET_VAR(__WGLEW_OML_sync_control)
00812 
00813 #endif /* WGL_OML_sync_control */
00814 
00815 /* ------------------------------------------------------------------------- */
00816 
00817 #ifdef GLEW_MX
00818 #define WGLEW_EXPORT
00819 #else
00820 #define WGLEW_EXPORT GLEWAPI
00821 #endif /* GLEW_MX */
00822 
00823 #ifdef GLEW_MX
00824 struct WGLEWContextStruct
00825 {
00826 #endif /* GLEW_MX */
00827 
00828 WGLEW_EXPORT PFNWGLSETSTEREOEMITTERSTATE3DLPROC __wglewSetStereoEmitterState3DL;
00829 
00830 WGLEW_EXPORT PFNWGLCREATEBUFFERREGIONARBPROC __wglewCreateBufferRegionARB;
00831 WGLEW_EXPORT PFNWGLDELETEBUFFERREGIONARBPROC __wglewDeleteBufferRegionARB;
00832 WGLEW_EXPORT PFNWGLRESTOREBUFFERREGIONARBPROC __wglewRestoreBufferRegionARB;
00833 WGLEW_EXPORT PFNWGLSAVEBUFFERREGIONARBPROC __wglewSaveBufferRegionARB;
00834 
00835 WGLEW_EXPORT PFNWGLGETEXTENSIONSSTRINGARBPROC __wglewGetExtensionsStringARB;
00836 
00837 WGLEW_EXPORT PFNWGLGETCURRENTREADDCARBPROC __wglewGetCurrentReadDCARB;
00838 WGLEW_EXPORT PFNWGLMAKECONTEXTCURRENTARBPROC __wglewMakeContextCurrentARB;
00839 
00840 WGLEW_EXPORT PFNWGLCREATEPBUFFERARBPROC __wglewCreatePbufferARB;
00841 WGLEW_EXPORT PFNWGLDESTROYPBUFFERARBPROC __wglewDestroyPbufferARB;
00842 WGLEW_EXPORT PFNWGLGETPBUFFERDCARBPROC __wglewGetPbufferDCARB;
00843 WGLEW_EXPORT PFNWGLQUERYPBUFFERARBPROC __wglewQueryPbufferARB;
00844 WGLEW_EXPORT PFNWGLRELEASEPBUFFERDCARBPROC __wglewReleasePbufferDCARB;
00845 
00846 WGLEW_EXPORT PFNWGLCHOOSEPIXELFORMATARBPROC __wglewChoosePixelFormatARB;
00847 WGLEW_EXPORT PFNWGLGETPIXELFORMATATTRIBFVARBPROC __wglewGetPixelFormatAttribfvARB;
00848 WGLEW_EXPORT PFNWGLGETPIXELFORMATATTRIBIVARBPROC __wglewGetPixelFormatAttribivARB;
00849 
00850 WGLEW_EXPORT PFNWGLBINDTEXIMAGEARBPROC __wglewBindTexImageARB;
00851 WGLEW_EXPORT PFNWGLRELEASETEXIMAGEARBPROC __wglewReleaseTexImageARB;
00852 WGLEW_EXPORT PFNWGLSETPBUFFERATTRIBARBPROC __wglewSetPbufferAttribARB;
00853 
00854 WGLEW_EXPORT PFNWGLBINDDISPLAYCOLORTABLEEXTPROC __wglewBindDisplayColorTableEXT;
00855 WGLEW_EXPORT PFNWGLCREATEDISPLAYCOLORTABLEEXTPROC __wglewCreateDisplayColorTableEXT;
00856 WGLEW_EXPORT PFNWGLDESTROYDISPLAYCOLORTABLEEXTPROC __wglewDestroyDisplayColorTableEXT;
00857 WGLEW_EXPORT PFNWGLLOADDISPLAYCOLORTABLEEXTPROC __wglewLoadDisplayColorTableEXT;
00858 
00859 WGLEW_EXPORT PFNWGLGETEXTENSIONSSTRINGEXTPROC __wglewGetExtensionsStringEXT;
00860 
00861 WGLEW_EXPORT PFNWGLGETCURRENTREADDCEXTPROC __wglewGetCurrentReadDCEXT;
00862 WGLEW_EXPORT PFNWGLMAKECONTEXTCURRENTEXTPROC __wglewMakeContextCurrentEXT;
00863 
00864 WGLEW_EXPORT PFNWGLCREATEPBUFFEREXTPROC __wglewCreatePbufferEXT;
00865 WGLEW_EXPORT PFNWGLDESTROYPBUFFEREXTPROC __wglewDestroyPbufferEXT;
00866 WGLEW_EXPORT PFNWGLGETPBUFFERDCEXTPROC __wglewGetPbufferDCEXT;
00867 WGLEW_EXPORT PFNWGLQUERYPBUFFEREXTPROC __wglewQueryPbufferEXT;
00868 WGLEW_EXPORT PFNWGLRELEASEPBUFFERDCEXTPROC __wglewReleasePbufferDCEXT;
00869 
00870 WGLEW_EXPORT PFNWGLCHOOSEPIXELFORMATEXTPROC __wglewChoosePixelFormatEXT;
00871 WGLEW_EXPORT PFNWGLGETPIXELFORMATATTRIBFVEXTPROC __wglewGetPixelFormatAttribfvEXT;
00872 WGLEW_EXPORT PFNWGLGETPIXELFORMATATTRIBIVEXTPROC __wglewGetPixelFormatAttribivEXT;
00873 
00874 WGLEW_EXPORT PFNWGLGETSWAPINTERVALEXTPROC __wglewGetSwapIntervalEXT;
00875 WGLEW_EXPORT PFNWGLSWAPINTERVALEXTPROC __wglewSwapIntervalEXT;
00876 
00877 WGLEW_EXPORT PFNWGLGETDIGITALVIDEOPARAMETERSI3DPROC __wglewGetDigitalVideoParametersI3D;
00878 WGLEW_EXPORT PFNWGLSETDIGITALVIDEOPARAMETERSI3DPROC __wglewSetDigitalVideoParametersI3D;
00879 
00880 WGLEW_EXPORT PFNWGLGETGAMMATABLEI3DPROC __wglewGetGammaTableI3D;
00881 WGLEW_EXPORT PFNWGLGETGAMMATABLEPARAMETERSI3DPROC __wglewGetGammaTableParametersI3D;
00882 WGLEW_EXPORT PFNWGLSETGAMMATABLEI3DPROC __wglewSetGammaTableI3D;
00883 WGLEW_EXPORT PFNWGLSETGAMMATABLEPARAMETERSI3DPROC __wglewSetGammaTableParametersI3D;
00884 
00885 WGLEW_EXPORT PFNWGLDISABLEGENLOCKI3DPROC __wglewDisableGenlockI3D;
00886 WGLEW_EXPORT PFNWGLENABLEGENLOCKI3DPROC __wglewEnableGenlockI3D;
00887 WGLEW_EXPORT PFNWGLGENLOCKSAMPLERATEI3DPROC __wglewGenlockSampleRateI3D;
00888 WGLEW_EXPORT PFNWGLGENLOCKSOURCEDELAYI3DPROC __wglewGenlockSourceDelayI3D;
00889 WGLEW_EXPORT PFNWGLGENLOCKSOURCEEDGEI3DPROC __wglewGenlockSourceEdgeI3D;
00890 WGLEW_EXPORT PFNWGLGENLOCKSOURCEI3DPROC __wglewGenlockSourceI3D;
00891 WGLEW_EXPORT PFNWGLGETGENLOCKSAMPLERATEI3DPROC __wglewGetGenlockSampleRateI3D;
00892 WGLEW_EXPORT PFNWGLGETGENLOCKSOURCEDELAYI3DPROC __wglewGetGenlockSourceDelayI3D;
00893 WGLEW_EXPORT PFNWGLGETGENLOCKSOURCEEDGEI3DPROC __wglewGetGenlockSourceEdgeI3D;
00894 WGLEW_EXPORT PFNWGLGETGENLOCKSOURCEI3DPROC __wglewGetGenlockSourceI3D;
00895 WGLEW_EXPORT PFNWGLISENABLEDGENLOCKI3DPROC __wglewIsEnabledGenlockI3D;
00896 WGLEW_EXPORT PFNWGLQUERYGENLOCKMAXSOURCEDELAYI3DPROC __wglewQueryGenlockMaxSourceDelayI3D;
00897 
00898 WGLEW_EXPORT PFNWGLASSOCIATEIMAGEBUFFEREVENTSI3DPROC __wglewAssociateImageBufferEventsI3D;
00899 WGLEW_EXPORT PFNWGLCREATEIMAGEBUFFERI3DPROC __wglewCreateImageBufferI3D;
00900 WGLEW_EXPORT PFNWGLDESTROYIMAGEBUFFERI3DPROC __wglewDestroyImageBufferI3D;
00901 WGLEW_EXPORT PFNWGLRELEASEIMAGEBUFFEREVENTSI3DPROC __wglewReleaseImageBufferEventsI3D;
00902 
00903 WGLEW_EXPORT PFNWGLDISABLEFRAMELOCKI3DPROC __wglewDisableFrameLockI3D;
00904 WGLEW_EXPORT PFNWGLENABLEFRAMELOCKI3DPROC __wglewEnableFrameLockI3D;
00905 WGLEW_EXPORT PFNWGLISENABLEDFRAMELOCKI3DPROC __wglewIsEnabledFrameLockI3D;
00906 WGLEW_EXPORT PFNWGLQUERYFRAMELOCKMASTERI3DPROC __wglewQueryFrameLockMasterI3D;
00907 
00908 WGLEW_EXPORT PFNWGLBEGINFRAMETRACKINGI3DPROC __wglewBeginFrameTrackingI3D;
00909 WGLEW_EXPORT PFNWGLENDFRAMETRACKINGI3DPROC __wglewEndFrameTrackingI3D;
00910 WGLEW_EXPORT PFNWGLGETFRAMEUSAGEI3DPROC __wglewGetFrameUsageI3D;
00911 WGLEW_EXPORT PFNWGLQUERYFRAMETRACKINGI3DPROC __wglewQueryFrameTrackingI3D;
00912 
00913 WGLEW_EXPORT PFNWGLCREATEAFFINITYDCNVPROC __wglewCreateAffinityDCNV;
00914 WGLEW_EXPORT PFNWGLDELETEDCNVPROC __wglewDeleteDCNV;
00915 WGLEW_EXPORT PFNWGLENUMGPUDEVICESNVPROC __wglewEnumGpuDevicesNV;
00916 WGLEW_EXPORT PFNWGLENUMGPUSFROMAFFINITYDCNVPROC __wglewEnumGpusFromAffinityDCNV;
00917 WGLEW_EXPORT PFNWGLENUMGPUSNVPROC __wglewEnumGpusNV;
00918 
00919 WGLEW_EXPORT PFNWGLALLOCATEMEMORYNVPROC __wglewAllocateMemoryNV;
00920 WGLEW_EXPORT PFNWGLFREEMEMORYNVPROC __wglewFreeMemoryNV;
00921 
00922 WGLEW_EXPORT PFNWGLGETMSCRATEOMLPROC __wglewGetMscRateOML;
00923 WGLEW_EXPORT PFNWGLGETSYNCVALUESOMLPROC __wglewGetSyncValuesOML;
00924 WGLEW_EXPORT PFNWGLSWAPBUFFERSMSCOMLPROC __wglewSwapBuffersMscOML;
00925 WGLEW_EXPORT PFNWGLSWAPLAYERBUFFERSMSCOMLPROC __wglewSwapLayerBuffersMscOML;
00926 WGLEW_EXPORT PFNWGLWAITFORMSCOMLPROC __wglewWaitForMscOML;
00927 WGLEW_EXPORT PFNWGLWAITFORSBCOMLPROC __wglewWaitForSbcOML;
00928 WGLEW_EXPORT GLboolean __WGLEW_3DFX_multisample;
00929 WGLEW_EXPORT GLboolean __WGLEW_3DL_stereo_control;
00930 WGLEW_EXPORT GLboolean __WGLEW_ARB_buffer_region;
00931 WGLEW_EXPORT GLboolean __WGLEW_ARB_extensions_string;
00932 WGLEW_EXPORT GLboolean __WGLEW_ARB_make_current_read;
00933 WGLEW_EXPORT GLboolean __WGLEW_ARB_multisample;
00934 WGLEW_EXPORT GLboolean __WGLEW_ARB_pbuffer;
00935 WGLEW_EXPORT GLboolean __WGLEW_ARB_pixel_format;
00936 WGLEW_EXPORT GLboolean __WGLEW_ARB_pixel_format_float;
00937 WGLEW_EXPORT GLboolean __WGLEW_ARB_render_texture;
00938 WGLEW_EXPORT GLboolean __WGLEW_ATI_pixel_format_float;
00939 WGLEW_EXPORT GLboolean __WGLEW_ATI_render_texture_rectangle;
00940 WGLEW_EXPORT GLboolean __WGLEW_EXT_depth_float;
00941 WGLEW_EXPORT GLboolean __WGLEW_EXT_display_color_table;
00942 WGLEW_EXPORT GLboolean __WGLEW_EXT_extensions_string;
00943 WGLEW_EXPORT GLboolean __WGLEW_EXT_framebuffer_sRGB;
00944 WGLEW_EXPORT GLboolean __WGLEW_EXT_make_current_read;
00945 WGLEW_EXPORT GLboolean __WGLEW_EXT_multisample;
00946 WGLEW_EXPORT GLboolean __WGLEW_EXT_pbuffer;
00947 WGLEW_EXPORT GLboolean __WGLEW_EXT_pixel_format;
00948 WGLEW_EXPORT GLboolean __WGLEW_EXT_pixel_format_packed_float;
00949 WGLEW_EXPORT GLboolean __WGLEW_EXT_swap_control;
00950 WGLEW_EXPORT GLboolean __WGLEW_I3D_digital_video_control;
00951 WGLEW_EXPORT GLboolean __WGLEW_I3D_gamma;
00952 WGLEW_EXPORT GLboolean __WGLEW_I3D_genlock;
00953 WGLEW_EXPORT GLboolean __WGLEW_I3D_image_buffer;
00954 WGLEW_EXPORT GLboolean __WGLEW_I3D_swap_frame_lock;
00955 WGLEW_EXPORT GLboolean __WGLEW_I3D_swap_frame_usage;
00956 WGLEW_EXPORT GLboolean __WGLEW_NV_float_buffer;
00957 WGLEW_EXPORT GLboolean __WGLEW_NV_gpu_affinity;
00958 WGLEW_EXPORT GLboolean __WGLEW_NV_render_depth_texture;
00959 WGLEW_EXPORT GLboolean __WGLEW_NV_render_texture_rectangle;
00960 WGLEW_EXPORT GLboolean __WGLEW_NV_vertex_array_range;
00961 WGLEW_EXPORT GLboolean __WGLEW_OML_sync_control;
00962 
00963 #ifdef GLEW_MX
00964 }; /* WGLEWContextStruct */
00965 #endif /* GLEW_MX */
00966 
00967 /* ------------------------------------------------------------------------- */
00968 
00969 #ifdef GLEW_MX
00970 
00971 typedef struct WGLEWContextStruct WGLEWContext;
00972 GLEWAPI GLenum wglewContextInit (WGLEWContext* ctx);
00973 GLEWAPI GLboolean wglewContextIsSupported (WGLEWContext* ctx, const char* name);
00974 
00975 #define wglewInit() wglewContextInit(wglewGetContext())
00976 #define wglewIsSupported(x) wglewContextIsSupported(wglewGetContext(), x)
00977 
00978 #define WGLEW_GET_VAR(x) (*(const GLboolean*)&(wglewGetContext()->x))
00979 #define WGLEW_GET_FUN(x) wglewGetContext()->x
00980 
00981 #else /* GLEW_MX */
00982 
00983 #define WGLEW_GET_VAR(x) (*(const GLboolean*)&x)
00984 #define WGLEW_GET_FUN(x) x
00985 
00986 GLEWAPI GLboolean wglewIsSupported (const char* name);
00987 
00988 #endif /* GLEW_MX */
00989 
00990 GLEWAPI GLboolean wglewGetExtension (const char* name);
00991 
00992 #ifdef __cplusplus
00993 }
00994 #endif
00995 
00996 #undef GLEWAPI
00997 
00998 #endif /* __wglew_h__ */

Generated on Mon Feb 16 15:14:45 2009 for Scorched3D by  doxygen 1.5.3