Thu, 22 Jan 2015 13:21:57 +0100
Incorporate requested changes from Mozilla in review:
https://bugzilla.mozilla.org/show_bug.cgi?id=1123480#c6
michael@0 | 1 | /* -*- Mode: c++; c-basic-offset: 4; indent-tabs-mode: nil; tab-width: 40; -*- */ |
michael@0 | 2 | /* This Source Code Form is subject to the terms of the Mozilla Public |
michael@0 | 3 | * License, v. 2.0. If a copy of the MPL was not distributed with this |
michael@0 | 4 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ |
michael@0 | 5 | |
michael@0 | 6 | #ifndef GLCONTEXTSYMBOLS_H_ |
michael@0 | 7 | #define GLCONTEXTSYMBOLS_H_ |
michael@0 | 8 | |
michael@0 | 9 | #include "GLDefs.h" |
michael@0 | 10 | |
michael@0 | 11 | /* |
michael@0 | 12 | * This file should only be included by GLContext.h, and should be |
michael@0 | 13 | * autogenerated in the future. |
michael@0 | 14 | */ |
michael@0 | 15 | |
michael@0 | 16 | #ifndef GLAPIENTRY |
michael@0 | 17 | #ifdef XP_WIN |
michael@0 | 18 | #define GLAPIENTRY __stdcall |
michael@0 | 19 | #else |
michael@0 | 20 | #define GLAPIENTRY |
michael@0 | 21 | #endif |
michael@0 | 22 | #define GLAPI |
michael@0 | 23 | #endif |
michael@0 | 24 | |
michael@0 | 25 | namespace mozilla { |
michael@0 | 26 | namespace gl { |
michael@0 | 27 | |
michael@0 | 28 | struct GLContextSymbols |
michael@0 | 29 | { |
michael@0 | 30 | GLContextSymbols() { |
michael@0 | 31 | Zero(); |
michael@0 | 32 | } |
michael@0 | 33 | |
michael@0 | 34 | void Zero() { |
michael@0 | 35 | memset(this, 0, sizeof(GLContextSymbols)); |
michael@0 | 36 | } |
michael@0 | 37 | |
michael@0 | 38 | typedef void (GLAPIENTRY * PFNGLACTIVETEXTUREPROC) (GLenum texture); |
michael@0 | 39 | PFNGLACTIVETEXTUREPROC fActiveTexture; |
michael@0 | 40 | typedef void (GLAPIENTRY * PFNGLATTACHSHADERPROC) (GLuint program, GLuint shader); |
michael@0 | 41 | PFNGLATTACHSHADERPROC fAttachShader; |
michael@0 | 42 | typedef void (GLAPIENTRY * PFNGLBEGINQUERYPROC) (GLenum target, GLuint id); |
michael@0 | 43 | PFNGLBEGINQUERYPROC fBeginQuery; |
michael@0 | 44 | typedef void (GLAPIENTRY * PFNGLBINDATTRIBLOCATIONPROC) (GLuint program, GLuint index, const GLchar* name); |
michael@0 | 45 | PFNGLBINDATTRIBLOCATIONPROC fBindAttribLocation; |
michael@0 | 46 | typedef void (GLAPIENTRY * PFNGLBINDBUFFERPROC) (GLenum target, GLuint buffer); |
michael@0 | 47 | PFNGLBINDBUFFERPROC fBindBuffer; |
michael@0 | 48 | typedef void (GLAPIENTRY * PFNGLBINDTEXTUREPROC) (GLenum target, GLuint texture); |
michael@0 | 49 | PFNGLBINDTEXTUREPROC fBindTexture; |
michael@0 | 50 | typedef void (GLAPIENTRY * PFNGLBINDVERTEXARRAYPROC) (GLuint array); |
michael@0 | 51 | PFNGLBINDVERTEXARRAYPROC fBindVertexArray; |
michael@0 | 52 | typedef void (GLAPIENTRY * PFNGLBLENDCOLORPROC) (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha); |
michael@0 | 53 | PFNGLBLENDCOLORPROC fBlendColor; |
michael@0 | 54 | typedef void (GLAPIENTRY * PFNGLBLENDEQUATIONPROC) (GLenum mode); |
michael@0 | 55 | PFNGLBLENDEQUATIONPROC fBlendEquation; |
michael@0 | 56 | typedef void (GLAPIENTRY * PFNGLBLENDEQUATIONSEPARATEPROC) (GLenum, GLenum); |
michael@0 | 57 | PFNGLBLENDEQUATIONSEPARATEPROC fBlendEquationSeparate; |
michael@0 | 58 | typedef void (GLAPIENTRY * PFNGLBLENDFUNCPROC) (GLenum, GLenum); |
michael@0 | 59 | PFNGLBLENDFUNCPROC fBlendFunc; |
michael@0 | 60 | typedef void (GLAPIENTRY * PFNGLBLENDFUNCSEPARATEPROC) (GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha); |
michael@0 | 61 | PFNGLBLENDFUNCSEPARATEPROC fBlendFuncSeparate; |
michael@0 | 62 | typedef void (GLAPIENTRY * PFNGLBUFFERDATAPROC) (GLenum target, GLsizeiptr size, const GLvoid* data, GLenum usage); |
michael@0 | 63 | PFNGLBUFFERDATAPROC fBufferData; |
michael@0 | 64 | typedef void (GLAPIENTRY * PFNGLBUFFERSUBDATAPROC) (GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid* data); |
michael@0 | 65 | PFNGLBUFFERSUBDATAPROC fBufferSubData; |
michael@0 | 66 | typedef void (GLAPIENTRY * PFNGLCLEARPROC) (GLbitfield); |
michael@0 | 67 | PFNGLCLEARPROC fClear; |
michael@0 | 68 | typedef void (GLAPIENTRY * PFNGLCLEARCOLORPROC) (GLclampf, GLclampf, GLclampf, GLclampf); |
michael@0 | 69 | PFNGLCLEARCOLORPROC fClearColor; |
michael@0 | 70 | typedef void (GLAPIENTRY * PFNGLCLEARSTENCILPROC) (GLint); |
michael@0 | 71 | PFNGLCLEARSTENCILPROC fClearStencil; |
michael@0 | 72 | typedef void (GLAPIENTRY * PFNGLCOLORMASKPROC) (realGLboolean red, realGLboolean green, realGLboolean blue, realGLboolean alpha); |
michael@0 | 73 | PFNGLCOLORMASKPROC fColorMask; |
michael@0 | 74 | typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXIMAGE2D) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *pixels); |
michael@0 | 75 | PFNGLCOMPRESSEDTEXIMAGE2D fCompressedTexImage2D; |
michael@0 | 76 | typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXSUBIMAGE2D) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *pixels); |
michael@0 | 77 | PFNGLCOMPRESSEDTEXSUBIMAGE2D fCompressedTexSubImage2D; |
michael@0 | 78 | typedef void (GLAPIENTRY * PFNGLCULLFACEPROC) (GLenum mode); |
michael@0 | 79 | PFNGLCULLFACEPROC fCullFace; |
michael@0 | 80 | typedef void (GLAPIENTRY * PFNGLDETACHSHADERPROC) (GLuint program, GLuint shader); |
michael@0 | 81 | PFNGLDETACHSHADERPROC fDetachShader; |
michael@0 | 82 | typedef void (GLAPIENTRY * PFNGLDEPTHFUNCPROC) (GLenum); |
michael@0 | 83 | PFNGLDEPTHFUNCPROC fDepthFunc; |
michael@0 | 84 | typedef void (GLAPIENTRY * PFNGLDEPTHMASKPROC) (realGLboolean); |
michael@0 | 85 | PFNGLDEPTHMASKPROC fDepthMask; |
michael@0 | 86 | typedef void (GLAPIENTRY * PFNGLDISABLEPROC) (GLenum); |
michael@0 | 87 | PFNGLDISABLEPROC fDisable; |
michael@0 | 88 | typedef void (GLAPIENTRY * PFNGLDISABLEVERTEXATTRIBARRAYPROC) (GLuint); |
michael@0 | 89 | PFNGLDISABLEVERTEXATTRIBARRAYPROC fDisableVertexAttribArray; |
michael@0 | 90 | typedef void (GLAPIENTRY * PFNGLDRAWARRAYSPROC) (GLenum mode, GLint first, GLsizei count); |
michael@0 | 91 | PFNGLDRAWARRAYSPROC fDrawArrays; |
michael@0 | 92 | typedef void (GLAPIENTRY * PFNGLDRAWBUFFERPROC) (GLenum mode); |
michael@0 | 93 | PFNGLDRAWBUFFERPROC fDrawBuffer; |
michael@0 | 94 | typedef void (GLAPIENTRY * PFNGLDRAWBUFFERSPROC) (GLsizei n, const GLenum* bufs); |
michael@0 | 95 | PFNGLDRAWBUFFERSPROC fDrawBuffers; |
michael@0 | 96 | typedef void (GLAPIENTRY * PFNGLDRAWELEMENTSPROC) (GLenum mode, GLsizei count, GLenum type, const GLvoid *indices); |
michael@0 | 97 | PFNGLDRAWELEMENTSPROC fDrawElements; |
michael@0 | 98 | typedef void (GLAPIENTRY * PFNGLENABLEPROC) (GLenum); |
michael@0 | 99 | PFNGLENABLEPROC fEnable; |
michael@0 | 100 | typedef void (GLAPIENTRY * PFNGLENABLEVERTEXATTRIBARRAYPROC) (GLuint); |
michael@0 | 101 | PFNGLENABLEVERTEXATTRIBARRAYPROC fEnableVertexAttribArray; |
michael@0 | 102 | typedef void (GLAPIENTRY * PFNGLFINISHPROC) (void); |
michael@0 | 103 | PFNGLFINISHPROC fFinish; |
michael@0 | 104 | typedef void (GLAPIENTRY * PFNGLENDQUERYPROC) (GLenum target); |
michael@0 | 105 | PFNGLENDQUERYPROC fEndQuery; |
michael@0 | 106 | typedef void (GLAPIENTRY * PFNGLFLUSHPROC) (void); |
michael@0 | 107 | PFNGLFLUSHPROC fFlush; |
michael@0 | 108 | typedef void (GLAPIENTRY * PFNGLFRONTFACEPROC) (GLenum); |
michael@0 | 109 | PFNGLFRONTFACEPROC fFrontFace; |
michael@0 | 110 | typedef void (GLAPIENTRY * PFNGLGETACTIVEATTRIBPROC) (GLuint program, GLuint index, GLsizei maxLength, GLsizei* length, GLint* size, GLenum* type, GLchar* name); |
michael@0 | 111 | PFNGLGETACTIVEATTRIBPROC fGetActiveAttrib; |
michael@0 | 112 | typedef void (GLAPIENTRY * PFNGLGETACTIVEUNIFORMPROC) (GLuint program, GLuint index, GLsizei maxLength, GLsizei* length, GLint* size, GLenum* type, GLchar* name); |
michael@0 | 113 | PFNGLGETACTIVEUNIFORMPROC fGetActiveUniform; |
michael@0 | 114 | typedef void (GLAPIENTRY * PFNGLGETATTACHEDSHADERSPROC) (GLuint program, GLsizei maxCount, GLsizei* count, GLuint* shaders); |
michael@0 | 115 | PFNGLGETATTACHEDSHADERSPROC fGetAttachedShaders; |
michael@0 | 116 | typedef GLint (GLAPIENTRY * PFNGLGETATTRIBLOCATIONPROC) (GLuint program, const GLchar* name); |
michael@0 | 117 | PFNGLGETATTRIBLOCATIONPROC fGetAttribLocation; |
michael@0 | 118 | typedef void (GLAPIENTRY * PFNGLGETINTEGERVPROC) (GLenum pname, GLint *params); |
michael@0 | 119 | PFNGLGETINTEGERVPROC fGetIntegerv; |
michael@0 | 120 | typedef void (GLAPIENTRY * PFNGLGETFLOATVPROC) (GLenum pname, GLfloat *params); |
michael@0 | 121 | PFNGLGETFLOATVPROC fGetFloatv; |
michael@0 | 122 | typedef void (GLAPIENTRY * PFNGLGETBOOLEANBPROC) (GLenum pname, realGLboolean *params); |
michael@0 | 123 | PFNGLGETBOOLEANBPROC fGetBooleanv; |
michael@0 | 124 | typedef void (GLAPIENTRY * PFNGLGETBUFFERPARAMETERIVPROC) (GLenum target, GLenum pname, GLint* params); |
michael@0 | 125 | PFNGLGETBUFFERPARAMETERIVPROC fGetBufferParameteriv; |
michael@0 | 126 | typedef void (GLAPIENTRY * PFNGLGENERATEMIPMAPPROC) (GLenum target); |
michael@0 | 127 | PFNGLGENERATEMIPMAPPROC fGenerateMipmap; |
michael@0 | 128 | typedef GLenum (GLAPIENTRY * PFNGLGETERRORPROC) (void); |
michael@0 | 129 | PFNGLGETERRORPROC fGetError; |
michael@0 | 130 | typedef void (GLAPIENTRY * PFNGLGETPROGRAMIVPROC) (GLuint program, GLenum pname, GLint* param); |
michael@0 | 131 | PFNGLGETPROGRAMIVPROC fGetProgramiv; |
michael@0 | 132 | typedef void (GLAPIENTRY * PFNGLGETPROGRAMINFOLOGPROC) (GLuint program, GLsizei bufSize, GLsizei* length, GLchar* infoLog); |
michael@0 | 133 | PFNGLGETPROGRAMINFOLOGPROC fGetProgramInfoLog; |
michael@0 | 134 | typedef void (GLAPIENTRY * PFNGLGETQUERYIVPROC) (GLenum target, GLenum pname, GLint* params); |
michael@0 | 135 | PFNGLGETQUERYIVPROC fGetQueryiv; |
michael@0 | 136 | typedef void (GLAPIENTRY * PFNGLGETQUERYOBJECTIVPROC) (GLuint id, GLenum pname, GLint* params); |
michael@0 | 137 | PFNGLGETQUERYOBJECTIVPROC fGetQueryObjectiv; |
michael@0 | 138 | typedef void (GLAPIENTRY * PFNGLGETQUERYOBJECTUIVPROC) (GLuint id, GLenum pname, GLuint* params); |
michael@0 | 139 | PFNGLGETQUERYOBJECTUIVPROC fGetQueryObjectuiv; |
michael@0 | 140 | typedef void (GLAPIENTRY * PFNGLTEXPARAMETERIPROC) (GLenum target, GLenum pname, GLint param); |
michael@0 | 141 | PFNGLTEXPARAMETERIPROC fTexParameteri; |
michael@0 | 142 | typedef void (GLAPIENTRY * PFNGLTEXPARAMETERIVPROC) (GLenum target, GLenum pname, const GLint* param); |
michael@0 | 143 | PFNGLTEXPARAMETERIVPROC fTexParameteriv; |
michael@0 | 144 | typedef void (GLAPIENTRY * PFNGLTEXPARAMETERFPROC) (GLenum target, GLenum pname, GLfloat param); |
michael@0 | 145 | PFNGLTEXPARAMETERFPROC fTexParameterf; |
michael@0 | 146 | typedef GLubyte* (GLAPIENTRY * PFNGLGETSTRINGPROC) (GLenum); |
michael@0 | 147 | PFNGLGETSTRINGPROC fGetString; |
michael@0 | 148 | typedef void (GLAPIENTRY * PFNGLGETTEXIMAGEPROC) (GLenum target, GLint level, GLenum format, GLenum type, GLvoid* image); |
michael@0 | 149 | PFNGLGETTEXIMAGEPROC fGetTexImage; |
michael@0 | 150 | typedef void (GLAPIENTRY * PFNGLGETTEXLEVELPARAMETERIVPROC) (GLenum target, GLint level, GLenum pname, GLint *params); |
michael@0 | 151 | PFNGLGETTEXLEVELPARAMETERIVPROC fGetTexLevelParameteriv; |
michael@0 | 152 | typedef void (GLAPIENTRY * PFNGLGETTEXPARAMETERFVPROC) (GLenum target, GLenum pname, GLfloat *params); |
michael@0 | 153 | PFNGLGETTEXPARAMETERFVPROC fGetTexParameterfv; |
michael@0 | 154 | typedef void (GLAPIENTRY * PFNGLGETTEXPARAMETERIVPROC) (GLenum target, GLenum pname, GLint *params); |
michael@0 | 155 | PFNGLGETTEXPARAMETERIVPROC fGetTexParameteriv; |
michael@0 | 156 | typedef void (GLAPIENTRY * PFNGLGETUNIFORMFVPROC) (GLuint program, GLint location, GLfloat* params); |
michael@0 | 157 | PFNGLGETUNIFORMFVPROC fGetUniformfv; |
michael@0 | 158 | typedef void (GLAPIENTRY * PFNGLGETUNIFORMIVPROC) (GLuint program, GLint location, GLint* params); |
michael@0 | 159 | PFNGLGETUNIFORMIVPROC fGetUniformiv; |
michael@0 | 160 | typedef GLint (GLAPIENTRY * PFNGLGETUNIFORMLOCATIONPROC) (GLint programObj, const GLchar* name); |
michael@0 | 161 | PFNGLGETUNIFORMLOCATIONPROC fGetUniformLocation; |
michael@0 | 162 | typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBFVPROC) (GLuint, GLenum, GLfloat*); |
michael@0 | 163 | PFNGLGETVERTEXATTRIBFVPROC fGetVertexAttribfv; |
michael@0 | 164 | typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBIVPROC) (GLuint, GLenum, GLint*); |
michael@0 | 165 | PFNGLGETVERTEXATTRIBIVPROC fGetVertexAttribiv; |
michael@0 | 166 | typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBPOINTERVPROC) (GLuint, GLenum, GLvoid**); |
michael@0 | 167 | PFNGLGETVERTEXATTRIBPOINTERVPROC fGetVertexAttribPointerv; |
michael@0 | 168 | typedef void (GLAPIENTRY * PFNGLHINTPROC) (GLenum target, GLenum mode); |
michael@0 | 169 | PFNGLHINTPROC fHint; |
michael@0 | 170 | typedef realGLboolean (GLAPIENTRY * PFNGLISBUFFERPROC) (GLuint buffer); |
michael@0 | 171 | PFNGLISBUFFERPROC fIsBuffer; |
michael@0 | 172 | typedef realGLboolean (GLAPIENTRY * PFNGLISENABLEDPROC) (GLenum cap); |
michael@0 | 173 | PFNGLISENABLEDPROC fIsEnabled; |
michael@0 | 174 | typedef realGLboolean (GLAPIENTRY * PFNGLISPROGRAMPROC) (GLuint program); |
michael@0 | 175 | PFNGLISPROGRAMPROC fIsProgram; |
michael@0 | 176 | typedef realGLboolean (GLAPIENTRY * PFNGLISQUERYPROC) (GLuint id); |
michael@0 | 177 | PFNGLISQUERYPROC fIsQuery; |
michael@0 | 178 | typedef realGLboolean (GLAPIENTRY * PFNGLISSHADERPROC) (GLuint shader); |
michael@0 | 179 | PFNGLISSHADERPROC fIsShader; |
michael@0 | 180 | typedef realGLboolean (GLAPIENTRY * PFNGLISTEXTUREPROC) (GLuint texture); |
michael@0 | 181 | PFNGLISTEXTUREPROC fIsTexture; |
michael@0 | 182 | typedef void (GLAPIENTRY * PFNGLLINEWIDTHPROC) (GLfloat width); |
michael@0 | 183 | PFNGLLINEWIDTHPROC fLineWidth; |
michael@0 | 184 | typedef void (GLAPIENTRY * PFNGLLINKPROGRAMPROC) (GLuint program); |
michael@0 | 185 | PFNGLLINKPROGRAMPROC fLinkProgram; |
michael@0 | 186 | typedef void (GLAPIENTRY * PFNGLPIXELSTOREIPROC) (GLenum pname, GLint param); |
michael@0 | 187 | PFNGLPIXELSTOREIPROC fPixelStorei; |
michael@0 | 188 | typedef void (GLAPIENTRY * PFNGLPOINTPARAMETERFPROC) (GLenum pname, GLfloat param); |
michael@0 | 189 | PFNGLPOINTPARAMETERFPROC fPointParameterf; |
michael@0 | 190 | typedef void (GLAPIENTRY * PFNGLPOLYGONOFFSETPROC) (GLfloat factor, GLfloat bias); |
michael@0 | 191 | PFNGLPOLYGONOFFSETPROC fPolygonOffset; |
michael@0 | 192 | typedef void (GLAPIENTRY * PFNGLREADBUFFERPROC) (GLenum); |
michael@0 | 193 | PFNGLREADBUFFERPROC fReadBuffer; |
michael@0 | 194 | typedef void (GLAPIENTRY * PFNGLREADPIXELSPROC) (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels); |
michael@0 | 195 | PFNGLREADPIXELSPROC fReadPixels; |
michael@0 | 196 | typedef void (GLAPIENTRY * PFNGLSAMPLECOVERAGEPROC) (GLclampf value, realGLboolean invert); |
michael@0 | 197 | PFNGLSAMPLECOVERAGEPROC fSampleCoverage; |
michael@0 | 198 | typedef void (GLAPIENTRY * PFNGLSTENCILFUNCPROC) (GLenum func, GLint ref, GLuint mask); |
michael@0 | 199 | PFNGLSTENCILFUNCPROC fStencilFunc; |
michael@0 | 200 | typedef void (GLAPIENTRY * PFNGLSTENCILFUNCSEPARATEPROC) (GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask); |
michael@0 | 201 | PFNGLSTENCILFUNCSEPARATEPROC fStencilFuncSeparate; |
michael@0 | 202 | typedef void (GLAPIENTRY * PFNGLSTENCILMASKPROC) (GLuint mask); |
michael@0 | 203 | PFNGLSTENCILMASKPROC fStencilMask; |
michael@0 | 204 | typedef void (GLAPIENTRY * PFNGLSTENCILMASKSEPARATEPROC) (GLenum, GLuint); |
michael@0 | 205 | PFNGLSTENCILMASKSEPARATEPROC fStencilMaskSeparate; |
michael@0 | 206 | typedef void (GLAPIENTRY * PFNGLSTENCILOPPROC) (GLenum fail, GLenum zfail, GLenum zpass); |
michael@0 | 207 | PFNGLSTENCILOPPROC fStencilOp; |
michael@0 | 208 | typedef void (GLAPIENTRY * PFNGLSTENCILOPSEPARATEPROC) (GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass); |
michael@0 | 209 | PFNGLSTENCILOPSEPARATEPROC fStencilOpSeparate; |
michael@0 | 210 | typedef void (GLAPIENTRY * PFNGLTEXIMAGE2DPROC) (GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels); |
michael@0 | 211 | PFNGLTEXIMAGE2DPROC fTexImage2D; |
michael@0 | 212 | typedef void (GLAPIENTRY * PFNGLTEXSUBIMAGE2DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void* pixels); |
michael@0 | 213 | PFNGLTEXSUBIMAGE2DPROC fTexSubImage2D; |
michael@0 | 214 | typedef void (GLAPIENTRY * PFNGLTEXTURERANGEAPPLEPROC) (GLenum target, GLsizei length, GLvoid *pointer); |
michael@0 | 215 | PFNGLTEXTURERANGEAPPLEPROC fTextureRangeAPPLE; |
michael@0 | 216 | typedef void (GLAPIENTRY * PFNGLUNIFORM1FPROC) (GLint location, GLfloat v0); |
michael@0 | 217 | PFNGLUNIFORM1FPROC fUniform1f; |
michael@0 | 218 | typedef void (GLAPIENTRY * PFNGLUNIFORM1FVPROC) (GLint location, GLsizei count, const GLfloat* value); |
michael@0 | 219 | PFNGLUNIFORM1FVPROC fUniform1fv; |
michael@0 | 220 | typedef void (GLAPIENTRY * PFNGLUNIFORM1IPROC) (GLint location, GLint v0); |
michael@0 | 221 | PFNGLUNIFORM1IPROC fUniform1i; |
michael@0 | 222 | typedef void (GLAPIENTRY * PFNGLUNIFORM1IVPROC) (GLint location, GLsizei count, const GLint* value); |
michael@0 | 223 | PFNGLUNIFORM1IVPROC fUniform1iv; |
michael@0 | 224 | typedef void (GLAPIENTRY * PFNGLUNIFORM2FPROC) (GLint location, GLfloat v0, GLfloat v1); |
michael@0 | 225 | PFNGLUNIFORM2FPROC fUniform2f; |
michael@0 | 226 | typedef void (GLAPIENTRY * PFNGLUNIFORM2FVPROC) (GLint location, GLsizei count, const GLfloat* value); |
michael@0 | 227 | PFNGLUNIFORM2FVPROC fUniform2fv; |
michael@0 | 228 | typedef void (GLAPIENTRY * PFNGLUNIFORM2IPROC) (GLint location, GLint v0, GLint v1); |
michael@0 | 229 | PFNGLUNIFORM2IPROC fUniform2i; |
michael@0 | 230 | typedef void (GLAPIENTRY * PFNGLUNIFORM2IVPROC) (GLint location, GLsizei count, const GLint* value); |
michael@0 | 231 | PFNGLUNIFORM2IVPROC fUniform2iv; |
michael@0 | 232 | typedef void (GLAPIENTRY * PFNGLUNIFORM3FPROC) (GLint location, GLfloat v0, GLfloat v1, GLfloat v2); |
michael@0 | 233 | PFNGLUNIFORM3FPROC fUniform3f; |
michael@0 | 234 | typedef void (GLAPIENTRY * PFNGLUNIFORM3FVPROC) (GLint location, GLsizei count, const GLfloat* value); |
michael@0 | 235 | PFNGLUNIFORM3FVPROC fUniform3fv; |
michael@0 | 236 | typedef void (GLAPIENTRY * PFNGLUNIFORM3IPROC) (GLint location, GLint v0, GLint v1, GLint v2); |
michael@0 | 237 | PFNGLUNIFORM3IPROC fUniform3i; |
michael@0 | 238 | typedef void (GLAPIENTRY * PFNGLUNIFORM3IVPROC) (GLint location, GLsizei count, const GLint* value); |
michael@0 | 239 | PFNGLUNIFORM3IVPROC fUniform3iv; |
michael@0 | 240 | typedef void (GLAPIENTRY * PFNGLUNIFORM4FPROC) (GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3); |
michael@0 | 241 | PFNGLUNIFORM4FPROC fUniform4f; |
michael@0 | 242 | typedef void (GLAPIENTRY * PFNGLUNIFORM4FVPROC) (GLint location, GLsizei count, const GLfloat* value); |
michael@0 | 243 | PFNGLUNIFORM4FVPROC fUniform4fv; |
michael@0 | 244 | typedef void (GLAPIENTRY * PFNGLUNIFORM4IPROC) (GLint location, GLint v0, GLint v1, GLint v2, GLint v3); |
michael@0 | 245 | PFNGLUNIFORM4IPROC fUniform4i; |
michael@0 | 246 | typedef void (GLAPIENTRY * PFNGLUNIFORM4IVPROC) (GLint location, GLsizei count, const GLint* value); |
michael@0 | 247 | PFNGLUNIFORM4IVPROC fUniform4iv; |
michael@0 | 248 | typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX2FVPROC) (GLint location, GLsizei count, realGLboolean transpose, const GLfloat* value); |
michael@0 | 249 | PFNGLUNIFORMMATRIX2FVPROC fUniformMatrix2fv; |
michael@0 | 250 | typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX3FVPROC) (GLint location, GLsizei count, realGLboolean transpose, const GLfloat* value); |
michael@0 | 251 | PFNGLUNIFORMMATRIX3FVPROC fUniformMatrix3fv; |
michael@0 | 252 | typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX4FVPROC) (GLint location, GLsizei count, realGLboolean transpose, const GLfloat* value); |
michael@0 | 253 | PFNGLUNIFORMMATRIX4FVPROC fUniformMatrix4fv; |
michael@0 | 254 | typedef void (GLAPIENTRY * PFNGLUSEPROGRAMPROC) (GLuint program); |
michael@0 | 255 | PFNGLUSEPROGRAMPROC fUseProgram; |
michael@0 | 256 | typedef void (GLAPIENTRY * PFNGLVALIDATEPROGRAMPROC) (GLuint program); |
michael@0 | 257 | PFNGLVALIDATEPROGRAMPROC fValidateProgram; |
michael@0 | 258 | typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBPOINTERPROC) (GLuint index, GLint size, GLenum type, realGLboolean normalized, GLsizei stride, const GLvoid* pointer); |
michael@0 | 259 | PFNGLVERTEXATTRIBPOINTERPROC fVertexAttribPointer; |
michael@0 | 260 | typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1FPROC) (GLuint index, GLfloat x); |
michael@0 | 261 | PFNGLVERTEXATTRIB1FPROC fVertexAttrib1f; |
michael@0 | 262 | typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2FPROC) (GLuint index, GLfloat x, GLfloat y); |
michael@0 | 263 | PFNGLVERTEXATTRIB2FPROC fVertexAttrib2f; |
michael@0 | 264 | typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3FPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat z); |
michael@0 | 265 | PFNGLVERTEXATTRIB3FPROC fVertexAttrib3f; |
michael@0 | 266 | typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4FPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w); |
michael@0 | 267 | PFNGLVERTEXATTRIB4FPROC fVertexAttrib4f; |
michael@0 | 268 | typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1FVPROC) (GLuint index, const GLfloat* v); |
michael@0 | 269 | PFNGLVERTEXATTRIB1FVPROC fVertexAttrib1fv; |
michael@0 | 270 | typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2FVPROC) (GLuint index, const GLfloat* v); |
michael@0 | 271 | PFNGLVERTEXATTRIB2FVPROC fVertexAttrib2fv; |
michael@0 | 272 | typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3FVPROC) (GLuint index, const GLfloat* v); |
michael@0 | 273 | PFNGLVERTEXATTRIB3FVPROC fVertexAttrib3fv; |
michael@0 | 274 | typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4FVPROC) (GLuint index, const GLfloat* v); |
michael@0 | 275 | PFNGLVERTEXATTRIB4FVPROC fVertexAttrib4fv; |
michael@0 | 276 | typedef void (GLAPIENTRY * PFNGLCOMPILESHADERPROC) (GLuint shader); |
michael@0 | 277 | PFNGLCOMPILESHADERPROC fCompileShader; |
michael@0 | 278 | typedef void (GLAPIENTRY * PFNGLCOPYTEXIMAGE2DPROC) (GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border); |
michael@0 | 279 | PFNGLCOPYTEXIMAGE2DPROC fCopyTexImage2D; |
michael@0 | 280 | typedef void (GLAPIENTRY * PFNGLCOPYTEXSUBIMAGE2DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height); |
michael@0 | 281 | PFNGLCOPYTEXSUBIMAGE2DPROC fCopyTexSubImage2D; |
michael@0 | 282 | typedef void (GLAPIENTRY * PFNGLGETSHADERIVPROC) (GLuint shader, GLenum pname, GLint* param); |
michael@0 | 283 | PFNGLGETSHADERIVPROC fGetShaderiv; |
michael@0 | 284 | typedef void (GLAPIENTRY * PFNGLGETSHADERINFOLOGPROC) (GLuint shader, GLsizei bufSize, GLsizei* length, GLchar* infoLog); |
michael@0 | 285 | PFNGLGETSHADERINFOLOGPROC fGetShaderInfoLog; |
michael@0 | 286 | typedef void (GLAPIENTRY * PFNGETSHADERPRECISIONFORMAT) (GLenum shadertype, GLenum precisiontype, GLint* range, GLint* precision); |
michael@0 | 287 | PFNGETSHADERPRECISIONFORMAT fGetShaderPrecisionFormat; |
michael@0 | 288 | typedef void (GLAPIENTRY * PFNGLGETSHADERSOURCEPROC) (GLint obj, GLsizei maxLength, GLsizei* length, GLchar* source); |
michael@0 | 289 | PFNGLGETSHADERSOURCEPROC fGetShaderSource; |
michael@0 | 290 | typedef void (GLAPIENTRY * PFNGLSHADERSOURCEPROC) (GLuint shader, GLsizei count, const GLchar** strings, const GLint* lengths); |
michael@0 | 291 | PFNGLSHADERSOURCEPROC fShaderSource; |
michael@0 | 292 | |
michael@0 | 293 | typedef void (GLAPIENTRY * PFNGLBINDFRAMEBUFFER) (GLenum target, GLuint framebuffer); |
michael@0 | 294 | PFNGLBINDFRAMEBUFFER fBindFramebuffer; |
michael@0 | 295 | typedef void (GLAPIENTRY * PFNGLBINDRENDERBUFFER) (GLenum target, GLuint renderbuffer); |
michael@0 | 296 | PFNGLBINDRENDERBUFFER fBindRenderbuffer; |
michael@0 | 297 | typedef GLenum (GLAPIENTRY * PFNGLCHECKFRAMEBUFFERSTATUS) (GLenum target); |
michael@0 | 298 | PFNGLCHECKFRAMEBUFFERSTATUS fCheckFramebufferStatus; |
michael@0 | 299 | typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERRENDERBUFFER) (GLenum target, GLenum attachmentPoint, GLenum renderbufferTarget, GLuint renderbuffer); |
michael@0 | 300 | PFNGLFRAMEBUFFERRENDERBUFFER fFramebufferRenderbuffer; |
michael@0 | 301 | typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTURE2D) (GLenum target, GLenum attachmentPoint, GLenum textureTarget, GLuint texture, GLint level); |
michael@0 | 302 | PFNGLFRAMEBUFFERTEXTURE2D fFramebufferTexture2D; |
michael@0 | 303 | typedef void (GLAPIENTRY * PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIV) (GLenum target, GLenum attachment, GLenum pname, GLint* value); |
michael@0 | 304 | PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIV fGetFramebufferAttachmentParameteriv; |
michael@0 | 305 | typedef void (GLAPIENTRY * PFNGLGETRENDERBUFFERPARAMETERIV) (GLenum target, GLenum pname, GLint* value); |
michael@0 | 306 | PFNGLGETRENDERBUFFERPARAMETERIV fGetRenderbufferParameteriv; |
michael@0 | 307 | typedef realGLboolean (GLAPIENTRY * PFNGLISFRAMEBUFFER) (GLuint framebuffer); |
michael@0 | 308 | PFNGLISFRAMEBUFFER fIsFramebuffer; |
michael@0 | 309 | typedef realGLboolean (GLAPIENTRY * PFNGLISRENDERBUFFER) (GLuint renderbuffer); |
michael@0 | 310 | PFNGLISRENDERBUFFER fIsRenderbuffer; |
michael@0 | 311 | typedef realGLboolean (GLAPIENTRY * PFNGLISVERTEXARRAY) (GLuint array); |
michael@0 | 312 | PFNGLISVERTEXARRAY fIsVertexArray; |
michael@0 | 313 | typedef void (GLAPIENTRY * PFNGLRENDERBUFFERSTORAGE) (GLenum target, GLenum internalFormat, GLsizei width, GLsizei height); |
michael@0 | 314 | PFNGLRENDERBUFFERSTORAGE fRenderbufferStorage; |
michael@0 | 315 | |
michael@0 | 316 | // These functions are only used by Skia/GL in desktop mode. |
michael@0 | 317 | // Other parts of Gecko should avoid using these |
michael@0 | 318 | typedef void (GLAPIENTRY * PFNGLCLIENTACTIVETEXTURE) (GLenum texture); |
michael@0 | 319 | PFNGLCLIENTACTIVETEXTURE fClientActiveTexture; |
michael@0 | 320 | typedef void (GLAPIENTRY * PFNDISABLECLIENTSTATE) (GLenum capability); |
michael@0 | 321 | PFNDISABLECLIENTSTATE fDisableClientState; |
michael@0 | 322 | typedef void (GLAPIENTRY * PFNENABLECLIENTSTATE) (GLenum capability); |
michael@0 | 323 | PFNENABLECLIENTSTATE fEnableClientState; |
michael@0 | 324 | typedef void (GLAPIENTRY * PFNLOADIDENTITY) (void); |
michael@0 | 325 | PFNLOADIDENTITY fLoadIdentity; |
michael@0 | 326 | typedef void (GLAPIENTRY * PFNLOADMATRIXD) (const GLdouble* matrix); |
michael@0 | 327 | PFNLOADMATRIXD fLoadMatrixd; |
michael@0 | 328 | typedef void (GLAPIENTRY * PFNLOADMATRIXF) (const GLfloat* matrix); |
michael@0 | 329 | PFNLOADMATRIXF fLoadMatrixf; |
michael@0 | 330 | typedef void (GLAPIENTRY * PFNMATRIXMODE) (GLenum mode); |
michael@0 | 331 | PFNMATRIXMODE fMatrixMode; |
michael@0 | 332 | typedef void (GLAPIENTRY * PFNTEXGENI) (GLenum coord, GLenum pname, GLint param); |
michael@0 | 333 | PFNTEXGENI fTexGeni; |
michael@0 | 334 | typedef void (GLAPIENTRY * PFNTEXGENF) (GLenum coord, GLenum pname, GLfloat param); |
michael@0 | 335 | PFNTEXGENF fTexGenf; |
michael@0 | 336 | typedef void (GLAPIENTRY * PFNTEXGENFV) (GLenum coord, GLenum pname, const GLfloat* param); |
michael@0 | 337 | PFNTEXGENFV fTexGenfv; |
michael@0 | 338 | typedef void (GLAPIENTRY * PFNVERTEXPOINTER) (GLint size, GLenum type, GLsizei stride, const GLvoid* pointer); |
michael@0 | 339 | PFNVERTEXPOINTER fVertexPointer; |
michael@0 | 340 | |
michael@0 | 341 | typedef void (GLAPIENTRY * PFNGLBLITFRAMEBUFFER) (GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); |
michael@0 | 342 | PFNGLBLITFRAMEBUFFER fBlitFramebuffer; |
michael@0 | 343 | typedef void (GLAPIENTRY * PFNGLRENDERBUFFERSTORAGEMULTISAMPLE) (GLenum target, GLsizei samples, GLenum internalFormat, GLsizei width, GLsizei height); |
michael@0 | 344 | PFNGLRENDERBUFFERSTORAGEMULTISAMPLE fRenderbufferStorageMultisample; |
michael@0 | 345 | |
michael@0 | 346 | |
michael@0 | 347 | /* These are different between GLES2 and desktop GL; we hide those differences, use the GL |
michael@0 | 348 | * names, but the most limited data type. |
michael@0 | 349 | */ |
michael@0 | 350 | typedef void (GLAPIENTRY * PFNGLDEPTHRANGEFPROC) (GLclampf, GLclampf); |
michael@0 | 351 | PFNGLDEPTHRANGEFPROC fDepthRangef; |
michael@0 | 352 | typedef void (GLAPIENTRY * PFNGLCLEARDEPTHFPROC) (GLclampf); |
michael@0 | 353 | PFNGLCLEARDEPTHFPROC fClearDepthf; |
michael@0 | 354 | |
michael@0 | 355 | typedef void (GLAPIENTRY * PFNGLDEPTHRANGEPROC) (GLclampd, GLclampd); |
michael@0 | 356 | PFNGLDEPTHRANGEPROC fDepthRange; |
michael@0 | 357 | typedef void (GLAPIENTRY * PFNGLCLEARDEPTHPROC) (GLclampd); |
michael@0 | 358 | PFNGLCLEARDEPTHPROC fClearDepth; |
michael@0 | 359 | |
michael@0 | 360 | /* These are special because we end up tracking these so that we don't |
michael@0 | 361 | * have to query the values from GL. |
michael@0 | 362 | */ |
michael@0 | 363 | |
michael@0 | 364 | typedef void (GLAPIENTRY * PFNGLVIEWPORTPROC) (GLint x, GLint y, GLsizei width, GLsizei height); |
michael@0 | 365 | PFNGLVIEWPORTPROC fViewport; |
michael@0 | 366 | typedef void (GLAPIENTRY * PFNGLSCISSORPROC) (GLint x, GLint y, GLsizei width, GLsizei height); |
michael@0 | 367 | PFNGLSCISSORPROC fScissor; |
michael@0 | 368 | |
michael@0 | 369 | |
michael@0 | 370 | /* These are special -- they create or delete GL resources that can live |
michael@0 | 371 | * in a shared namespace. In DEBUG, we wrap these calls so that we can |
michael@0 | 372 | * check when we have something that failed to do cleanup at the time the |
michael@0 | 373 | * final context is destroyed. |
michael@0 | 374 | */ |
michael@0 | 375 | |
michael@0 | 376 | typedef GLuint (GLAPIENTRY * PFNGLCREATEPROGRAMPROC) (void); |
michael@0 | 377 | PFNGLCREATEPROGRAMPROC fCreateProgram; |
michael@0 | 378 | typedef GLuint (GLAPIENTRY * PFNGLCREATESHADERPROC) (GLenum type); |
michael@0 | 379 | PFNGLCREATESHADERPROC fCreateShader; |
michael@0 | 380 | typedef void (GLAPIENTRY * PFNGLGENBUFFERSPROC) (GLsizei n, GLuint* buffers); |
michael@0 | 381 | PFNGLGENBUFFERSPROC fGenBuffers; |
michael@0 | 382 | typedef void (GLAPIENTRY * PFNGLGENQUERIESPROC) (GLsizei n, GLuint* queries); |
michael@0 | 383 | PFNGLGENQUERIESPROC fGenQueries; |
michael@0 | 384 | typedef void (GLAPIENTRY * PFNGLGENTEXTURESPROC) (GLsizei n, GLuint *textures); |
michael@0 | 385 | PFNGLGENTEXTURESPROC fGenTextures; |
michael@0 | 386 | typedef void (GLAPIENTRY * PFNGLGENFRAMEBUFFERS) (GLsizei n, GLuint* ids); |
michael@0 | 387 | PFNGLGENFRAMEBUFFERS fGenFramebuffers; |
michael@0 | 388 | typedef void (GLAPIENTRY * PFNGLGENRENDERBUFFERS) (GLsizei n, GLuint* ids); |
michael@0 | 389 | PFNGLGENRENDERBUFFERS fGenRenderbuffers; |
michael@0 | 390 | typedef void (GLAPIENTRY * PFNGLGENVERTEXARRAYS) (GLsizei n, GLuint* arrays); |
michael@0 | 391 | PFNGLGENVERTEXARRAYS fGenVertexArrays; |
michael@0 | 392 | |
michael@0 | 393 | typedef void (GLAPIENTRY * PFNGLDELETEPROGRAMPROC) (GLuint program); |
michael@0 | 394 | PFNGLDELETEPROGRAMPROC fDeleteProgram; |
michael@0 | 395 | typedef void (GLAPIENTRY * PFNGLDELETESHADERPROC) (GLuint shader); |
michael@0 | 396 | PFNGLDELETESHADERPROC fDeleteShader; |
michael@0 | 397 | typedef void (GLAPIENTRY * PFNGLDELETEBUFFERSPROC) (GLsizei n, const GLuint* buffers); |
michael@0 | 398 | PFNGLDELETEBUFFERSPROC fDeleteBuffers; |
michael@0 | 399 | typedef void (GLAPIENTRY * PFNGLDELETEQUERIESPROC) (GLsizei n, const GLuint* queries); |
michael@0 | 400 | PFNGLDELETEQUERIESPROC fDeleteQueries; |
michael@0 | 401 | typedef void (GLAPIENTRY * PFNGLDELETETEXTURESPROC) (GLsizei n, const GLuint* textures); |
michael@0 | 402 | PFNGLDELETETEXTURESPROC fDeleteTextures; |
michael@0 | 403 | typedef void (GLAPIENTRY * PFNGLDELETEFRAMEBUFFERS) (GLsizei n, const GLuint* ids); |
michael@0 | 404 | PFNGLDELETEFRAMEBUFFERS fDeleteFramebuffers; |
michael@0 | 405 | typedef void (GLAPIENTRY * PFNGLDELETERENDERBUFFERS) (GLsizei n, const GLuint* ids); |
michael@0 | 406 | PFNGLDELETERENDERBUFFERS fDeleteRenderbuffers; |
michael@0 | 407 | typedef void (GLAPIENTRY * PFNGLDELETEVERTEXARRAYS) (GLsizei n, const GLuint* arrays); |
michael@0 | 408 | PFNGLDELETEVERTEXARRAYS fDeleteVertexArrays; |
michael@0 | 409 | |
michael@0 | 410 | typedef void* (GLAPIENTRY * PFNGLMAPBUFFER) (GLenum target, GLenum access); |
michael@0 | 411 | PFNGLMAPBUFFER fMapBuffer; |
michael@0 | 412 | typedef realGLboolean (GLAPIENTRY * PFNGLUNMAPBUFFER) (GLenum target); |
michael@0 | 413 | PFNGLUNMAPBUFFER fUnmapBuffer; |
michael@0 | 414 | |
michael@0 | 415 | typedef GLenum (GLAPIENTRY * PFNGLGETGRAPHICSRESETSTATUS) (void); |
michael@0 | 416 | PFNGLGETGRAPHICSRESETSTATUS fGetGraphicsResetStatus; |
michael@0 | 417 | |
michael@0 | 418 | // ARB_sync |
michael@0 | 419 | typedef GLsync (GLAPIENTRY * PFNGLFENCESYNC) (GLenum condition, GLbitfield flags); |
michael@0 | 420 | PFNGLFENCESYNC fFenceSync; |
michael@0 | 421 | typedef realGLboolean (GLAPIENTRY * PFNGLISSYNC) (GLsync sync); |
michael@0 | 422 | PFNGLISSYNC fIsSync; |
michael@0 | 423 | typedef void (GLAPIENTRY * PFNGLDELETESYNC) (GLsync sync); |
michael@0 | 424 | PFNGLDELETESYNC fDeleteSync; |
michael@0 | 425 | typedef GLenum (GLAPIENTRY * PFNGLCLIENTWAITSYNC) (GLsync sync, GLbitfield flags, GLuint64 timeout); |
michael@0 | 426 | PFNGLCLIENTWAITSYNC fClientWaitSync; |
michael@0 | 427 | typedef void (GLAPIENTRY * PFNGLWAITSYNC) (GLsync sync, GLbitfield flags, GLuint64 timeout); |
michael@0 | 428 | PFNGLWAITSYNC fWaitSync; |
michael@0 | 429 | typedef void (GLAPIENTRY * PFNGLGETINTEGER64V) (GLenum pname, GLint64 *params); |
michael@0 | 430 | PFNGLGETINTEGER64V fGetInteger64v; |
michael@0 | 431 | typedef void (GLAPIENTRY * PFNGLGETSYNCIV) (GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values); |
michael@0 | 432 | PFNGLGETSYNCIV fGetSynciv; |
michael@0 | 433 | |
michael@0 | 434 | // OES_egl_image |
michael@0 | 435 | typedef void (GLAPIENTRY * PFNGLEGLIMAGETARGETTEXTURE2D)(GLenum target, GLeglImage image); |
michael@0 | 436 | PFNGLEGLIMAGETARGETTEXTURE2D fEGLImageTargetTexture2D; |
michael@0 | 437 | typedef void (GLAPIENTRY * PFNGLEGLIMAGETARGETRENDERBUFFERSTORAGE)(GLenum target, GLeglImage image); |
michael@0 | 438 | PFNGLEGLIMAGETARGETRENDERBUFFERSTORAGE fEGLImageTargetRenderbufferStorage; |
michael@0 | 439 | |
michael@0 | 440 | // ARB_draw_instanced |
michael@0 | 441 | typedef void (GLAPIENTRY * PFNGLDRAWARRAYSINSTANCED) (GLenum mode, GLint first, GLsizei count, GLsizei primcount); |
michael@0 | 442 | PFNGLDRAWARRAYSINSTANCED fDrawArraysInstanced; |
michael@0 | 443 | typedef void (GLAPIENTRY * PFNGLDRAWELEMENTSINSTANCED) (GLenum mode, GLsizei count, GLenum type, const GLvoid* indices, GLsizei primcount); |
michael@0 | 444 | PFNGLDRAWELEMENTSINSTANCED fDrawElementsInstanced; |
michael@0 | 445 | |
michael@0 | 446 | // ARB_instanced_array |
michael@0 | 447 | typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBDIVISOR) (GLuint index, GLuint divisor); |
michael@0 | 448 | PFNGLVERTEXATTRIBDIVISOR fVertexAttribDivisor; |
michael@0 | 449 | |
michael@0 | 450 | // EXT_transform_feedback / OpenGL (ES) 3.0 |
michael@0 | 451 | typedef void (GLAPIENTRY * PFNGLBINDBUFFERBASE) (GLenum target, GLuint index, GLuint buffer); |
michael@0 | 452 | PFNGLBINDBUFFERBASE fBindBufferBase; |
michael@0 | 453 | typedef void (GLAPIENTRY * PFNGLBINDBUFFERRANGE) (GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size); |
michael@0 | 454 | PFNGLBINDBUFFERRANGE fBindBufferRange; |
michael@0 | 455 | |
michael@0 | 456 | typedef void (GLAPIENTRY * PFNGLBEGINTRANSFORMFEEDBACK) (GLenum primitiveMode); |
michael@0 | 457 | PFNGLBEGINTRANSFORMFEEDBACK fBeginTransformFeedback; |
michael@0 | 458 | typedef void (GLAPIENTRY * PFNGLENDTRANSFORMFEEDBACK) (void); |
michael@0 | 459 | PFNGLENDTRANSFORMFEEDBACK fEndTransformFeedback; |
michael@0 | 460 | |
michael@0 | 461 | typedef void (GLAPIENTRY * PFNGLTRANSFORMFEEDBACKVARYINGS) (GLuint program, GLsizei count, const GLchar* const* varyings, GLenum bufferMode); |
michael@0 | 462 | PFNGLTRANSFORMFEEDBACKVARYINGS fTransformFeedbackVaryings; |
michael@0 | 463 | typedef void (GLAPIENTRY * PFNGLGETTRANSFORMFEEDBACKVARYING) (GLuint program, GLuint index, GLsizei bufSize, GLsizei* length, GLsizei* size, GLenum* type, GLchar* name); |
michael@0 | 464 | PFNGLGETTRANSFORMFEEDBACKVARYING fGetTransformFeedbackVarying; |
michael@0 | 465 | |
michael@0 | 466 | typedef void (GLAPIENTRY * PFNGLGETINTEGERI_V) (GLenum param, GLuint index, GLint* values); |
michael@0 | 467 | PFNGLGETINTEGERI_V fGetIntegeri_v; |
michael@0 | 468 | |
michael@0 | 469 | // EXT_transform_feedback only |
michael@0 | 470 | typedef void (GLAPIENTRY * PFNGLBINDBUFFEROFFSET) (GLenum target, GLuint index, GLuint buffer, GLintptr offset); |
michael@0 | 471 | PFNGLBINDBUFFEROFFSET fBindBufferOffset; |
michael@0 | 472 | |
michael@0 | 473 | // KHR_debug |
michael@0 | 474 | typedef void (GLAPIENTRY * PFNGLDEBUGMESSAGECONTROL) (GLenum source, GLenum type, GLenum severity, GLsizei count, const GLuint* ids, realGLboolean enabled); |
michael@0 | 475 | PFNGLDEBUGMESSAGECONTROL fDebugMessageControl; |
michael@0 | 476 | typedef void (GLAPIENTRY * PFNGLDEBUGMESSAGEINSERT) (GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar* buf); |
michael@0 | 477 | PFNGLDEBUGMESSAGEINSERT fDebugMessageInsert; |
michael@0 | 478 | typedef void (GLAPIENTRY * PFNGLDEBUGMESSAGECALLBACK) (GLDEBUGPROC callback, const GLvoid* userParam); |
michael@0 | 479 | PFNGLDEBUGMESSAGECALLBACK fDebugMessageCallback; |
michael@0 | 480 | typedef GLuint (GLAPIENTRY * PFNGLDEBUGMESSAGELOG) (GLuint count, GLsizei bufsize, GLenum* sources, GLenum* types, GLuint* ids, GLenum* severities, GLsizei* lengths, GLchar* messageLog); |
michael@0 | 481 | PFNGLDEBUGMESSAGELOG fGetDebugMessageLog; |
michael@0 | 482 | typedef void (GLAPIENTRY * PFNGLGETPOINTERV) (GLenum pname, GLvoid** params); |
michael@0 | 483 | PFNGLGETPOINTERV fGetPointerv; |
michael@0 | 484 | typedef void (GLAPIENTRY * PFNGLPUSHDEBUGGROUP) (GLenum source, GLuint id, GLsizei length, const GLchar* message); |
michael@0 | 485 | PFNGLPUSHDEBUGGROUP fPushDebugGroup; |
michael@0 | 486 | typedef void (GLAPIENTRY * PFNGLPOPDEBUGGROUP) (void); |
michael@0 | 487 | PFNGLPOPDEBUGGROUP fPopDebugGroup; |
michael@0 | 488 | typedef void (GLAPIENTRY * PFNGLOBJECTLABEL) (GLenum identifier, GLuint name, GLsizei length, const GLchar* label); |
michael@0 | 489 | PFNGLOBJECTLABEL fObjectLabel; |
michael@0 | 490 | typedef void (GLAPIENTRY * PFNGLGETOBJECTLABEL) (GLenum identifier, GLuint name, GLsizei bufSize, GLsizei* length, GLchar* label); |
michael@0 | 491 | PFNGLGETOBJECTLABEL fGetObjectLabel; |
michael@0 | 492 | typedef void (GLAPIENTRY * PFNGLOBJECTPTRLABEL) (const GLvoid* ptr, GLsizei length, const GLchar* label); |
michael@0 | 493 | PFNGLOBJECTPTRLABEL fObjectPtrLabel; |
michael@0 | 494 | typedef void (GLAPIENTRY * PFNGLGETOBJECTPTRLABEL) (const GLvoid* ptr, GLsizei bufSize, GLsizei* length, GLchar* label); |
michael@0 | 495 | PFNGLGETOBJECTPTRLABEL fGetObjectPtrLabel; |
michael@0 | 496 | |
michael@0 | 497 | // draw_range_elements |
michael@0 | 498 | typedef void (GLAPIENTRY * PFNGLDRAWRANGEELEMENTS) (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid* indices); |
michael@0 | 499 | PFNGLDRAWRANGEELEMENTS fDrawRangeElements; |
michael@0 | 500 | }; |
michael@0 | 501 | |
michael@0 | 502 | } |
michael@0 | 503 | } |
michael@0 | 504 | |
michael@0 | 505 | #endif /* GLCONTEXTSYMBOLS_H_ */ |