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