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