Subversion Repositories Kolibri OS

Rev

Go to most recent revision | Blame | Last modification | View Log | Download | RSS feed

  1. #ifndef __glext_h_
  2. #define __glext_h_
  3.  
  4. /* $Revision: 10965 $ on $Date:: 2010-04-09 02:11:29 -0700 #$ */
  5.  
  6. #ifdef __cplusplus
  7. extern "C" {
  8. #endif
  9.  
  10. /*
  11.  * This document is licensed under the SGI Free Software B License Version
  12.  * 2.0. For details, see http://oss.sgi.com/projects/FreeB/ .
  13.  */
  14.  
  15. #ifndef GL_APIENTRYP
  16. #   define GL_APIENTRYP GL_APIENTRY*
  17. #endif
  18.  
  19. /*------------------------------------------------------------------------*
  20.  * OES extension tokens
  21.  *------------------------------------------------------------------------*/
  22.  
  23. /* GL_OES_blend_equation_separate */
  24. #ifndef GL_OES_blend_equation_separate
  25. /* BLEND_EQUATION_RGB_OES same as BLEND_EQUATION_OES */
  26. #define GL_BLEND_EQUATION_RGB_OES                               0x8009
  27. #define GL_BLEND_EQUATION_ALPHA_OES                             0x883D
  28. #endif
  29.  
  30. /* GL_OES_blend_func_separate */
  31. #ifndef GL_OES_blend_func_separate
  32. #define GL_BLEND_DST_RGB_OES                                    0x80C8
  33. #define GL_BLEND_SRC_RGB_OES                                    0x80C9
  34. #define GL_BLEND_DST_ALPHA_OES                                  0x80CA
  35. #define GL_BLEND_SRC_ALPHA_OES                                  0x80CB
  36. #endif
  37.  
  38. /* GL_OES_blend_subtract */
  39. #ifndef GL_OES_blend_subtract
  40. #define GL_BLEND_EQUATION_OES                                   0x8009
  41. #define GL_FUNC_ADD_OES                                         0x8006
  42. #define GL_FUNC_SUBTRACT_OES                                    0x800A
  43. #define GL_FUNC_REVERSE_SUBTRACT_OES                            0x800B
  44. #endif
  45.  
  46. /* GL_OES_compressed_ETC1_RGB8_texture */
  47. #ifndef GL_OES_compressed_ETC1_RGB8_texture
  48. #define GL_ETC1_RGB8_OES                                        0x8D64
  49. #endif
  50.  
  51. /* GL_OES_depth24 */
  52. #ifndef GL_OES_depth24
  53. #define GL_DEPTH_COMPONENT24_OES                                0x81A6
  54. #endif
  55.  
  56. /* GL_OES_depth32 */
  57. #ifndef GL_OES_depth32
  58. #define GL_DEPTH_COMPONENT32_OES                                0x81A7
  59. #endif
  60.  
  61. /* GL_OES_draw_texture */
  62. #ifndef GL_OES_draw_texture
  63. #define GL_TEXTURE_CROP_RECT_OES                                0x8B9D
  64. #endif
  65.  
  66. /* GL_OES_EGL_image */
  67. #ifndef GL_OES_EGL_image
  68. typedef void* GLeglImageOES;
  69. #endif
  70.  
  71. /* GL_OES_element_index_uint */
  72. #ifndef GL_OES_element_index_uint
  73. #define GL_UNSIGNED_INT                                         0x1405
  74. #endif
  75.  
  76. /* GL_OES_fixed_point */
  77. #ifndef GL_OES_fixed_point
  78. #define GL_FIXED_OES                                            0x140C
  79. #endif
  80.  
  81. /* GL_OES_framebuffer_object */
  82. #ifndef GL_OES_framebuffer_object
  83. #define GL_NONE_OES                                             0
  84. #define GL_FRAMEBUFFER_OES                                      0x8D40
  85. #define GL_RENDERBUFFER_OES                                     0x8D41
  86. #define GL_RGBA4_OES                                            0x8056
  87. #define GL_RGB5_A1_OES                                          0x8057
  88. #define GL_RGB565_OES                                           0x8D62
  89. #define GL_DEPTH_COMPONENT16_OES                                0x81A5
  90. #define GL_RENDERBUFFER_WIDTH_OES                               0x8D42
  91. #define GL_RENDERBUFFER_HEIGHT_OES                              0x8D43
  92. #define GL_RENDERBUFFER_INTERNAL_FORMAT_OES                     0x8D44
  93. #define GL_RENDERBUFFER_RED_SIZE_OES                            0x8D50
  94. #define GL_RENDERBUFFER_GREEN_SIZE_OES                          0x8D51
  95. #define GL_RENDERBUFFER_BLUE_SIZE_OES                           0x8D52
  96. #define GL_RENDERBUFFER_ALPHA_SIZE_OES                          0x8D53
  97. #define GL_RENDERBUFFER_DEPTH_SIZE_OES                          0x8D54
  98. #define GL_RENDERBUFFER_STENCIL_SIZE_OES                        0x8D55
  99. #define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_OES               0x8CD0
  100. #define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_OES               0x8CD1
  101. #define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_OES             0x8CD2
  102. #define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_OES     0x8CD3
  103. #define GL_COLOR_ATTACHMENT0_OES                                0x8CE0
  104. #define GL_DEPTH_ATTACHMENT_OES                                 0x8D00
  105. #define GL_STENCIL_ATTACHMENT_OES                               0x8D20
  106. #define GL_FRAMEBUFFER_COMPLETE_OES                             0x8CD5
  107. #define GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_OES                0x8CD6
  108. #define GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_OES        0x8CD7
  109. #define GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_OES                0x8CD9
  110. #define GL_FRAMEBUFFER_INCOMPLETE_FORMATS_OES                   0x8CDA
  111. #define GL_FRAMEBUFFER_UNSUPPORTED_OES                          0x8CDD
  112. #define GL_FRAMEBUFFER_BINDING_OES                              0x8CA6
  113. #define GL_RENDERBUFFER_BINDING_OES                             0x8CA7
  114. #define GL_MAX_RENDERBUFFER_SIZE_OES                            0x84E8
  115. #define GL_INVALID_FRAMEBUFFER_OPERATION_OES                    0x0506
  116. #endif
  117.  
  118. /* GL_OES_mapbuffer */
  119. #ifndef GL_OES_mapbuffer
  120. #define GL_WRITE_ONLY_OES                                       0x88B9
  121. #define GL_BUFFER_ACCESS_OES                                    0x88BB
  122. #define GL_BUFFER_MAPPED_OES                                    0x88BC
  123. #define GL_BUFFER_MAP_POINTER_OES                               0x88BD
  124. #endif
  125.  
  126. /* GL_OES_matrix_get */
  127. #ifndef GL_OES_matrix_get
  128. #define GL_MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES               0x898D
  129. #define GL_PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES              0x898E
  130. #define GL_TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES                 0x898F
  131. #endif
  132.  
  133. /* GL_OES_matrix_palette */
  134. #ifndef GL_OES_matrix_palette
  135. #define GL_MAX_VERTEX_UNITS_OES                                 0x86A4
  136. #define GL_MAX_PALETTE_MATRICES_OES                             0x8842
  137. #define GL_MATRIX_PALETTE_OES                                   0x8840
  138. #define GL_MATRIX_INDEX_ARRAY_OES                               0x8844
  139. #define GL_WEIGHT_ARRAY_OES                                     0x86AD
  140. #define GL_CURRENT_PALETTE_MATRIX_OES                           0x8843
  141. #define GL_MATRIX_INDEX_ARRAY_SIZE_OES                          0x8846
  142. #define GL_MATRIX_INDEX_ARRAY_TYPE_OES                          0x8847
  143. #define GL_MATRIX_INDEX_ARRAY_STRIDE_OES                        0x8848
  144. #define GL_MATRIX_INDEX_ARRAY_POINTER_OES                       0x8849
  145. #define GL_MATRIX_INDEX_ARRAY_BUFFER_BINDING_OES                0x8B9E
  146. #define GL_WEIGHT_ARRAY_SIZE_OES                                0x86AB
  147. #define GL_WEIGHT_ARRAY_TYPE_OES                                0x86A9
  148. #define GL_WEIGHT_ARRAY_STRIDE_OES                              0x86AA
  149. #define GL_WEIGHT_ARRAY_POINTER_OES                             0x86AC
  150. #define GL_WEIGHT_ARRAY_BUFFER_BINDING_OES                      0x889E
  151. #endif
  152.  
  153. /* GL_OES_packed_depth_stencil */
  154. #ifndef GL_OES_packed_depth_stencil
  155. #define GL_DEPTH_STENCIL_OES                                    0x84F9
  156. #define GL_UNSIGNED_INT_24_8_OES                                0x84FA
  157. #define GL_DEPTH24_STENCIL8_OES                                 0x88F0
  158. #endif
  159.  
  160. /* GL_OES_rgb8_rgba8 */
  161. #ifndef GL_OES_rgb8_rgba8
  162. #define GL_RGB8_OES                                             0x8051
  163. #define GL_RGBA8_OES                                            0x8058
  164. #endif
  165.  
  166. /* GL_OES_stencil1 */
  167. #ifndef GL_OES_stencil1
  168. #define GL_STENCIL_INDEX1_OES                                   0x8D46
  169. #endif
  170.  
  171. /* GL_OES_stencil4 */
  172. #ifndef GL_OES_stencil4
  173. #define GL_STENCIL_INDEX4_OES                                   0x8D47
  174. #endif
  175.  
  176. /* GL_OES_stencil8 */
  177. #ifndef GL_OES_stencil8
  178. #define GL_STENCIL_INDEX8_OES                                   0x8D48
  179. #endif
  180.  
  181. /* GL_OES_stencil_wrap */
  182. #ifndef GL_OES_stencil_wrap
  183. #define GL_INCR_WRAP_OES                                        0x8507
  184. #define GL_DECR_WRAP_OES                                        0x8508
  185. #endif
  186.  
  187. /* GL_OES_texture_cube_map */
  188. #ifndef GL_OES_texture_cube_map
  189. #define GL_NORMAL_MAP_OES                                       0x8511
  190. #define GL_REFLECTION_MAP_OES                                   0x8512
  191. #define GL_TEXTURE_CUBE_MAP_OES                                 0x8513
  192. #define GL_TEXTURE_BINDING_CUBE_MAP_OES                         0x8514
  193. #define GL_TEXTURE_CUBE_MAP_POSITIVE_X_OES                      0x8515
  194. #define GL_TEXTURE_CUBE_MAP_NEGATIVE_X_OES                      0x8516
  195. #define GL_TEXTURE_CUBE_MAP_POSITIVE_Y_OES                      0x8517
  196. #define GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_OES                      0x8518
  197. #define GL_TEXTURE_CUBE_MAP_POSITIVE_Z_OES                      0x8519
  198. #define GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_OES                      0x851A
  199. #define GL_MAX_CUBE_MAP_TEXTURE_SIZE_OES                        0x851C
  200. #define GL_TEXTURE_GEN_MODE_OES                                 0x2500
  201. #define GL_TEXTURE_GEN_STR_OES                                  0x8D60
  202. #endif
  203.  
  204. /* GL_OES_texture_mirrored_repeat */
  205. #ifndef GL_OES_texture_mirrored_repeat
  206. #define GL_MIRRORED_REPEAT_OES                                  0x8370
  207. #endif
  208.  
  209. /* GL_OES_vertex_array_object */
  210. #ifndef GL_OES_vertex_array_object
  211. #define GL_VERTEX_ARRAY_BINDING_OES                             0x85B5
  212. #endif
  213.  
  214. /*------------------------------------------------------------------------*
  215.  * AMD extension tokens
  216.  *------------------------------------------------------------------------*/
  217.  
  218. /* GL_AMD_compressed_3DC_texture */
  219. #ifndef GL_AMD_compressed_3DC_texture
  220. #define GL_3DC_X_AMD                                            0x87F9
  221. #define GL_3DC_XY_AMD                                           0x87FA
  222. #endif
  223.  
  224. /* GL_AMD_compressed_ATC_texture */
  225. #ifndef GL_AMD_compressed_ATC_texture
  226. #define GL_ATC_RGB_AMD                                          0x8C92
  227. #define GL_ATC_RGBA_EXPLICIT_ALPHA_AMD                          0x8C93
  228. #define GL_ATC_RGBA_INTERPOLATED_ALPHA_AMD                      0x87EE
  229. #endif
  230.  
  231. /*------------------------------------------------------------------------*
  232.  * APPLE extension tokens
  233.  *------------------------------------------------------------------------*/
  234.  
  235. /* GL_APPLE_texture_2D_limited_npot */
  236. /* No new tokens introduced by this extension. */
  237.  
  238. /*------------------------------------------------------------------------*
  239.  * EXT extension tokens
  240.  *------------------------------------------------------------------------*/
  241.  
  242. /* GL_EXT_blend_minmax */
  243. #ifndef GL_EXT_blend_minmax
  244. #define GL_MIN_EXT                                              0x8007
  245. #define GL_MAX_EXT                                              0x8008
  246. #endif
  247.  
  248. /* GL_EXT_discard_framebuffer */
  249. #ifndef GL_EXT_discard_framebuffer
  250. #define GL_COLOR_EXT                                            0x1800
  251. #define GL_DEPTH_EXT                                            0x1801
  252. #define GL_STENCIL_EXT                                          0x1802
  253. #endif
  254.  
  255. /* GL_EXT_multi_draw_arrays */
  256. /* No new tokens introduced by this extension. */
  257.  
  258. /* GL_EXT_read_format_bgra */
  259. #ifndef GL_EXT_read_format_bgra
  260. #define GL_BGRA_EXT                                             0x80E1
  261. #define GL_UNSIGNED_SHORT_4_4_4_4_REV_EXT                       0x8365
  262. #define GL_UNSIGNED_SHORT_1_5_5_5_REV_EXT                       0x8366
  263. #endif
  264.  
  265. /* GL_EXT_texture_filter_anisotropic */
  266. #ifndef GL_EXT_texture_filter_anisotropic
  267. #define GL_TEXTURE_MAX_ANISOTROPY_EXT                           0x84FE
  268. #define GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT                       0x84FF
  269. #endif
  270.  
  271. /* GL_EXT_texture_format_BGRA8888 */
  272. #ifndef GL_EXT_texture_format_BGRA8888
  273. #define GL_BGRA_EXT                                             0x80E1
  274. #endif
  275.  
  276. /* GL_EXT_texture_lod_bias */
  277. #ifndef GL_EXT_texture_lod_bias
  278. #define GL_MAX_TEXTURE_LOD_BIAS_EXT                             0x84FD
  279. #define GL_TEXTURE_FILTER_CONTROL_EXT                           0x8500
  280. #define GL_TEXTURE_LOD_BIAS_EXT                                 0x8501
  281. #endif
  282.  
  283. /*------------------------------------------------------------------------*
  284.  * IMG extension tokens
  285.  *------------------------------------------------------------------------*/
  286.  
  287. /* GL_IMG_read_format */
  288. #ifndef GL_IMG_read_format
  289. #define GL_BGRA_IMG                                             0x80E1
  290. #define GL_UNSIGNED_SHORT_4_4_4_4_REV_IMG                       0x8365
  291. #endif
  292.  
  293. /* GL_IMG_texture_compression_pvrtc */
  294. #ifndef GL_IMG_texture_compression_pvrtc
  295. #define GL_COMPRESSED_RGB_PVRTC_4BPPV1_IMG                      0x8C00
  296. #define GL_COMPRESSED_RGB_PVRTC_2BPPV1_IMG                      0x8C01
  297. #define GL_COMPRESSED_RGBA_PVRTC_4BPPV1_IMG                     0x8C02
  298. #define GL_COMPRESSED_RGBA_PVRTC_2BPPV1_IMG                     0x8C03
  299. #endif
  300.  
  301. /* GL_IMG_texture_env_enhanced_fixed_function */
  302. #ifndef GL_IMG_texture_env_enhanced_fixed_function
  303. #define GL_MODULATE_COLOR_IMG                                   0x8C04
  304. #define GL_RECIP_ADD_SIGNED_ALPHA_IMG                           0x8C05
  305. #define GL_TEXTURE_ALPHA_MODULATE_IMG                           0x8C06
  306. #define GL_FACTOR_ALPHA_MODULATE_IMG                            0x8C07
  307. #define GL_FRAGMENT_ALPHA_MODULATE_IMG                          0x8C08
  308. #define GL_ADD_BLEND_IMG                                        0x8C09
  309. #define GL_DOT3_RGBA_IMG                                        0x86AF
  310. #endif
  311.  
  312. /* GL_IMG_user_clip_plane */
  313. #ifndef GL_IMG_user_clip_plane
  314. #define GL_CLIP_PLANE0_IMG                                      0x3000
  315. #define GL_CLIP_PLANE1_IMG                                      0x3001
  316. #define GL_CLIP_PLANE2_IMG                                      0x3002
  317. #define GL_CLIP_PLANE3_IMG                                      0x3003
  318. #define GL_CLIP_PLANE4_IMG                                      0x3004
  319. #define GL_CLIP_PLANE5_IMG                                      0x3005
  320. #define GL_MAX_CLIP_PLANES_IMG                                  0x0D32
  321. #endif
  322.  
  323. /* GL_IMG_multisampled_render_to_texture */
  324. #ifndef GL_IMG_multisampled_render_to_texture
  325. #define GL_RENDERBUFFER_SAMPLES_IMG                             0x9133
  326. #define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_IMG               0x9134
  327. #define GL_MAX_SAMPLES_IMG                                      0x9135
  328. #define GL_TEXTURE_SAMPLES_IMG                                  0x9136
  329. #endif
  330.  
  331. /*------------------------------------------------------------------------*
  332.  * NV extension tokens
  333.  *------------------------------------------------------------------------*/
  334.  
  335. /* GL_NV_fence */
  336. #ifndef GL_NV_fence
  337. #define GL_ALL_COMPLETED_NV                                     0x84F2
  338. #define GL_FENCE_STATUS_NV                                      0x84F3
  339. #define GL_FENCE_CONDITION_NV                                   0x84F4
  340. #endif
  341.  
  342. /*------------------------------------------------------------------------*
  343.  * QCOM extension tokens
  344.  *------------------------------------------------------------------------*/
  345.  
  346. /* GL_QCOM_driver_control */
  347. /* No new tokens introduced by this extension. */
  348.  
  349. /* GL_QCOM_extended_get */
  350. #ifndef GL_QCOM_extended_get
  351. #define GL_TEXTURE_WIDTH_QCOM                                   0x8BD2
  352. #define GL_TEXTURE_HEIGHT_QCOM                                  0x8BD3
  353. #define GL_TEXTURE_DEPTH_QCOM                                   0x8BD4
  354. #define GL_TEXTURE_INTERNAL_FORMAT_QCOM                         0x8BD5
  355. #define GL_TEXTURE_FORMAT_QCOM                                  0x8BD6
  356. #define GL_TEXTURE_TYPE_QCOM                                    0x8BD7
  357. #define GL_TEXTURE_IMAGE_VALID_QCOM                             0x8BD8
  358. #define GL_TEXTURE_NUM_LEVELS_QCOM                              0x8BD9
  359. #define GL_TEXTURE_TARGET_QCOM                                  0x8BDA
  360. #define GL_TEXTURE_OBJECT_VALID_QCOM                            0x8BDB
  361. #define GL_STATE_RESTORE                                        0x8BDC
  362. #endif
  363.  
  364. /* GL_QCOM_extended_get2 */
  365. /* No new tokens introduced by this extension. */
  366.  
  367. /* GL_QCOM_perfmon_global_mode */
  368. #ifndef GL_QCOM_perfmon_global_mode
  369. #define GL_PERFMON_GLOBAL_MODE_QCOM                             0x8FA0
  370. #endif
  371.  
  372. /* GL_QCOM_writeonly_rendering */
  373. #ifndef GL_QCOM_writeonly_rendering
  374. #define GL_WRITEONLY_RENDERING_QCOM                             0x8823
  375. #endif
  376.  
  377. /* GL_QCOM_tiled_rendering */
  378. #ifndef GL_QCOM_tiled_rendering
  379. #define GL_COLOR_BUFFER_BIT0_QCOM                               0x00000001
  380. #define GL_COLOR_BUFFER_BIT1_QCOM                               0x00000002
  381. #define GL_COLOR_BUFFER_BIT2_QCOM                               0x00000004
  382. #define GL_COLOR_BUFFER_BIT3_QCOM                               0x00000008
  383. #define GL_COLOR_BUFFER_BIT4_QCOM                               0x00000010
  384. #define GL_COLOR_BUFFER_BIT5_QCOM                               0x00000020
  385. #define GL_COLOR_BUFFER_BIT6_QCOM                               0x00000040
  386. #define GL_COLOR_BUFFER_BIT7_QCOM                               0x00000080
  387. #define GL_DEPTH_BUFFER_BIT0_QCOM                               0x00000100
  388. #define GL_DEPTH_BUFFER_BIT1_QCOM                               0x00000200
  389. #define GL_DEPTH_BUFFER_BIT2_QCOM                               0x00000400
  390. #define GL_DEPTH_BUFFER_BIT3_QCOM                               0x00000800
  391. #define GL_DEPTH_BUFFER_BIT4_QCOM                               0x00001000
  392. #define GL_DEPTH_BUFFER_BIT5_QCOM                               0x00002000
  393. #define GL_DEPTH_BUFFER_BIT6_QCOM                               0x00004000
  394. #define GL_DEPTH_BUFFER_BIT7_QCOM                               0x00008000
  395. #define GL_STENCIL_BUFFER_BIT0_QCOM                             0x00010000
  396. #define GL_STENCIL_BUFFER_BIT1_QCOM                             0x00020000
  397. #define GL_STENCIL_BUFFER_BIT2_QCOM                             0x00040000
  398. #define GL_STENCIL_BUFFER_BIT3_QCOM                             0x00080000
  399. #define GL_STENCIL_BUFFER_BIT4_QCOM                             0x00100000
  400. #define GL_STENCIL_BUFFER_BIT5_QCOM                             0x00200000
  401. #define GL_STENCIL_BUFFER_BIT6_QCOM                             0x00400000
  402. #define GL_STENCIL_BUFFER_BIT7_QCOM                             0x00800000
  403. #define GL_MULTISAMPLE_BUFFER_BIT0_QCOM                         0x01000000
  404. #define GL_MULTISAMPLE_BUFFER_BIT1_QCOM                         0x02000000
  405. #define GL_MULTISAMPLE_BUFFER_BIT2_QCOM                         0x04000000
  406. #define GL_MULTISAMPLE_BUFFER_BIT3_QCOM                         0x08000000
  407. #define GL_MULTISAMPLE_BUFFER_BIT4_QCOM                         0x10000000
  408. #define GL_MULTISAMPLE_BUFFER_BIT5_QCOM                         0x20000000
  409. #define GL_MULTISAMPLE_BUFFER_BIT6_QCOM                         0x40000000
  410. #define GL_MULTISAMPLE_BUFFER_BIT7_QCOM                         0x80000000
  411. #endif
  412.  
  413. /*------------------------------------------------------------------------*
  414.  * End of extension tokens, start of corresponding extension functions
  415.  *------------------------------------------------------------------------*/
  416.  
  417. /*------------------------------------------------------------------------*
  418.  * OES extension functions
  419.  *------------------------------------------------------------------------*/
  420.  
  421. /* GL_OES_blend_equation_separate */
  422. #ifndef GL_OES_blend_equation_separate
  423. #define GL_OES_blend_equation_separate 1
  424. #ifdef GL_GLEXT_PROTOTYPES
  425. GL_API void GL_APIENTRY glBlendEquationSeparateOES (GLenum modeRGB, GLenum modeAlpha);
  426. #endif
  427. typedef void (GL_APIENTRYP PFNGLBLENDEQUATIONSEPARATEOESPROC) (GLenum modeRGB, GLenum modeAlpha);
  428. #endif
  429.  
  430. /* GL_OES_blend_func_separate */
  431. #ifndef GL_OES_blend_func_separate
  432. #define GL_OES_blend_func_separate 1
  433. #ifdef GL_GLEXT_PROTOTYPES
  434. GL_API void GL_APIENTRY glBlendFuncSeparateOES (GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
  435. #endif
  436. typedef void (GL_APIENTRYP PFNGLBLENDFUNCSEPARATEOESPROC) (GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
  437. #endif
  438.  
  439. /* GL_OES_blend_subtract */
  440. #ifndef GL_OES_blend_subtract
  441. #define GL_OES_blend_subtract 1
  442. #ifdef GL_GLEXT_PROTOTYPES
  443. GL_API void GL_APIENTRY glBlendEquationOES (GLenum mode);
  444. #endif
  445. typedef void (GL_APIENTRYP PFNGLBLENDEQUATIONOESPROC) (GLenum mode);
  446. #endif
  447.  
  448. /* GL_OES_byte_coordinates */
  449. #ifndef GL_OES_byte_coordinates
  450. #define GL_OES_byte_coordinates 1
  451. #endif
  452.  
  453. /* GL_OES_compressed_ETC1_RGB8_texture */
  454. #ifndef GL_OES_compressed_ETC1_RGB8_texture
  455. #define GL_OES_compressed_ETC1_RGB8_texture 1
  456. #endif
  457.  
  458. /* GL_OES_depth24 */
  459. #ifndef GL_OES_depth24
  460. #define GL_OES_depth24 1
  461. #endif
  462.  
  463. /* GL_OES_depth32 */
  464. #ifndef GL_OES_depth32
  465. #define GL_OES_depth32 1
  466. #endif
  467.  
  468. /* GL_OES_draw_texture */
  469. #ifndef GL_OES_draw_texture
  470. #define GL_OES_draw_texture 1
  471. #ifdef GL_GLEXT_PROTOTYPES
  472. GL_API void GL_APIENTRY glDrawTexsOES (GLshort x, GLshort y, GLshort z, GLshort width, GLshort height);
  473. GL_API void GL_APIENTRY glDrawTexiOES (GLint x, GLint y, GLint z, GLint width, GLint height);
  474. GL_API void GL_APIENTRY glDrawTexxOES (GLfixed x, GLfixed y, GLfixed z, GLfixed width, GLfixed height);
  475. GL_API void GL_APIENTRY glDrawTexsvOES (const GLshort *coords);
  476. GL_API void GL_APIENTRY glDrawTexivOES (const GLint *coords);
  477. GL_API void GL_APIENTRY glDrawTexxvOES (const GLfixed *coords);
  478. GL_API void GL_APIENTRY glDrawTexfOES (GLfloat x, GLfloat y, GLfloat z, GLfloat width, GLfloat height);
  479. GL_API void GL_APIENTRY glDrawTexfvOES (const GLfloat *coords);
  480. #endif
  481. typedef void (GL_APIENTRYP PFNGLDRAWTEXSOESPROC) (GLshort x, GLshort y, GLshort z, GLshort width, GLshort height);
  482. typedef void (GL_APIENTRYP PFNGLDRAWTEXIOESPROC) (GLint x, GLint y, GLint z, GLint width, GLint height);
  483. typedef void (GL_APIENTRYP PFNGLDRAWTEXXOESPROC) (GLfixed x, GLfixed y, GLfixed z, GLfixed width, GLfixed height);
  484. typedef void (GL_APIENTRYP PFNGLDRAWTEXSVOESPROC) (const GLshort *coords);
  485. typedef void (GL_APIENTRYP PFNGLDRAWTEXIVOESPROC) (const GLint *coords);
  486. typedef void (GL_APIENTRYP PFNGLDRAWTEXXVOESPROC) (const GLfixed *coords);
  487. typedef void (GL_APIENTRYP PFNGLDRAWTEXFOESPROC) (GLfloat x, GLfloat y, GLfloat z, GLfloat width, GLfloat height);
  488. typedef void (GL_APIENTRYP PFNGLDRAWTEXFVOESPROC) (const GLfloat *coords);
  489. #endif
  490.  
  491. /* GL_OES_EGL_image */
  492. #ifndef GL_OES_EGL_image
  493. #define GL_OES_EGL_image 1
  494. #ifdef GL_GLEXT_PROTOTYPES
  495. GL_API void GL_APIENTRY glEGLImageTargetTexture2DOES (GLenum target, GLeglImageOES image);
  496. GL_API void GL_APIENTRY glEGLImageTargetRenderbufferStorageOES (GLenum target, GLeglImageOES image);
  497. #endif
  498. typedef void (GL_APIENTRYP PFNGLEGLIMAGETARGETTEXTURE2DOESPROC) (GLenum target, GLeglImageOES image);
  499. typedef void (GL_APIENTRYP PFNGLEGLIMAGETARGETRENDERBUFFERSTORAGEOESPROC) (GLenum target, GLeglImageOES image);
  500. #endif
  501.  
  502. /* GL_OES_element_index_uint */
  503. #ifndef GL_OES_element_index_uint
  504. #define GL_OES_element_index_uint 1
  505. #endif
  506.  
  507. /* GL_OES_extended_matrix_palette */
  508. #ifndef GL_OES_extended_matrix_palette
  509. #define GL_OES_extended_matrix_palette 1
  510. #endif
  511.  
  512. /* GL_OES_fbo_render_mipmap */
  513. #ifndef GL_OES_fbo_render_mipmap
  514. #define GL_OES_fbo_render_mipmap 1
  515. #endif
  516.  
  517. /* GL_OES_fixed_point */
  518. #ifndef GL_OES_fixed_point
  519. #define GL_OES_fixed_point 1
  520. #ifdef GL_GLEXT_PROTOTYPES
  521. GL_API void GL_APIENTRY glAlphaFuncxOES (GLenum func, GLclampx ref);
  522. GL_API void GL_APIENTRY glClearColorxOES (GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha);
  523. GL_API void GL_APIENTRY glClearDepthxOES (GLclampx depth);
  524. GL_API void GL_APIENTRY glClipPlanexOES (GLenum plane, const GLfixed *equation);
  525. GL_API void GL_APIENTRY glColor4xOES (GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha);
  526. GL_API void GL_APIENTRY glDepthRangexOES (GLclampx zNear, GLclampx zFar);
  527. GL_API void GL_APIENTRY glFogxOES (GLenum pname, GLfixed param);
  528. GL_API void GL_APIENTRY glFogxvOES (GLenum pname, const GLfixed *params);
  529. GL_API void GL_APIENTRY glFrustumxOES (GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar);
  530. GL_API void GL_APIENTRY glGetClipPlanexOES (GLenum pname, GLfixed eqn[4]);
  531. GL_API void GL_APIENTRY glGetFixedvOES (GLenum pname, GLfixed *params);
  532. GL_API void GL_APIENTRY glGetLightxvOES (GLenum light, GLenum pname, GLfixed *params);
  533. GL_API void GL_APIENTRY glGetMaterialxvOES (GLenum face, GLenum pname, GLfixed *params);
  534. GL_API void GL_APIENTRY glGetTexEnvxvOES (GLenum env, GLenum pname, GLfixed *params);
  535. GL_API void GL_APIENTRY glGetTexParameterxvOES (GLenum target, GLenum pname, GLfixed *params);
  536. GL_API void GL_APIENTRY glLightModelxOES (GLenum pname, GLfixed param);
  537. GL_API void GL_APIENTRY glLightModelxvOES (GLenum pname, const GLfixed *params);
  538. GL_API void GL_APIENTRY glLightxOES (GLenum light, GLenum pname, GLfixed param);
  539. GL_API void GL_APIENTRY glLightxvOES (GLenum light, GLenum pname, const GLfixed *params);
  540. GL_API void GL_APIENTRY glLineWidthxOES (GLfixed width);
  541. GL_API void GL_APIENTRY glLoadMatrixxOES (const GLfixed *m);
  542. GL_API void GL_APIENTRY glMaterialxOES (GLenum face, GLenum pname, GLfixed param);
  543. GL_API void GL_APIENTRY glMaterialxvOES (GLenum face, GLenum pname, const GLfixed *params);
  544. GL_API void GL_APIENTRY glMultMatrixxOES (const GLfixed *m);
  545. GL_API void GL_APIENTRY glMultiTexCoord4xOES (GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q);
  546. GL_API void GL_APIENTRY glNormal3xOES (GLfixed nx, GLfixed ny, GLfixed nz);
  547. GL_API void GL_APIENTRY glOrthoxOES (GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar);
  548. GL_API void GL_APIENTRY glPointParameterxOES (GLenum pname, GLfixed param);
  549. GL_API void GL_APIENTRY glPointParameterxvOES (GLenum pname, const GLfixed *params);
  550. GL_API void GL_APIENTRY glPointSizexOES (GLfixed size);
  551. GL_API void GL_APIENTRY glPolygonOffsetxOES (GLfixed factor, GLfixed units);
  552. GL_API void GL_APIENTRY glRotatexOES (GLfixed angle, GLfixed x, GLfixed y, GLfixed z);
  553. GL_API void GL_APIENTRY glSampleCoveragexOES (GLclampx value, GLboolean invert);
  554. GL_API void GL_APIENTRY glScalexOES (GLfixed x, GLfixed y, GLfixed z);
  555. GL_API void GL_APIENTRY glTexEnvxOES (GLenum target, GLenum pname, GLfixed param);
  556. GL_API void GL_APIENTRY glTexEnvxvOES (GLenum target, GLenum pname, const GLfixed *params);
  557. GL_API void GL_APIENTRY glTexParameterxOES (GLenum target, GLenum pname, GLfixed param);
  558. GL_API void GL_APIENTRY glTexParameterxvOES (GLenum target, GLenum pname, const GLfixed *params);
  559. GL_API void GL_APIENTRY glTranslatexOES (GLfixed x, GLfixed y, GLfixed z);
  560. #endif
  561. typedef void (GL_APIENTRYP PFNGLALPHAFUNCXOESPROC) (GLenum func, GLclampx ref);
  562. typedef void (GL_APIENTRYP PFNGLCLEARCOLORXOESPROC) (GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha);
  563. typedef void (GL_APIENTRYP PFNGLCLEARDEPTHXOESPROC) (GLclampx depth);
  564. typedef void (GL_APIENTRYP PFNGLCLIPPLANEXOESPROC) (GLenum plane, const GLfixed *equation);
  565. typedef void (GL_APIENTRYP PFNGLCOLOR4XOESPROC) (GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha);
  566. typedef void (GL_APIENTRYP PFNGLDEPTHRANGEXOESPROC) (GLclampx zNear, GLclampx zFar);
  567. typedef void (GL_APIENTRYP PFNGLFOGXOESPROC) (GLenum pname, GLfixed param);
  568. typedef void (GL_APIENTRYP PFNGLFOGXVOESPROC) (GLenum pname, const GLfixed *params);
  569. typedef void (GL_APIENTRYP PFNGLFRUSTUMXOESPROC) (GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar);
  570. typedef void (GL_APIENTRYP PFNGLGETCLIPPLANEXOESPROC) (GLenum pname, GLfixed eqn[4]);
  571. typedef void (GL_APIENTRYP PFNGLGETFIXEDVOESPROC) (GLenum pname, GLfixed *params);
  572. typedef void (GL_APIENTRYP PFNGLGETLIGHTXVOESPROC) (GLenum light, GLenum pname, GLfixed *params);
  573. typedef void (GL_APIENTRYP PFNGLGETMATERIALXVOESPROC) (GLenum face, GLenum pname, GLfixed *params);
  574. typedef void (GL_APIENTRYP PFNGLGETTEXENVXVOESPROC) (GLenum env, GLenum pname, GLfixed *params);
  575. typedef void (GL_APIENTRYP PFNGLGETTEXPARAMETERXVOESPROC) (GLenum target, GLenum pname, GLfixed *params);
  576. typedef void (GL_APIENTRYP PFNGLLIGHTMODELXOESPROC) (GLenum pname, GLfixed param);
  577. typedef void (GL_APIENTRYP PFNGLLIGHTMODELXVOESPROC) (GLenum pname, const GLfixed *params);
  578. typedef void (GL_APIENTRYP PFNGLLIGHTXOESPROC) (GLenum light, GLenum pname, GLfixed param);
  579. typedef void (GL_APIENTRYP PFNGLLIGHTXVOESPROC) (GLenum light, GLenum pname, const GLfixed *params);
  580. typedef void (GL_APIENTRYP PFNGLLINEWIDTHXOESPROC) (GLfixed width);
  581. typedef void (GL_APIENTRYP PFNGLLOADMATRIXXOESPROC) (const GLfixed *m);
  582. typedef void (GL_APIENTRYP PFNGLMATERIALXOESPROC) (GLenum face, GLenum pname, GLfixed param);
  583. typedef void (GL_APIENTRYP PFNGLMATERIALXVOESPROC) (GLenum face, GLenum pname, const GLfixed *params);
  584. typedef void (GL_APIENTRYP PFNGLMULTMATRIXXOESPROC) (const GLfixed *m);
  585. typedef void (GL_APIENTRYP PFNGLMULTITEXCOORD4XOESPROC) (GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q);
  586. typedef void (GL_APIENTRYP PFNGLNORMAL3XOESPROC) (GLfixed nx, GLfixed ny, GLfixed nz);
  587. typedef void (GL_APIENTRYP PFNGLORTHOXOESPROC) (GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar);
  588. typedef void (GL_APIENTRYP PFNGLPOINTPARAMETERXOESPROC) (GLenum pname, GLfixed param);
  589. typedef void (GL_APIENTRYP PFNGLPOINTPARAMETERXVOESPROC) (GLenum pname, const GLfixed *params);
  590. typedef void (GL_APIENTRYP PFNGLPOINTSIZEXOESPROC) (GLfixed size);
  591. typedef void (GL_APIENTRYP PFNGLPOLYGONOFFSETXOESPROC) (GLfixed factor, GLfixed units);
  592. typedef void (GL_APIENTRYP PFNGLROTATEXOESPROC) (GLfixed angle, GLfixed x, GLfixed y, GLfixed z);
  593. typedef void (GL_APIENTRYP PFNGLSAMPLECOVERAGEXOESPROC) (GLclampx value, GLboolean invert);
  594. typedef void (GL_APIENTRYP PFNGLSCALEXOESPROC) (GLfixed x, GLfixed y, GLfixed z);
  595. typedef void (GL_APIENTRYP PFNGLTEXENVXOESPROC) (GLenum target, GLenum pname, GLfixed param);
  596. typedef void (GL_APIENTRYP PFNGLTEXENVXVOESPROC) (GLenum target, GLenum pname, const GLfixed *params);
  597. typedef void (GL_APIENTRYP PFNGLTEXPARAMETERXOESPROC) (GLenum target, GLenum pname, GLfixed param);
  598. typedef void (GL_APIENTRYP PFNGLTEXPARAMETERXVOESPROC) (GLenum target, GLenum pname, const GLfixed *params);
  599. typedef void (GL_APIENTRYP PFNGLTRANSLATEXOESPROC) (GLfixed x, GLfixed y, GLfixed z);
  600. #endif
  601.  
  602. /* GL_OES_framebuffer_object */
  603. #ifndef GL_OES_framebuffer_object
  604. #define GL_OES_framebuffer_object 1
  605. #ifdef GL_GLEXT_PROTOTYPES
  606. GL_API GLboolean GL_APIENTRY glIsRenderbufferOES (GLuint renderbuffer);
  607. GL_API void GL_APIENTRY glBindRenderbufferOES (GLenum target, GLuint renderbuffer);
  608. GL_API void GL_APIENTRY glDeleteRenderbuffersOES (GLsizei n, const GLuint* renderbuffers);
  609. GL_API void GL_APIENTRY glGenRenderbuffersOES (GLsizei n, GLuint* renderbuffers);
  610. GL_API void GL_APIENTRY glRenderbufferStorageOES (GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
  611. GL_API void GL_APIENTRY glGetRenderbufferParameterivOES (GLenum target, GLenum pname, GLint* params);
  612. GL_API GLboolean GL_APIENTRY glIsFramebufferOES (GLuint framebuffer);
  613. GL_API void GL_APIENTRY glBindFramebufferOES (GLenum target, GLuint framebuffer);
  614. GL_API void GL_APIENTRY glDeleteFramebuffersOES (GLsizei n, const GLuint* framebuffers);
  615. GL_API void GL_APIENTRY glGenFramebuffersOES (GLsizei n, GLuint* framebuffers);
  616. GL_API GLenum GL_APIENTRY glCheckFramebufferStatusOES (GLenum target);
  617. GL_API void GL_APIENTRY glFramebufferRenderbufferOES (GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
  618. GL_API void GL_APIENTRY glFramebufferTexture2DOES (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
  619. GL_API void GL_APIENTRY glGetFramebufferAttachmentParameterivOES (GLenum target, GLenum attachment, GLenum pname, GLint* params);
  620. GL_API void GL_APIENTRY glGenerateMipmapOES (GLenum target);
  621. #endif
  622. typedef GLboolean (GL_APIENTRYP PFNGLISRENDERBUFFEROESPROC) (GLuint renderbuffer);
  623. typedef void (GL_APIENTRYP PFNGLBINDRENDERBUFFEROESPROC) (GLenum target, GLuint renderbuffer);
  624. typedef void (GL_APIENTRYP PFNGLDELETERENDERBUFFERSOESPROC) (GLsizei n, const GLuint* renderbuffers);
  625. typedef void (GL_APIENTRYP PFNGLGENRENDERBUFFERSOESPROC) (GLsizei n, GLuint* renderbuffers);
  626. typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEOESPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
  627. typedef void (GL_APIENTRYP PFNGLGETRENDERBUFFERPARAMETERIVOESPROC) (GLenum target, GLenum pname, GLint* params);
  628. typedef GLboolean (GL_APIENTRYP PFNGLISFRAMEBUFFEROESPROC) (GLuint framebuffer);
  629. typedef void (GL_APIENTRYP PFNGLBINDFRAMEBUFFEROESPROC) (GLenum target, GLuint framebuffer);
  630. typedef void (GL_APIENTRYP PFNGLDELETEFRAMEBUFFERSOESPROC) (GLsizei n, const GLuint* framebuffers);
  631. typedef void (GL_APIENTRYP PFNGLGENFRAMEBUFFERSOESPROC) (GLsizei n, GLuint* framebuffers);
  632. typedef GLenum (GL_APIENTRYP PFNGLCHECKFRAMEBUFFERSTATUSOESPROC) (GLenum target);
  633. typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERRENDERBUFFEROESPROC) (GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
  634. typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERTEXTURE2DOESPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
  635. typedef void (GL_APIENTRYP PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVOESPROC) (GLenum target, GLenum attachment, GLenum pname, GLint* params);
  636. typedef void (GL_APIENTRYP PFNGLGENERATEMIPMAPOESPROC) (GLenum target);
  637. #endif
  638.  
  639. /* GL_OES_mapbuffer */
  640. #ifndef GL_OES_mapbuffer
  641. #define GL_OES_mapbuffer 1
  642. #ifdef GL_GLEXT_PROTOTYPES
  643. GL_API void* GL_APIENTRY glMapBufferOES (GLenum target, GLenum access);
  644. GL_API GLboolean GL_APIENTRY glUnmapBufferOES (GLenum target);
  645. GL_API void GL_APIENTRY glGetBufferPointervOES (GLenum target, GLenum pname, GLvoid ** params);
  646. #endif
  647. typedef void* (GL_APIENTRYP PFNGLMAPBUFFEROESPROC) (GLenum target, GLenum access);
  648. typedef GLboolean (GL_APIENTRYP PFNGLUNMAPBUFFEROESPROC) (GLenum target);
  649. typedef void (GL_APIENTRYP PFNGLGETBUFFERPOINTERVOESPROC) (GLenum target, GLenum pname, GLvoid ** params);
  650. #endif
  651.  
  652. /* GL_OES_matrix_get */
  653. #ifndef GL_OES_matrix_get
  654. #define GL_OES_matrix_get 1
  655. #endif
  656.  
  657. /* GL_OES_matrix_palette */
  658. #ifndef GL_OES_matrix_palette
  659. #define GL_OES_matrix_palette 1
  660. #ifdef GL_GLEXT_PROTOTYPES
  661. GL_API void GL_APIENTRY glCurrentPaletteMatrixOES (GLuint matrixpaletteindex);
  662. GL_API void GL_APIENTRY glLoadPaletteFromModelViewMatrixOES (void);
  663. GL_API void GL_APIENTRY glMatrixIndexPointerOES (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
  664. GL_API void GL_APIENTRY glWeightPointerOES (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
  665. #endif
  666. typedef void (GL_APIENTRYP PFNGLCURRENTPALETTEMATRIXOESPROC) (GLuint matrixpaletteindex);
  667. typedef void (GL_APIENTRYP PFNGLLOADPALETTEFROMMODELVIEWMATRIXOESPROC) (void);
  668. typedef void (GL_APIENTRYP PFNGLMATRIXINDEXPOINTEROESPROC) (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
  669. typedef void (GL_APIENTRYP PFNGLWEIGHTPOINTEROESPROC) (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
  670. #endif
  671.  
  672. /* GL_OES_packed_depth_stencil */
  673. #ifndef GL_OES_packed_depth_stencil
  674. #define GL_OES_packed_depth_stencil 1
  675. #endif
  676.  
  677. /* GL_OES_query_matrix */
  678. #ifndef GL_OES_query_matrix
  679. #define GL_OES_query_matrix 1
  680. #ifdef GL_GLEXT_PROTOTYPES
  681. GL_API GLbitfield GL_APIENTRY glQueryMatrixxOES (GLfixed mantissa[16], GLint exponent[16]);
  682. #endif
  683. typedef GLbitfield (GL_APIENTRYP PFNGLQUERYMATRIXXOESPROC) (GLfixed mantissa[16], GLint exponent[16]);
  684. #endif
  685.  
  686. /* GL_OES_rgb8_rgba8 */
  687. #ifndef GL_OES_rgb8_rgba8
  688. #define GL_OES_rgb8_rgba8 1
  689. #endif
  690.  
  691. /* GL_OES_single_precision */
  692. #ifndef GL_OES_single_precision
  693. #define GL_OES_single_precision 1
  694. #ifdef GL_GLEXT_PROTOTYPES
  695. GL_API void GL_APIENTRY glDepthRangefOES (GLclampf zNear, GLclampf zFar);
  696. GL_API void GL_APIENTRY glFrustumfOES (GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar);
  697. GL_API void GL_APIENTRY glOrthofOES (GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar);
  698. GL_API void GL_APIENTRY glClipPlanefOES (GLenum plane, const GLfloat *equation);
  699. GL_API void GL_APIENTRY glGetClipPlanefOES (GLenum pname, GLfloat eqn[4]);
  700. GL_API void GL_APIENTRY glClearDepthfOES (GLclampf depth);
  701. #endif
  702. typedef void (GL_APIENTRYP PFNGLDEPTHRANGEFOESPROC) (GLclampf zNear, GLclampf zFar);
  703. typedef void (GL_APIENTRYP PFNGLFRUSTUMFOESPROC) (GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar);
  704. typedef void (GL_APIENTRYP PFNGLORTHOFOESPROC) (GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar);
  705. typedef void (GL_APIENTRYP PFNGLCLIPPLANEFOESPROC) (GLenum plane, const GLfloat *equation);
  706. typedef void (GL_APIENTRYP PFNGLGETCLIPPLANEFOESPROC) (GLenum pname, GLfloat eqn[4]);
  707. typedef void (GL_APIENTRYP PFNGLCLEARDEPTHFOESPROC) (GLclampf depth);
  708. #endif
  709.  
  710. /* GL_OES_stencil1 */
  711. #ifndef GL_OES_stencil1
  712. #define GL_OES_stencil1 1
  713. #endif
  714.  
  715. /* GL_OES_stencil4 */
  716. #ifndef GL_OES_stencil4
  717. #define GL_OES_stencil4 1
  718. #endif
  719.  
  720. /* GL_OES_stencil8 */
  721. #ifndef GL_OES_stencil8
  722. #define GL_OES_stencil8 1
  723. #endif
  724.  
  725. /* GL_OES_stencil_wrap */
  726. #ifndef GL_OES_stencil_wrap
  727. #define GL_OES_stencil_wrap 1
  728. #endif
  729.  
  730. /* GL_OES_texture_cube_map */
  731. #ifndef GL_OES_texture_cube_map
  732. #define GL_OES_texture_cube_map 1
  733. #ifdef GL_GLEXT_PROTOTYPES
  734. GL_API void GL_APIENTRY glTexGenfOES (GLenum coord, GLenum pname, GLfloat param);
  735. GL_API void GL_APIENTRY glTexGenfvOES (GLenum coord, GLenum pname, const GLfloat *params);
  736. GL_API void GL_APIENTRY glTexGeniOES (GLenum coord, GLenum pname, GLint param);
  737. GL_API void GL_APIENTRY glTexGenivOES (GLenum coord, GLenum pname, const GLint *params);
  738. GL_API void GL_APIENTRY glTexGenxOES (GLenum coord, GLenum pname, GLfixed param);
  739. GL_API void GL_APIENTRY glTexGenxvOES (GLenum coord, GLenum pname, const GLfixed *params);
  740. GL_API void GL_APIENTRY glGetTexGenfvOES (GLenum coord, GLenum pname, GLfloat *params);
  741. GL_API void GL_APIENTRY glGetTexGenivOES (GLenum coord, GLenum pname, GLint *params);
  742. GL_API void GL_APIENTRY glGetTexGenxvOES (GLenum coord, GLenum pname, GLfixed *params);
  743. #endif
  744. typedef void (GL_APIENTRYP PFNGLTEXGENFOESPROC) (GLenum coord, GLenum pname, GLfloat param);
  745. typedef void (GL_APIENTRYP PFNGLTEXGENFVOESPROC) (GLenum coord, GLenum pname, const GLfloat *params);
  746. typedef void (GL_APIENTRYP PFNGLTEXGENIOESPROC) (GLenum coord, GLenum pname, GLint param);
  747. typedef void (GL_APIENTRYP PFNGLTEXGENIVOESPROC) (GLenum coord, GLenum pname, const GLint *params);
  748. typedef void (GL_APIENTRYP PFNGLTEXGENXOESPROC) (GLenum coord, GLenum pname, GLfixed param);
  749. typedef void (GL_APIENTRYP PFNGLTEXGENXVOESPROC) (GLenum coord, GLenum pname, const GLfixed *params);
  750. typedef void (GL_APIENTRYP PFNGLGETTEXGENFVOESPROC) (GLenum coord, GLenum pname, GLfloat *params);
  751. typedef void (GL_APIENTRYP PFNGLGETTEXGENIVOESPROC) (GLenum coord, GLenum pname, GLint *params);
  752. typedef void (GL_APIENTRYP PFNGLGETTEXGENXVOESPROC) (GLenum coord, GLenum pname, GLfixed *params);
  753. #endif
  754.  
  755. /* GL_OES_texture_env_crossbar */
  756. #ifndef GL_OES_texture_env_crossbar
  757. #define GL_OES_texture_env_crossbar 1
  758. #endif
  759.  
  760. /* GL_OES_texture_mirrored_repeat */
  761. #ifndef GL_OES_texture_mirrored_repeat
  762. #define GL_OES_texture_mirrored_repeat 1
  763. #endif
  764.  
  765. /* GL_OES_vertex_array_object */
  766. #ifndef GL_OES_vertex_array_object
  767. #define GL_OES_vertex_array_object 1
  768. #ifdef GL_GLEXT_PROTOTYPES
  769. GL_API void GL_APIENTRY glBindVertexArrayOES (GLuint array);
  770. GL_API void GL_APIENTRY glDeleteVertexArraysOES (GLsizei n, const GLuint *arrays);
  771. GL_API void GL_APIENTRY glGenVertexArraysOES (GLsizei n, GLuint *arrays);
  772. GL_API GLboolean GL_APIENTRY glIsVertexArrayOES (GLuint array);
  773. #endif
  774. typedef void (GL_APIENTRYP PFNGLBINDVERTEXARRAYOESPROC) (GLuint array);
  775. typedef void (GL_APIENTRYP PFNGLDELETEVERTEXARRAYSOESPROC) (GLsizei n, const GLuint *arrays);
  776. typedef void (GL_APIENTRYP PFNGLGENVERTEXARRAYSOESPROC) (GLsizei n, GLuint *arrays);
  777. typedef GLboolean (GL_APIENTRYP PFNGLISVERTEXARRAYOESPROC) (GLuint array);
  778. #endif
  779.  
  780. /*------------------------------------------------------------------------*
  781.  * AMD extension functions
  782.  *------------------------------------------------------------------------*/
  783.  
  784. /* GL_AMD_compressed_3DC_texture */
  785. #ifndef GL_AMD_compressed_3DC_texture
  786. #define GL_AMD_compressed_3DC_texture 1
  787. #endif
  788.  
  789. /* GL_AMD_compressed_ATC_texture */
  790. #ifndef GL_AMD_compressed_ATC_texture
  791. #define GL_AMD_compressed_ATC_texture 1
  792. #endif
  793.  
  794. /*------------------------------------------------------------------------*
  795.  * APPLE extension functions
  796.  *------------------------------------------------------------------------*/
  797.  
  798. /* GL_APPLE_texture_2D_limited_npot */
  799. #ifndef GL_APPLE_texture_2D_limited_npot
  800. #define GL_APPLE_texture_2D_limited_npot 1
  801. #endif
  802.  
  803. /*------------------------------------------------------------------------*
  804.  * EXT extension functions
  805.  *------------------------------------------------------------------------*/
  806.  
  807. /* GL_EXT_blend_minmax */
  808. #ifndef GL_EXT_blend_minmax
  809. #define GL_EXT_blend_minmax 1
  810. #endif
  811.  
  812. /* GL_EXT_discard_framebuffer */
  813. #ifndef GL_EXT_discard_framebuffer
  814. #define GL_EXT_discard_framebuffer 1
  815. #ifdef GL_GLEXT_PROTOTYPES
  816. GL_API void GL_APIENTRY glDiscardFramebufferEXT (GLenum target, GLsizei numAttachments, const GLenum *attachments);
  817. #endif
  818. typedef void (GL_APIENTRYP PFNGLDISCARDFRAMEBUFFEREXTPROC) (GLenum target, GLsizei numAttachments, const GLenum *attachments);
  819. #endif
  820.  
  821. /* GL_EXT_multi_draw_arrays */
  822. #ifndef GL_EXT_multi_draw_arrays
  823. #define GL_EXT_multi_draw_arrays 1
  824. #ifdef GL_GLEXT_PROTOTYPES
  825. GL_API void GL_APIENTRY glMultiDrawArraysEXT (GLenum, GLint *, GLsizei *, GLsizei);
  826. GL_API void GL_APIENTRY glMultiDrawElementsEXT (GLenum, const GLsizei *, GLenum, const GLvoid* *, GLsizei);
  827. #endif /* GL_GLEXT_PROTOTYPES */
  828. typedef void (GL_APIENTRYP PFNGLMULTIDRAWARRAYSEXTPROC) (GLenum mode, GLint *first, GLsizei *count, GLsizei primcount);
  829. typedef void (GL_APIENTRYP PFNGLMULTIDRAWELEMENTSEXTPROC) (GLenum mode, const GLsizei *count, GLenum type, const GLvoid* *indices, GLsizei primcount);
  830. #endif
  831.  
  832. /* GL_EXT_read_format_bgra */
  833. #ifndef GL_EXT_read_format_bgra
  834. #define GL_EXT_read_format_bgra 1
  835. #endif
  836.  
  837. /* GL_EXT_texture_filter_anisotropic */
  838. #ifndef GL_EXT_texture_filter_anisotropic
  839. #define GL_EXT_texture_filter_anisotropic 1
  840. #endif
  841.  
  842. /* GL_EXT_texture_format_BGRA8888 */
  843. #ifndef GL_EXT_texture_format_BGRA8888
  844. #define GL_EXT_texture_format_BGRA8888 1
  845. #endif
  846.  
  847. /* GL_EXT_texture_lod_bias */
  848. #ifndef GL_EXT_texture_lod_bias
  849. #define GL_EXT_texture_lod_bias 1
  850. #endif
  851.  
  852. /*------------------------------------------------------------------------*
  853.  * IMG extension functions
  854.  *------------------------------------------------------------------------*/
  855.  
  856. /* GL_IMG_read_format */
  857. #ifndef GL_IMG_read_format
  858. #define GL_IMG_read_format 1
  859. #endif
  860.  
  861. /* GL_IMG_texture_compression_pvrtc */
  862. #ifndef GL_IMG_texture_compression_pvrtc
  863. #define GL_IMG_texture_compression_pvrtc 1
  864. #endif
  865.  
  866. /* GL_IMG_texture_env_enhanced_fixed_function */
  867. #ifndef GL_IMG_texture_env_enhanced_fixed_function
  868. #define GL_IMG_texture_env_enhanced_fixed_function 1
  869. #endif
  870.  
  871. /* GL_IMG_user_clip_plane */
  872. #ifndef GL_IMG_user_clip_plane
  873. #define GL_IMG_user_clip_plane 1
  874. #ifdef GL_GLEXT_PROTOTYPES
  875. GL_API void GL_APIENTRY glClipPlanefIMG (GLenum, const GLfloat *);
  876. GL_API void GL_APIENTRY glClipPlanexIMG (GLenum, const GLfixed *);
  877. #endif
  878. typedef void (GL_APIENTRYP PFNGLCLIPPLANEFIMGPROC) (GLenum p, const GLfloat *eqn);
  879. typedef void (GL_APIENTRYP PFNGLCLIPPLANEXIMGPROC) (GLenum p, const GLfixed *eqn);
  880. #endif
  881.  
  882. /* GL_IMG_multisampled_render_to_texture */
  883. #ifndef GL_IMG_multisampled_render_to_texture
  884. #define GL_IMG_multisampled_render_to_texture 1
  885. #ifdef GL_GLEXT_PROTOTYPES
  886. GL_API void GL_APIENTRY glRenderbufferStorageMultisampleIMG (GLenum, GLsizei, GLenum, GLsizei, GLsizei);
  887. GL_API void GL_APIENTRY glFramebufferTexture2DMultisampleIMG (GLenum, GLenum, GLenum, GLuint, GLint, GLsizei);
  888. #endif
  889. typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEIMG) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
  890. typedef void (GL_APIENTRYP PFNGLCLIPPLANEXIMG) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLsizei samples);
  891. #endif
  892.  
  893. /*------------------------------------------------------------------------*
  894.  * NV extension functions
  895.  *------------------------------------------------------------------------*/
  896.  
  897. /* NV_fence */
  898. #ifndef GL_NV_fence
  899. #define GL_NV_fence 1
  900. #ifdef GL_GLEXT_PROTOTYPES
  901. GL_API void GL_APIENTRY glDeleteFencesNV (GLsizei, const GLuint *);
  902. GL_API void GL_APIENTRY glGenFencesNV (GLsizei, GLuint *);
  903. GL_API GLboolean GL_APIENTRY glIsFenceNV (GLuint);
  904. GL_API GLboolean GL_APIENTRY glTestFenceNV (GLuint);
  905. GL_API void GL_APIENTRY glGetFenceivNV (GLuint, GLenum, GLint *);
  906. GL_API void GL_APIENTRY glFinishFenceNV (GLuint);
  907. GL_API void GL_APIENTRY glSetFenceNV (GLuint, GLenum);
  908. #endif
  909. typedef void (GL_APIENTRYP PFNGLDELETEFENCESNVPROC) (GLsizei n, const GLuint *fences);
  910. typedef void (GL_APIENTRYP PFNGLGENFENCESNVPROC) (GLsizei n, GLuint *fences);
  911. typedef GLboolean (GL_APIENTRYP PFNGLISFENCENVPROC) (GLuint fence);
  912. typedef GLboolean (GL_APIENTRYP PFNGLTESTFENCENVPROC) (GLuint fence);
  913. typedef void (GL_APIENTRYP PFNGLGETFENCEIVNVPROC) (GLuint fence, GLenum pname, GLint *params);
  914. typedef void (GL_APIENTRYP PFNGLFINISHFENCENVPROC) (GLuint fence);
  915. typedef void (GL_APIENTRYP PFNGLSETFENCENVPROC) (GLuint fence, GLenum condition);
  916. #endif
  917.  
  918. /*------------------------------------------------------------------------*
  919.  * QCOM extension functions
  920.  *------------------------------------------------------------------------*/
  921.  
  922. /* GL_QCOM_driver_control */
  923. #ifndef GL_QCOM_driver_control
  924. #define GL_QCOM_driver_control 1
  925. #ifdef GL_GLEXT_PROTOTYPES
  926. GL_API void GL_APIENTRY glGetDriverControlsQCOM (GLint *num, GLsizei size, GLuint *driverControls);
  927. GL_API void GL_APIENTRY glGetDriverControlStringQCOM (GLuint driverControl, GLsizei bufSize, GLsizei *length, GLchar *driverControlString);
  928. GL_API void GL_APIENTRY glEnableDriverControlQCOM (GLuint driverControl);
  929. GL_API void GL_APIENTRY glDisableDriverControlQCOM (GLuint driverControl);
  930. #endif
  931. typedef void (GL_APIENTRYP PFNGLGETDRIVERCONTROLSQCOMPROC) (GLint *num, GLsizei size, GLuint *driverControls);
  932. typedef void (GL_APIENTRYP PFNGLGETDRIVERCONTROLSTRINGQCOMPROC) (GLuint driverControl, GLsizei bufSize, GLsizei *length, GLchar *driverControlString);
  933. typedef void (GL_APIENTRYP PFNGLENABLEDRIVERCONTROLQCOMPROC) (GLuint driverControl);
  934. typedef void (GL_APIENTRYP PFNGLDISABLEDRIVERCONTROLQCOMPROC) (GLuint driverControl);
  935. #endif
  936.  
  937. /* GL_QCOM_extended_get */
  938. #ifndef GL_QCOM_extended_get
  939. #define GL_QCOM_extended_get 1
  940. #ifdef GL_GLEXT_PROTOTYPES
  941. GL_API void GL_APIENTRY glExtGetTexturesQCOM (GLuint *textures, GLint maxTextures, GLint *numTextures);
  942. GL_API void GL_APIENTRY glExtGetBuffersQCOM (GLuint *buffers, GLint maxBuffers, GLint *numBuffers);
  943. GL_API void GL_APIENTRY glExtGetRenderbuffersQCOM (GLuint *renderbuffers, GLint maxRenderbuffers, GLint *numRenderbuffers);
  944. GL_API void GL_APIENTRY glExtGetFramebuffersQCOM (GLuint *framebuffers, GLint maxFramebuffers, GLint *numFramebuffers);
  945. GL_API void GL_APIENTRY glExtGetTexLevelParameterivQCOM (GLuint texture, GLenum face, GLint level, GLenum pname, GLint *params);
  946. GL_API void GL_APIENTRY glExtTexObjectStateOverrideiQCOM (GLenum target, GLenum pname, GLint param);
  947. GL_API void GL_APIENTRY glExtGetTexSubImageQCOM (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLvoid *texels);
  948. GL_API void GL_APIENTRY glExtGetBufferPointervQCOM (GLenum target, GLvoid **params);
  949. #endif
  950. typedef void (GL_APIENTRYP PFNGLEXTGETTEXTURESQCOMPROC) (GLuint *textures, GLint maxTextures, GLint *numTextures);
  951. typedef void (GL_APIENTRYP PFNGLEXTGETBUFFERSQCOMPROC) (GLuint *buffers, GLint maxBuffers, GLint *numBuffers);
  952. typedef void (GL_APIENTRYP PFNGLEXTGETRENDERBUFFERSQCOMPROC) (GLuint *renderbuffers, GLint maxRenderbuffers, GLint *numRenderbuffers);
  953. typedef void (GL_APIENTRYP PFNGLEXTGETFRAMEBUFFERSQCOMPROC) (GLuint *framebuffers, GLint maxFramebuffers, GLint *numFramebuffers);
  954. typedef void (GL_APIENTRYP PFNGLEXTGETTEXLEVELPARAMETERIVQCOMPROC) (GLuint texture, GLenum face, GLint level, GLenum pname, GLint *params);
  955. typedef void (GL_APIENTRYP PFNGLEXTTEXOBJECTSTATEOVERRIDEIQCOMPROC) (GLenum target, GLenum pname, GLint param);
  956. typedef void (GL_APIENTRYP PFNGLEXTGETTEXSUBIMAGEQCOMPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLvoid *texels);
  957. typedef void (GL_APIENTRYP PFNGLEXTGETBUFFERPOINTERVQCOMPROC) (GLenum target, GLvoid **params);
  958. #endif
  959.  
  960. /* GL_QCOM_extended_get2 */
  961. #ifndef GL_QCOM_extended_get2
  962. #define GL_QCOM_extended_get2 1
  963. #ifdef GL_GLEXT_PROTOTYPES
  964. GL_API void GL_APIENTRY glExtGetShadersQCOM (GLuint *shaders, GLint maxShaders, GLint *numShaders);
  965. GL_API void GL_APIENTRY glExtGetProgramsQCOM (GLuint *programs, GLint maxPrograms, GLint *numPrograms);
  966. GL_API GLboolean GL_APIENTRY glExtIsProgramBinaryQCOM (GLuint program);
  967. GL_API void GL_APIENTRY glExtGetProgramBinarySourceQCOM (GLuint program, GLenum shadertype, GLchar *source, GLint *length);
  968. #endif
  969. typedef void (GL_APIENTRYP PFNGLEXTGETSHADERSQCOMPROC) (GLuint *shaders, GLint maxShaders, GLint *numShaders);
  970. typedef void (GL_APIENTRYP PFNGLEXTGETPROGRAMSQCOMPROC) (GLuint *programs, GLint maxPrograms, GLint *numPrograms);
  971. typedef GLboolean (GL_APIENTRYP PFNGLEXTISPROGRAMBINARYQCOMPROC) (GLuint program);
  972. typedef void (GL_APIENTRYP PFNGLEXTGETPROGRAMBINARYSOURCEQCOMPROC) (GLuint program, GLenum shadertype, GLchar *source, GLint *length);
  973. #endif
  974.  
  975. /* GL_QCOM_perfmon_global_mode */
  976. #ifndef GL_QCOM_perfmon_global_mode
  977. #define GL_QCOM_perfmon_global_mode 1
  978. #endif
  979.  
  980. /* GL_QCOM_writeonly_rendering */
  981. #ifndef GL_QCOM_writeonly_rendering
  982. #define GL_QCOM_writeonly_rendering 1
  983. #endif
  984.  
  985. /* GL_QCOM_tiled_rendering */
  986. #ifndef GL_QCOM_tiled_rendering
  987. #define GL_QCOM_tiled_rendering 1
  988. #ifdef GL_GLEXT_PROTOTYPES
  989. GL_API void GL_APIENTRY glStartTilingQCOM (GLuint x, GLuint y, GLuint width, GLuint height, GLbitfield preserveMask);
  990. GL_API void GL_APIENTRY glEndTilingQCOM (GLbitfield preserveMask);
  991. #endif
  992. typedef void (GL_APIENTRYP PFNGLSTARTTILINGQCOMPROC) (GLuint x, GLuint y, GLuint width, GLuint height, GLbitfield preserveMask);
  993. typedef void (GL_APIENTRYP PFNGLENDTILINGQCOMPROC) (GLbitfield preserveMask);
  994. #endif
  995.  
  996. #ifdef __cplusplus
  997. }
  998. #endif
  999.  
  1000. #endif /* __glext_h_ */
  1001.  
  1002.