Clone of mesa.
Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.

glext.h 30KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608
  1. #ifndef __glext_h_
  2. #define __glext_h_
  3. /* $Id: glext.h 5687 2008-05-13 21:31:32Z oddhack $ */
  4. #ifdef __cplusplus
  5. extern "C" {
  6. #endif
  7. /*
  8. ** License Applicability. Except to the extent portions of this file are
  9. ** made subject to an alternative license as permitted in the SGI Free
  10. ** Software License B, Version 1.0 (the "License"), the contents of this
  11. ** file are subject only to the provisions of the License. You may not use
  12. ** this file except in compliance with the License. You may obtain a copy
  13. ** of the License at Silicon Graphics, Inc., attn: Legal Services, 1600
  14. ** Amphitheatre Parkway, Mountain View, CA 94043-1351, or at:
  15. **
  16. ** http://oss.sgi.com/projects/FreeB
  17. **
  18. ** Note that, as provided in the License, the Software is distributed on an
  19. ** "AS IS" basis, with ALL EXPRESS AND IMPLIED WARRANTIES AND CONDITIONS
  20. ** DISCLAIMED, INCLUDING, WITHOUT LIMITATION, ANY IMPLIED WARRANTIES AND
  21. ** CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A
  22. ** PARTICULAR PURPOSE, AND NON-INFRINGEMENT.
  23. **
  24. ** Original Code. The Original Code is: OpenGL Sample Implementation,
  25. ** Version 1.2.1, released January 26, 2000, developed by Silicon Graphics,
  26. ** Inc. The Original Code is Copyright (c) 1991-2000 Silicon Graphics, Inc.
  27. ** Copyright in any portions created by third parties is as indicated
  28. ** elsewhere herein. All Rights Reserved.
  29. **
  30. ** Additional Notice Provisions: The application programming interfaces
  31. ** established by SGI in conjunction with the Original Code are The
  32. ** OpenGL(R) Graphics System: A Specification (Version 1.2.1), released
  33. ** April 1, 1999; The OpenGL(R) Graphics System Utility Library (Version
  34. ** 1.3), released November 4, 1998; and OpenGL(R) Graphics with the X
  35. ** Window System(R) (Version 1.3), released October 19, 1998. This software
  36. ** was created using the OpenGL(R) version 1.2.1 Sample Implementation
  37. ** published by SGI, but has not been independently verified as being
  38. ** compliant with the OpenGL(R) version 1.2.1 Specification.
  39. */
  40. #ifndef GL_APIENTRYP
  41. # define GL_APIENTRYP GL_APIENTRY*
  42. #endif
  43. /*------------------------------------------------------------------------*
  44. * OES extension tokens
  45. *------------------------------------------------------------------------*/
  46. /* GL_OES_blend_equation_separate */
  47. #ifndef GL_OES_blend_equation_separate
  48. /* BLEND_EQUATION_RGB_OES same as BLEND_EQUATION_OES */
  49. #define GL_BLEND_EQUATION_RGB_OES 0x8009
  50. #define GL_BLEND_EQUATION_ALPHA_OES 0x883D
  51. #endif
  52. /* GL_OES_blend_func_separate */
  53. #ifndef GL_OES_blend_func_separate
  54. #define GL_BLEND_DST_RGB_OES 0x80C8
  55. #define GL_BLEND_SRC_RGB_OES 0x80C9
  56. #define GL_BLEND_DST_ALPHA_OES 0x80CA
  57. #define GL_BLEND_SRC_ALPHA_OES 0x80CB
  58. #endif
  59. /* GL_OES_blend_subtract */
  60. #ifndef GL_OES_blend_subtract
  61. #define GL_BLEND_EQUATION_OES 0x8009
  62. #define GL_FUNC_ADD_OES 0x8006
  63. #define GL_FUNC_SUBTRACT_OES 0x800A
  64. #define GL_FUNC_REVERSE_SUBTRACT_OES 0x800B
  65. #endif
  66. /* GL_OES_compressed_ETC1_RGB8_texture */
  67. #ifndef GL_OES_compressed_ETC1_RGB8_texture
  68. #define GL_ETC1_RGB8_OES 0x8D64
  69. #endif
  70. /* OES_draw_texture */
  71. #ifndef GL_OES_draw_texture
  72. #define GL_TEXTURE_CROP_RECT_OES 0x8B9D
  73. #endif
  74. /* OES_fixed_point */
  75. #ifndef GL_OES_fixed_point
  76. #define GL_FIXED_OES 0x140C
  77. #endif
  78. /* OES_framebuffer_object */
  79. #ifndef GL_OES_framebuffer_object
  80. #define GL_NONE_OES 0
  81. #define GL_FRAMEBUFFER_OES 0x8D40
  82. #define GL_RENDERBUFFER_OES 0x8D41
  83. #define GL_RGBA4_OES 0x8056
  84. #define GL_RGB5_A1_OES 0x8057
  85. #define GL_RGB565_OES 0x8D62
  86. #define GL_DEPTH_COMPONENT16_OES 0x81A5
  87. #define GL_RENDERBUFFER_WIDTH_OES 0x8D42
  88. #define GL_RENDERBUFFER_HEIGHT_OES 0x8D43
  89. #define GL_RENDERBUFFER_INTERNAL_FORMAT_OES 0x8D44
  90. #define GL_RENDERBUFFER_RED_SIZE_OES 0x8D50
  91. #define GL_RENDERBUFFER_GREEN_SIZE_OES 0x8D51
  92. #define GL_RENDERBUFFER_BLUE_SIZE_OES 0x8D52
  93. #define GL_RENDERBUFFER_ALPHA_SIZE_OES 0x8D53
  94. #define GL_RENDERBUFFER_DEPTH_SIZE_OES 0x8D54
  95. #define GL_RENDERBUFFER_STENCIL_SIZE_OES 0x8D55
  96. #define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_OES 0x8CD0
  97. #define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_OES 0x8CD1
  98. #define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_OES 0x8CD2
  99. #define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_OES 0x8CD3
  100. #define GL_COLOR_ATTACHMENT0_OES 0x8CE0
  101. #define GL_DEPTH_ATTACHMENT_OES 0x8D00
  102. #define GL_STENCIL_ATTACHMENT_OES 0x8D20
  103. #define GL_FRAMEBUFFER_COMPLETE_OES 0x8CD5
  104. #define GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_OES 0x8CD6
  105. #define GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_OES 0x8CD7
  106. #define GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_OES 0x8CD9
  107. #define GL_FRAMEBUFFER_INCOMPLETE_FORMATS_OES 0x8CDA
  108. #define GL_FRAMEBUFFER_UNSUPPORTED_OES 0x8CDD
  109. #define GL_FRAMEBUFFER_BINDING_OES 0x8CA6
  110. #define GL_RENDERBUFFER_BINDING_OES 0x8CA7
  111. #define GL_MAX_RENDERBUFFER_SIZE_OES 0x84E8
  112. #define GL_INVALID_FRAMEBUFFER_OPERATION_OES 0x0506
  113. #endif
  114. /* OES_matrix_get */
  115. #ifndef GL_OES_matrix_get
  116. #define GL_MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES 0x898D
  117. #define GL_PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES 0x898E
  118. #define GL_TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES 0x898F
  119. #endif
  120. /* OES_matrix_palette */
  121. #ifndef GL_OES_matrix_palette
  122. #define GL_MAX_VERTEX_UNITS_OES 0x86A4
  123. #define GL_MAX_PALETTE_MATRICES_OES 0x8842
  124. #define GL_MATRIX_PALETTE_OES 0x8840
  125. #define GL_MATRIX_INDEX_ARRAY_OES 0x8844
  126. #define GL_WEIGHT_ARRAY_OES 0x86AD
  127. #define GL_CURRENT_PALETTE_MATRIX_OES 0x8843
  128. #define GL_MATRIX_INDEX_ARRAY_SIZE_OES 0x8846
  129. #define GL_MATRIX_INDEX_ARRAY_TYPE_OES 0x8847
  130. #define GL_MATRIX_INDEX_ARRAY_STRIDE_OES 0x8848
  131. #define GL_MATRIX_INDEX_ARRAY_POINTER_OES 0x8849
  132. #define GL_MATRIX_INDEX_ARRAY_BUFFER_BINDING_OES 0x8B9E
  133. #define GL_WEIGHT_ARRAY_SIZE_OES 0x86AB
  134. #define GL_WEIGHT_ARRAY_TYPE_OES 0x86A9
  135. #define GL_WEIGHT_ARRAY_STRIDE_OES 0x86AA
  136. #define GL_WEIGHT_ARRAY_POINTER_OES 0x86AC
  137. #define GL_WEIGHT_ARRAY_BUFFER_BINDING_OES 0x889E
  138. #endif
  139. /* GL_OES_stencil_wrap */
  140. #ifndef GL_OES_stencil_wrap
  141. #define GL_INCR_WRAP_OES 0x8507
  142. #define GL_DECR_WRAP_OES 0x8508
  143. #endif
  144. /* GL_OES_texture_cube_map */
  145. #ifndef GL_OES_texture_cube_map
  146. #define GL_NORMAL_MAP_OES 0x8511
  147. #define GL_REFLECTION_MAP_OES 0x8512
  148. #define GL_TEXTURE_CUBE_MAP_OES 0x8513
  149. #define GL_TEXTURE_BINDING_CUBE_MAP_OES 0x8514
  150. #define GL_TEXTURE_CUBE_MAP_POSITIVE_X_OES 0x8515
  151. #define GL_TEXTURE_CUBE_MAP_NEGATIVE_X_OES 0x8516
  152. #define GL_TEXTURE_CUBE_MAP_POSITIVE_Y_OES 0x8517
  153. #define GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_OES 0x8518
  154. #define GL_TEXTURE_CUBE_MAP_POSITIVE_Z_OES 0x8519
  155. #define GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_OES 0x851A
  156. #define GL_MAX_CUBE_MAP_TEXTURE_SIZE_OES 0x851C
  157. #define GL_TEXTURE_GEN_MODE_OES 0x2500
  158. #define GL_TEXTURE_GEN_STR_OES 0x8D60
  159. #endif
  160. /* GL_OES_texture_mirrored_repeat */
  161. #ifndef GL_OES_texture_mirrored_repeat
  162. #define GL_MIRRORED_REPEAT_OES 0x8370
  163. #endif
  164. /* GL_OES_EGL_image */
  165. #ifndef GL_OES_EGL_image
  166. typedef void* GLeglImageOES;
  167. #endif
  168. /* GL_OES_depth24 */
  169. #ifndef GL_OES_depth24
  170. #define GL_DEPTH_COMPONENT24_OES 0x81A6
  171. #endif
  172. /* GL_OES_depth32 */
  173. #ifndef GL_OES_depth32
  174. #define GL_DEPTH_COMPONENT32_OES 0x81A7
  175. #endif
  176. /* GL_OES_mapbuffer */
  177. #ifndef GL_OES_mapbuffer
  178. #define GL_WRITE_ONLY_OES 0x88B9
  179. #define GL_BUFFER_ACCESS_OES 0x88BB
  180. #define GL_BUFFER_MAPPED_OES 0x88BC
  181. #define GL_BUFFER_MAP_POINTER_OES 0x88BD
  182. #endif
  183. /* GL_OES_rgb8_rgba8 */
  184. #ifndef GL_OES_rgb8_rgba8
  185. #define GL_RGB8_OES 0x8051
  186. #define GL_RGBA8_OES 0x8058
  187. #endif
  188. /* GL_OES_stencil1 */
  189. #ifndef GL_OES_stencil1
  190. #define GL_STENCIL_INDEX1_OES 0x8D46
  191. #endif
  192. /* GL_OES_stencil4 */
  193. #ifndef GL_OES_stencil4
  194. #define GL_STENCIL_INDEX4_OES 0x8D47
  195. #endif
  196. /* GL_OES_stencil8 */
  197. #ifndef GL_OES_stencil8
  198. #define GL_STENCIL_INDEX8_OES 0x8D48
  199. #endif
  200. /* GL_AMD_compressed_3DC_texture */
  201. #ifndef GL_AMD_compressed_3DC_texture
  202. #define GL_3DC_X_AMD 0x87F9
  203. #define GL_3DC_XY_AMD 0x87FA
  204. #endif
  205. /* GL_AMD_compressed_ATC_texture */
  206. #ifndef GL_AMD_compressed_ATC_texture
  207. #define GL_ATC_RGB_AMD 0x8C92
  208. #define GL_ATC_RGBA_EXPLICIT_ALPHA_AMD 0x8C93
  209. #define GL_ATC_RGBA_INTERPOLATED_ALPHA_AMD 0x87EE
  210. #endif
  211. /* GL_EXT_texture_filter_anisotropic */
  212. #ifndef GL_EXT_texture_filter_anisotropic
  213. #define GL_TEXTURE_MAX_ANISOTROPY_EXT 0x84FE
  214. #define GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT 0x84FF
  215. #endif
  216. /*------------------------------------------------------------------------*
  217. * OES extension functions
  218. *------------------------------------------------------------------------*/
  219. /* GL_OES_blend_equation_separate */
  220. #ifndef GL_OES_blend_equation_separate
  221. #define GL_OES_blend_equation_separate 1
  222. #ifdef GL_GLEXT_PROTOTYPES
  223. GL_API void GL_APIENTRY glBlendEquationSeparateOES (GLenum modeRGB, GLenum modeAlpha);
  224. #endif
  225. typedef void (GL_APIENTRYP PFNGLBLENDEQUATIONSEPARATEOESPROC) (GLenum modeRGB, GLenum modeAlpha);
  226. #endif
  227. /* GL_OES_blend_func_separate */
  228. #ifndef GL_OES_blend_func_separate
  229. #define GL_OES_blend_func_separate 1
  230. #ifdef GL_GLEXT_PROTOTYPES
  231. GL_API void GL_APIENTRY glBlendFuncSeparateOES (GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
  232. #endif
  233. typedef void (GL_APIENTRYP PFNGLBLENDFUNCSEPARATEOESPROC) (GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
  234. #endif
  235. /* GL_OES_blend_subtract */
  236. #ifndef GL_OES_blend_subtract
  237. #define GL_OES_blend_subtract 1
  238. #ifdef GL_GLEXT_PROTOTYPES
  239. GL_API void GL_APIENTRY glBlendEquationOES (GLenum mode);
  240. #endif
  241. typedef void (GL_APIENTRYP PFNGLBLENDEQUATIONOESPROC) (GLenum mode);
  242. #endif
  243. /* GL_OES_byte_coordinates */
  244. #ifndef GL_OES_byte_coordinates
  245. #define GL_OES_byte_coordinates 1
  246. #endif
  247. /* GL_OES_compressed_ETC1_RGB8_texture */
  248. #ifndef GL_OES_compressed_ETC1_RGB8_texture
  249. #define GL_OES_compressed_ETC1_RGB8_texture 1
  250. #endif
  251. /* GL_OES_draw_texture */
  252. #ifndef GL_OES_draw_texture
  253. #define GL_OES_draw_texture 1
  254. #ifdef GL_GLEXT_PROTOTYPES
  255. GL_API void GL_APIENTRY glDrawTexsOES (GLshort x, GLshort y, GLshort z, GLshort width, GLshort height);
  256. GL_API void GL_APIENTRY glDrawTexiOES (GLint x, GLint y, GLint z, GLint width, GLint height);
  257. GL_API void GL_APIENTRY glDrawTexxOES (GLfixed x, GLfixed y, GLfixed z, GLfixed width, GLfixed height);
  258. GL_API void GL_APIENTRY glDrawTexsvOES (const GLshort *coords);
  259. GL_API void GL_APIENTRY glDrawTexivOES (const GLint *coords);
  260. GL_API void GL_APIENTRY glDrawTexxvOES (const GLfixed *coords);
  261. GL_API void GL_APIENTRY glDrawTexfOES (GLfloat x, GLfloat y, GLfloat z, GLfloat width, GLfloat height);
  262. GL_API void GL_APIENTRY glDrawTexfvOES (const GLfloat *coords);
  263. #endif
  264. typedef void (GL_APIENTRYP PFNGLDRAWTEXSOESPROC) (GLshort x, GLshort y, GLshort z, GLshort width, GLshort height);
  265. typedef void (GL_APIENTRYP PFNGLDRAWTEXIOESPROC) (GLint x, GLint y, GLint z, GLint width, GLint height);
  266. typedef void (GL_APIENTRYP PFNGLDRAWTEXXOESPROC) (GLfixed x, GLfixed y, GLfixed z, GLfixed width, GLfixed height);
  267. typedef void (GL_APIENTRYP PFNGLDRAWTEXSVOESPROC) (const GLshort *coords);
  268. typedef void (GL_APIENTRYP PFNGLDRAWTEXIVOESPROC) (const GLint *coords);
  269. typedef void (GL_APIENTRYP PFNGLDRAWTEXXVOESPROC) (const GLfixed *coords);
  270. typedef void (GL_APIENTRYP PFNGLDRAWTEXFOESPROC) (GLfloat x, GLfloat y, GLfloat z, GLfloat width, GLfloat height);
  271. typedef void (GL_APIENTRYP PFNGLDRAWTEXFVOESPROC) (const GLfloat *coords);
  272. #endif
  273. /* GL_OES_extended_matrix_palette */
  274. #ifndef GL_OES_extended_matrix_palette
  275. #define GL_OES_extended_matrix_palette 1
  276. #endif
  277. /* GL_OES_fixed_point */
  278. #ifndef GL_OES_fixed_point
  279. #define GL_OES_fixed_point 1
  280. #ifdef GL_GLEXT_PROTOTYPES
  281. GL_API void GL_APIENTRY glAlphaFuncxOES (GLenum func, GLclampx ref);
  282. GL_API void GL_APIENTRY glClearColorxOES (GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha);
  283. GL_API void GL_APIENTRY glClearDepthxOES (GLclampx depth);
  284. GL_API void GL_APIENTRY glClipPlanexOES (GLenum plane, const GLfixed *equation);
  285. GL_API void GL_APIENTRY glColor4xOES (GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha);
  286. GL_API void GL_APIENTRY glDepthRangexOES (GLclampx zNear, GLclampx zFar);
  287. GL_API void GL_APIENTRY glFogxOES (GLenum pname, GLfixed param);
  288. GL_API void GL_APIENTRY glFogxvOES (GLenum pname, const GLfixed *params);
  289. GL_API void GL_APIENTRY glFrustumxOES (GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar);
  290. GL_API void GL_APIENTRY glGetClipPlanexOES (GLenum pname, GLfixed eqn[4]);
  291. GL_API void GL_APIENTRY glGetFixedvOES (GLenum pname, GLfixed *params);
  292. GL_API void GL_APIENTRY glGetLightxvOES (GLenum light, GLenum pname, GLfixed *params);
  293. GL_API void GL_APIENTRY glGetMaterialxvOES (GLenum face, GLenum pname, GLfixed *params);
  294. GL_API void GL_APIENTRY glGetTexEnvxvOES (GLenum env, GLenum pname, GLfixed *params);
  295. GL_API void GL_APIENTRY glGetTexParameterxvOES (GLenum target, GLenum pname, GLfixed *params);
  296. GL_API void GL_APIENTRY glLightModelxOES (GLenum pname, GLfixed param);
  297. GL_API void GL_APIENTRY glLightModelxvOES (GLenum pname, const GLfixed *params);
  298. GL_API void GL_APIENTRY glLightxOES (GLenum light, GLenum pname, GLfixed param);
  299. GL_API void GL_APIENTRY glLightxvOES (GLenum light, GLenum pname, const GLfixed *params);
  300. GL_API void GL_APIENTRY glLineWidthxOES (GLfixed width);
  301. GL_API void GL_APIENTRY glLoadMatrixxOES (const GLfixed *m);
  302. GL_API void GL_APIENTRY glMaterialxOES (GLenum face, GLenum pname, GLfixed param);
  303. GL_API void GL_APIENTRY glMaterialxvOES (GLenum face, GLenum pname, const GLfixed *params);
  304. GL_API void GL_APIENTRY glMultMatrixxOES (const GLfixed *m);
  305. GL_API void GL_APIENTRY glMultiTexCoord4xOES (GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q);
  306. GL_API void GL_APIENTRY glNormal3xOES (GLfixed nx, GLfixed ny, GLfixed nz);
  307. GL_API void GL_APIENTRY glOrthoxOES (GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar);
  308. GL_API void GL_APIENTRY glPointParameterxOES (GLenum pname, GLfixed param);
  309. GL_API void GL_APIENTRY glPointParameterxvOES (GLenum pname, const GLfixed *params);
  310. GL_API void GL_APIENTRY glPointSizexOES (GLfixed size);
  311. GL_API void GL_APIENTRY glPolygonOffsetxOES (GLfixed factor, GLfixed units);
  312. GL_API void GL_APIENTRY glRotatexOES (GLfixed angle, GLfixed x, GLfixed y, GLfixed z);
  313. GL_API void GL_APIENTRY glSampleCoveragexOES (GLclampx value, GLboolean invert);
  314. GL_API void GL_APIENTRY glScalexOES (GLfixed x, GLfixed y, GLfixed z);
  315. GL_API void GL_APIENTRY glTexEnvxOES (GLenum target, GLenum pname, GLfixed param);
  316. GL_API void GL_APIENTRY glTexEnvxvOES (GLenum target, GLenum pname, const GLfixed *params);
  317. GL_API void GL_APIENTRY glTexParameterxOES (GLenum target, GLenum pname, GLfixed param);
  318. GL_API void GL_APIENTRY glTexParameterxvOES (GLenum target, GLenum pname, const GLfixed *params);
  319. GL_API void GL_APIENTRY glTranslatexOES (GLfixed x, GLfixed y, GLfixed z);
  320. #endif
  321. typedef void (GL_APIENTRYP PFNGLALPHAFUNCXOESPROC) (GLenum func, GLclampx ref);
  322. typedef void (GL_APIENTRYP PFNGLCLEARCOLORXOESPROC) (GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha);
  323. typedef void (GL_APIENTRYP PFNGLCLEARDEPTHXOESPROC) (GLclampx depth);
  324. typedef void (GL_APIENTRYP PFNGLCLIPPLANEXOESPROC) (GLenum plane, const GLfixed *equation);
  325. typedef void (GL_APIENTRYP PFNGLCOLOR4XOESPROC) (GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha);
  326. typedef void (GL_APIENTRYP PFNGLDEPTHRANGEXOESPROC) (GLclampx zNear, GLclampx zFar);
  327. typedef void (GL_APIENTRYP PFNGLFOGXOESPROC) (GLenum pname, GLfixed param);
  328. typedef void (GL_APIENTRYP PFNGLFOGXVOESPROC) (GLenum pname, const GLfixed *params);
  329. typedef void (GL_APIENTRYP PFNGLFRUSTUMXOESPROC) (GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar);
  330. typedef void (GL_APIENTRYP PFNGLGETCLIPPLANEXOESPROC) (GLenum pname, GLfixed eqn[4]);
  331. typedef void (GL_APIENTRYP PFNGLGETFIXEDVOESPROC) (GLenum pname, GLfixed *params);
  332. typedef void (GL_APIENTRYP PFNGLGETLIGHTXVOESPROC) (GLenum light, GLenum pname, GLfixed *params);
  333. typedef void (GL_APIENTRYP PFNGLGETMATERIALXVOESPROC) (GLenum face, GLenum pname, GLfixed *params);
  334. typedef void (GL_APIENTRYP PFNGLGETTEXENVXVOESPROC) (GLenum env, GLenum pname, GLfixed *params);
  335. typedef void (GL_APIENTRYP PFNGLGETTEXPARAMETERXVOESPROC) (GLenum target, GLenum pname, GLfixed *params);
  336. typedef void (GL_APIENTRYP PFNGLLIGHTMODELXOESPROC) (GLenum pname, GLfixed param);
  337. typedef void (GL_APIENTRYP PFNGLLIGHTMODELXVOESPROC) (GLenum pname, const GLfixed *params);
  338. typedef void (GL_APIENTRYP PFNGLLIGHTXOESPROC) (GLenum light, GLenum pname, GLfixed param);
  339. typedef void (GL_APIENTRYP PFNGLLIGHTXVOESPROC) (GLenum light, GLenum pname, const GLfixed *params);
  340. typedef void (GL_APIENTRYP PFNGLLINEWIDTHXOESPROC) (GLfixed width);
  341. typedef void (GL_APIENTRYP PFNGLLOADMATRIXXOESPROC) (const GLfixed *m);
  342. typedef void (GL_APIENTRYP PFNGLMATERIALXOESPROC) (GLenum face, GLenum pname, GLfixed param);
  343. typedef void (GL_APIENTRYP PFNGLMATERIALXVOESPROC) (GLenum face, GLenum pname, const GLfixed *params);
  344. typedef void (GL_APIENTRYP PFNGLMULTMATRIXXOESPROC) (const GLfixed *m);
  345. typedef void (GL_APIENTRYP PFNGLMULTITEXCOORD4XOESPROC) (GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q);
  346. typedef void (GL_APIENTRYP PFNGLNORMAL3XOESPROC) (GLfixed nx, GLfixed ny, GLfixed nz);
  347. typedef void (GL_APIENTRYP PFNGLORTHOXOESPROC) (GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar);
  348. typedef void (GL_APIENTRYP PFNGLPOINTPARAMETERXOESPROC) (GLenum pname, GLfixed param);
  349. typedef void (GL_APIENTRYP PFNGLPOINTPARAMETERXVOESPROC) (GLenum pname, const GLfixed *params);
  350. typedef void (GL_APIENTRYP PFNGLPOINTSIZEXOESPROC) (GLfixed size);
  351. typedef void (GL_APIENTRYP PFNGLPOLYGONOFFSETXOESPROC) (GLfixed factor, GLfixed units);
  352. typedef void (GL_APIENTRYP PFNGLROTATEXOESPROC) (GLfixed angle, GLfixed x, GLfixed y, GLfixed z);
  353. typedef void (GL_APIENTRYP PFNGLSAMPLECOVERAGEXOESPROC) (GLclampx value, GLboolean invert);
  354. typedef void (GL_APIENTRYP PFNGLSCALEXOESPROC) (GLfixed x, GLfixed y, GLfixed z);
  355. typedef void (GL_APIENTRYP PFNGLTEXENVXOESPROC) (GLenum target, GLenum pname, GLfixed param);
  356. typedef void (GL_APIENTRYP PFNGLTEXENVXVOESPROC) (GLenum target, GLenum pname, const GLfixed *params);
  357. typedef void (GL_APIENTRYP PFNGLTEXPARAMETERXOESPROC) (GLenum target, GLenum pname, GLfixed param);
  358. typedef void (GL_APIENTRYP PFNGLTEXPARAMETERXVOESPROC) (GLenum target, GLenum pname, const GLfixed *params);
  359. typedef void (GL_APIENTRYP PFNGLTRANSLATEXOESPROC) (GLfixed x, GLfixed y, GLfixed z);
  360. #endif
  361. /* GL_OES_framebuffer_object */
  362. #ifndef GL_OES_framebuffer_object
  363. #define GL_OES_framebuffer_object 1
  364. #ifdef GL_GLEXT_PROTOTYPES
  365. GL_API GLboolean GL_APIENTRY glIsRenderbufferOES (GLuint renderbuffer);
  366. GL_API void GL_APIENTRY glBindRenderbufferOES (GLenum target, GLuint renderbuffer);
  367. GL_API void GL_APIENTRY glDeleteRenderbuffersOES (GLsizei n, const GLuint* renderbuffers);
  368. GL_API void GL_APIENTRY glGenRenderbuffersOES (GLsizei n, GLuint* renderbuffers);
  369. GL_API void GL_APIENTRY glRenderbufferStorageOES (GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
  370. GL_API void GL_APIENTRY glGetRenderbufferParameterivOES (GLenum target, GLenum pname, GLint* params);
  371. GL_API GLboolean GL_APIENTRY glIsFramebufferOES (GLuint framebuffer);
  372. GL_API void GL_APIENTRY glBindFramebufferOES (GLenum target, GLuint framebuffer);
  373. GL_API void GL_APIENTRY glDeleteFramebuffersOES (GLsizei n, const GLuint* framebuffers);
  374. GL_API void GL_APIENTRY glGenFramebuffersOES (GLsizei n, GLuint* framebuffers);
  375. GL_API GLenum GL_APIENTRY glCheckFramebufferStatusOES (GLenum target);
  376. GL_API void GL_APIENTRY glFramebufferRenderbufferOES (GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
  377. GL_API void GL_APIENTRY glFramebufferTexture2DOES (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
  378. GL_API void GL_APIENTRY glGetFramebufferAttachmentParameterivOES (GLenum target, GLenum attachment, GLenum pname, GLint* params);
  379. GL_API void GL_APIENTRY glGenerateMipmapOES (GLenum target);
  380. #endif
  381. typedef GLboolean (GL_APIENTRYP PFNGLISRENDERBUFFEROESPROC) (GLuint renderbuffer);
  382. typedef void (GL_APIENTRYP PFNGLBINDRENDERBUFFEROESPROC) (GLenum target, GLuint renderbuffer);
  383. typedef void (GL_APIENTRYP PFNGLDELETERENDERBUFFERSOESPROC) (GLsizei n, const GLuint* renderbuffers);
  384. typedef void (GL_APIENTRYP PFNGLGENRENDERBUFFERSOESPROC) (GLsizei n, GLuint* renderbuffers);
  385. typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEOESPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
  386. typedef void (GL_APIENTRYP PFNGLGETRENDERBUFFERPARAMETERIVOESPROC) (GLenum target, GLenum pname, GLint* params);
  387. typedef GLboolean (GL_APIENTRYP PFNGLISFRAMEBUFFEROESPROC) (GLuint framebuffer);
  388. typedef void (GL_APIENTRYP PFNGLBINDFRAMEBUFFEROESPROC) (GLenum target, GLuint framebuffer);
  389. typedef void (GL_APIENTRYP PFNGLDELETEFRAMEBUFFERSOESPROC) (GLsizei n, const GLuint* framebuffers);
  390. typedef void (GL_APIENTRYP PFNGLGENFRAMEBUFFERSOESPROC) (GLsizei n, GLuint* framebuffers);
  391. typedef GLenum (GL_APIENTRYP PFNGLCHECKFRAMEBUFFERSTATUSOESPROC) (GLenum target);
  392. typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERRENDERBUFFEROESPROC) (GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
  393. typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERTEXTURE2DOESPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
  394. typedef void (GL_APIENTRYP PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVOESPROC) (GLenum target, GLenum attachment, GLenum pname, GLint* params);
  395. typedef void (GL_APIENTRYP PFNGLGENERATEMIPMAPOESPROC) (GLenum target);
  396. #endif
  397. /* GL_OES_matrix_get */
  398. #ifndef GL_OES_matrix_get
  399. #define GL_OES_matrix_get 1
  400. #endif
  401. /* GL_OES_matrix_palette */
  402. #ifndef GL_OES_matrix_palette
  403. #define GL_OES_matrix_palette 1
  404. #ifdef GL_GLEXT_PROTOTYPES
  405. GL_API void GL_APIENTRY glCurrentPaletteMatrixOES (GLuint matrixpaletteindex);
  406. GL_API void GL_APIENTRY glLoadPaletteFromModelViewMatrixOES (void);
  407. GL_API void GL_APIENTRY glMatrixIndexPointerOES (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
  408. GL_API void GL_APIENTRY glWeightPointerOES (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
  409. #endif
  410. typedef void (GL_APIENTRYP PFNGLCURRENTPALETTEMATRIXOESPROC) (GLuint matrixpaletteindex);
  411. typedef void (GL_APIENTRYP PFNGLLOADPALETTEFROMMODELVIEWMATRIXOESPROC) (void);
  412. typedef void (GL_APIENTRYP PFNGLMATRIXINDEXPOINTEROESPROC) (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
  413. typedef void (GL_APIENTRYP PFNGLWEIGHTPOINTEROESPROC) (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
  414. #endif
  415. /* GL_OES_query_matrix */
  416. #ifndef GL_OES_query_matrix
  417. #define GL_OES_query_matrix 1
  418. #ifdef GL_GLEXT_PROTOTYPES
  419. GL_API GLbitfield GL_APIENTRY glQueryMatrixxOES (GLfixed mantissa[16], GLint exponent[16]);
  420. #endif
  421. typedef GLbitfield (GL_APIENTRYP PFNGLQUERYMATRIXXOESPROC) (GLfixed mantissa[16], GLint exponent[16]);
  422. #endif
  423. /* GL_OES_single_precision */
  424. #ifndef GL_OES_single_precision
  425. #define GL_OES_single_precision 1
  426. #ifdef GL_GLEXT_PROTOTYPES
  427. GL_API void GL_APIENTRY glDepthRangefOES (GLclampf zNear, GLclampf zFar);
  428. GL_API void GL_APIENTRY glFrustumfOES (GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar);
  429. GL_API void GL_APIENTRY glOrthofOES (GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar);
  430. GL_API void GL_APIENTRY glClipPlanefOES (GLenum plane, const GLfloat *equation);
  431. GL_API void GL_APIENTRY glGetClipPlanefOES (GLenum pname, GLfloat eqn[4]);
  432. GL_API void GL_APIENTRY glClearDepthfOES (GLclampf depth);
  433. #endif
  434. typedef void (GL_APIENTRYP PFNGLDEPTHRANGEFOESPROC) (GLclampf zNear, GLclampf zFar);
  435. typedef void (GL_APIENTRYP PFNGLFRUSTUMFOESPROC) (GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar);
  436. typedef void (GL_APIENTRYP PFNGLORTHOFOESPROC) (GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar);
  437. typedef void (GL_APIENTRYP PFNGLCLIPPLANEFOESPROC) (GLenum plane, const GLfloat *equation);
  438. typedef void (GL_APIENTRYP PFNGLGETCLIPPLANEFOESPROC) (GLenum pname, GLfloat eqn[4]);
  439. typedef void (GL_APIENTRYP PFNGLCLEARDEPTHFOESPROC) (GLclampf depth);
  440. #endif
  441. /* GL_OES_stencil_wrap */
  442. #ifndef GL_OES_stencil_wrap
  443. #define GL_OES_stencil_wrap 1
  444. #endif
  445. /* GL_OES_texture_cube_map */
  446. #ifndef GL_OES_texture_cube_map
  447. #define GL_OES_texture_cube_map 1
  448. #ifdef GL_GLEXT_PROTOTYPES
  449. GL_API void GL_APIENTRY glTexGenfOES (GLenum coord, GLenum pname, GLfloat param);
  450. GL_API void GL_APIENTRY glTexGenfvOES (GLenum coord, GLenum pname, const GLfloat *params);
  451. GL_API void GL_APIENTRY glTexGeniOES (GLenum coord, GLenum pname, GLint param);
  452. GL_API void GL_APIENTRY glTexGenivOES (GLenum coord, GLenum pname, const GLint *params);
  453. GL_API void GL_APIENTRY glTexGenxOES (GLenum coord, GLenum pname, GLfixed param);
  454. GL_API void GL_APIENTRY glTexGenxvOES (GLenum coord, GLenum pname, const GLfixed *params);
  455. GL_API void GL_APIENTRY glGetTexGenfvOES (GLenum coord, GLenum pname, GLfloat *params);
  456. GL_API void GL_APIENTRY glGetTexGenivOES (GLenum coord, GLenum pname, GLint *params);
  457. GL_API void GL_APIENTRY glGetTexGenxvOES (GLenum coord, GLenum pname, GLfixed *params);
  458. #endif
  459. typedef void (GL_APIENTRYP PFNGLTEXGENFOESPROC) (GLenum coord, GLenum pname, GLfloat param);
  460. typedef void (GL_APIENTRYP PFNGLTEXGENFVOESPROC) (GLenum coord, GLenum pname, const GLfloat *params);
  461. typedef void (GL_APIENTRYP PFNGLTEXGENIOESPROC) (GLenum coord, GLenum pname, GLint param);
  462. typedef void (GL_APIENTRYP PFNGLTEXGENIVOESPROC) (GLenum coord, GLenum pname, const GLint *params);
  463. typedef void (GL_APIENTRYP PFNGLTEXGENXOESPROC) (GLenum coord, GLenum pname, GLfixed param);
  464. typedef void (GL_APIENTRYP PFNGLTEXGENXVOESPROC) (GLenum coord, GLenum pname, const GLfixed *params);
  465. typedef void (GL_APIENTRYP PFNGLGETTEXGENFVOESPROC) (GLenum coord, GLenum pname, GLfloat *params);
  466. typedef void (GL_APIENTRYP PFNGLGETTEXGENIVOESPROC) (GLenum coord, GLenum pname, GLint *params);
  467. typedef void (GL_APIENTRYP PFNGLGETTEXGENXVOESPROC) (GLenum coord, GLenum pname, GLfixed *params);
  468. #endif
  469. /* GL_OES_texture_env_crossbar */
  470. #ifndef GL_OES_texture_env_crossbar
  471. #define GL_OES_texture_env_crossbar 1
  472. #endif
  473. /* GL_OES_texture_mirrored_repeat */
  474. #ifndef GL_OES_texture_mirrored_repeat
  475. #define GL_OES_texture_mirrored_repeat 1
  476. #endif
  477. /* GL_OES_EGL_image */
  478. #ifndef GL_OES_EGL_image
  479. #define GL_OES_EGL_image 1
  480. #ifdef GL_GLEXT_PROTOTYPES
  481. GL_API void GL_APIENTRY glEGLImageTargetTexture2DOES (GLenum target, GLeglImageOES image);
  482. GL_API void GL_APIENTRY glEGLImageTargetRenderbufferStorageOES (GLenum target, GLeglImageOES image);
  483. #endif
  484. typedef void (GL_APIENTRYP PFNGLEGLIMAGETARGETTEXTURE2DOESPROC) (GLenum target, GLeglImageOES image);
  485. typedef void (GL_APIENTRYP PFNGLEGLIMAGETARGETRENDERBUFFERSTORAGEOESPROC) (GLenum target, GLeglImageOES image);
  486. #endif
  487. /* GL_OES_depth24 */
  488. #ifndef GL_OES_depth24
  489. #define GL_OES_depth24 1
  490. #endif
  491. /* GL_OES_depth32 */
  492. #ifndef GL_OES_depth32
  493. #define GL_OES_depth32 1
  494. #endif
  495. /* GL_OES_element_index_uint */
  496. #ifndef GL_OES_element_index_uint
  497. #define GL_OES_element_index_uint 1
  498. #endif
  499. /* GL_OES_fbo_render_mipmap */
  500. #ifndef GL_OES_fbo_render_mipmap
  501. #define GL_OES_fbo_render_mipmap 1
  502. #endif
  503. /* GL_OES_mapbuffer */
  504. #ifndef GL_OES_mapbuffer
  505. #define GL_OES_mapbuffer 1
  506. #ifdef GL_GLEXT_PROTOTYPES
  507. GL_API void* GL_APIENTRY glMapBufferOES (GLenum target, GLenum access);
  508. GL_API GLboolean GL_APIENTRY glUnmapBufferOES (GLenum target);
  509. GL_API void GL_APIENTRY glGetBufferPointervOES (GLenum target, GLenum pname, void** params);
  510. #endif
  511. typedef void* (GL_APIENTRYP PFNGLMAPBUFFEROESPROC) (GLenum target, GLenum access);
  512. typedef GLboolean (GL_APIENTRYP PFNGLUNMAPBUFFEROESPROC) (GLenum target);
  513. typedef void (GL_APIENTRYP PFNGLGETBUFFERPOINTERVOESPROC) (GLenum target, GLenum pname, void** params);
  514. #endif
  515. /* GL_OES_rgb8_rgba8 */
  516. #ifndef GL_OES_rgb8_rgba8
  517. #define GL_OES_rgb8_rgba8 1
  518. #endif
  519. /* GL_OES_stencil1 */
  520. #ifndef GL_OES_stencil1
  521. #define GL_OES_stencil1 1
  522. #endif
  523. /* GL_OES_stencil4 */
  524. #ifndef GL_OES_stencil4
  525. #define GL_OES_stencil4 1
  526. #endif
  527. /* GL_OES_stencil8 */
  528. #ifndef GL_OES_stencil8
  529. #define GL_OES_stencil8 1
  530. #endif
  531. /* GL_AMD_compressed_3DC_texture */
  532. #ifndef GL_AMD_compressed_3DC_texture
  533. #define GL_AMD_compressed_3DC_texture 1
  534. #endif
  535. /* GL_AMD_compressed_ATC_texture */
  536. #ifndef GL_AMD_compressed_ATC_texture
  537. #define GL_AMD_compressed_ATC_texture 1
  538. #endif
  539. /* GL_EXT_texture_filter_anisotropic */
  540. #ifndef GL_EXT_texture_filter_anisotropic
  541. #define GL_EXT_texture_filter_anisotropic 1
  542. #endif
  543. #ifdef __cplusplus
  544. }
  545. #endif
  546. #endif /* __glext_h_ */