// GENERATED FILE - DO NOT EDIT. // Generated by generate_gl_dispatch_table.py using data from gl_bindings_data.json and gl.xml. // // Copyright 2017 The ANGLE Project Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. // // DispatchTableGL_autogen.h: // Defines the native binding interface for ANGLE's OpenGL back-end. #ifndef LIBGLESV2_RENDERER_GL_DISPATCH_TABLE_GL_AUTOGEN_H_ #define LIBGLESV2_RENDERER_GL_DISPATCH_TABLE_GL_AUTOGEN_H_ #include "common/angleutils.h" #include "libANGLE/renderer/gl/functionsgl_typedefs.h" #include namespace gl { struct Version; } // namespace gl namespace rx { class DispatchTableGL : angle::NonCopyable { public: // clang-format off // 1.0 PFNGLBLENDFUNCPROC blendFunc = nullptr; PFNGLCLEARPROC clear = nullptr; PFNGLCLEARCOLORPROC clearColor = nullptr; PFNGLCLEARDEPTHPROC clearDepth = nullptr; PFNGLCLEARSTENCILPROC clearStencil = nullptr; PFNGLCOLORMASKPROC colorMask = nullptr; PFNGLCULLFACEPROC cullFace = nullptr; PFNGLDEPTHFUNCPROC depthFunc = nullptr; PFNGLDEPTHMASKPROC depthMask = nullptr; PFNGLDEPTHRANGEPROC depthRange = nullptr; PFNGLDISABLEPROC disable = nullptr; PFNGLDRAWBUFFERPROC drawBuffer = nullptr; PFNGLENABLEPROC enable = nullptr; PFNGLFINISHPROC finish = nullptr; PFNGLFLUSHPROC flush = nullptr; PFNGLFRONTFACEPROC frontFace = nullptr; PFNGLGETBOOLEANVPROC getBooleanv = nullptr; PFNGLGETDOUBLEVPROC getDoublev = nullptr; PFNGLGETERRORPROC getError = nullptr; PFNGLGETFLOATVPROC getFloatv = nullptr; PFNGLGETINTEGERVPROC getIntegerv = nullptr; PFNGLGETSTRINGPROC getString = nullptr; PFNGLGETTEXIMAGEPROC getTexImage = nullptr; PFNGLGETTEXLEVELPARAMETERFVPROC getTexLevelParameterfv = nullptr; PFNGLGETTEXLEVELPARAMETERIVPROC getTexLevelParameteriv = nullptr; PFNGLGETTEXPARAMETERFVPROC getTexParameterfv = nullptr; PFNGLGETTEXPARAMETERIVPROC getTexParameteriv = nullptr; PFNGLHINTPROC hint = nullptr; PFNGLISENABLEDPROC isEnabled = nullptr; PFNGLLINEWIDTHPROC lineWidth = nullptr; PFNGLLOGICOPPROC logicOp = nullptr; PFNGLPIXELSTOREFPROC pixelStoref = nullptr; PFNGLPIXELSTOREIPROC pixelStorei = nullptr; PFNGLPOINTSIZEPROC pointSize = nullptr; PFNGLPOLYGONMODEPROC polygonMode = nullptr; PFNGLREADBUFFERPROC readBuffer = nullptr; PFNGLREADPIXELSPROC readPixels = nullptr; PFNGLSCISSORPROC scissor = nullptr; PFNGLSTENCILFUNCPROC stencilFunc = nullptr; PFNGLSTENCILMASKPROC stencilMask = nullptr; PFNGLSTENCILOPPROC stencilOp = nullptr; PFNGLTEXIMAGE1DPROC texImage1D = nullptr; PFNGLTEXIMAGE2DPROC texImage2D = nullptr; PFNGLTEXPARAMETERFPROC texParameterf = nullptr; PFNGLTEXPARAMETERFVPROC texParameterfv = nullptr; PFNGLTEXPARAMETERIPROC texParameteri = nullptr; PFNGLTEXPARAMETERIVPROC texParameteriv = nullptr; PFNGLVIEWPORTPROC viewport = nullptr; // 1.1 PFNGLBINDTEXTUREPROC bindTexture = nullptr; PFNGLCOPYTEXIMAGE1DPROC copyTexImage1D = nullptr; PFNGLCOPYTEXIMAGE2DPROC copyTexImage2D = nullptr; PFNGLCOPYTEXSUBIMAGE1DPROC copyTexSubImage1D = nullptr; PFNGLCOPYTEXSUBIMAGE2DPROC copyTexSubImage2D = nullptr; PFNGLDELETETEXTURESPROC deleteTextures = nullptr; PFNGLDRAWARRAYSPROC drawArrays = nullptr; PFNGLDRAWELEMENTSPROC drawElements = nullptr; PFNGLGENTEXTURESPROC genTextures = nullptr; PFNGLISTEXTUREPROC isTexture = nullptr; PFNGLPOLYGONOFFSETPROC polygonOffset = nullptr; PFNGLTEXSUBIMAGE1DPROC texSubImage1D = nullptr; PFNGLTEXSUBIMAGE2DPROC texSubImage2D = nullptr; // 1.2 PFNGLBLENDCOLORPROC blendColor = nullptr; PFNGLBLENDEQUATIONPROC blendEquation = nullptr; PFNGLCOPYTEXSUBIMAGE3DPROC copyTexSubImage3D = nullptr; PFNGLDRAWRANGEELEMENTSPROC drawRangeElements = nullptr; PFNGLTEXIMAGE3DPROC texImage3D = nullptr; PFNGLTEXSUBIMAGE3DPROC texSubImage3D = nullptr; // 1.2 Extensions PFNGLDELETEFENCESNVPROC deleteFencesNV = nullptr; PFNGLFINISHFENCENVPROC finishFenceNV = nullptr; PFNGLGENFENCESNVPROC genFencesNV = nullptr; PFNGLGETFENCEIVNVPROC getFenceivNV = nullptr; PFNGLISFENCENVPROC isFenceNV = nullptr; PFNGLSETFENCENVPROC setFenceNV = nullptr; PFNGLTESTFENCENVPROC testFenceNV = nullptr; // 1.3 PFNGLACTIVETEXTUREPROC activeTexture = nullptr; PFNGLCOMPRESSEDTEXIMAGE1DPROC compressedTexImage1D = nullptr; PFNGLCOMPRESSEDTEXIMAGE2DPROC compressedTexImage2D = nullptr; PFNGLCOMPRESSEDTEXIMAGE3DPROC compressedTexImage3D = nullptr; PFNGLCOMPRESSEDTEXSUBIMAGE1DPROC compressedTexSubImage1D = nullptr; PFNGLCOMPRESSEDTEXSUBIMAGE2DPROC compressedTexSubImage2D = nullptr; PFNGLCOMPRESSEDTEXSUBIMAGE3DPROC compressedTexSubImage3D = nullptr; PFNGLGETCOMPRESSEDTEXIMAGEPROC getCompressedTexImage = nullptr; PFNGLSAMPLECOVERAGEPROC sampleCoverage = nullptr; // 1.4 PFNGLBLENDFUNCSEPARATEPROC blendFuncSeparate = nullptr; PFNGLMULTIDRAWARRAYSPROC multiDrawArrays = nullptr; PFNGLMULTIDRAWELEMENTSPROC multiDrawElements = nullptr; PFNGLPOINTPARAMETERFPROC pointParameterf = nullptr; PFNGLPOINTPARAMETERFVPROC pointParameterfv = nullptr; PFNGLPOINTPARAMETERIPROC pointParameteri = nullptr; PFNGLPOINTPARAMETERIVPROC pointParameteriv = nullptr; // 1.5 PFNGLBEGINQUERYPROC beginQuery = nullptr; PFNGLBINDBUFFERPROC bindBuffer = nullptr; PFNGLBUFFERDATAPROC bufferData = nullptr; PFNGLBUFFERSUBDATAPROC bufferSubData = nullptr; PFNGLDELETEBUFFERSPROC deleteBuffers = nullptr; PFNGLDELETEQUERIESPROC deleteQueries = nullptr; PFNGLENDQUERYPROC endQuery = nullptr; PFNGLGENBUFFERSPROC genBuffers = nullptr; PFNGLGENQUERIESPROC genQueries = nullptr; PFNGLGETBUFFERPARAMETERIVPROC getBufferParameteriv = nullptr; PFNGLGETBUFFERPOINTERVPROC getBufferPointerv = nullptr; PFNGLGETBUFFERSUBDATAPROC getBufferSubData = nullptr; PFNGLGETQUERYOBJECTIVPROC getQueryObjectiv = nullptr; PFNGLGETQUERYOBJECTUIVPROC getQueryObjectuiv = nullptr; PFNGLGETQUERYIVPROC getQueryiv = nullptr; PFNGLISBUFFERPROC isBuffer = nullptr; PFNGLISQUERYPROC isQuery = nullptr; PFNGLMAPBUFFERPROC mapBuffer = nullptr; PFNGLUNMAPBUFFERPROC unmapBuffer = nullptr; // 2.0 PFNGLATTACHSHADERPROC attachShader = nullptr; PFNGLBINDATTRIBLOCATIONPROC bindAttribLocation = nullptr; PFNGLBLENDEQUATIONSEPARATEPROC blendEquationSeparate = nullptr; PFNGLCOMPILESHADERPROC compileShader = nullptr; PFNGLCREATEPROGRAMPROC createProgram = nullptr; PFNGLCREATESHADERPROC createShader = nullptr; PFNGLDELETEPROGRAMPROC deleteProgram = nullptr; PFNGLDELETESHADERPROC deleteShader = nullptr; PFNGLDETACHSHADERPROC detachShader = nullptr; PFNGLDISABLEVERTEXATTRIBARRAYPROC disableVertexAttribArray = nullptr; PFNGLDRAWBUFFERSPROC drawBuffers = nullptr; PFNGLENABLEVERTEXATTRIBARRAYPROC enableVertexAttribArray = nullptr; PFNGLGETACTIVEATTRIBPROC getActiveAttrib = nullptr; PFNGLGETACTIVEUNIFORMPROC getActiveUniform = nullptr; PFNGLGETATTACHEDSHADERSPROC getAttachedShaders = nullptr; PFNGLGETATTRIBLOCATIONPROC getAttribLocation = nullptr; PFNGLGETPROGRAMINFOLOGPROC getProgramInfoLog = nullptr; PFNGLGETPROGRAMIVPROC getProgramiv = nullptr; PFNGLGETSHADERINFOLOGPROC getShaderInfoLog = nullptr; PFNGLGETSHADERSOURCEPROC getShaderSource = nullptr; PFNGLGETSHADERIVPROC getShaderiv = nullptr; PFNGLGETUNIFORMLOCATIONPROC getUniformLocation = nullptr; PFNGLGETUNIFORMFVPROC getUniformfv = nullptr; PFNGLGETUNIFORMIVPROC getUniformiv = nullptr; PFNGLGETVERTEXATTRIBPOINTERVPROC getVertexAttribPointerv = nullptr; PFNGLGETVERTEXATTRIBDVPROC getVertexAttribdv = nullptr; PFNGLGETVERTEXATTRIBFVPROC getVertexAttribfv = nullptr; PFNGLGETVERTEXATTRIBIVPROC getVertexAttribiv = nullptr; PFNGLISPROGRAMPROC isProgram = nullptr; PFNGLISSHADERPROC isShader = nullptr; PFNGLLINKPROGRAMPROC linkProgram = nullptr; PFNGLSHADERSOURCEPROC shaderSource = nullptr; PFNGLSTENCILFUNCSEPARATEPROC stencilFuncSeparate = nullptr; PFNGLSTENCILMASKSEPARATEPROC stencilMaskSeparate = nullptr; PFNGLSTENCILOPSEPARATEPROC stencilOpSeparate = nullptr; PFNGLUNIFORM1FPROC uniform1f = nullptr; PFNGLUNIFORM1FVPROC uniform1fv = nullptr; PFNGLUNIFORM1IPROC uniform1i = nullptr; PFNGLUNIFORM1IVPROC uniform1iv = nullptr; PFNGLUNIFORM2FPROC uniform2f = nullptr; PFNGLUNIFORM2FVPROC uniform2fv = nullptr; PFNGLUNIFORM2IPROC uniform2i = nullptr; PFNGLUNIFORM2IVPROC uniform2iv = nullptr; PFNGLUNIFORM3FPROC uniform3f = nullptr; PFNGLUNIFORM3FVPROC uniform3fv = nullptr; PFNGLUNIFORM3IPROC uniform3i = nullptr; PFNGLUNIFORM3IVPROC uniform3iv = nullptr; PFNGLUNIFORM4FPROC uniform4f = nullptr; PFNGLUNIFORM4FVPROC uniform4fv = nullptr; PFNGLUNIFORM4IPROC uniform4i = nullptr; PFNGLUNIFORM4IVPROC uniform4iv = nullptr; PFNGLUNIFORMMATRIX2FVPROC uniformMatrix2fv = nullptr; PFNGLUNIFORMMATRIX3FVPROC uniformMatrix3fv = nullptr; PFNGLUNIFORMMATRIX4FVPROC uniformMatrix4fv = nullptr; PFNGLUSEPROGRAMPROC useProgram = nullptr; PFNGLVALIDATEPROGRAMPROC validateProgram = nullptr; PFNGLVERTEXATTRIB1DPROC vertexAttrib1d = nullptr; PFNGLVERTEXATTRIB1DVPROC vertexAttrib1dv = nullptr; PFNGLVERTEXATTRIB1FPROC vertexAttrib1f = nullptr; PFNGLVERTEXATTRIB1FVPROC vertexAttrib1fv = nullptr; PFNGLVERTEXATTRIB1SPROC vertexAttrib1s = nullptr; PFNGLVERTEXATTRIB1SVPROC vertexAttrib1sv = nullptr; PFNGLVERTEXATTRIB2DPROC vertexAttrib2d = nullptr; PFNGLVERTEXATTRIB2DVPROC vertexAttrib2dv = nullptr; PFNGLVERTEXATTRIB2FPROC vertexAttrib2f = nullptr; PFNGLVERTEXATTRIB2FVPROC vertexAttrib2fv = nullptr; PFNGLVERTEXATTRIB2SPROC vertexAttrib2s = nullptr; PFNGLVERTEXATTRIB2SVPROC vertexAttrib2sv = nullptr; PFNGLVERTEXATTRIB3DPROC vertexAttrib3d = nullptr; PFNGLVERTEXATTRIB3DVPROC vertexAttrib3dv = nullptr; PFNGLVERTEXATTRIB3FPROC vertexAttrib3f = nullptr; PFNGLVERTEXATTRIB3FVPROC vertexAttrib3fv = nullptr; PFNGLVERTEXATTRIB3SPROC vertexAttrib3s = nullptr; PFNGLVERTEXATTRIB3SVPROC vertexAttrib3sv = nullptr; PFNGLVERTEXATTRIB4NBVPROC vertexAttrib4Nbv = nullptr; PFNGLVERTEXATTRIB4NIVPROC vertexAttrib4Niv = nullptr; PFNGLVERTEXATTRIB4NSVPROC vertexAttrib4Nsv = nullptr; PFNGLVERTEXATTRIB4NUBPROC vertexAttrib4Nub = nullptr; PFNGLVERTEXATTRIB4NUBVPROC vertexAttrib4Nubv = nullptr; PFNGLVERTEXATTRIB4NUIVPROC vertexAttrib4Nuiv = nullptr; PFNGLVERTEXATTRIB4NUSVPROC vertexAttrib4Nusv = nullptr; PFNGLVERTEXATTRIB4BVPROC vertexAttrib4bv = nullptr; PFNGLVERTEXATTRIB4DPROC vertexAttrib4d = nullptr; PFNGLVERTEXATTRIB4DVPROC vertexAttrib4dv = nullptr; PFNGLVERTEXATTRIB4FPROC vertexAttrib4f = nullptr; PFNGLVERTEXATTRIB4FVPROC vertexAttrib4fv = nullptr; PFNGLVERTEXATTRIB4IVPROC vertexAttrib4iv = nullptr; PFNGLVERTEXATTRIB4SPROC vertexAttrib4s = nullptr; PFNGLVERTEXATTRIB4SVPROC vertexAttrib4sv = nullptr; PFNGLVERTEXATTRIB4UBVPROC vertexAttrib4ubv = nullptr; PFNGLVERTEXATTRIB4UIVPROC vertexAttrib4uiv = nullptr; PFNGLVERTEXATTRIB4USVPROC vertexAttrib4usv = nullptr; PFNGLVERTEXATTRIBPOINTERPROC vertexAttribPointer = nullptr; // 2.1 PFNGLUNIFORMMATRIX2X3FVPROC uniformMatrix2x3fv = nullptr; PFNGLUNIFORMMATRIX2X4FVPROC uniformMatrix2x4fv = nullptr; PFNGLUNIFORMMATRIX3X2FVPROC uniformMatrix3x2fv = nullptr; PFNGLUNIFORMMATRIX3X4FVPROC uniformMatrix3x4fv = nullptr; PFNGLUNIFORMMATRIX4X2FVPROC uniformMatrix4x2fv = nullptr; PFNGLUNIFORMMATRIX4X3FVPROC uniformMatrix4x3fv = nullptr; // 3.0 PFNGLBEGINCONDITIONALRENDERPROC beginConditionalRender = nullptr; PFNGLBEGINTRANSFORMFEEDBACKPROC beginTransformFeedback = nullptr; PFNGLBINDBUFFERBASEPROC bindBufferBase = nullptr; PFNGLBINDBUFFERRANGEPROC bindBufferRange = nullptr; PFNGLBINDFRAGDATALOCATIONPROC bindFragDataLocation = nullptr; PFNGLBINDFRAMEBUFFERPROC bindFramebuffer = nullptr; PFNGLBINDRENDERBUFFERPROC bindRenderbuffer = nullptr; PFNGLBINDVERTEXARRAYPROC bindVertexArray = nullptr; PFNGLBLITFRAMEBUFFERPROC blitFramebuffer = nullptr; PFNGLCHECKFRAMEBUFFERSTATUSPROC checkFramebufferStatus = nullptr; PFNGLCLAMPCOLORPROC clampColor = nullptr; PFNGLCLEARBUFFERFIPROC clearBufferfi = nullptr; PFNGLCLEARBUFFERFVPROC clearBufferfv = nullptr; PFNGLCLEARBUFFERIVPROC clearBufferiv = nullptr; PFNGLCLEARBUFFERUIVPROC clearBufferuiv = nullptr; PFNGLCOLORMASKIPROC colorMaski = nullptr; PFNGLDELETEFRAMEBUFFERSPROC deleteFramebuffers = nullptr; PFNGLDELETERENDERBUFFERSPROC deleteRenderbuffers = nullptr; PFNGLDELETEVERTEXARRAYSPROC deleteVertexArrays = nullptr; PFNGLDISABLEIPROC disablei = nullptr; PFNGLENABLEIPROC enablei = nullptr; PFNGLENDCONDITIONALRENDERPROC endConditionalRender = nullptr; PFNGLENDTRANSFORMFEEDBACKPROC endTransformFeedback = nullptr; PFNGLFLUSHMAPPEDBUFFERRANGEPROC flushMappedBufferRange = nullptr; PFNGLFRAMEBUFFERRENDERBUFFERPROC framebufferRenderbuffer = nullptr; PFNGLFRAMEBUFFERTEXTURE1DPROC framebufferTexture1D = nullptr; PFNGLFRAMEBUFFERTEXTURE2DPROC framebufferTexture2D = nullptr; PFNGLFRAMEBUFFERTEXTURE3DPROC framebufferTexture3D = nullptr; PFNGLFRAMEBUFFERTEXTURELAYERPROC framebufferTextureLayer = nullptr; PFNGLGENFRAMEBUFFERSPROC genFramebuffers = nullptr; PFNGLGENRENDERBUFFERSPROC genRenderbuffers = nullptr; PFNGLGENVERTEXARRAYSPROC genVertexArrays = nullptr; PFNGLGENERATEMIPMAPPROC generateMipmap = nullptr; PFNGLGETBOOLEANI_VPROC getBooleani_v = nullptr; PFNGLGETFRAGDATALOCATIONPROC getFragDataLocation = nullptr; PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVPROC getFramebufferAttachmentParameteriv = nullptr; PFNGLGETINTEGERI_VPROC getIntegeri_v = nullptr; PFNGLGETRENDERBUFFERPARAMETERIVPROC getRenderbufferParameteriv = nullptr; PFNGLGETSTRINGIPROC getStringi = nullptr; PFNGLGETTEXPARAMETERIIVPROC getTexParameterIiv = nullptr; PFNGLGETTEXPARAMETERIUIVPROC getTexParameterIuiv = nullptr; PFNGLGETTRANSFORMFEEDBACKVARYINGPROC getTransformFeedbackVarying = nullptr; PFNGLGETUNIFORMUIVPROC getUniformuiv = nullptr; PFNGLGETVERTEXATTRIBIIVPROC getVertexAttribIiv = nullptr; PFNGLGETVERTEXATTRIBIUIVPROC getVertexAttribIuiv = nullptr; PFNGLISENABLEDIPROC isEnabledi = nullptr; PFNGLISFRAMEBUFFERPROC isFramebuffer = nullptr; PFNGLISRENDERBUFFERPROC isRenderbuffer = nullptr; PFNGLISVERTEXARRAYPROC isVertexArray = nullptr; PFNGLMAPBUFFERRANGEPROC mapBufferRange = nullptr; PFNGLRENDERBUFFERSTORAGEPROC renderbufferStorage = nullptr; PFNGLRENDERBUFFERSTORAGEMULTISAMPLEPROC renderbufferStorageMultisample = nullptr; PFNGLTEXPARAMETERIIVPROC texParameterIiv = nullptr; PFNGLTEXPARAMETERIUIVPROC texParameterIuiv = nullptr; PFNGLTRANSFORMFEEDBACKVARYINGSPROC transformFeedbackVaryings = nullptr; PFNGLUNIFORM1UIPROC uniform1ui = nullptr; PFNGLUNIFORM1UIVPROC uniform1uiv = nullptr; PFNGLUNIFORM2UIPROC uniform2ui = nullptr; PFNGLUNIFORM2UIVPROC uniform2uiv = nullptr; PFNGLUNIFORM3UIPROC uniform3ui = nullptr; PFNGLUNIFORM3UIVPROC uniform3uiv = nullptr; PFNGLUNIFORM4UIPROC uniform4ui = nullptr; PFNGLUNIFORM4UIVPROC uniform4uiv = nullptr; PFNGLVERTEXATTRIBI1IPROC vertexAttribI1i = nullptr; PFNGLVERTEXATTRIBI1IVPROC vertexAttribI1iv = nullptr; PFNGLVERTEXATTRIBI1UIPROC vertexAttribI1ui = nullptr; PFNGLVERTEXATTRIBI1UIVPROC vertexAttribI1uiv = nullptr; PFNGLVERTEXATTRIBI2IPROC vertexAttribI2i = nullptr; PFNGLVERTEXATTRIBI2IVPROC vertexAttribI2iv = nullptr; PFNGLVERTEXATTRIBI2UIPROC vertexAttribI2ui = nullptr; PFNGLVERTEXATTRIBI2UIVPROC vertexAttribI2uiv = nullptr; PFNGLVERTEXATTRIBI3IPROC vertexAttribI3i = nullptr; PFNGLVERTEXATTRIBI3IVPROC vertexAttribI3iv = nullptr; PFNGLVERTEXATTRIBI3UIPROC vertexAttribI3ui = nullptr; PFNGLVERTEXATTRIBI3UIVPROC vertexAttribI3uiv = nullptr; PFNGLVERTEXATTRIBI4BVPROC vertexAttribI4bv = nullptr; PFNGLVERTEXATTRIBI4IPROC vertexAttribI4i = nullptr; PFNGLVERTEXATTRIBI4IVPROC vertexAttribI4iv = nullptr; PFNGLVERTEXATTRIBI4SVPROC vertexAttribI4sv = nullptr; PFNGLVERTEXATTRIBI4UBVPROC vertexAttribI4ubv = nullptr; PFNGLVERTEXATTRIBI4UIPROC vertexAttribI4ui = nullptr; PFNGLVERTEXATTRIBI4UIVPROC vertexAttribI4uiv = nullptr; PFNGLVERTEXATTRIBI4USVPROC vertexAttribI4usv = nullptr; PFNGLVERTEXATTRIBIPOINTERPROC vertexAttribIPointer = nullptr; // 3.1 PFNGLCOPYBUFFERSUBDATAPROC copyBufferSubData = nullptr; PFNGLDRAWARRAYSINSTANCEDPROC drawArraysInstanced = nullptr; PFNGLDRAWELEMENTSINSTANCEDPROC drawElementsInstanced = nullptr; PFNGLGETACTIVEUNIFORMBLOCKNAMEPROC getActiveUniformBlockName = nullptr; PFNGLGETACTIVEUNIFORMBLOCKIVPROC getActiveUniformBlockiv = nullptr; PFNGLGETACTIVEUNIFORMNAMEPROC getActiveUniformName = nullptr; PFNGLGETACTIVEUNIFORMSIVPROC getActiveUniformsiv = nullptr; PFNGLGETUNIFORMBLOCKINDEXPROC getUniformBlockIndex = nullptr; PFNGLGETUNIFORMINDICESPROC getUniformIndices = nullptr; PFNGLPRIMITIVERESTARTINDEXPROC primitiveRestartIndex = nullptr; PFNGLTEXBUFFERPROC texBuffer = nullptr; PFNGLUNIFORMBLOCKBINDINGPROC uniformBlockBinding = nullptr; // 3.2 PFNGLCLIENTWAITSYNCPROC clientWaitSync = nullptr; PFNGLDELETESYNCPROC deleteSync = nullptr; PFNGLDRAWELEMENTSBASEVERTEXPROC drawElementsBaseVertex = nullptr; PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXPROC drawElementsInstancedBaseVertex = nullptr; PFNGLDRAWRANGEELEMENTSBASEVERTEXPROC drawRangeElementsBaseVertex = nullptr; PFNGLFENCESYNCPROC fenceSync = nullptr; PFNGLFRAMEBUFFERTEXTUREPROC framebufferTexture = nullptr; PFNGLGETBUFFERPARAMETERI64VPROC getBufferParameteri64v = nullptr; PFNGLGETINTEGER64I_VPROC getInteger64i_v = nullptr; PFNGLGETINTEGER64VPROC getInteger64v = nullptr; PFNGLGETMULTISAMPLEFVPROC getMultisamplefv = nullptr; PFNGLGETSYNCIVPROC getSynciv = nullptr; PFNGLISSYNCPROC isSync = nullptr; PFNGLMULTIDRAWELEMENTSBASEVERTEXPROC multiDrawElementsBaseVertex = nullptr; PFNGLPROVOKINGVERTEXPROC provokingVertex = nullptr; PFNGLSAMPLEMASKIPROC sampleMaski = nullptr; PFNGLTEXIMAGE2DMULTISAMPLEPROC texImage2DMultisample = nullptr; PFNGLTEXIMAGE3DMULTISAMPLEPROC texImage3DMultisample = nullptr; PFNGLWAITSYNCPROC waitSync = nullptr; // 3.3 PFNGLBINDFRAGDATALOCATIONINDEXEDPROC bindFragDataLocationIndexed = nullptr; PFNGLBINDSAMPLERPROC bindSampler = nullptr; PFNGLDELETESAMPLERSPROC deleteSamplers = nullptr; PFNGLGENSAMPLERSPROC genSamplers = nullptr; PFNGLGETFRAGDATAINDEXPROC getFragDataIndex = nullptr; PFNGLGETQUERYOBJECTI64VPROC getQueryObjecti64v = nullptr; PFNGLGETQUERYOBJECTUI64VPROC getQueryObjectui64v = nullptr; PFNGLGETSAMPLERPARAMETERIIVPROC getSamplerParameterIiv = nullptr; PFNGLGETSAMPLERPARAMETERIUIVPROC getSamplerParameterIuiv = nullptr; PFNGLGETSAMPLERPARAMETERFVPROC getSamplerParameterfv = nullptr; PFNGLGETSAMPLERPARAMETERIVPROC getSamplerParameteriv = nullptr; PFNGLISSAMPLERPROC isSampler = nullptr; PFNGLQUERYCOUNTERPROC queryCounter = nullptr; PFNGLSAMPLERPARAMETERIIVPROC samplerParameterIiv = nullptr; PFNGLSAMPLERPARAMETERIUIVPROC samplerParameterIuiv = nullptr; PFNGLSAMPLERPARAMETERFPROC samplerParameterf = nullptr; PFNGLSAMPLERPARAMETERFVPROC samplerParameterfv = nullptr; PFNGLSAMPLERPARAMETERIPROC samplerParameteri = nullptr; PFNGLSAMPLERPARAMETERIVPROC samplerParameteriv = nullptr; PFNGLVERTEXATTRIBDIVISORPROC vertexAttribDivisor = nullptr; PFNGLVERTEXATTRIBP1UIPROC vertexAttribP1ui = nullptr; PFNGLVERTEXATTRIBP1UIVPROC vertexAttribP1uiv = nullptr; PFNGLVERTEXATTRIBP2UIPROC vertexAttribP2ui = nullptr; PFNGLVERTEXATTRIBP2UIVPROC vertexAttribP2uiv = nullptr; PFNGLVERTEXATTRIBP3UIPROC vertexAttribP3ui = nullptr; PFNGLVERTEXATTRIBP3UIVPROC vertexAttribP3uiv = nullptr; PFNGLVERTEXATTRIBP4UIPROC vertexAttribP4ui = nullptr; PFNGLVERTEXATTRIBP4UIVPROC vertexAttribP4uiv = nullptr; // 4.0 PFNGLBEGINQUERYINDEXEDPROC beginQueryIndexed = nullptr; PFNGLBINDTRANSFORMFEEDBACKPROC bindTransformFeedback = nullptr; PFNGLBLENDEQUATIONSEPARATEIPROC blendEquationSeparatei = nullptr; PFNGLBLENDEQUATIONIPROC blendEquationi = nullptr; PFNGLBLENDFUNCSEPARATEIPROC blendFuncSeparatei = nullptr; PFNGLBLENDFUNCIPROC blendFunci = nullptr; PFNGLDELETETRANSFORMFEEDBACKSPROC deleteTransformFeedbacks = nullptr; PFNGLDRAWARRAYSINDIRECTPROC drawArraysIndirect = nullptr; PFNGLDRAWELEMENTSINDIRECTPROC drawElementsIndirect = nullptr; PFNGLDRAWTRANSFORMFEEDBACKPROC drawTransformFeedback = nullptr; PFNGLDRAWTRANSFORMFEEDBACKSTREAMPROC drawTransformFeedbackStream = nullptr; PFNGLENDQUERYINDEXEDPROC endQueryIndexed = nullptr; PFNGLGENTRANSFORMFEEDBACKSPROC genTransformFeedbacks = nullptr; PFNGLGETACTIVESUBROUTINENAMEPROC getActiveSubroutineName = nullptr; PFNGLGETACTIVESUBROUTINEUNIFORMNAMEPROC getActiveSubroutineUniformName = nullptr; PFNGLGETACTIVESUBROUTINEUNIFORMIVPROC getActiveSubroutineUniformiv = nullptr; PFNGLGETPROGRAMSTAGEIVPROC getProgramStageiv = nullptr; PFNGLGETQUERYINDEXEDIVPROC getQueryIndexediv = nullptr; PFNGLGETSUBROUTINEINDEXPROC getSubroutineIndex = nullptr; PFNGLGETSUBROUTINEUNIFORMLOCATIONPROC getSubroutineUniformLocation = nullptr; PFNGLGETUNIFORMSUBROUTINEUIVPROC getUniformSubroutineuiv = nullptr; PFNGLGETUNIFORMDVPROC getUniformdv = nullptr; PFNGLISTRANSFORMFEEDBACKPROC isTransformFeedback = nullptr; PFNGLMINSAMPLESHADINGPROC minSampleShading = nullptr; PFNGLPATCHPARAMETERFVPROC patchParameterfv = nullptr; PFNGLPATCHPARAMETERIPROC patchParameteri = nullptr; PFNGLPAUSETRANSFORMFEEDBACKPROC pauseTransformFeedback = nullptr; PFNGLRESUMETRANSFORMFEEDBACKPROC resumeTransformFeedback = nullptr; PFNGLUNIFORM1DPROC uniform1d = nullptr; PFNGLUNIFORM1DVPROC uniform1dv = nullptr; PFNGLUNIFORM2DPROC uniform2d = nullptr; PFNGLUNIFORM2DVPROC uniform2dv = nullptr; PFNGLUNIFORM3DPROC uniform3d = nullptr; PFNGLUNIFORM3DVPROC uniform3dv = nullptr; PFNGLUNIFORM4DPROC uniform4d = nullptr; PFNGLUNIFORM4DVPROC uniform4dv = nullptr; PFNGLUNIFORMMATRIX2DVPROC uniformMatrix2dv = nullptr; PFNGLUNIFORMMATRIX2X3DVPROC uniformMatrix2x3dv = nullptr; PFNGLUNIFORMMATRIX2X4DVPROC uniformMatrix2x4dv = nullptr; PFNGLUNIFORMMATRIX3DVPROC uniformMatrix3dv = nullptr; PFNGLUNIFORMMATRIX3X2DVPROC uniformMatrix3x2dv = nullptr; PFNGLUNIFORMMATRIX3X4DVPROC uniformMatrix3x4dv = nullptr; PFNGLUNIFORMMATRIX4DVPROC uniformMatrix4dv = nullptr; PFNGLUNIFORMMATRIX4X2DVPROC uniformMatrix4x2dv = nullptr; PFNGLUNIFORMMATRIX4X3DVPROC uniformMatrix4x3dv = nullptr; PFNGLUNIFORMSUBROUTINESUIVPROC uniformSubroutinesuiv = nullptr; // 4.1 PFNGLACTIVESHADERPROGRAMPROC activeShaderProgram = nullptr; PFNGLBINDPROGRAMPIPELINEPROC bindProgramPipeline = nullptr; PFNGLCLEARDEPTHFPROC clearDepthf = nullptr; PFNGLCREATESHADERPROGRAMVPROC createShaderProgramv = nullptr; PFNGLDELETEPROGRAMPIPELINESPROC deleteProgramPipelines = nullptr; PFNGLDEPTHRANGEARRAYVPROC depthRangeArrayv = nullptr; PFNGLDEPTHRANGEINDEXEDPROC depthRangeIndexed = nullptr; PFNGLDEPTHRANGEFPROC depthRangef = nullptr; PFNGLGENPROGRAMPIPELINESPROC genProgramPipelines = nullptr; PFNGLGETDOUBLEI_VPROC getDoublei_v = nullptr; PFNGLGETFLOATI_VPROC getFloati_v = nullptr; PFNGLGETPROGRAMBINARYPROC getProgramBinary = nullptr; PFNGLGETPROGRAMPIPELINEINFOLOGPROC getProgramPipelineInfoLog = nullptr; PFNGLGETPROGRAMPIPELINEIVPROC getProgramPipelineiv = nullptr; PFNGLGETSHADERPRECISIONFORMATPROC getShaderPrecisionFormat = nullptr; PFNGLGETVERTEXATTRIBLDVPROC getVertexAttribLdv = nullptr; PFNGLISPROGRAMPIPELINEPROC isProgramPipeline = nullptr; PFNGLPROGRAMBINARYPROC programBinary = nullptr; PFNGLPROGRAMPARAMETERIPROC programParameteri = nullptr; PFNGLPROGRAMUNIFORM1DPROC programUniform1d = nullptr; PFNGLPROGRAMUNIFORM1DVPROC programUniform1dv = nullptr; PFNGLPROGRAMUNIFORM1FPROC programUniform1f = nullptr; PFNGLPROGRAMUNIFORM1FVPROC programUniform1fv = nullptr; PFNGLPROGRAMUNIFORM1IPROC programUniform1i = nullptr; PFNGLPROGRAMUNIFORM1IVPROC programUniform1iv = nullptr; PFNGLPROGRAMUNIFORM1UIPROC programUniform1ui = nullptr; PFNGLPROGRAMUNIFORM1UIVPROC programUniform1uiv = nullptr; PFNGLPROGRAMUNIFORM2DPROC programUniform2d = nullptr; PFNGLPROGRAMUNIFORM2DVPROC programUniform2dv = nullptr; PFNGLPROGRAMUNIFORM2FPROC programUniform2f = nullptr; PFNGLPROGRAMUNIFORM2FVPROC programUniform2fv = nullptr; PFNGLPROGRAMUNIFORM2IPROC programUniform2i = nullptr; PFNGLPROGRAMUNIFORM2IVPROC programUniform2iv = nullptr; PFNGLPROGRAMUNIFORM2UIPROC programUniform2ui = nullptr; PFNGLPROGRAMUNIFORM2UIVPROC programUniform2uiv = nullptr; PFNGLPROGRAMUNIFORM3DPROC programUniform3d = nullptr; PFNGLPROGRAMUNIFORM3DVPROC programUniform3dv = nullptr; PFNGLPROGRAMUNIFORM3FPROC programUniform3f = nullptr; PFNGLPROGRAMUNIFORM3FVPROC programUniform3fv = nullptr; PFNGLPROGRAMUNIFORM3IPROC programUniform3i = nullptr; PFNGLPROGRAMUNIFORM3IVPROC programUniform3iv = nullptr; PFNGLPROGRAMUNIFORM3UIPROC programUniform3ui = nullptr; PFNGLPROGRAMUNIFORM3UIVPROC programUniform3uiv = nullptr; PFNGLPROGRAMUNIFORM4DPROC programUniform4d = nullptr; PFNGLPROGRAMUNIFORM4DVPROC programUniform4dv = nullptr; PFNGLPROGRAMUNIFORM4FPROC programUniform4f = nullptr; PFNGLPROGRAMUNIFORM4FVPROC programUniform4fv = nullptr; PFNGLPROGRAMUNIFORM4IPROC programUniform4i = nullptr; PFNGLPROGRAMUNIFORM4IVPROC programUniform4iv = nullptr; PFNGLPROGRAMUNIFORM4UIPROC programUniform4ui = nullptr; PFNGLPROGRAMUNIFORM4UIVPROC programUniform4uiv = nullptr; PFNGLPROGRAMUNIFORMMATRIX2DVPROC programUniformMatrix2dv = nullptr; PFNGLPROGRAMUNIFORMMATRIX2FVPROC programUniformMatrix2fv = nullptr; PFNGLPROGRAMUNIFORMMATRIX2X3DVPROC programUniformMatrix2x3dv = nullptr; PFNGLPROGRAMUNIFORMMATRIX2X3FVPROC programUniformMatrix2x3fv = nullptr; PFNGLPROGRAMUNIFORMMATRIX2X4DVPROC programUniformMatrix2x4dv = nullptr; PFNGLPROGRAMUNIFORMMATRIX2X4FVPROC programUniformMatrix2x4fv = nullptr; PFNGLPROGRAMUNIFORMMATRIX3DVPROC programUniformMatrix3dv = nullptr; PFNGLPROGRAMUNIFORMMATRIX3FVPROC programUniformMatrix3fv = nullptr; PFNGLPROGRAMUNIFORMMATRIX3X2DVPROC programUniformMatrix3x2dv = nullptr; PFNGLPROGRAMUNIFORMMATRIX3X2FVPROC programUniformMatrix3x2fv = nullptr; PFNGLPROGRAMUNIFORMMATRIX3X4DVPROC programUniformMatrix3x4dv = nullptr; PFNGLPROGRAMUNIFORMMATRIX3X4FVPROC programUniformMatrix3x4fv = nullptr; PFNGLPROGRAMUNIFORMMATRIX4DVPROC programUniformMatrix4dv = nullptr; PFNGLPROGRAMUNIFORMMATRIX4FVPROC programUniformMatrix4fv = nullptr; PFNGLPROGRAMUNIFORMMATRIX4X2DVPROC programUniformMatrix4x2dv = nullptr; PFNGLPROGRAMUNIFORMMATRIX4X2FVPROC programUniformMatrix4x2fv = nullptr; PFNGLPROGRAMUNIFORMMATRIX4X3DVPROC programUniformMatrix4x3dv = nullptr; PFNGLPROGRAMUNIFORMMATRIX4X3FVPROC programUniformMatrix4x3fv = nullptr; PFNGLRELEASESHADERCOMPILERPROC releaseShaderCompiler = nullptr; PFNGLSCISSORARRAYVPROC scissorArrayv = nullptr; PFNGLSCISSORINDEXEDPROC scissorIndexed = nullptr; PFNGLSCISSORINDEXEDVPROC scissorIndexedv = nullptr; PFNGLSHADERBINARYPROC shaderBinary = nullptr; PFNGLUSEPROGRAMSTAGESPROC useProgramStages = nullptr; PFNGLVALIDATEPROGRAMPIPELINEPROC validateProgramPipeline = nullptr; PFNGLVERTEXATTRIBL1DPROC vertexAttribL1d = nullptr; PFNGLVERTEXATTRIBL1DVPROC vertexAttribL1dv = nullptr; PFNGLVERTEXATTRIBL2DPROC vertexAttribL2d = nullptr; PFNGLVERTEXATTRIBL2DVPROC vertexAttribL2dv = nullptr; PFNGLVERTEXATTRIBL3DPROC vertexAttribL3d = nullptr; PFNGLVERTEXATTRIBL3DVPROC vertexAttribL3dv = nullptr; PFNGLVERTEXATTRIBL4DPROC vertexAttribL4d = nullptr; PFNGLVERTEXATTRIBL4DVPROC vertexAttribL4dv = nullptr; PFNGLVERTEXATTRIBLPOINTERPROC vertexAttribLPointer = nullptr; PFNGLVIEWPORTARRAYVPROC viewportArrayv = nullptr; PFNGLVIEWPORTINDEXEDFPROC viewportIndexedf = nullptr; PFNGLVIEWPORTINDEXEDFVPROC viewportIndexedfv = nullptr; // 4.2 PFNGLBINDIMAGETEXTUREPROC bindImageTexture = nullptr; PFNGLDRAWARRAYSINSTANCEDBASEINSTANCEPROC drawArraysInstancedBaseInstance = nullptr; PFNGLDRAWELEMENTSINSTANCEDBASEINSTANCEPROC drawElementsInstancedBaseInstance = nullptr; PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXBASEINSTANCEPROC drawElementsInstancedBaseVertexBaseInstance = nullptr; PFNGLDRAWTRANSFORMFEEDBACKINSTANCEDPROC drawTransformFeedbackInstanced = nullptr; PFNGLDRAWTRANSFORMFEEDBACKSTREAMINSTANCEDPROC drawTransformFeedbackStreamInstanced = nullptr; PFNGLGETACTIVEATOMICCOUNTERBUFFERIVPROC getActiveAtomicCounterBufferiv = nullptr; PFNGLGETINTERNALFORMATIVPROC getInternalformativ = nullptr; PFNGLMEMORYBARRIERPROC memoryBarrier = nullptr; PFNGLTEXSTORAGE1DPROC texStorage1D = nullptr; PFNGLTEXSTORAGE2DPROC texStorage2D = nullptr; PFNGLTEXSTORAGE3DPROC texStorage3D = nullptr; // 4.3 PFNGLBINDVERTEXBUFFERPROC bindVertexBuffer = nullptr; PFNGLCLEARBUFFERDATAPROC clearBufferData = nullptr; PFNGLCLEARBUFFERSUBDATAPROC clearBufferSubData = nullptr; PFNGLCOPYIMAGESUBDATAPROC copyImageSubData = nullptr; PFNGLCOVERAGEMODULATIONNVPROC coverageModulationNV = nullptr; PFNGLDEBUGMESSAGECALLBACKPROC debugMessageCallback = nullptr; PFNGLDEBUGMESSAGECONTROLPROC debugMessageControl = nullptr; PFNGLDEBUGMESSAGEINSERTPROC debugMessageInsert = nullptr; PFNGLDISPATCHCOMPUTEPROC dispatchCompute = nullptr; PFNGLDISPATCHCOMPUTEINDIRECTPROC dispatchComputeIndirect = nullptr; PFNGLFRAMEBUFFERPARAMETERIPROC framebufferParameteri = nullptr; PFNGLGETDEBUGMESSAGELOGPROC getDebugMessageLog = nullptr; PFNGLGETFRAMEBUFFERPARAMETERIVPROC getFramebufferParameteriv = nullptr; PFNGLGETINTERNALFORMATI64VPROC getInternalformati64v = nullptr; PFNGLGETOBJECTLABELPROC getObjectLabel = nullptr; PFNGLGETOBJECTPTRLABELPROC getObjectPtrLabel = nullptr; PFNGLGETPOINTERVPROC getPointerv = nullptr; PFNGLGETPROGRAMINTERFACEIVPROC getProgramInterfaceiv = nullptr; PFNGLGETPROGRAMRESOURCEINDEXPROC getProgramResourceIndex = nullptr; PFNGLGETPROGRAMRESOURCELOCATIONPROC getProgramResourceLocation = nullptr; PFNGLGETPROGRAMRESOURCELOCATIONINDEXPROC getProgramResourceLocationIndex = nullptr; PFNGLGETPROGRAMRESOURCENAMEPROC getProgramResourceName = nullptr; PFNGLGETPROGRAMRESOURCEIVPROC getProgramResourceiv = nullptr; PFNGLINVALIDATEBUFFERDATAPROC invalidateBufferData = nullptr; PFNGLINVALIDATEBUFFERSUBDATAPROC invalidateBufferSubData = nullptr; PFNGLINVALIDATEFRAMEBUFFERPROC invalidateFramebuffer = nullptr; PFNGLINVALIDATESUBFRAMEBUFFERPROC invalidateSubFramebuffer = nullptr; PFNGLINVALIDATETEXIMAGEPROC invalidateTexImage = nullptr; PFNGLINVALIDATETEXSUBIMAGEPROC invalidateTexSubImage = nullptr; PFNGLMULTIDRAWARRAYSINDIRECTPROC multiDrawArraysIndirect = nullptr; PFNGLMULTIDRAWELEMENTSINDIRECTPROC multiDrawElementsIndirect = nullptr; PFNGLOBJECTLABELPROC objectLabel = nullptr; PFNGLOBJECTPTRLABELPROC objectPtrLabel = nullptr; PFNGLPOPDEBUGGROUPPROC popDebugGroup = nullptr; PFNGLPUSHDEBUGGROUPPROC pushDebugGroup = nullptr; PFNGLSHADERSTORAGEBLOCKBINDINGPROC shaderStorageBlockBinding = nullptr; PFNGLTEXBUFFERRANGEPROC texBufferRange = nullptr; PFNGLTEXSTORAGE2DMULTISAMPLEPROC texStorage2DMultisample = nullptr; PFNGLTEXSTORAGE3DMULTISAMPLEPROC texStorage3DMultisample = nullptr; PFNGLTEXTUREVIEWPROC textureView = nullptr; PFNGLVERTEXATTRIBBINDINGPROC vertexAttribBinding = nullptr; PFNGLVERTEXATTRIBFORMATPROC vertexAttribFormat = nullptr; PFNGLVERTEXATTRIBIFORMATPROC vertexAttribIFormat = nullptr; PFNGLVERTEXATTRIBLFORMATPROC vertexAttribLFormat = nullptr; PFNGLVERTEXBINDINGDIVISORPROC vertexBindingDivisor = nullptr; // 4.4 PFNGLBINDBUFFERSBASEPROC bindBuffersBase = nullptr; PFNGLBINDBUFFERSRANGEPROC bindBuffersRange = nullptr; PFNGLBINDIMAGETEXTURESPROC bindImageTextures = nullptr; PFNGLBINDSAMPLERSPROC bindSamplers = nullptr; PFNGLBINDTEXTURESPROC bindTextures = nullptr; PFNGLBINDVERTEXBUFFERSPROC bindVertexBuffers = nullptr; PFNGLBUFFERSTORAGEPROC bufferStorage = nullptr; PFNGLCLEARTEXIMAGEPROC clearTexImage = nullptr; PFNGLCLEARTEXSUBIMAGEPROC clearTexSubImage = nullptr; // 4.5 PFNGLBINDTEXTUREUNITPROC bindTextureUnit = nullptr; PFNGLBLITNAMEDFRAMEBUFFERPROC blitNamedFramebuffer = nullptr; PFNGLCHECKNAMEDFRAMEBUFFERSTATUSPROC checkNamedFramebufferStatus = nullptr; PFNGLCLEARNAMEDBUFFERDATAPROC clearNamedBufferData = nullptr; PFNGLCLEARNAMEDBUFFERSUBDATAPROC clearNamedBufferSubData = nullptr; PFNGLCLEARNAMEDFRAMEBUFFERFIPROC clearNamedFramebufferfi = nullptr; PFNGLCLEARNAMEDFRAMEBUFFERFVPROC clearNamedFramebufferfv = nullptr; PFNGLCLEARNAMEDFRAMEBUFFERIVPROC clearNamedFramebufferiv = nullptr; PFNGLCLEARNAMEDFRAMEBUFFERUIVPROC clearNamedFramebufferuiv = nullptr; PFNGLCLIPCONTROLPROC clipControl = nullptr; PFNGLCOMPRESSEDTEXTURESUBIMAGE1DPROC compressedTextureSubImage1D = nullptr; PFNGLCOMPRESSEDTEXTURESUBIMAGE2DPROC compressedTextureSubImage2D = nullptr; PFNGLCOMPRESSEDTEXTURESUBIMAGE3DPROC compressedTextureSubImage3D = nullptr; PFNGLCOPYNAMEDBUFFERSUBDATAPROC copyNamedBufferSubData = nullptr; PFNGLCOPYTEXTURESUBIMAGE1DPROC copyTextureSubImage1D = nullptr; PFNGLCOPYTEXTURESUBIMAGE2DPROC copyTextureSubImage2D = nullptr; PFNGLCOPYTEXTURESUBIMAGE3DPROC copyTextureSubImage3D = nullptr; PFNGLCREATEBUFFERSPROC createBuffers = nullptr; PFNGLCREATEFRAMEBUFFERSPROC createFramebuffers = nullptr; PFNGLCREATEPROGRAMPIPELINESPROC createProgramPipelines = nullptr; PFNGLCREATEQUERIESPROC createQueries = nullptr; PFNGLCREATERENDERBUFFERSPROC createRenderbuffers = nullptr; PFNGLCREATESAMPLERSPROC createSamplers = nullptr; PFNGLCREATETEXTURESPROC createTextures = nullptr; PFNGLCREATETRANSFORMFEEDBACKSPROC createTransformFeedbacks = nullptr; PFNGLCREATEVERTEXARRAYSPROC createVertexArrays = nullptr; PFNGLDISABLEVERTEXARRAYATTRIBPROC disableVertexArrayAttrib = nullptr; PFNGLENABLEVERTEXARRAYATTRIBPROC enableVertexArrayAttrib = nullptr; PFNGLFLUSHMAPPEDNAMEDBUFFERRANGEPROC flushMappedNamedBufferRange = nullptr; PFNGLGENERATETEXTUREMIPMAPPROC generateTextureMipmap = nullptr; PFNGLGETCOMPRESSEDTEXTUREIMAGEPROC getCompressedTextureImage = nullptr; PFNGLGETCOMPRESSEDTEXTURESUBIMAGEPROC getCompressedTextureSubImage = nullptr; PFNGLGETGRAPHICSRESETSTATUSPROC getGraphicsResetStatus = nullptr; PFNGLGETNAMEDBUFFERPARAMETERI64VPROC getNamedBufferParameteri64v = nullptr; PFNGLGETNAMEDBUFFERPARAMETERIVPROC getNamedBufferParameteriv = nullptr; PFNGLGETNAMEDBUFFERPOINTERVPROC getNamedBufferPointerv = nullptr; PFNGLGETNAMEDBUFFERSUBDATAPROC getNamedBufferSubData = nullptr; PFNGLGETNAMEDFRAMEBUFFERATTACHMENTPARAMETERIVPROC getNamedFramebufferAttachmentParameteriv = nullptr; PFNGLGETNAMEDFRAMEBUFFERPARAMETERIVPROC getNamedFramebufferParameteriv = nullptr; PFNGLGETNAMEDRENDERBUFFERPARAMETERIVPROC getNamedRenderbufferParameteriv = nullptr; PFNGLGETQUERYBUFFEROBJECTI64VPROC getQueryBufferObjecti64v = nullptr; PFNGLGETQUERYBUFFEROBJECTIVPROC getQueryBufferObjectiv = nullptr; PFNGLGETQUERYBUFFEROBJECTUI64VPROC getQueryBufferObjectui64v = nullptr; PFNGLGETQUERYBUFFEROBJECTUIVPROC getQueryBufferObjectuiv = nullptr; PFNGLGETTEXTUREIMAGEPROC getTextureImage = nullptr; PFNGLGETTEXTURELEVELPARAMETERFVPROC getTextureLevelParameterfv = nullptr; PFNGLGETTEXTURELEVELPARAMETERIVPROC getTextureLevelParameteriv = nullptr; PFNGLGETTEXTUREPARAMETERIIVPROC getTextureParameterIiv = nullptr; PFNGLGETTEXTUREPARAMETERIUIVPROC getTextureParameterIuiv = nullptr; PFNGLGETTEXTUREPARAMETERFVPROC getTextureParameterfv = nullptr; PFNGLGETTEXTUREPARAMETERIVPROC getTextureParameteriv = nullptr; PFNGLGETTEXTURESUBIMAGEPROC getTextureSubImage = nullptr; PFNGLGETTRANSFORMFEEDBACKI64_VPROC getTransformFeedbacki64_v = nullptr; PFNGLGETTRANSFORMFEEDBACKI_VPROC getTransformFeedbacki_v = nullptr; PFNGLGETTRANSFORMFEEDBACKIVPROC getTransformFeedbackiv = nullptr; PFNGLGETVERTEXARRAYINDEXED64IVPROC getVertexArrayIndexed64iv = nullptr; PFNGLGETVERTEXARRAYINDEXEDIVPROC getVertexArrayIndexediv = nullptr; PFNGLGETVERTEXARRAYIVPROC getVertexArrayiv = nullptr; PFNGLGETNCOMPRESSEDTEXIMAGEPROC getnCompressedTexImage = nullptr; PFNGLGETNTEXIMAGEPROC getnTexImage = nullptr; PFNGLGETNUNIFORMDVPROC getnUniformdv = nullptr; PFNGLGETNUNIFORMFVPROC getnUniformfv = nullptr; PFNGLGETNUNIFORMIVPROC getnUniformiv = nullptr; PFNGLGETNUNIFORMUIVPROC getnUniformuiv = nullptr; PFNGLINVALIDATENAMEDFRAMEBUFFERDATAPROC invalidateNamedFramebufferData = nullptr; PFNGLINVALIDATENAMEDFRAMEBUFFERSUBDATAPROC invalidateNamedFramebufferSubData = nullptr; PFNGLMAPNAMEDBUFFERPROC mapNamedBuffer = nullptr; PFNGLMAPNAMEDBUFFERRANGEPROC mapNamedBufferRange = nullptr; PFNGLMEMORYBARRIERBYREGIONPROC memoryBarrierByRegion = nullptr; PFNGLNAMEDBUFFERDATAPROC namedBufferData = nullptr; PFNGLNAMEDBUFFERSTORAGEPROC namedBufferStorage = nullptr; PFNGLNAMEDBUFFERSUBDATAPROC namedBufferSubData = nullptr; PFNGLNAMEDFRAMEBUFFERDRAWBUFFERPROC namedFramebufferDrawBuffer = nullptr; PFNGLNAMEDFRAMEBUFFERDRAWBUFFERSPROC namedFramebufferDrawBuffers = nullptr; PFNGLNAMEDFRAMEBUFFERPARAMETERIPROC namedFramebufferParameteri = nullptr; PFNGLNAMEDFRAMEBUFFERREADBUFFERPROC namedFramebufferReadBuffer = nullptr; PFNGLNAMEDFRAMEBUFFERRENDERBUFFERPROC namedFramebufferRenderbuffer = nullptr; PFNGLNAMEDFRAMEBUFFERTEXTUREPROC namedFramebufferTexture = nullptr; PFNGLNAMEDFRAMEBUFFERTEXTURELAYERPROC namedFramebufferTextureLayer = nullptr; PFNGLNAMEDRENDERBUFFERSTORAGEPROC namedRenderbufferStorage = nullptr; PFNGLNAMEDRENDERBUFFERSTORAGEMULTISAMPLEPROC namedRenderbufferStorageMultisample = nullptr; PFNGLREADNPIXELSPROC readnPixels = nullptr; PFNGLTEXTUREBARRIERPROC textureBarrier = nullptr; PFNGLTEXTUREBUFFERPROC textureBuffer = nullptr; PFNGLTEXTUREBUFFERRANGEPROC textureBufferRange = nullptr; PFNGLTEXTUREPARAMETERIIVPROC textureParameterIiv = nullptr; PFNGLTEXTUREPARAMETERIUIVPROC textureParameterIuiv = nullptr; PFNGLTEXTUREPARAMETERFPROC textureParameterf = nullptr; PFNGLTEXTUREPARAMETERFVPROC textureParameterfv = nullptr; PFNGLTEXTUREPARAMETERIPROC textureParameteri = nullptr; PFNGLTEXTUREPARAMETERIVPROC textureParameteriv = nullptr; PFNGLTEXTURESTORAGE1DPROC textureStorage1D = nullptr; PFNGLTEXTURESTORAGE2DPROC textureStorage2D = nullptr; PFNGLTEXTURESTORAGE2DMULTISAMPLEPROC textureStorage2DMultisample = nullptr; PFNGLTEXTURESTORAGE3DPROC textureStorage3D = nullptr; PFNGLTEXTURESTORAGE3DMULTISAMPLEPROC textureStorage3DMultisample = nullptr; PFNGLTEXTURESUBIMAGE1DPROC textureSubImage1D = nullptr; PFNGLTEXTURESUBIMAGE2DPROC textureSubImage2D = nullptr; PFNGLTEXTURESUBIMAGE3DPROC textureSubImage3D = nullptr; PFNGLTRANSFORMFEEDBACKBUFFERBASEPROC transformFeedbackBufferBase = nullptr; PFNGLTRANSFORMFEEDBACKBUFFERRANGEPROC transformFeedbackBufferRange = nullptr; PFNGLUNMAPNAMEDBUFFERPROC unmapNamedBuffer = nullptr; PFNGLVERTEXARRAYATTRIBBINDINGPROC vertexArrayAttribBinding = nullptr; PFNGLVERTEXARRAYATTRIBFORMATPROC vertexArrayAttribFormat = nullptr; PFNGLVERTEXARRAYATTRIBIFORMATPROC vertexArrayAttribIFormat = nullptr; PFNGLVERTEXARRAYATTRIBLFORMATPROC vertexArrayAttribLFormat = nullptr; PFNGLVERTEXARRAYBINDINGDIVISORPROC vertexArrayBindingDivisor = nullptr; PFNGLVERTEXARRAYELEMENTBUFFERPROC vertexArrayElementBuffer = nullptr; PFNGLVERTEXARRAYVERTEXBUFFERPROC vertexArrayVertexBuffer = nullptr; PFNGLVERTEXARRAYVERTEXBUFFERSPROC vertexArrayVertexBuffers = nullptr; // ES 3.2 PFNGLBLENDBARRIERPROC blendBarrier = nullptr; PFNGLPRIMITIVEBOUNDINGBOXPROC primitiveBoundingBox = nullptr; // GL_ARB_parallel_shader_compile PFNGLMAXSHADERCOMPILERTHREADSARBPROC maxShaderCompilerThreadsARB = nullptr; // GL_EXT_debug_marker PFNGLINSERTEVENTMARKEREXTPROC insertEventMarkerEXT = nullptr; PFNGLPOPGROUPMARKEREXTPROC popGroupMarkerEXT = nullptr; PFNGLPUSHGROUPMARKEREXTPROC pushGroupMarkerEXT = nullptr; // GL_EXT_discard_framebuffer PFNGLDISCARDFRAMEBUFFEREXTPROC discardFramebufferEXT = nullptr; // GL_EXT_framebuffer_blit PFNGLBLITFRAMEBUFFEREXTPROC blitFramebufferEXT = nullptr; // GL_EXT_memory_object PFNGLBUFFERSTORAGEMEMEXTPROC bufferStorageMemEXT = nullptr; PFNGLCREATEMEMORYOBJECTSEXTPROC createMemoryObjectsEXT = nullptr; PFNGLDELETEMEMORYOBJECTSEXTPROC deleteMemoryObjectsEXT = nullptr; PFNGLGETMEMORYOBJECTPARAMETERIVEXTPROC getMemoryObjectParameterivEXT = nullptr; PFNGLGETUNSIGNEDBYTEI_VEXTPROC getUnsignedBytei_vEXT = nullptr; PFNGLGETUNSIGNEDBYTEVEXTPROC getUnsignedBytevEXT = nullptr; PFNGLISMEMORYOBJECTEXTPROC isMemoryObjectEXT = nullptr; PFNGLMEMORYOBJECTPARAMETERIVEXTPROC memoryObjectParameterivEXT = nullptr; PFNGLNAMEDBUFFERSTORAGEMEMEXTPROC namedBufferStorageMemEXT = nullptr; PFNGLTEXSTORAGEMEM2DEXTPROC texStorageMem2DEXT = nullptr; PFNGLTEXSTORAGEMEM2DMULTISAMPLEEXTPROC texStorageMem2DMultisampleEXT = nullptr; PFNGLTEXSTORAGEMEM3DEXTPROC texStorageMem3DEXT = nullptr; PFNGLTEXSTORAGEMEM3DMULTISAMPLEEXTPROC texStorageMem3DMultisampleEXT = nullptr; PFNGLTEXTURESTORAGEMEM2DEXTPROC textureStorageMem2DEXT = nullptr; PFNGLTEXTURESTORAGEMEM2DMULTISAMPLEEXTPROC textureStorageMem2DMultisampleEXT = nullptr; PFNGLTEXTURESTORAGEMEM3DEXTPROC textureStorageMem3DEXT = nullptr; PFNGLTEXTURESTORAGEMEM3DMULTISAMPLEEXTPROC textureStorageMem3DMultisampleEXT = nullptr; // GL_EXT_memory_object_fd PFNGLIMPORTMEMORYFDEXTPROC importMemoryFdEXT = nullptr; // GL_EXT_memory_object_win32 PFNGLIMPORTMEMORYWIN32HANDLEEXTPROC importMemoryWin32HandleEXT = nullptr; PFNGLIMPORTMEMORYWIN32NAMEEXTPROC importMemoryWin32NameEXT = nullptr; // GL_EXT_multisampled_render_to_texture PFNGLFRAMEBUFFERTEXTURE2DMULTISAMPLEEXTPROC framebufferTexture2DMultisampleEXT = nullptr; PFNGLRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC renderbufferStorageMultisampleEXT = nullptr; // GL_EXT_semaphore PFNGLDELETESEMAPHORESEXTPROC deleteSemaphoresEXT = nullptr; PFNGLGENSEMAPHORESEXTPROC genSemaphoresEXT = nullptr; PFNGLGETSEMAPHOREPARAMETERUI64VEXTPROC getSemaphoreParameterui64vEXT = nullptr; PFNGLISSEMAPHOREEXTPROC isSemaphoreEXT = nullptr; PFNGLSEMAPHOREPARAMETERUI64VEXTPROC semaphoreParameterui64vEXT = nullptr; PFNGLSIGNALSEMAPHOREEXTPROC signalSemaphoreEXT = nullptr; PFNGLWAITSEMAPHOREEXTPROC waitSemaphoreEXT = nullptr; // GL_EXT_semaphore_fd PFNGLIMPORTSEMAPHOREFDEXTPROC importSemaphoreFdEXT = nullptr; // GL_EXT_semaphore_win32 PFNGLIMPORTSEMAPHOREWIN32HANDLEEXTPROC importSemaphoreWin32HandleEXT = nullptr; PFNGLIMPORTSEMAPHOREWIN32NAMEEXTPROC importSemaphoreWin32NameEXT = nullptr; // GL_EXT_texture_buffer PFNGLTEXBUFFEREXTPROC texBufferEXT = nullptr; PFNGLTEXBUFFERRANGEEXTPROC texBufferRangeEXT = nullptr; // GL_IMG_multisampled_render_to_texture PFNGLFRAMEBUFFERTEXTURE2DMULTISAMPLEIMGPROC framebufferTexture2DMultisampleIMG = nullptr; PFNGLRENDERBUFFERSTORAGEMULTISAMPLEIMGPROC renderbufferStorageMultisampleIMG = nullptr; // GL_KHR_parallel_shader_compile PFNGLMAXSHADERCOMPILERTHREADSKHRPROC maxShaderCompilerThreadsKHR = nullptr; // GL_NV_framebuffer_blit PFNGLBLITFRAMEBUFFERNVPROC blitFramebufferNV = nullptr; // GL_NV_internalformat_sample_query PFNGLGETINTERNALFORMATSAMPLEIVNVPROC getInternalformatSampleivNV = nullptr; // GL_OES_EGL_image PFNGLEGLIMAGETARGETRENDERBUFFERSTORAGEOESPROC eGLImageTargetRenderbufferStorageOES = nullptr; PFNGLEGLIMAGETARGETTEXTURE2DOESPROC eGLImageTargetTexture2DOES = nullptr; // GL_OES_texture_buffer PFNGLTEXBUFFEROESPROC texBufferOES = nullptr; PFNGLTEXBUFFERRANGEOESPROC texBufferRangeOES = nullptr; // GL_OVR_multiview2 PFNGLFRAMEBUFFERTEXTUREMULTIVIEWOVRPROC framebufferTextureMultiviewOVR = nullptr; // clang-format on DispatchTableGL(); virtual ~DispatchTableGL() = default; protected: virtual void *loadProcAddress(const std::string &function) const = 0; void initProcsDesktopGL(const gl::Version &version, const std::set &extensions); void initProcsGLES(const gl::Version &version, const std::set &extensions); void initProcsSharedExtensions(const std::set &extensions); #if defined(ANGLE_ENABLE_OPENGL_NULL) void initProcsDesktopGLNULL(const gl::Version &version, const std::set &extensions); void initProcsGLESNULL(const gl::Version &version, const std::set &extensions); void initProcsSharedExtensionsNULL(const std::set &extensions); #endif // defined(ANGLE_ENABLE_OPENGL_NULL) }; } // namespace rx #endif // LIBGLESV2_RENDERER_GL_DISPATCH_TABLE_GL_AUTOGEN_H_