OSDN Git Service

Check in released NDK version r4.
[android-x86/prebuilt.git] / ndk / android-ndk-r4 / darwin / platforms / android-8 / arch-x86 / usr / include / GLES2 / gl2ext.h
1 #ifndef __gl2ext_h_
2 #define __gl2ext_h_
3
4 /* $Revision: 8271 $ on $Date:: 2009-05-21 09:33:40 -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_compressed_ETC1_RGB8_texture */
24 #ifndef GL_OES_compressed_ETC1_RGB8_texture
25 #define GL_ETC1_RGB8_OES                                        0x8D64
26 #endif
27
28 /* GL_OES_compressed_paletted_texture */
29 #ifndef GL_OES_compressed_paletted_texture
30 #define GL_PALETTE4_RGB8_OES                                    0x8B90
31 #define GL_PALETTE4_RGBA8_OES                                   0x8B91
32 #define GL_PALETTE4_R5_G6_B5_OES                                0x8B92
33 #define GL_PALETTE4_RGBA4_OES                                   0x8B93
34 #define GL_PALETTE4_RGB5_A1_OES                                 0x8B94
35 #define GL_PALETTE8_RGB8_OES                                    0x8B95
36 #define GL_PALETTE8_RGBA8_OES                                   0x8B96
37 #define GL_PALETTE8_R5_G6_B5_OES                                0x8B97
38 #define GL_PALETTE8_RGBA4_OES                                   0x8B98
39 #define GL_PALETTE8_RGB5_A1_OES                                 0x8B99
40 #endif
41
42 /* GL_OES_depth24 */
43 #ifndef GL_OES_depth24
44 #define GL_DEPTH_COMPONENT24_OES                                0x81A6
45 #endif
46
47 /* GL_OES_depth32 */
48 #ifndef GL_OES_depth32
49 #define GL_DEPTH_COMPONENT32_OES                                0x81A7
50 #endif
51
52 /* GL_OES_depth_texture */
53 /* No new tokens introduced by this extension. */
54
55 /* GL_OES_EGL_image */
56 #ifndef GL_OES_EGL_image
57 typedef void* GLeglImageOES;
58 #endif
59
60 /* GL_OES_get_program_binary */
61 #ifndef GL_OES_get_program_binary
62 #define GL_PROGRAM_BINARY_LENGTH_OES                            0x8741
63 #define GL_NUM_PROGRAM_BINARY_FORMATS_OES                       0x87FE
64 #define GL_PROGRAM_BINARY_FORMATS_OES                           0x87FF
65 #endif
66
67 /* GL_OES_mapbuffer */
68 #ifndef GL_OES_mapbuffer
69 #define GL_WRITE_ONLY_OES                                       0x88B9
70 #define GL_BUFFER_ACCESS_OES                                    0x88BB
71 #define GL_BUFFER_MAPPED_OES                                    0x88BC
72 #define GL_BUFFER_MAP_POINTER_OES                               0x88BD
73 #endif
74
75 /* GL_OES_packed_depth_stencil */
76 #ifndef GL_OES_packed_depth_stencil
77 #define GL_DEPTH_STENCIL_OES                                    0x84F9
78 #define GL_UNSIGNED_INT_24_8_OES                                0x84FA
79 #define GL_DEPTH24_STENCIL8_OES                                 0x88F0
80 #endif
81
82 /* GL_OES_rgb8_rgba8 */
83 #ifndef GL_OES_rgb8_rgba8
84 #define GL_RGB8_OES                                             0x8051
85 #define GL_RGBA8_OES                                            0x8058
86 #endif
87
88 /* GL_OES_standard_derivatives */
89 #ifndef GL_OES_standard_derivatives
90 #define GL_FRAGMENT_SHADER_DERIVATIVE_HINT_OES                  0x8B8B
91 #endif
92
93 /* GL_OES_stencil1 */
94 #ifndef GL_OES_stencil1
95 #define GL_STENCIL_INDEX1_OES                                   0x8D46
96 #endif
97
98 /* GL_OES_stencil4 */
99 #ifndef GL_OES_stencil4
100 #define GL_STENCIL_INDEX4_OES                                   0x8D47
101 #endif
102
103 /* GL_OES_texture3D */
104 #ifndef GL_OES_texture3D
105 #define GL_TEXTURE_WRAP_R_OES                                   0x8072
106 #define GL_TEXTURE_3D_OES                                       0x806F
107 #define GL_TEXTURE_BINDING_3D_OES                               0x806A
108 #define GL_MAX_3D_TEXTURE_SIZE_OES                              0x8073
109 #define GL_SAMPLER_3D_OES                                       0x8B5F
110 #define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_OES        0x8CD4
111 #endif
112
113 /* GL_OES_texture_half_float */
114 #ifndef GL_OES_texture_half_float
115 #define GL_HALF_FLOAT_OES                                       0x8D61
116 #endif
117
118 /* GL_OES_vertex_half_float */
119 /* GL_HALF_FLOAT_OES defined in GL_OES_texture_half_float already. */
120
121 /* GL_OES_vertex_type_10_10_10_2 */
122 #ifndef GL_OES_vertex_type_10_10_10_2
123 #define GL_UNSIGNED_INT_10_10_10_2_OES                          0x8DF6
124 #define GL_INT_10_10_10_2_OES                                   0x8DF7
125 #endif
126
127 /*------------------------------------------------------------------------*
128  * AMD extension tokens
129  *------------------------------------------------------------------------*/
130
131 /* GL_AMD_compressed_3DC_texture */
132 #ifndef GL_AMD_compressed_3DC_texture
133 #define GL_3DC_X_AMD                                            0x87F9
134 #define GL_3DC_XY_AMD                                           0x87FA
135 #endif
136
137 /* GL_AMD_compressed_ATC_texture */
138 #ifndef GL_AMD_compressed_ATC_texture
139 #define GL_ATC_RGB_AMD                                          0x8C92
140 #define GL_ATC_RGBA_EXPLICIT_ALPHA_AMD                          0x8C93
141 #define GL_ATC_RGBA_INTERPOLATED_ALPHA_AMD                      0x87EE
142 #endif
143
144 /* GL_AMD_program_binary_Z400 */
145 #ifndef GL_AMD_program_binary_Z400
146 #define GL_Z400_BINARY_AMD                                      0x8740
147 #endif
148
149 /* GL_AMD_performance_monitor */
150 #ifndef GL_AMD_performance_monitor
151 #define GL_COUNTER_TYPE_AMD                                     0x8BC0
152 #define GL_COUNTER_RANGE_AMD                                    0x8BC1
153 #define GL_UNSIGNED_INT64_AMD                                   0x8BC2
154 #define GL_PERCENTAGE_AMD                                       0x8BC3
155 #define GL_PERFMON_RESULT_AVAILABLE_AMD                         0x8BC4
156 #define GL_PERFMON_RESULT_SIZE_AMD                              0x8BC5
157 #define GL_PERFMON_RESULT_AMD                                   0x8BC6
158 #endif
159
160 /*------------------------------------------------------------------------*
161  * EXT extension tokens
162  *------------------------------------------------------------------------*/
163
164 /* GL_EXT_texture_filter_anisotropic */
165 #ifndef GL_EXT_texture_filter_anisotropic
166 #define GL_TEXTURE_MAX_ANISOTROPY_EXT                           0x84FE
167 #define GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT                       0x84FF
168 #endif
169
170 /* GL_EXT_texture_type_2_10_10_10_REV */
171 #ifndef GL_EXT_texture_type_2_10_10_10_REV
172 #define GL_UNSIGNED_INT_2_10_10_10_REV_EXT                      0x8368
173 #endif
174
175 /* GL_EXT_texture_format_BGRA8888 */
176 #ifndef GL_EXT_texture_format_BGRA8888
177 #define GL_BGRA                                                 0x80E1
178 #endif
179
180 /*------------------------------------------------------------------------*
181  * IMG extension tokens
182  *------------------------------------------------------------------------*/
183
184 /* GL_IMG_read_format */
185 #ifndef GL_IMG_read_format
186 #define GL_BGRA                                                 0x80E1
187 #define GL_UNSIGNED_SHORT_4_4_4_4_REV                           0x8365
188 #define GL_UNSIGNED_SHORT_1_5_5_5_REV                           0x8366
189 #endif
190
191 /* GL_IMG_texture_compression_pvrtc */
192 #ifndef GL_IMG_texture_compression_pvrtc
193 #define GL_COMPRESSED_RGB_PVRTC_4BPPV1_IMG                      0x8C00
194 #define GL_COMPRESSED_RGB_PVRTC_2BPPV1_IMG                      0x8C01
195 #define GL_COMPRESSED_RGBA_PVRTC_4BPPV1_IMG                     0x8C02
196 #define GL_COMPRESSED_RGBA_PVRTC_2BPPV1_IMG                     0x8C03
197 #endif
198
199 /*------------------------------------------------------------------------*
200  * NV extension tokens
201  *------------------------------------------------------------------------*/
202
203 /* GL_NV_fence */
204 #ifndef GL_NV_fence
205 #define GL_ALL_COMPLETED_NV                                     0x84F2
206 #define GL_FENCE_STATUS_NV                                      0x84F3
207 #define GL_FENCE_CONDITION_NV                                   0x84F4
208 #endif
209
210 /*------------------------------------------------------------------------*
211  * QCOM extension tokens
212  *------------------------------------------------------------------------*/
213
214 /* GL_QCOM_driver_control */
215 /* No new tokens introduced by this extension. */
216
217 /* GL_QCOM_perfmon_global_mode */
218 #ifndef GL_QCOM_perfmon_global_mode
219 #define GL_PERFMON_GLOBAL_MODE_QCOM                             0x8FA0
220 #endif
221
222 /*------------------------------------------------------------------------*
223  * End of extension tokens, start of corresponding extension functions
224  *------------------------------------------------------------------------*/
225
226 /*------------------------------------------------------------------------*
227  * OES extension functions
228  *------------------------------------------------------------------------*/
229
230 /* GL_OES_compressed_ETC1_RGB8_texture */
231 #ifndef GL_OES_compressed_ETC1_RGB8_texture
232 #define GL_OES_compressed_ETC1_RGB8_texture 1
233 #endif
234
235 /* GL_OES_compressed_paletted_texture */
236 #ifndef GL_OES_compressed_paletted_texture
237 #define GL_OES_compressed_paletted_texture 1
238 #endif
239
240 /* GL_OES_EGL_image */
241 #ifndef GL_OES_EGL_image
242 #define GL_OES_EGL_image 1
243 #ifdef GL_GLEXT_PROTOTYPES
244 GL_APICALL void GL_APIENTRY glEGLImageTargetTexture2DOES (GLenum target, GLeglImageOES image);
245 GL_APICALL void GL_APIENTRY glEGLImageTargetRenderbufferStorageOES (GLenum target, GLeglImageOES image);
246 #endif
247 typedef void (GL_APIENTRYP PFNGLEGLIMAGETARGETTEXTURE2DOESPROC) (GLenum target, GLeglImageOES image);
248 typedef void (GL_APIENTRYP PFNGLEGLIMAGETARGETRENDERBUFFERSTORAGEOESPROC) (GLenum target, GLeglImageOES image);
249 #endif
250
251 /* GL_OES_depth24 */
252 #ifndef GL_OES_depth24
253 #define GL_OES_depth24 1
254 #endif
255
256 /* GL_OES_depth32 */
257 #ifndef GL_OES_depth32
258 #define GL_OES_depth32 1
259 #endif
260
261 /* GL_OES_depth_texture */
262 #ifndef GL_OES_depth_texture
263 #define GL_OES_depth_texture 1
264 #endif
265
266 /* GL_OES_element_index_uint */
267 #ifndef GL_OES_element_index_uint
268 #define GL_OES_element_index_uint 1
269 #endif
270
271 /* GL_OES_fbo_render_mipmap */
272 #ifndef GL_OES_fbo_render_mipmap
273 #define GL_OES_fbo_render_mipmap 1
274 #endif
275
276 /* GL_OES_fragment_precision_high */
277 #ifndef GL_OES_fragment_precision_high
278 #define GL_OES_fragment_precision_high 1
279 #endif
280
281 /* GL_OES_get_program_binary */
282 #ifndef GL_OES_get_program_binary
283 #define GL_OES_get_program_binary 1
284 #ifdef GL_GLEXT_PROTOTYPES
285 GL_APICALL void GL_APIENTRY glGetProgramBinaryOES (GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, void *binary);
286 GL_APICALL void GL_APIENTRY glProgramBinaryOES (GLuint program, GLenum binaryFormat, const void *binary, GLint length);
287 #endif
288 typedef void (GL_APIENTRYP PFNGLGETPROGRAMBINARYOESPROC) (GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, void *binary);
289 typedef void (GL_APIENTRYP PFNGLPROGRAMBINARYOESPROC) (GLuint program, GLenum binaryFormat, const void *binary, GLint length);
290 #endif
291
292 /* GL_OES_mapbuffer */
293 #ifndef GL_OES_mapbuffer
294 #define GL_OES_mapbuffer 1
295 #ifdef GL_GLEXT_PROTOTYPES
296 GL_APICALL void* GL_APIENTRY glMapBufferOES (GLenum target, GLenum access);
297 GL_APICALL GLboolean GL_APIENTRY glUnmapBufferOES (GLenum target);
298 GL_APICALL void GL_APIENTRY glGetBufferPointervOES (GLenum target, GLenum pname, void** params);
299 #endif
300 typedef void* (GL_APIENTRYP PFNGLMAPBUFFEROESPROC) (GLenum target, GLenum access);
301 typedef GLboolean (GL_APIENTRYP PFNGLUNMAPBUFFEROESPROC) (GLenum target);
302 typedef void (GL_APIENTRYP PFNGLGETBUFFERPOINTERVOESPROC) (GLenum target, GLenum pname, void** params);
303 #endif
304
305 /* GL_OES_packed_depth_stencil */
306 #ifndef GL_OES_packed_depth_stencil
307 #define GL_OES_packed_depth_stencil 1
308 #endif
309
310 /* GL_OES_rgb8_rgba8 */
311 #ifndef GL_OES_rgb8_rgba8
312 #define GL_OES_rgb8_rgba8 1
313 #endif
314
315 /* GL_OES_standard_derivatives */
316 #ifndef GL_OES_standard_derivatives
317 #define GL_OES_standard_derivatives 1
318 #endif
319
320 /* GL_OES_stencil1 */
321 #ifndef GL_OES_stencil1
322 #define GL_OES_stencil1 1
323 #endif
324
325 /* GL_OES_stencil4 */
326 #ifndef GL_OES_stencil4
327 #define GL_OES_stencil4 1
328 #endif
329
330 /* GL_OES_texture_3D */
331 #ifndef GL_OES_texture_3D
332 #define GL_OES_texture_3D 1
333 #ifdef GL_GLEXT_PROTOTYPES
334 GL_APICALL void GL_APIENTRY glTexImage3DOES (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const void* pixels);
335 GL_APICALL void GL_APIENTRY glTexSubImage3DOES (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void* pixels);
336 GL_APICALL void GL_APIENTRY glCopyTexSubImage3DOES (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
337 GL_APICALL void GL_APIENTRY glCompressedTexImage3DOES (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const void* data);
338 GL_APICALL void GL_APIENTRY glCompressedTexSubImage3DOES (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void* data);
339 GL_APICALL void GL_APIENTRY glFramebufferTexture3DOES (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
340 #endif
341 typedef void (GL_APIENTRYP PFNGLTEXIMAGE3DOESPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid* pixels);
342 typedef void (GL_APIENTRYP PFNGLTEXSUBIMAGE3DOESPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void* pixels);
343 typedef void (GL_APIENTRYP PFNGLCOPYTEXSUBIMAGE3DOESPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
344 typedef void (GL_APIENTRYP PFNGLCOMPRESSEDTEXIMAGE3DOESPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const void* data);
345 typedef void (GL_APIENTRYP PFNGLCOMPRESSEDTEXSUBIMAGE3DOESPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void* data);
346 typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERTEXTURE3DOES) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
347 #endif
348
349 /* GL_OES_texture_float_linear */
350 #ifndef GL_OES_texture_float_linear
351 #define GL_OES_texture_float_linear 1
352 #endif
353
354 /* GL_OES_texture_half_float_linear */
355 #ifndef GL_OES_texture_half_float_linear
356 #define GL_OES_texture_half_float_linear 1
357 #endif
358
359 /* GL_OES_texture_float */
360 #ifndef GL_OES_texture_float
361 #define GL_OES_texture_float 1
362 #endif
363
364 /* GL_OES_texture_half_float */
365 #ifndef GL_OES_texture_half_float
366 #define GL_OES_texture_half_float 1
367 #endif
368
369 /* GL_OES_texture_npot */
370 #ifndef GL_OES_texture_npot
371 #define GL_OES_texture_npot 1
372 #endif
373
374 /* GL_OES_vertex_half_float */
375 #ifndef GL_OES_vertex_half_float
376 #define GL_OES_vertex_half_float 1
377 #endif
378
379 /* GL_OES_vertex_type_10_10_10_2 */
380 #ifndef GL_OES_vertex_type_10_10_10_2
381 #define GL_OES_vertex_type_10_10_10_2 1
382 #endif
383
384 /*------------------------------------------------------------------------*
385  * AMD extension functions
386  *------------------------------------------------------------------------*/
387
388 /* GL_AMD_compressed_3DC_texture */
389 #ifndef GL_AMD_compressed_3DC_texture
390 #define GL_AMD_compressed_3DC_texture 1
391 #endif
392
393 /* GL_AMD_compressed_ATC_texture */
394 #ifndef GL_AMD_compressed_ATC_texture
395 #define GL_AMD_compressed_ATC_texture 1
396 #endif
397
398 /* GL_AMD_program_binary_Z400 */
399 #ifndef GL_AMD_program_binary_Z400
400 #define GL_AMD_program_binary_Z400 1
401 #endif
402
403 /* AMD_performance_monitor */
404 #ifndef GL_AMD_performance_monitor
405 #define GL_AMD_performance_monitor 1
406 #ifdef GL_GLEXT_PROTOTYPES
407 GL_APICALL void GL_APIENTRY glGetPerfMonitorGroupsAMD (GLint *numGroups, GLsizei groupsSize, GLuint *groups);
408 GL_APICALL void GL_APIENTRY glGetPerfMonitorCountersAMD (GLuint group, GLint *numCounters, GLint *maxActiveCounters, GLsizei counterSize, GLuint *counters);
409 GL_APICALL void GL_APIENTRY glGetPerfMonitorGroupStringAMD (GLuint group, GLsizei bufSize, GLsizei *length, char *groupString);
410 GL_APICALL void GL_APIENTRY glGetPerfMonitorCounterStringAMD (GLuint group, GLuint counter, GLsizei bufSize, GLsizei *length, char *counterString);
411 GL_APICALL void GL_APIENTRY glGetPerfMonitorCounterInfoAMD (GLuint group, GLuint counter, GLenum pname, void *data);
412 GL_APICALL void GL_APIENTRY glGenPerfMonitorsAMD (GLsizei n, GLuint *monitors);
413 GL_APICALL void GL_APIENTRY glDeletePerfMonitorsAMD (GLsizei n, GLuint *monitors);
414 GL_APICALL void GL_APIENTRY glSelectPerfMonitorCountersAMD (GLuint monitor, GLboolean enable, GLuint group, GLint numCounters, GLuint *countersList);
415 GL_APICALL void GL_APIENTRY glBeginPerfMonitorAMD (GLuint monitor);
416 GL_APICALL void GL_APIENTRY glEndPerfMonitorAMD (GLuint monitor);
417 GL_APICALL void GL_APIENTRY glGetPerfMonitorCounterDataAMD (GLuint monitor, GLenum pname, GLsizei dataSize, GLuint *data, GLint *bytesWritten);
418 #endif
419 typedef void (GL_APIENTRYP PFNGLGETPERFMONITORGROUPSAMDPROC) (GLint *numGroups, GLsizei groupsSize, GLuint *groups);
420 typedef void (GL_APIENTRYP PFNGLGETPERFMONITORCOUNTERSAMDPROC) (GLuint group, GLint *numCounters, GLint *maxActiveCounters, GLsizei counterSize, GLuint *counters);
421 typedef void (GL_APIENTRYP PFNGLGETPERFMONITORGROUPSTRINGAMDPROC) (GLuint group, GLsizei bufSize, GLsizei *length, char *groupString);
422 typedef void (GL_APIENTRYP PFNGLGETPERFMONITORCOUNTERSTRINGAMDPROC) (GLuint group, GLuint counter, GLsizei bufSize, GLsizei *length, char *counterString);
423 typedef void (GL_APIENTRYP PFNGLGETPERFMONITORCOUNTERINFOAMDPROC) (GLuint group, GLuint counter, GLenum pname, void *data);
424 typedef void (GL_APIENTRYP PFNGLGENPERFMONITORSAMDPROC) (GLsizei n, GLuint *monitors);
425 typedef void (GL_APIENTRYP PFNGLDELETEPERFMONITORSAMDPROC) (GLsizei n, GLuint *monitors);
426 typedef void (GL_APIENTRYP PFNGLSELECTPERFMONITORCOUNTERSAMDPROC) (GLuint monitor, GLboolean enable, GLuint group, GLint numCounters, GLuint *countersList);
427 typedef void (GL_APIENTRYP PFNGLBEGINPERFMONITORAMDPROC) (GLuint monitor);
428 typedef void (GL_APIENTRYP PFNGLENDPERFMONITORAMDPROC) (GLuint monitor);
429 typedef void (GL_APIENTRYP PFNGLGETPERFMONITORCOUNTERDATAAMDPROC) (GLuint monitor, GLenum pname, GLsizei dataSize, GLuint *data, GLint *bytesWritten);
430 #endif
431
432 /*------------------------------------------------------------------------*
433  * EXT extension functions
434  *------------------------------------------------------------------------*/
435
436 /* GL_EXT_texture_filter_anisotropic */
437 #ifndef GL_EXT_texture_filter_anisotropic
438 #define GL_EXT_texture_filter_anisotropic 1
439 #endif
440
441 /* GL_EXT_texture_type_2_10_10_10_REV */
442 #ifndef GL_EXT_texture_type_2_10_10_10_REV
443 #define GL_EXT_texture_type_2_10_10_10_REV 1
444 #endif
445
446 /* GL_EXT_texture_format_BGRA8888 */
447 #ifndef GL_EXT_texture_format_BGRA8888
448 #define GL_EXT_texture_format_BGRA8888 1
449 #endif
450
451 /*------------------------------------------------------------------------*
452  * IMG extension functions
453  *------------------------------------------------------------------------*/
454
455 /* GL_IMG_read_format */
456 #ifndef GL_IMG_read_format
457 #define GL_IMG_read_format 1
458 #endif
459
460 /* GL_IMG_texture_compression_pvrtc */
461 #ifndef GL_IMG_texture_compression_pvrtc
462 #define GL_IMG_texture_compression_pvrtc 1
463 #endif
464
465 /*------------------------------------------------------------------------*
466  * NV extension functions
467  *------------------------------------------------------------------------*/
468
469 /* GL_NV_fence */
470 #ifndef GL_NV_fence
471 #define GL_NV_fence 1
472 #ifdef GL_GLEXT_PROTOTYPES
473 GL_APICALL void GL_APIENTRY glDeleteFencesNV (GLsizei n, const GLuint *fences);
474 GL_APICALL void GL_APIENTRY glGenFencesNV (GLsizei n, GLuint *fences);
475 GL_APICALL GLboolean GL_APIENTRY glIsFenceNV (GLuint fence);
476 GL_APICALL GLboolean GL_APIENTRY glTestFenceNV (GLuint fence);
477 GL_APICALL void GL_APIENTRY glGetFenceivNV (GLuint fence, GLenum pname, GLint *params);
478 GL_APICALL void GL_APIENTRY glFinishFenceNV (GLuint fence);
479 GL_APICALL void GL_APIENTRY glSetFenceNV (GLuint fence, GLenum condition);
480 #endif
481 typedef void (GL_APIENTRYP PFNGLDELETEFENCESNVPROC) (GLsizei n, const GLuint *fences);
482 typedef void (GL_APIENTRYP PFNGLGENFENCESNVPROC) (GLsizei n, GLuint *fences);
483 typedef GLboolean (GL_APIENTRYP PFNGLISFENCENVPROC) (GLuint fence);
484 typedef GLboolean (GL_APIENTRYP PFNGLTESTFENCENVPROC) (GLuint fence);
485 typedef void (GL_APIENTRYP PFNGLGETFENCEIVNVPROC) (GLuint fence, GLenum pname, GLint *params);
486 typedef void (GL_APIENTRYP PFNGLFINISHFENCENVPROC) (GLuint fence);
487 typedef void (GL_APIENTRYP PFNGLSETFENCENVPROC) (GLuint fence, GLenum condition);
488 #endif
489
490 /*------------------------------------------------------------------------*
491  * QCOM extension functions
492  *------------------------------------------------------------------------*/
493
494 /* GL_QCOM_driver_control */
495 #ifndef GL_QCOM_driver_control
496 #define GL_QCOM_driver_control 1
497 #ifdef GL_GLEXT_PROTOTYPES
498 GL_APICALL void GL_APIENTRY glGetDriverControlsQCOM (GLint *num, GLsizei size, GLuint *driverControls);
499 GL_APICALL void GL_APIENTRY glGetDriverControlStringQCOM (GLuint driverControl, GLsizei bufSize, GLsizei *length, char *driverControlString);
500 GL_APICALL void GL_APIENTRY glEnableDriverControlQCOM (GLuint driverControl);
501 GL_APICALL void GL_APIENTRY glDisableDriverControlQCOM (GLuint driverControl);
502 #endif
503 typedef void (GL_APIENTRYP PFNGLGETDRIVERCONTROLSQCOMPROC) (GLint *num, GLsizei size, GLuint *driverControls);
504 typedef void (GL_APIENTRYP PFNGLGETDRIVERCONTROLSTRINGQCOMPROC) (GLuint driverControl, GLsizei bufSize, GLsizei *length, char *driverControlString);
505 typedef void (GL_APIENTRYP PFNGLENABLEDRIVERCONTROLQCOMPROC) (GLuint driverControl);
506 typedef void (GL_APIENTRYP PFNGLDISABLEDRIVERCONTROLQCOMPROC) (GLuint driverControl);
507 #endif
508
509 /* GL_QCOM_perfmon_global_mode */
510 #ifndef GL_QCOM_perfmon_global_mode
511 #define GL_QCOM_perfmon_global_mode 1
512 #endif
513
514 #ifdef __cplusplus
515 }
516 #endif
517
518 #endif /* __gl2ext_h_ */