glext.h revision 4a49301e
1#ifndef __glext_h_ 2#define __glext_h_ 3 4 5#ifdef __cplusplus 6extern "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 183typedef 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 252GL_API void GL_APIENTRY glBlendEquationSeparateOES (GLenum modeRGB, GLenum modeAlpha); 253#endif 254typedef 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 261GL_API void GL_APIENTRY glBlendFuncSeparateOES (GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha); 262#endif 263typedef 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 270GL_API void GL_APIENTRY glBlendEquationOES (GLenum mode); 271#endif 272typedef 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 289GL_API void GL_APIENTRY glDrawTexsOES (GLshort x, GLshort y, GLshort z, GLshort width, GLshort height); 290GL_API void GL_APIENTRY glDrawTexiOES (GLint x, GLint y, GLint z, GLint width, GLint height); 291GL_API void GL_APIENTRY glDrawTexxOES (GLfixed x, GLfixed y, GLfixed z, GLfixed width, GLfixed height); 292GL_API void GL_APIENTRY glDrawTexsvOES (const GLshort *coords); 293GL_API void GL_APIENTRY glDrawTexivOES (const GLint *coords); 294GL_API void GL_APIENTRY glDrawTexxvOES (const GLfixed *coords); 295GL_API void GL_APIENTRY glDrawTexfOES (GLfloat x, GLfloat y, GLfloat z, GLfloat width, GLfloat height); 296GL_API void GL_APIENTRY glDrawTexfvOES (const GLfloat *coords); 297#endif 298typedef void (GL_APIENTRYP PFNGLDRAWTEXSOESPROC) (GLshort x, GLshort y, GLshort z, GLshort width, GLshort height); 299typedef void (GL_APIENTRYP PFNGLDRAWTEXIOESPROC) (GLint x, GLint y, GLint z, GLint width, GLint height); 300typedef void (GL_APIENTRYP PFNGLDRAWTEXXOESPROC) (GLfixed x, GLfixed y, GLfixed z, GLfixed width, GLfixed height); 301typedef void (GL_APIENTRYP PFNGLDRAWTEXSVOESPROC) (const GLshort *coords); 302typedef void (GL_APIENTRYP PFNGLDRAWTEXIVOESPROC) (const GLint *coords); 303typedef void (GL_APIENTRYP PFNGLDRAWTEXXVOESPROC) (const GLfixed *coords); 304typedef void (GL_APIENTRYP PFNGLDRAWTEXFOESPROC) (GLfloat x, GLfloat y, GLfloat z, GLfloat width, GLfloat height); 305typedef 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 317GL_API void GL_APIENTRY glAlphaFuncxOES (GLenum func, GLclampx ref); 318GL_API void GL_APIENTRY glClearColorxOES (GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha); 319GL_API void GL_APIENTRY glClearDepthxOES (GLclampx depth); 320GL_API void GL_APIENTRY glClipPlanexOES (GLenum plane, const GLfixed *equation); 321GL_API void GL_APIENTRY glColor4xOES (GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha); 322GL_API void GL_APIENTRY glDepthRangexOES (GLclampx zNear, GLclampx zFar); 323GL_API void GL_APIENTRY glFogxOES (GLenum pname, GLfixed param); 324GL_API void GL_APIENTRY glFogxvOES (GLenum pname, const GLfixed *params); 325GL_API void GL_APIENTRY glFrustumxOES (GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar); 326GL_API void GL_APIENTRY glGetClipPlanexOES (GLenum pname, GLfixed eqn[4]); 327GL_API void GL_APIENTRY glGetFixedvOES (GLenum pname, GLfixed *params); 328GL_API void GL_APIENTRY glGetLightxvOES (GLenum light, GLenum pname, GLfixed *params); 329GL_API void GL_APIENTRY glGetMaterialxvOES (GLenum face, GLenum pname, GLfixed *params); 330GL_API void GL_APIENTRY glGetTexEnvxvOES (GLenum env, GLenum pname, GLfixed *params); 331GL_API void GL_APIENTRY glGetTexParameterxvOES (GLenum target, GLenum pname, GLfixed *params); 332GL_API void GL_APIENTRY glLightModelxOES (GLenum pname, GLfixed param); 333GL_API void GL_APIENTRY glLightModelxvOES (GLenum pname, const GLfixed *params); 334GL_API void GL_APIENTRY glLightxOES (GLenum light, GLenum pname, GLfixed param); 335GL_API void GL_APIENTRY glLightxvOES (GLenum light, GLenum pname, const GLfixed *params); 336GL_API void GL_APIENTRY glLineWidthxOES (GLfixed width); 337GL_API void GL_APIENTRY glLoadMatrixxOES (const GLfixed *m); 338GL_API void GL_APIENTRY glMaterialxOES (GLenum face, GLenum pname, GLfixed param); 339GL_API void GL_APIENTRY glMaterialxvOES (GLenum face, GLenum pname, const GLfixed *params); 340GL_API void GL_APIENTRY glMultMatrixxOES (const GLfixed *m); 341GL_API void GL_APIENTRY glMultiTexCoord4xOES (GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q); 342GL_API void GL_APIENTRY glNormal3xOES (GLfixed nx, GLfixed ny, GLfixed nz); 343GL_API void GL_APIENTRY glOrthoxOES (GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar); 344GL_API void GL_APIENTRY glPointParameterxOES (GLenum pname, GLfixed param); 345GL_API void GL_APIENTRY glPointParameterxvOES (GLenum pname, const GLfixed *params); 346GL_API void GL_APIENTRY glPointSizexOES (GLfixed size); 347GL_API void GL_APIENTRY glPolygonOffsetxOES (GLfixed factor, GLfixed units); 348GL_API void GL_APIENTRY glRotatexOES (GLfixed angle, GLfixed x, GLfixed y, GLfixed z); 349GL_API void GL_APIENTRY glSampleCoveragexOES (GLclampx value, GLboolean invert); 350GL_API void GL_APIENTRY glScalexOES (GLfixed x, GLfixed y, GLfixed z); 351GL_API void GL_APIENTRY glTexEnvxOES (GLenum target, GLenum pname, GLfixed param); 352GL_API void GL_APIENTRY glTexEnvxvOES (GLenum target, GLenum pname, const GLfixed *params); 353GL_API void GL_APIENTRY glTexParameterxOES (GLenum target, GLenum pname, GLfixed param); 354GL_API void GL_APIENTRY glTexParameterxvOES (GLenum target, GLenum pname, const GLfixed *params); 355GL_API void GL_APIENTRY glTranslatexOES (GLfixed x, GLfixed y, GLfixed z); 356#endif 357typedef void (GL_APIENTRYP PFNGLALPHAFUNCXOESPROC) (GLenum func, GLclampx ref); 358typedef void (GL_APIENTRYP PFNGLCLEARCOLORXOESPROC) (GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha); 359typedef void (GL_APIENTRYP PFNGLCLEARDEPTHXOESPROC) (GLclampx depth); 360typedef void (GL_APIENTRYP PFNGLCLIPPLANEXOESPROC) (GLenum plane, const GLfixed *equation); 361typedef void (GL_APIENTRYP PFNGLCOLOR4XOESPROC) (GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha); 362typedef void (GL_APIENTRYP PFNGLDEPTHRANGEXOESPROC) (GLclampx zNear, GLclampx zFar); 363typedef void (GL_APIENTRYP PFNGLFOGXOESPROC) (GLenum pname, GLfixed param); 364typedef void (GL_APIENTRYP PFNGLFOGXVOESPROC) (GLenum pname, const GLfixed *params); 365typedef void (GL_APIENTRYP PFNGLFRUSTUMXOESPROC) (GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar); 366typedef void (GL_APIENTRYP PFNGLGETCLIPPLANEXOESPROC) (GLenum pname, GLfixed eqn[4]); 367typedef void (GL_APIENTRYP PFNGLGETFIXEDVOESPROC) (GLenum pname, GLfixed *params); 368typedef void (GL_APIENTRYP PFNGLGETLIGHTXVOESPROC) (GLenum light, GLenum pname, GLfixed *params); 369typedef void (GL_APIENTRYP PFNGLGETMATERIALXVOESPROC) (GLenum face, GLenum pname, GLfixed *params); 370typedef void (GL_APIENTRYP PFNGLGETTEXENVXVOESPROC) (GLenum env, GLenum pname, GLfixed *params); 371typedef void (GL_APIENTRYP PFNGLGETTEXPARAMETERXVOESPROC) (GLenum target, GLenum pname, GLfixed *params); 372typedef void (GL_APIENTRYP PFNGLLIGHTMODELXOESPROC) (GLenum pname, GLfixed param); 373typedef void (GL_APIENTRYP PFNGLLIGHTMODELXVOESPROC) (GLenum pname, const GLfixed *params); 374typedef void (GL_APIENTRYP PFNGLLIGHTXOESPROC) (GLenum light, GLenum pname, GLfixed param); 375typedef void (GL_APIENTRYP PFNGLLIGHTXVOESPROC) (GLenum light, GLenum pname, const GLfixed *params); 376typedef void (GL_APIENTRYP PFNGLLINEWIDTHXOESPROC) (GLfixed width); 377typedef void (GL_APIENTRYP PFNGLLOADMATRIXXOESPROC) (const GLfixed *m); 378typedef void (GL_APIENTRYP PFNGLMATERIALXOESPROC) (GLenum face, GLenum pname, GLfixed param); 379typedef void (GL_APIENTRYP PFNGLMATERIALXVOESPROC) (GLenum face, GLenum pname, const GLfixed *params); 380typedef void (GL_APIENTRYP PFNGLMULTMATRIXXOESPROC) (const GLfixed *m); 381typedef void (GL_APIENTRYP PFNGLMULTITEXCOORD4XOESPROC) (GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q); 382typedef void (GL_APIENTRYP PFNGLNORMAL3XOESPROC) (GLfixed nx, GLfixed ny, GLfixed nz); 383typedef void (GL_APIENTRYP PFNGLORTHOXOESPROC) (GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar); 384typedef void (GL_APIENTRYP PFNGLPOINTPARAMETERXOESPROC) (GLenum pname, GLfixed param); 385typedef void (GL_APIENTRYP PFNGLPOINTPARAMETERXVOESPROC) (GLenum pname, const GLfixed *params); 386typedef void (GL_APIENTRYP PFNGLPOINTSIZEXOESPROC) (GLfixed size); 387typedef void (GL_APIENTRYP PFNGLPOLYGONOFFSETXOESPROC) (GLfixed factor, GLfixed units); 388typedef void (GL_APIENTRYP PFNGLROTATEXOESPROC) (GLfixed angle, GLfixed x, GLfixed y, GLfixed z); 389typedef void (GL_APIENTRYP PFNGLSAMPLECOVERAGEXOESPROC) (GLclampx value, GLboolean invert); 390typedef void (GL_APIENTRYP PFNGLSCALEXOESPROC) (GLfixed x, GLfixed y, GLfixed z); 391typedef void (GL_APIENTRYP PFNGLTEXENVXOESPROC) (GLenum target, GLenum pname, GLfixed param); 392typedef void (GL_APIENTRYP PFNGLTEXENVXVOESPROC) (GLenum target, GLenum pname, const GLfixed *params); 393typedef void (GL_APIENTRYP PFNGLTEXPARAMETERXOESPROC) (GLenum target, GLenum pname, GLfixed param); 394typedef void (GL_APIENTRYP PFNGLTEXPARAMETERXVOESPROC) (GLenum target, GLenum pname, const GLfixed *params); 395typedef 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 402GL_API GLboolean GL_APIENTRY glIsRenderbufferOES (GLuint renderbuffer); 403GL_API void GL_APIENTRY glBindRenderbufferOES (GLenum target, GLuint renderbuffer); 404GL_API void GL_APIENTRY glDeleteRenderbuffersOES (GLsizei n, const GLuint* renderbuffers); 405GL_API void GL_APIENTRY glGenRenderbuffersOES (GLsizei n, GLuint* renderbuffers); 406GL_API void GL_APIENTRY glRenderbufferStorageOES (GLenum target, GLenum internalformat, GLsizei width, GLsizei height); 407GL_API void GL_APIENTRY glGetRenderbufferParameterivOES (GLenum target, GLenum pname, GLint* params); 408GL_API GLboolean GL_APIENTRY glIsFramebufferOES (GLuint framebuffer); 409GL_API void GL_APIENTRY glBindFramebufferOES (GLenum target, GLuint framebuffer); 410GL_API void GL_APIENTRY glDeleteFramebuffersOES (GLsizei n, const GLuint* framebuffers); 411GL_API void GL_APIENTRY glGenFramebuffersOES (GLsizei n, GLuint* framebuffers); 412GL_API GLenum GL_APIENTRY glCheckFramebufferStatusOES (GLenum target); 413GL_API void GL_APIENTRY glFramebufferRenderbufferOES (GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer); 414GL_API void GL_APIENTRY glFramebufferTexture2DOES (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level); 415GL_API void GL_APIENTRY glGetFramebufferAttachmentParameterivOES (GLenum target, GLenum attachment, GLenum pname, GLint* params); 416GL_API void GL_APIENTRY glGenerateMipmapOES (GLenum target); 417#endif 418typedef GLboolean (GL_APIENTRYP PFNGLISRENDERBUFFEROESPROC) (GLuint renderbuffer); 419typedef void (GL_APIENTRYP PFNGLBINDRENDERBUFFEROESPROC) (GLenum target, GLuint renderbuffer); 420typedef void (GL_APIENTRYP PFNGLDELETERENDERBUFFERSOESPROC) (GLsizei n, const GLuint* renderbuffers); 421typedef void (GL_APIENTRYP PFNGLGENRENDERBUFFERSOESPROC) (GLsizei n, GLuint* renderbuffers); 422typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEOESPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height); 423typedef void (GL_APIENTRYP PFNGLGETRENDERBUFFERPARAMETERIVOESPROC) (GLenum target, GLenum pname, GLint* params); 424typedef GLboolean (GL_APIENTRYP PFNGLISFRAMEBUFFEROESPROC) (GLuint framebuffer); 425typedef void (GL_APIENTRYP PFNGLBINDFRAMEBUFFEROESPROC) (GLenum target, GLuint framebuffer); 426typedef void (GL_APIENTRYP PFNGLDELETEFRAMEBUFFERSOESPROC) (GLsizei n, const GLuint* framebuffers); 427typedef void (GL_APIENTRYP PFNGLGENFRAMEBUFFERSOESPROC) (GLsizei n, GLuint* framebuffers); 428typedef GLenum (GL_APIENTRYP PFNGLCHECKFRAMEBUFFERSTATUSOESPROC) (GLenum target); 429typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERRENDERBUFFEROESPROC) (GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer); 430typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERTEXTURE2DOESPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level); 431typedef void (GL_APIENTRYP PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVOESPROC) (GLenum target, GLenum attachment, GLenum pname, GLint* params); 432typedef 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 444GL_API void GL_APIENTRY glCurrentPaletteMatrixOES (GLuint matrixpaletteindex); 445GL_API void GL_APIENTRY glLoadPaletteFromModelViewMatrixOES (void); 446GL_API void GL_APIENTRY glMatrixIndexPointerOES (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer); 447GL_API void GL_APIENTRY glWeightPointerOES (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer); 448#endif 449typedef void (GL_APIENTRYP PFNGLCURRENTPALETTEMATRIXOESPROC) (GLuint matrixpaletteindex); 450typedef void (GL_APIENTRYP PFNGLLOADPALETTEFROMMODELVIEWMATRIXOESPROC) (void); 451typedef void (GL_APIENTRYP PFNGLMATRIXINDEXPOINTEROESPROC) (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer); 452typedef 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 459GL_API GLbitfield GL_APIENTRY glQueryMatrixxOES (GLfixed mantissa[16], GLint exponent[16]); 460#endif 461typedef 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 468GL_API void GL_APIENTRY glDepthRangefOES (GLclampf zNear, GLclampf zFar); 469GL_API void GL_APIENTRY glFrustumfOES (GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar); 470GL_API void GL_APIENTRY glOrthofOES (GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar); 471GL_API void GL_APIENTRY glClipPlanefOES (GLenum plane, const GLfloat *equation); 472GL_API void GL_APIENTRY glGetClipPlanefOES (GLenum pname, GLfloat eqn[4]); 473GL_API void GL_APIENTRY glClearDepthfOES (GLclampf depth); 474#endif 475typedef void (GL_APIENTRYP PFNGLDEPTHRANGEFOESPROC) (GLclampf zNear, GLclampf zFar); 476typedef void (GL_APIENTRYP PFNGLFRUSTUMFOESPROC) (GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar); 477typedef void (GL_APIENTRYP PFNGLORTHOFOESPROC) (GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar); 478typedef void (GL_APIENTRYP PFNGLCLIPPLANEFOESPROC) (GLenum plane, const GLfloat *equation); 479typedef void (GL_APIENTRYP PFNGLGETCLIPPLANEFOESPROC) (GLenum pname, GLfloat eqn[4]); 480typedef 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 492GL_API void GL_APIENTRY glTexGenfOES (GLenum coord, GLenum pname, GLfloat param); 493GL_API void GL_APIENTRY glTexGenfvOES (GLenum coord, GLenum pname, const GLfloat *params); 494GL_API void GL_APIENTRY glTexGeniOES (GLenum coord, GLenum pname, GLint param); 495GL_API void GL_APIENTRY glTexGenivOES (GLenum coord, GLenum pname, const GLint *params); 496GL_API void GL_APIENTRY glTexGenxOES (GLenum coord, GLenum pname, GLfixed param); 497GL_API void GL_APIENTRY glTexGenxvOES (GLenum coord, GLenum pname, const GLfixed *params); 498GL_API void GL_APIENTRY glGetTexGenfvOES (GLenum coord, GLenum pname, GLfloat *params); 499GL_API void GL_APIENTRY glGetTexGenivOES (GLenum coord, GLenum pname, GLint *params); 500GL_API void GL_APIENTRY glGetTexGenxvOES (GLenum coord, GLenum pname, GLfixed *params); 501#endif 502typedef void (GL_APIENTRYP PFNGLTEXGENFOESPROC) (GLenum coord, GLenum pname, GLfloat param); 503typedef void (GL_APIENTRYP PFNGLTEXGENFVOESPROC) (GLenum coord, GLenum pname, const GLfloat *params); 504typedef void (GL_APIENTRYP PFNGLTEXGENIOESPROC) (GLenum coord, GLenum pname, GLint param); 505typedef void (GL_APIENTRYP PFNGLTEXGENIVOESPROC) (GLenum coord, GLenum pname, const GLint *params); 506typedef void (GL_APIENTRYP PFNGLTEXGENXOESPROC) (GLenum coord, GLenum pname, GLfixed param); 507typedef void (GL_APIENTRYP PFNGLTEXGENXVOESPROC) (GLenum coord, GLenum pname, const GLfixed *params); 508typedef void (GL_APIENTRYP PFNGLGETTEXGENFVOESPROC) (GLenum coord, GLenum pname, GLfloat *params); 509typedef void (GL_APIENTRYP PFNGLGETTEXGENIVOESPROC) (GLenum coord, GLenum pname, GLint *params); 510typedef 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 527GL_API void GL_APIENTRY glEGLImageTargetTexture2DOES (GLenum target, GLeglImageOES image); 528GL_API void GL_APIENTRY glEGLImageTargetRenderbufferStorageOES (GLenum target, GLeglImageOES image); 529#endif 530typedef void (GL_APIENTRYP PFNGLEGLIMAGETARGETTEXTURE2DOESPROC) (GLenum target, GLeglImageOES image); 531typedef 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 558GL_API void* GL_APIENTRY glMapBufferOES (GLenum target, GLenum access); 559GL_API GLboolean GL_APIENTRY glUnmapBufferOES (GLenum target); 560GL_API void GL_APIENTRY glGetBufferPointervOES (GLenum target, GLenum pname, void** params); 561#endif 562typedef void* (GL_APIENTRYP PFNGLMAPBUFFEROESPROC) (GLenum target, GLenum access); 563typedef GLboolean (GL_APIENTRYP PFNGLUNMAPBUFFEROESPROC) (GLenum target); 564typedef 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 608