wglew.h

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

Generated on Fri Mar 23 19:36:22 2007 for Lilith3D by  doxygen 1.5.1-p1