#ifndef GrGLFunctions_DEFINED
#define GrGLFunctions_DEFINED
#include <cstring>
#include "include/gpu/gl/GrGLTypes.h"
#include "include/private/base/SkTLogic.h"
extern "C" {
GrGLActiveTextureFn;
GrGLAttachShaderFn;
GrGLBeginQueryFn;
GrGLBindAttribLocationFn;
GrGLBindBufferFn;
GrGLBindFramebufferFn;
GrGLBindRenderbufferFn;
GrGLBindTextureFn;
GrGLBindFragDataLocationFn;
GrGLBindFragDataLocationIndexedFn;
GrGLBindSamplerFn;
GrGLBindVertexArrayFn;
GrGLBlendBarrierFn;
GrGLBlendColorFn;
GrGLBlendEquationFn;
GrGLBlendFuncFn;
GrGLBlitFramebufferFn;
GrGLBufferDataFn;
GrGLBufferSubDataFn;
GrGLCheckFramebufferStatusFn;
GrGLClearFn;
GrGLClearColorFn;
GrGLClearStencilFn;
GrGLClearTexImageFn;
GrGLClearTexSubImageFn;
GrGLColorMaskFn;
GrGLCompileShaderFn;
GrGLCompressedTexImage2DFn;
GrGLCompressedTexSubImage2DFn;
GrGLCopyBufferSubDataFn;
GrGLCopyTexSubImage2DFn;
GrGLCreateProgramFn;
GrGLCreateShaderFn;
GrGLCullFaceFn;
GrGLDeleteBuffersFn;
GrGLDeleteFencesFn;
GrGLDeleteFramebuffersFn;
GrGLDeleteProgramFn;
GrGLDeleteQueriesFn;
GrGLDeleteRenderbuffersFn;
GrGLDeleteSamplersFn;
GrGLDeleteShaderFn;
GrGLDeleteTexturesFn;
GrGLDeleteVertexArraysFn;
GrGLDepthMaskFn;
GrGLDisableFn;
GrGLDisableVertexAttribArrayFn;
GrGLDrawArraysFn;
GrGLDrawArraysInstancedFn;
GrGLDrawArraysIndirectFn;
GrGLDrawBufferFn;
GrGLDrawBuffersFn;
GrGLDrawElementsFn;
GrGLDrawElementsInstancedFn;
GrGLDrawElementsIndirectFn;
GrGLDrawRangeElementsFn;
GrGLEnableFn;
GrGLEnableVertexAttribArrayFn;
GrGLEndQueryFn;
GrGLFinishFn;
GrGLFinishFenceFn;
GrGLFlushFn;
GrGLFlushMappedBufferRangeFn;
GrGLFramebufferRenderbufferFn;
GrGLFramebufferTexture2DFn;
GrGLFramebufferTexture2DMultisampleFn;
GrGLFrontFaceFn;
GrGLGenBuffersFn;
GrGLGenFencesFn;
GrGLGenFramebuffersFn;
GrGLGenerateMipmapFn;
GrGLGenQueriesFn;
GrGLGenRenderbuffersFn;
GrGLGenSamplersFn;
GrGLGenTexturesFn;
GrGLGenVertexArraysFn;
GrGLGetBufferParameterivFn;
GrGLGetErrorFn;
GrGLGetFramebufferAttachmentParameterivFn;
GrGLGetFloatvFn;
GrGLGetIntegervFn;
GrGLGetMultisamplefvFn;
GrGLGetProgramBinaryFn;
GrGLGetProgramInfoLogFn;
GrGLGetProgramivFn;
GrGLGetQueryivFn;
GrGLGetQueryObjecti64vFn;
GrGLGetQueryObjectivFn;
GrGLGetQueryObjectui64vFn;
GrGLGetQueryObjectuivFn;
GrGLGetRenderbufferParameterivFn;
GrGLGetShaderInfoLogFn;
GrGLGetShaderivFn;
GrGLGetShaderPrecisionFormatFn;
GrGLGetStringFn;
GrGLGetStringiFn;
GrGLGetTexLevelParameterivFn;
GrGLGetUniformLocationFn;
GrGLInsertEventMarkerFn;
GrGLInvalidateBufferDataFn;
GrGLInvalidateBufferSubDataFn;
GrGLInvalidateFramebufferFn;
GrGLInvalidateSubFramebufferFn;
GrGLInvalidateTexImageFn;
GrGLInvalidateTexSubImageFn;
GrGLIsTextureFn;
GrGLLineWidthFn;
GrGLLinkProgramFn;
GrGLMapBufferFn;
GrGLMapBufferRangeFn;
GrGLMapBufferSubDataFn;
GrGLMapTexSubImage2DFn;
GrGLMemoryBarrierFn;
GrGLPatchParameteriFn;
GrGLPixelStoreiFn;
GrGLPolygonModeFn;
GrGLPopGroupMarkerFn;
GrGLProgramBinaryFn;
GrGLProgramParameteriFn;
GrGLPushGroupMarkerFn;
GrGLQueryCounterFn;
GrGLReadBufferFn;
GrGLReadPixelsFn;
GrGLRenderbufferStorageFn;
GrGLRenderbufferStorageMultisampleFn;
GrGLResolveMultisampleFramebufferFn;
GrGLSamplerParameterfFn;
GrGLSamplerParameteriFn;
GrGLSamplerParameterivFn;
GrGLScissorFn;
GrGLBindUniformLocationFn;
GrGLSetFenceFn;
GrGLShaderSourceFn;
GrGLStencilFuncFn;
GrGLStencilFuncSeparateFn;
GrGLStencilMaskFn;
GrGLStencilMaskSeparateFn;
GrGLStencilOpFn;
GrGLStencilOpSeparateFn;
GrGLTexBufferFn;
GrGLTexBufferRangeFn;
GrGLTexImage2DFn;
GrGLTexParameterfFn;
GrGLTexParameterfvFn;
GrGLTexParameteriFn;
GrGLTexParameterivFn;
GrGLTexStorage2DFn;
GrGLDiscardFramebufferFn;
GrGLTestFenceFn;
GrGLTexSubImage2DFn;
GrGLTextureBarrierFn;
GrGLUniform1fFn;
GrGLUniform1iFn;
GrGLUniform1fvFn;
GrGLUniform1ivFn;
GrGLUniform2fFn;
GrGLUniform2iFn;
GrGLUniform2fvFn;
GrGLUniform2ivFn;
GrGLUniform3fFn;
GrGLUniform3iFn;
GrGLUniform3fvFn;
GrGLUniform3ivFn;
GrGLUniform4fFn;
GrGLUniform4iFn;
GrGLUniform4fvFn;
GrGLUniform4ivFn;
GrGLUniformMatrix2fvFn;
GrGLUniformMatrix3fvFn;
GrGLUniformMatrix4fvFn;
GrGLUnmapBufferFn;
GrGLUnmapBufferSubDataFn;
GrGLUnmapTexSubImage2DFn;
GrGLUseProgramFn;
GrGLVertexAttrib1fFn;
GrGLVertexAttrib2fvFn;
GrGLVertexAttrib3fvFn;
GrGLVertexAttrib4fvFn;
GrGLVertexAttribDivisorFn;
GrGLVertexAttribIPointerFn;
GrGLVertexAttribPointerFn;
GrGLViewportFn;
GrGLCoverageModulationFn;
GrGLDrawArraysInstancedBaseInstanceFn;
GrGLDrawElementsInstancedBaseVertexBaseInstanceFn;
GrGLMultiDrawArraysIndirectFn;
GrGLMultiDrawElementsIndirectFn;
GrGLMultiDrawArraysInstancedBaseInstanceFn;
GrGLMultiDrawElementsInstancedBaseVertexBaseInstanceFn;
GrGLFenceSyncFn;
GrGLIsSyncFn;
GrGLClientWaitSyncFn;
GrGLWaitSyncFn;
GrGLDeleteSyncFn;
GrGLGetInternalformativFn;
GrGLDebugMessageControlFn;
GrGLDebugMessageInsertFn;
GrGLDebugMessageCallbackFn;
GrGLGetDebugMessageLogFn;
GrGLPushDebugGroupFn;
GrGLPopDebugGroupFn;
GrGLObjectLabelFn;
GrGLWindowRectanglesFn;
GrGLStartTilingFn;
GrGLEndTilingFn;
GrEGLQueryStringFn;
GrEGLGetCurrentDisplayFn;
GrEGLCreateImageFn;
GrEGLDestroyImageFn;
}
template <typename T> class GrGLFunction;
GrGLFunction<R (Args...)>;
#endif