WGLEXT.H
上传用户:tengyuc
上传日期:2007-08-14
资源大小:722k
文件大小:17k
源码类别:

OpenGL

开发平台:

Visual C++

  1. #ifndef __wglext_h_
  2. #define __wglext_h_
  3. #ifdef __cplusplus
  4. extern "C" {
  5. #endif
  6. /*
  7. ** License Applicability. Except to the extent portions of this file are
  8. ** made subject to an alternative license as permitted in the SGI Free
  9. ** Software License B, Version 1.1 (the "License"), the contents of this
  10. ** file are subject only to the provisions of the License. You may not use
  11. ** this file except in compliance with the License. You may obtain a copy
  12. ** of the License at Silicon Graphics, Inc., attn: Legal Services, 1600
  13. ** Amphitheatre Parkway, Mountain View, CA 94043-1351, or at:
  14. ** 
  15. ** http://oss.sgi.com/projects/FreeB
  16. ** 
  17. ** Note that, as provided in the License, the Software is distributed on an
  18. ** "AS IS" basis, with ALL EXPRESS AND IMPLIED WARRANTIES AND CONDITIONS
  19. ** DISCLAIMED, INCLUDING, WITHOUT LIMITATION, ANY IMPLIED WARRANTIES AND
  20. ** CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A
  21. ** PARTICULAR PURPOSE, AND NON-INFRINGEMENT.
  22. ** 
  23. ** Original Code. The Original Code is: OpenGL Sample Implementation,
  24. ** Version 1.2.1, released January 26, 2000, developed by Silicon Graphics,
  25. ** Inc. The Original Code is Copyright (c) 1991-2000 Silicon Graphics, Inc.
  26. ** Copyright in any portions created by third parties is as indicated
  27. ** elsewhere herein. All Rights Reserved.
  28. ** 
  29. ** Additional Notice Provisions: This software was created using the
  30. ** OpenGL(R) version 1.2.1 Sample Implementation published by SGI, but has
  31. ** not been independently verified as being compliant with the OpenGL(R)
  32. ** version 1.2.1 Specification.
  33. */
  34. #if defined(_WIN32) && !defined(APIENTRY) && !defined(__CYGWIN__)
  35. #define WIN32_LEAN_AND_MEAN 1
  36. #include <windows.h>
  37. #endif
  38. #ifndef APIENTRY
  39. #define APIENTRY
  40. #endif
  41. /*************************************************************/
  42. /* Header file version number */
  43. #define WGL_WGLEXT_VERSION 1
  44. #ifndef WGL_ARB_buffer_region
  45. #define WGL_FRONT_COLOR_BUFFER_BIT_ARB 0x00000001
  46. #define WGL_BACK_COLOR_BUFFER_BIT_ARB  0x00000002
  47. #define WGL_DEPTH_BUFFER_BIT_ARB       0x00000004
  48. #define WGL_STENCIL_BUFFER_BIT_ARB     0x00000008
  49. #endif
  50. #ifndef WGL_ARB_extensions_string
  51. #endif
  52. #ifndef WGL_ARB_pixel_format
  53. #define WGL_NUMBER_PIXEL_FORMATS_ARB   0x2000
  54. #define WGL_DRAW_TO_WINDOW_ARB         0x2001
  55. #define WGL_DRAW_TO_BITMAP_ARB         0x2002
  56. #define WGL_ACCELERATION_ARB           0x2003
  57. #define WGL_NEED_PALETTE_ARB           0x2004
  58. #define WGL_NEED_SYSTEM_PALETTE_ARB    0x2005
  59. #define WGL_SWAP_LAYER_BUFFERS_ARB     0x2006
  60. #define WGL_SWAP_METHOD_ARB            0x2007
  61. #define WGL_NUMBER_OVERLAYS_ARB        0x2008
  62. #define WGL_NUMBER_UNDERLAYS_ARB       0x2009
  63. #define WGL_TRANSPARENT_ARB            0x200A
  64. #define WGL_TRANSPARENT_RED_VALUE_ARB  0x2037
  65. #define WGL_TRANSPARENT_GREEN_VALUE_ARB 0x2038
  66. #define WGL_TRANSPARENT_BLUE_VALUE_ARB 0x2039
  67. #define WGL_TRANSPARENT_ALPHA_VALUE_ARB 0x203A
  68. #define WGL_TRANSPARENT_INDEX_VALUE_ARB 0x203B
  69. #define WGL_SHARE_DEPTH_ARB            0x200C
  70. #define WGL_SHARE_STENCIL_ARB          0x200D
  71. #define WGL_SHARE_ACCUM_ARB            0x200E
  72. #define WGL_SUPPORT_GDI_ARB            0x200F
  73. #define WGL_SUPPORT_OPENGL_ARB         0x2010
  74. #define WGL_DOUBLE_BUFFER_ARB          0x2011
  75. #define WGL_STEREO_ARB                 0x2012
  76. #define WGL_PIXEL_TYPE_ARB             0x2013
  77. #define WGL_COLOR_BITS_ARB             0x2014
  78. #define WGL_RED_BITS_ARB               0x2015
  79. #define WGL_RED_SHIFT_ARB              0x2016
  80. #define WGL_GREEN_BITS_ARB             0x2017
  81. #define WGL_GREEN_SHIFT_ARB            0x2018
  82. #define WGL_BLUE_BITS_ARB              0x2019
  83. #define WGL_BLUE_SHIFT_ARB             0x201A
  84. #define WGL_ALPHA_BITS_ARB             0x201B
  85. #define WGL_ALPHA_SHIFT_ARB            0x201C
  86. #define WGL_ACCUM_BITS_ARB             0x201D
  87. #define WGL_ACCUM_RED_BITS_ARB         0x201E
  88. #define WGL_ACCUM_GREEN_BITS_ARB       0x201F
  89. #define WGL_ACCUM_BLUE_BITS_ARB        0x2020
  90. #define WGL_ACCUM_ALPHA_BITS_ARB       0x2021
  91. #define WGL_DEPTH_BITS_ARB             0x2022
  92. #define WGL_STENCIL_BITS_ARB           0x2023
  93. #define WGL_AUX_BUFFERS_ARB            0x2024
  94. #define WGL_NO_ACCELERATION_ARB        0x2025
  95. #define WGL_GENERIC_ACCELERATION_ARB   0x2026
  96. #define WGL_FULL_ACCELERATION_ARB      0x2027
  97. #define WGL_SWAP_EXCHANGE_ARB          0x2028
  98. #define WGL_SWAP_COPY_ARB              0x2029
  99. #define WGL_SWAP_UNDEFINED_ARB         0x202A
  100. #define WGL_TYPE_RGBA_ARB              0x202B
  101. #define WGL_TYPE_COLORINDEX_ARB        0x202C
  102. #endif
  103. #ifndef WGL_ARB_make_current_read
  104. #define ERROR_INVALID_PIXEL_TYPE_ARB   0x2043
  105. #define ERROR_INCOMPATIBLE_DEVICE_CONTEXTS_ARB 0x2054
  106. #endif
  107. #ifndef WGL_ARB_pbuffer
  108. #define WGL_DRAW_TO_PBUFFER_ARB        0x202D
  109. #define WGL_MAX_PBUFFER_PIXELS_ARB     0x202E
  110. #define WGL_MAX_PBUFFER_WIDTH_ARB      0x202F
  111. #define WGL_MAX_PBUFFER_HEIGHT_ARB     0x2030
  112. #define WGL_PBUFFER_LARGEST_ARB        0x2033
  113. #define WGL_PBUFFER_WIDTH_ARB          0x2034
  114. #define WGL_PBUFFER_HEIGHT_ARB         0x2035
  115. #define WGL_PBUFFER_LOST_ARB           0x2036
  116. #endif
  117. #ifndef WGL_EXT_make_current_read
  118. #define ERROR_INVALID_PIXEL_TYPE_EXT   0x2043
  119. #endif
  120. #ifndef WGL_EXT_pixel_format
  121. #define WGL_NUMBER_PIXEL_FORMATS_EXT   0x2000
  122. #define WGL_DRAW_TO_WINDOW_EXT         0x2001
  123. #define WGL_DRAW_TO_BITMAP_EXT         0x2002
  124. #define WGL_ACCELERATION_EXT           0x2003
  125. #define WGL_NEED_PALETTE_EXT           0x2004
  126. #define WGL_NEED_SYSTEM_PALETTE_EXT    0x2005
  127. #define WGL_SWAP_LAYER_BUFFERS_EXT     0x2006
  128. #define WGL_SWAP_METHOD_EXT            0x2007
  129. #define WGL_NUMBER_OVERLAYS_EXT        0x2008
  130. #define WGL_NUMBER_UNDERLAYS_EXT       0x2009
  131. #define WGL_TRANSPARENT_EXT            0x200A
  132. #define WGL_TRANSPARENT_VALUE_EXT      0x200B
  133. #define WGL_SHARE_DEPTH_EXT            0x200C
  134. #define WGL_SHARE_STENCIL_EXT          0x200D
  135. #define WGL_SHARE_ACCUM_EXT            0x200E
  136. #define WGL_SUPPORT_GDI_EXT            0x200F
  137. #define WGL_SUPPORT_OPENGL_EXT         0x2010
  138. #define WGL_DOUBLE_BUFFER_EXT          0x2011
  139. #define WGL_STEREO_EXT                 0x2012
  140. #define WGL_PIXEL_TYPE_EXT             0x2013
  141. #define WGL_COLOR_BITS_EXT             0x2014
  142. #define WGL_RED_BITS_EXT               0x2015
  143. #define WGL_RED_SHIFT_EXT              0x2016
  144. #define WGL_GREEN_BITS_EXT             0x2017
  145. #define WGL_GREEN_SHIFT_EXT            0x2018
  146. #define WGL_BLUE_BITS_EXT              0x2019
  147. #define WGL_BLUE_SHIFT_EXT             0x201A
  148. #define WGL_ALPHA_BITS_EXT             0x201B
  149. #define WGL_ALPHA_SHIFT_EXT            0x201C
  150. #define WGL_ACCUM_BITS_EXT             0x201D
  151. #define WGL_ACCUM_RED_BITS_EXT         0x201E
  152. #define WGL_ACCUM_GREEN_BITS_EXT       0x201F
  153. #define WGL_ACCUM_BLUE_BITS_EXT        0x2020
  154. #define WGL_ACCUM_ALPHA_BITS_EXT       0x2021
  155. #define WGL_DEPTH_BITS_EXT             0x2022
  156. #define WGL_STENCIL_BITS_EXT           0x2023
  157. #define WGL_AUX_BUFFERS_EXT            0x2024
  158. #define WGL_NO_ACCELERATION_EXT        0x2025
  159. #define WGL_GENERIC_ACCELERATION_EXT   0x2026
  160. #define WGL_FULL_ACCELERATION_EXT      0x2027
  161. #define WGL_SWAP_EXCHANGE_EXT          0x2028
  162. #define WGL_SWAP_COPY_EXT              0x2029
  163. #define WGL_SWAP_UNDEFINED_EXT         0x202A
  164. #define WGL_TYPE_RGBA_EXT              0x202B
  165. #define WGL_TYPE_COLORINDEX_EXT        0x202C
  166. #endif
  167. #ifndef WGL_EXT_pbuffer
  168. #define WGL_DRAW_TO_PBUFFER_EXT        0x202D
  169. #define WGL_MAX_PBUFFER_PIXELS_EXT     0x202E
  170. #define WGL_MAX_PBUFFER_WIDTH_EXT      0x202F
  171. #define WGL_MAX_PBUFFER_HEIGHT_EXT     0x2030
  172. #define WGL_OPTIMAL_PBUFFER_WIDTH_EXT  0x2031
  173. #define WGL_OPTIMAL_PBUFFER_HEIGHT_EXT 0x2032
  174. #define WGL_PBUFFER_LARGEST_EXT        0x2033
  175. #define WGL_PBUFFER_WIDTH_EXT          0x2034
  176. #define WGL_PBUFFER_HEIGHT_EXT         0x2035
  177. #endif
  178. #ifndef WGL_EXT_depth_float
  179. #define WGL_DEPTH_FLOAT_EXT            0x2040
  180. #endif
  181. #ifndef WGL_3DFX_multisample
  182. #define WGL_SAMPLE_BUFFERS_3DFX        0x2060
  183. #define WGL_SAMPLES_3DFX               0x2061
  184. #endif
  185. #ifndef WGL_EXT_multisample
  186. #define WGL_SAMPLE_BUFFERS_EXT         0x2041
  187. #define WGL_SAMPLES_EXT                0x2042
  188. #endif
  189. #ifndef WGL_I3D_unknown_genlock_extension_name
  190. #define WGL_GENLOCK_SOURCE_MULTIVIEW_I3D 0x2044
  191. #define WGL_GENLOCK_SOURCE_EXTENAL_SYNC_I3D 0x2045
  192. #define WGL_GENLOCK_SOURCE_EXTENAL_FIELD_I3D 0x2046
  193. #define WGL_GENLOCK_SOURCE_EXTENAL_TTL_I3D 0x2047
  194. #define WGL_GENLOCK_SOURCE_DIGITAL_SYNC_I3D 0x2048
  195. #define WGL_GENLOCK_SOURCE_DIGITAL_FIELD_I3D 0x2049
  196. #define WGL_GENLOCK_SOURCE_EDGE_FALLING_I3D 0x204A
  197. #define WGL_GENLOCK_SOURCE_EDGE_RISING_I3D 0x204B
  198. #define WGL_GENLOCK_SOURCE_EDGE_BOTH_I3D 0x204C
  199. #endif
  200. #ifndef WGL_I3D_unknown_gamma_extension_name
  201. #define WGL_GAMMA_TABLE_SIZE_I3D       0x204E
  202. #define WGL_GAMMA_EXCLUDE_DESKTOP_I3D  0x204F
  203. #endif
  204. #ifndef WGL_I3D_unknown_digital_video_cursor_extension_name
  205. #define WGL_DIGITAL_VIDEO_CURSOR_ALPHA_FRAMEBUFFER_I3D 0x2050
  206. #define WGL_DIGITAL_VIDEO_CURSOR_ALPHA_VALUE_I3D 0x2051
  207. #define WGL_DIGITAL_VIDEO_CURSOR_INCLUDED_I3D 0x2052
  208. #define WGL_DIGITAL_VIDEO_GAMMA_CORRECTED_I3D 0x2053
  209. #endif
  210. /*************************************************************/
  211. #ifndef WGL_ARB_pbuffer
  212. DECLARE_HANDLE(HPBUFFERARB);
  213. #endif
  214. #ifndef WGL_EXT_pbuffer
  215. DECLARE_HANDLE(HPBUFFEREXT);
  216. #endif
  217. #ifndef WGL_ARB_buffer_region
  218. #define WGL_ARB_buffer_region 1
  219. #ifdef WGL_WGLEXT_PROTOTYPES
  220. extern HANDLE WINAPI wglCreateBufferRegionARB (HDC, int, UINT);
  221. extern VOID WINAPI wglDeleteBufferRegionARB (HANDLE);
  222. extern BOOL WINAPI wglSaveBufferRegionARB (HANDLE, int, int, int, int);
  223. extern BOOL WINAPI wglRestoreBufferRegionARB (HANDLE, int, int, int, int, int, int);
  224. #endif /* WGL_WGLEXT_PROTOTYPES */
  225. typedef HANDLE (WINAPI * PFNWGLCREATEBUFFERREGIONARBPROC) (HDC hDC, int iLayerPlane, UINT uType);
  226. typedef VOID (WINAPI * PFNWGLDELETEBUFFERREGIONARBPROC) (HANDLE hRegion);
  227. typedef BOOL (WINAPI * PFNWGLSAVEBUFFERREGIONARBPROC) (HANDLE hRegion, int x, int y, int width, int height);
  228. typedef BOOL (WINAPI * PFNWGLRESTOREBUFFERREGIONARBPROC) (HANDLE hRegion, int x, int y, int width, int height, int xSrc, int ySrc);
  229. #endif
  230. #ifndef WGL_ARB_extensions_string
  231. #define WGL_ARB_extensions_string 1
  232. #ifdef WGL_WGLEXT_PROTOTYPES
  233. extern const char * WINAPI wglGetExtensionsStringARB (HDC);
  234. #endif /* WGL_WGLEXT_PROTOTYPES */
  235. typedef const char * (WINAPI * PFNWGLGETEXTENSIONSSTRINGARBPROC) (HDC hdc);
  236. #endif
  237. #ifndef WGL_ARB_pixel_format
  238. #define WGL_ARB_pixel_format 1
  239. #ifdef WGL_WGLEXT_PROTOTYPES
  240. extern BOOL WINAPI wglGetPixelFormatAttribivARB (HDC, int, int, UINT, const int *, int *);
  241. extern BOOL WINAPI wglGetPixelFormatAttribfvARB (HDC, int, int, UINT, const int *, FLOAT *);
  242. extern BOOL WINAPI wglChoosePixelFormatARB (HDC, const int *, const FLOAT *, UINT, int *, UINT *);
  243. #endif /* WGL_WGLEXT_PROTOTYPES */
  244. typedef BOOL (WINAPI * PFNWGLGETPIXELFORMATATTRIBIVARBPROC) (HDC hdc, int iPixelFormat, int iLayerPlane, UINT nAttributes, const int *piAttributes, int *piValues);
  245. typedef BOOL (WINAPI * PFNWGLGETPIXELFORMATATTRIBFVARBPROC) (HDC hdc, int iPixelFormat, int iLayerPlane, UINT nAttributes, const int *piAttributes, FLOAT *pfValues);
  246. typedef BOOL (WINAPI * PFNWGLCHOOSEPIXELFORMATARBPROC) (HDC hdc, const int *piAttribIList, const FLOAT *pfAttribFList, UINT nMaxFormats, int *piFormats, UINT *nNumFormats);
  247. #endif
  248. #ifndef WGL_ARB_make_current_read
  249. #define WGL_ARB_make_current_read 1
  250. #ifdef WGL_WGLEXT_PROTOTYPES
  251. extern BOOL WINAPI wglMakeContextCurrentARB (HDC, HDC, HGLRC);
  252. extern HDC WINAPI wglGetCurrentReadDCARB (void);
  253. #endif /* WGL_WGLEXT_PROTOTYPES */
  254. typedef BOOL (WINAPI * PFNWGLMAKECONTEXTCURRENTARBPROC) (HDC hDrawDC, HDC hReadDC, HGLRC hglrc);
  255. typedef HDC (WINAPI * PFNWGLGETCURRENTREADDCARBPROC) (void);
  256. #endif
  257. #ifndef WGL_ARB_pbuffer
  258. #define WGL_ARB_pbuffer 1
  259. #ifdef WGL_WGLEXT_PROTOTYPES
  260. extern HPBUFFERARB WINAPI wglCreatePbufferARB (HDC, int, int, int, const int *);
  261. extern HDC WINAPI wglGetPbufferDCARB (HPBUFFERARB);
  262. extern int WINAPI wglReleasePbufferDCARB (HPBUFFERARB, HDC);
  263. extern BOOL WINAPI wglDestroyPbufferARB (HPBUFFERARB);
  264. extern BOOL WINAPI wglQueryPbufferARB (HPBUFFERARB, int, int *);
  265. #endif /* WGL_WGLEXT_PROTOTYPES */
  266. typedef HPBUFFERARB (WINAPI * PFNWGLCREATEPBUFFERARBPROC) (HDC hDC, int iPixelFormat, int iWidth, int iHeight, const int *piAttribList);
  267. typedef HDC (WINAPI * PFNWGLGETPBUFFERDCARBPROC) (HPBUFFERARB hPbuffer);
  268. typedef int (WINAPI * PFNWGLRELEASEPBUFFERDCARBPROC) (HPBUFFERARB hPbuffer, HDC hDC);
  269. typedef BOOL (WINAPI * PFNWGLDESTROYPBUFFERARBPROC) (HPBUFFERARB hPbuffer);
  270. typedef BOOL (WINAPI * PFNWGLQUERYPBUFFERARBPROC) (HPBUFFERARB hPbuffer, int iAttribute, int *piValue);
  271. #endif
  272. #ifndef WGL_EXT_display_color_table
  273. #define WGL_EXT_display_color_table 1
  274. #ifdef WGL_WGLEXT_PROTOTYPES
  275. extern GLboolean WINAPI wglCreateDisplayColorTableEXT (GLushort);
  276. extern GLboolean WINAPI wglLoadDisplayColorTableEXT (const GLushort *, GLuint);
  277. extern GLboolean WINAPI wglBindDisplayColorTableEXT (GLushort);
  278. extern VOID WINAPI wglDestroyDisplayColorTableEXT (GLushort);
  279. #endif /* WGL_WGLEXT_PROTOTYPES */
  280. typedef GLboolean (WINAPI * PFNWGLCREATEDISPLAYCOLORTABLEEXTPROC) (GLushort id);
  281. typedef GLboolean (WINAPI * PFNWGLLOADDISPLAYCOLORTABLEEXTPROC) (const GLushort *table, GLuint length);
  282. typedef GLboolean (WINAPI * PFNWGLBINDDISPLAYCOLORTABLEEXTPROC) (GLushort id);
  283. typedef VOID (WINAPI * PFNWGLDESTROYDISPLAYCOLORTABLEEXTPROC) (GLushort id);
  284. #endif
  285. #ifndef WGL_EXT_extensions_string
  286. #define WGL_EXT_extensions_string 1
  287. #ifdef WGL_WGLEXT_PROTOTYPES
  288. extern const char * WINAPI wglGetExtensionsStringEXT (void);
  289. #endif /* WGL_WGLEXT_PROTOTYPES */
  290. typedef const char * (WINAPI * PFNWGLGETEXTENSIONSSTRINGEXTPROC) (void);
  291. #endif
  292. #ifndef WGL_EXT_make_current_read
  293. #define WGL_EXT_make_current_read 1
  294. #ifdef WGL_WGLEXT_PROTOTYPES
  295. extern BOOL WINAPI wglMakeContextCurrentEXT (HDC, HDC, HGLRC);
  296. extern HDC WINAPI wglGetCurrentReadDCEXT (void);
  297. #endif /* WGL_WGLEXT_PROTOTYPES */
  298. typedef BOOL (WINAPI * PFNWGLMAKECONTEXTCURRENTEXTPROC) (HDC hDrawDC, HDC hReadDC, HGLRC hglrc);
  299. typedef HDC (WINAPI * PFNWGLGETCURRENTREADDCEXTPROC) (void);
  300. #endif
  301. #ifndef WGL_EXT_pbuffer
  302. #define WGL_EXT_pbuffer 1
  303. #ifdef WGL_WGLEXT_PROTOTYPES
  304. extern HPBUFFEREXT WINAPI wglCreatePbufferEXT (HDC, int, int, int, const int *);
  305. extern HDC WINAPI wglGetPbufferDCEXT (HPBUFFEREXT);
  306. extern int WINAPI wglReleasePbufferDCEXT (HPBUFFEREXT, HDC);
  307. extern BOOL WINAPI wglDestroyPbufferEXT (HPBUFFEREXT);
  308. extern BOOL WINAPI wglQueryPbufferEXT (HPBUFFEREXT, int, int *);
  309. #endif /* WGL_WGLEXT_PROTOTYPES */
  310. typedef HPBUFFEREXT (WINAPI * PFNWGLCREATEPBUFFEREXTPROC) (HDC hDC, int iPixelFormat, int iWidth, int iHeight, const int *piAttribList);
  311. typedef HDC (WINAPI * PFNWGLGETPBUFFERDCEXTPROC) (HPBUFFEREXT hPbuffer);
  312. typedef int (WINAPI * PFNWGLRELEASEPBUFFERDCEXTPROC) (HPBUFFEREXT hPbuffer, HDC hDC);
  313. typedef BOOL (WINAPI * PFNWGLDESTROYPBUFFEREXTPROC) (HPBUFFEREXT hPbuffer);
  314. typedef BOOL (WINAPI * PFNWGLQUERYPBUFFEREXTPROC) (HPBUFFEREXT hPbuffer, int iAttribute, int *piValue);
  315. #endif
  316. #ifndef WGL_EXT_pixel_format
  317. #define WGL_EXT_pixel_format 1
  318. #ifdef WGL_WGLEXT_PROTOTYPES
  319. extern BOOL WINAPI wglGetPixelFormatAttribivEXT (HDC, int, int, UINT, int *, int *);
  320. extern BOOL WINAPI wglGetPixelFormatAttribfvEXT (HDC, int, int, UINT, int *, FLOAT *);
  321. extern BOOL WINAPI wglChoosePixelFormatEXT (HDC, const int *, const FLOAT *, UINT, int *, UINT *);
  322. #endif /* WGL_WGLEXT_PROTOTYPES */
  323. typedef BOOL (WINAPI * PFNWGLGETPIXELFORMATATTRIBIVEXTPROC) (HDC hdc, int iPixelFormat, int iLayerPlane, UINT nAttributes, int *piAttributes, int *piValues);
  324. typedef BOOL (WINAPI * PFNWGLGETPIXELFORMATATTRIBFVEXTPROC) (HDC hdc, int iPixelFormat, int iLayerPlane, UINT nAttributes, int *piAttributes, FLOAT *pfValues);
  325. typedef BOOL (WINAPI * PFNWGLCHOOSEPIXELFORMATEXTPROC) (HDC hdc, const int *piAttribIList, const FLOAT *pfAttribFList, UINT nMaxFormats, int *piFormats, UINT *nNumFormats);
  326. #endif
  327. #ifndef WGL_EXT_swap_control
  328. #define WGL_EXT_swap_control 1
  329. #ifdef WGL_WGLEXT_PROTOTYPES
  330. extern BOOL WINAPI wglSwapIntervalEXT (int);
  331. extern int WINAPI wglGetSwapIntervalEXT (void);
  332. #endif /* WGL_WGLEXT_PROTOTYPES */
  333. typedef BOOL (WINAPI * PFNWGLSWAPINTERVALEXTPROC) (int interval);
  334. typedef int (WINAPI * PFNWGLGETSWAPINTERVALEXTPROC) (void);
  335. #endif
  336. #ifndef WGL_WGL_EXT_depth_float
  337. #define WGL_WGL_EXT_depth_float 1
  338. #endif
  339. #ifndef WGL_WGL_3DFX_multisample
  340. #define WGL_WGL_3DFX_multisample 1
  341. #endif
  342. #ifndef WGL_WGL_EXT_multisample
  343. #define WGL_WGL_EXT_multisample 1
  344. #endif
  345. /* added by Cass -- but this should already be in here! */
  346. #ifndef WGL_NV_allocate_memory
  347. #define WGL_NV_allocate_memory 1
  348. #ifdef WGL_WGLEXT_PROTOTYPES
  349. extern void * wglAllocateMemoryNV(int size, float readfreq, float writefreq, float priority);
  350. extern void wglFreeMemoryNV(void * pointer); 
  351. #endif
  352. typedef void * (APIENTRY * PFNWGLALLOCATEMEMORYNVPROC) (int size, float readfreq, float writefreq, float priority);
  353. typedef void (APIENTRY * PFNWGLFREEMEMORYNVPROC) (void *pointer);
  354. #endif
  355. #ifdef __cplusplus
  356. }
  357. #endif
  358. #endif