// Generated Code - DO NOT EDIT !!
// generated by 'emugen'
#ifndef __gles3_wrapper_context_t_h
#define __gles3_wrapper_context_t_h

#include "gles3_server_proc.h"

#include "gles3_types.h"


struct gles3_wrapper_context_t {

	glActiveTexture_wrapper_proc_t glActiveTexture;
	glAttachShader_wrapper_proc_t glAttachShader;
	glBindAttribLocation_wrapper_proc_t glBindAttribLocation;
	glBindBuffer_wrapper_proc_t glBindBuffer;
	glBindFramebuffer_wrapper_proc_t glBindFramebuffer;
	glBindRenderbuffer_wrapper_proc_t glBindRenderbuffer;
	glBindTexture_wrapper_proc_t glBindTexture;
	glBlendColor_wrapper_proc_t glBlendColor;
	glBlendEquation_wrapper_proc_t glBlendEquation;
	glBlendEquationSeparate_wrapper_proc_t glBlendEquationSeparate;
	glBlendFunc_wrapper_proc_t glBlendFunc;
	glBlendFuncSeparate_wrapper_proc_t glBlendFuncSeparate;
	glBufferData_wrapper_proc_t glBufferData;
	glBufferSubData_wrapper_proc_t glBufferSubData;
	glCheckFramebufferStatus_wrapper_proc_t glCheckFramebufferStatus;
	glClear_wrapper_proc_t glClear;
	glClearColor_wrapper_proc_t glClearColor;
	glClearDepthf_wrapper_proc_t glClearDepthf;
	glClearStencil_wrapper_proc_t glClearStencil;
	glColorMask_wrapper_proc_t glColorMask;
	glCompileShader_wrapper_proc_t glCompileShader;
	glCompressedTexImage2D_wrapper_proc_t glCompressedTexImage2D;
	glCompressedTexSubImage2D_wrapper_proc_t glCompressedTexSubImage2D;
	glCopyTexImage2D_wrapper_proc_t glCopyTexImage2D;
	glCopyTexSubImage2D_wrapper_proc_t glCopyTexSubImage2D;
	glCreateProgram_wrapper_proc_t glCreateProgram;
	glCreateShader_wrapper_proc_t glCreateShader;
	glCullFace_wrapper_proc_t glCullFace;
	glDeleteBuffers_wrapper_proc_t glDeleteBuffers;
	glDeleteFramebuffers_wrapper_proc_t glDeleteFramebuffers;
	glDeleteProgram_wrapper_proc_t glDeleteProgram;
	glDeleteRenderbuffers_wrapper_proc_t glDeleteRenderbuffers;
	glDeleteShader_wrapper_proc_t glDeleteShader;
	glDeleteTextures_wrapper_proc_t glDeleteTextures;
	glDepthFunc_wrapper_proc_t glDepthFunc;
	glDepthMask_wrapper_proc_t glDepthMask;
	glDepthRangef_wrapper_proc_t glDepthRangef;
	glDetachShader_wrapper_proc_t glDetachShader;
	glDisable_wrapper_proc_t glDisable;
	glDisableVertexAttribArray_wrapper_proc_t glDisableVertexAttribArray;
	glDrawArrays_wrapper_proc_t glDrawArrays;
	glDrawElements_wrapper_proc_t glDrawElements;
	glEnable_wrapper_proc_t glEnable;
	glEnableVertexAttribArray_wrapper_proc_t glEnableVertexAttribArray;
	glFinish_wrapper_proc_t glFinish;
	glFlush_wrapper_proc_t glFlush;
	glFramebufferRenderbuffer_wrapper_proc_t glFramebufferRenderbuffer;
	glFramebufferTexture2D_wrapper_proc_t glFramebufferTexture2D;
	glFrontFace_wrapper_proc_t glFrontFace;
	glGenBuffers_wrapper_proc_t glGenBuffers;
	glGenerateMipmap_wrapper_proc_t glGenerateMipmap;
	glGenFramebuffers_wrapper_proc_t glGenFramebuffers;
	glGenRenderbuffers_wrapper_proc_t glGenRenderbuffers;
	glGenTextures_wrapper_proc_t glGenTextures;
	glGetActiveAttrib_wrapper_proc_t glGetActiveAttrib;
	glGetActiveUniform_wrapper_proc_t glGetActiveUniform;
	glGetAttachedShaders_wrapper_proc_t glGetAttachedShaders;
	glGetAttribLocation_wrapper_proc_t glGetAttribLocation;
	glGetBooleanv_wrapper_proc_t glGetBooleanv;
	glGetBufferParameteriv_wrapper_proc_t glGetBufferParameteriv;
	glGetError_wrapper_proc_t glGetError;
	glGetFloatv_wrapper_proc_t glGetFloatv;
	glGetFramebufferAttachmentParameteriv_wrapper_proc_t glGetFramebufferAttachmentParameteriv;
	glGetIntegerv_wrapper_proc_t glGetIntegerv;
	glGetProgramiv_wrapper_proc_t glGetProgramiv;
	glGetProgramInfoLog_wrapper_proc_t glGetProgramInfoLog;
	glGetRenderbufferParameteriv_wrapper_proc_t glGetRenderbufferParameteriv;
	glGetShaderiv_wrapper_proc_t glGetShaderiv;
	glGetShaderInfoLog_wrapper_proc_t glGetShaderInfoLog;
	glGetShaderPrecisionFormat_wrapper_proc_t glGetShaderPrecisionFormat;
	glGetShaderSource_wrapper_proc_t glGetShaderSource;
	glGetString_wrapper_proc_t glGetString;
	glGetTexParameterfv_wrapper_proc_t glGetTexParameterfv;
	glGetTexParameteriv_wrapper_proc_t glGetTexParameteriv;
	glGetUniformfv_wrapper_proc_t glGetUniformfv;
	glGetUniformiv_wrapper_proc_t glGetUniformiv;
	glGetUniformLocation_wrapper_proc_t glGetUniformLocation;
	glGetVertexAttribfv_wrapper_proc_t glGetVertexAttribfv;
	glGetVertexAttribiv_wrapper_proc_t glGetVertexAttribiv;
	glGetVertexAttribPointerv_wrapper_proc_t glGetVertexAttribPointerv;
	glHint_wrapper_proc_t glHint;
	glIsBuffer_wrapper_proc_t glIsBuffer;
	glIsEnabled_wrapper_proc_t glIsEnabled;
	glIsFramebuffer_wrapper_proc_t glIsFramebuffer;
	glIsProgram_wrapper_proc_t glIsProgram;
	glIsRenderbuffer_wrapper_proc_t glIsRenderbuffer;
	glIsShader_wrapper_proc_t glIsShader;
	glIsTexture_wrapper_proc_t glIsTexture;
	glLineWidth_wrapper_proc_t glLineWidth;
	glLinkProgram_wrapper_proc_t glLinkProgram;
	glPixelStorei_wrapper_proc_t glPixelStorei;
	glPolygonOffset_wrapper_proc_t glPolygonOffset;
	glReadPixels_wrapper_proc_t glReadPixels;
	glReleaseShaderCompiler_wrapper_proc_t glReleaseShaderCompiler;
	glRenderbufferStorage_wrapper_proc_t glRenderbufferStorage;
	glSampleCoverage_wrapper_proc_t glSampleCoverage;
	glScissor_wrapper_proc_t glScissor;
	glShaderBinary_wrapper_proc_t glShaderBinary;
	glShaderSource_wrapper_proc_t glShaderSource;
	glStencilFunc_wrapper_proc_t glStencilFunc;
	glStencilFuncSeparate_wrapper_proc_t glStencilFuncSeparate;
	glStencilMask_wrapper_proc_t glStencilMask;
	glStencilMaskSeparate_wrapper_proc_t glStencilMaskSeparate;
	glStencilOp_wrapper_proc_t glStencilOp;
	glStencilOpSeparate_wrapper_proc_t glStencilOpSeparate;
	glTexImage2D_wrapper_proc_t glTexImage2D;
	glTexParameterf_wrapper_proc_t glTexParameterf;
	glTexParameterfv_wrapper_proc_t glTexParameterfv;
	glTexParameteri_wrapper_proc_t glTexParameteri;
	glTexParameteriv_wrapper_proc_t glTexParameteriv;
	glTexSubImage2D_wrapper_proc_t glTexSubImage2D;
	glUniform1f_wrapper_proc_t glUniform1f;
	glUniform1fv_wrapper_proc_t glUniform1fv;
	glUniform1i_wrapper_proc_t glUniform1i;
	glUniform1iv_wrapper_proc_t glUniform1iv;
	glUniform2f_wrapper_proc_t glUniform2f;
	glUniform2fv_wrapper_proc_t glUniform2fv;
	glUniform2i_wrapper_proc_t glUniform2i;
	glUniform2iv_wrapper_proc_t glUniform2iv;
	glUniform3f_wrapper_proc_t glUniform3f;
	glUniform3fv_wrapper_proc_t glUniform3fv;
	glUniform3i_wrapper_proc_t glUniform3i;
	glUniform3iv_wrapper_proc_t glUniform3iv;
	glUniform4f_wrapper_proc_t glUniform4f;
	glUniform4fv_wrapper_proc_t glUniform4fv;
	glUniform4i_wrapper_proc_t glUniform4i;
	glUniform4iv_wrapper_proc_t glUniform4iv;
	glUniformMatrix2fv_wrapper_proc_t glUniformMatrix2fv;
	glUniformMatrix3fv_wrapper_proc_t glUniformMatrix3fv;
	glUniformMatrix4fv_wrapper_proc_t glUniformMatrix4fv;
	glUseProgram_wrapper_proc_t glUseProgram;
	glValidateProgram_wrapper_proc_t glValidateProgram;
	glVertexAttrib1f_wrapper_proc_t glVertexAttrib1f;
	glVertexAttrib1fv_wrapper_proc_t glVertexAttrib1fv;
	glVertexAttrib2f_wrapper_proc_t glVertexAttrib2f;
	glVertexAttrib2fv_wrapper_proc_t glVertexAttrib2fv;
	glVertexAttrib3f_wrapper_proc_t glVertexAttrib3f;
	glVertexAttrib3fv_wrapper_proc_t glVertexAttrib3fv;
	glVertexAttrib4f_wrapper_proc_t glVertexAttrib4f;
	glVertexAttrib4fv_wrapper_proc_t glVertexAttrib4fv;
	glVertexAttribPointer_wrapper_proc_t glVertexAttribPointer;
	glViewport_wrapper_proc_t glViewport;
	glEGLImageTargetTexture2DOES_wrapper_proc_t glEGLImageTargetTexture2DOES;
	glEGLImageTargetRenderbufferStorageOES_wrapper_proc_t glEGLImageTargetRenderbufferStorageOES;
	glGetProgramBinaryOES_wrapper_proc_t glGetProgramBinaryOES;
	glProgramBinaryOES_wrapper_proc_t glProgramBinaryOES;
	glMapBufferOES_wrapper_proc_t glMapBufferOES;
	glUnmapBufferOES_wrapper_proc_t glUnmapBufferOES;
	glTexImage3DOES_wrapper_proc_t glTexImage3DOES;
	glTexSubImage3DOES_wrapper_proc_t glTexSubImage3DOES;
	glCopyTexSubImage3DOES_wrapper_proc_t glCopyTexSubImage3DOES;
	glCompressedTexImage3DOES_wrapper_proc_t glCompressedTexImage3DOES;
	glCompressedTexSubImage3DOES_wrapper_proc_t glCompressedTexSubImage3DOES;
	glFramebufferTexture3DOES_wrapper_proc_t glFramebufferTexture3DOES;
	glBindVertexArrayOES_wrapper_proc_t glBindVertexArrayOES;
	glDeleteVertexArraysOES_wrapper_proc_t glDeleteVertexArraysOES;
	glGenVertexArraysOES_wrapper_proc_t glGenVertexArraysOES;
	glIsVertexArrayOES_wrapper_proc_t glIsVertexArrayOES;
	glDiscardFramebufferEXT_wrapper_proc_t glDiscardFramebufferEXT;
	glMultiDrawArraysEXT_wrapper_proc_t glMultiDrawArraysEXT;
	glMultiDrawElementsEXT_wrapper_proc_t glMultiDrawElementsEXT;
	glGetPerfMonitorGroupsAMD_wrapper_proc_t glGetPerfMonitorGroupsAMD;
	glGetPerfMonitorCountersAMD_wrapper_proc_t glGetPerfMonitorCountersAMD;
	glGetPerfMonitorGroupStringAMD_wrapper_proc_t glGetPerfMonitorGroupStringAMD;
	glGetPerfMonitorCounterStringAMD_wrapper_proc_t glGetPerfMonitorCounterStringAMD;
	glGetPerfMonitorCounterInfoAMD_wrapper_proc_t glGetPerfMonitorCounterInfoAMD;
	glGenPerfMonitorsAMD_wrapper_proc_t glGenPerfMonitorsAMD;
	glDeletePerfMonitorsAMD_wrapper_proc_t glDeletePerfMonitorsAMD;
	glSelectPerfMonitorCountersAMD_wrapper_proc_t glSelectPerfMonitorCountersAMD;
	glBeginPerfMonitorAMD_wrapper_proc_t glBeginPerfMonitorAMD;
	glEndPerfMonitorAMD_wrapper_proc_t glEndPerfMonitorAMD;
	glGetPerfMonitorCounterDataAMD_wrapper_proc_t glGetPerfMonitorCounterDataAMD;
	glRenderbufferStorageMultisampleIMG_wrapper_proc_t glRenderbufferStorageMultisampleIMG;
	glFramebufferTexture2DMultisampleIMG_wrapper_proc_t glFramebufferTexture2DMultisampleIMG;
	glDeleteFencesNV_wrapper_proc_t glDeleteFencesNV;
	glGenFencesNV_wrapper_proc_t glGenFencesNV;
	glIsFenceNV_wrapper_proc_t glIsFenceNV;
	glTestFenceNV_wrapper_proc_t glTestFenceNV;
	glGetFenceivNV_wrapper_proc_t glGetFenceivNV;
	glFinishFenceNV_wrapper_proc_t glFinishFenceNV;
	glSetFenceNV_wrapper_proc_t glSetFenceNV;
	glCoverageMaskNV_wrapper_proc_t glCoverageMaskNV;
	glCoverageOperationNV_wrapper_proc_t glCoverageOperationNV;
	glGetDriverControlsQCOM_wrapper_proc_t glGetDriverControlsQCOM;
	glGetDriverControlStringQCOM_wrapper_proc_t glGetDriverControlStringQCOM;
	glEnableDriverControlQCOM_wrapper_proc_t glEnableDriverControlQCOM;
	glDisableDriverControlQCOM_wrapper_proc_t glDisableDriverControlQCOM;
	glExtGetTexturesQCOM_wrapper_proc_t glExtGetTexturesQCOM;
	glExtGetBuffersQCOM_wrapper_proc_t glExtGetBuffersQCOM;
	glExtGetRenderbuffersQCOM_wrapper_proc_t glExtGetRenderbuffersQCOM;
	glExtGetFramebuffersQCOM_wrapper_proc_t glExtGetFramebuffersQCOM;
	glExtGetTexLevelParameterivQCOM_wrapper_proc_t glExtGetTexLevelParameterivQCOM;
	glExtTexObjectStateOverrideiQCOM_wrapper_proc_t glExtTexObjectStateOverrideiQCOM;
	glExtGetTexSubImageQCOM_wrapper_proc_t glExtGetTexSubImageQCOM;
	glExtGetBufferPointervQCOM_wrapper_proc_t glExtGetBufferPointervQCOM;
	glExtGetShadersQCOM_wrapper_proc_t glExtGetShadersQCOM;
	glExtGetProgramsQCOM_wrapper_proc_t glExtGetProgramsQCOM;
	glExtIsProgramBinaryQCOM_wrapper_proc_t glExtIsProgramBinaryQCOM;
	glExtGetProgramBinarySourceQCOM_wrapper_proc_t glExtGetProgramBinarySourceQCOM;
	glStartTilingQCOM_wrapper_proc_t glStartTilingQCOM;
	glEndTilingQCOM_wrapper_proc_t glEndTilingQCOM;
	glVertexAttribPointerData_wrapper_proc_t glVertexAttribPointerData;
	glVertexAttribPointerOffset_wrapper_proc_t glVertexAttribPointerOffset;
	glDrawElementsOffset_wrapper_proc_t glDrawElementsOffset;
	glDrawElementsData_wrapper_proc_t glDrawElementsData;
	glGetCompressedTextureFormats_wrapper_proc_t glGetCompressedTextureFormats;
	glShaderString_wrapper_proc_t glShaderString;
	glFinishRoundTrip_wrapper_proc_t glFinishRoundTrip;
	glGenVertexArrays_wrapper_proc_t glGenVertexArrays;
	glBindVertexArray_wrapper_proc_t glBindVertexArray;
	glDeleteVertexArrays_wrapper_proc_t glDeleteVertexArrays;
	glIsVertexArray_wrapper_proc_t glIsVertexArray;
	glMapBufferRange_wrapper_proc_t glMapBufferRange;
	glUnmapBuffer_wrapper_proc_t glUnmapBuffer;
	glFlushMappedBufferRange_wrapper_proc_t glFlushMappedBufferRange;
	glMapBufferRangeAEMU_wrapper_proc_t glMapBufferRangeAEMU;
	glUnmapBufferAEMU_wrapper_proc_t glUnmapBufferAEMU;
	glFlushMappedBufferRangeAEMU_wrapper_proc_t glFlushMappedBufferRangeAEMU;
	glReadPixelsOffsetAEMU_wrapper_proc_t glReadPixelsOffsetAEMU;
	glCompressedTexImage2DOffsetAEMU_wrapper_proc_t glCompressedTexImage2DOffsetAEMU;
	glCompressedTexSubImage2DOffsetAEMU_wrapper_proc_t glCompressedTexSubImage2DOffsetAEMU;
	glTexImage2DOffsetAEMU_wrapper_proc_t glTexImage2DOffsetAEMU;
	glTexSubImage2DOffsetAEMU_wrapper_proc_t glTexSubImage2DOffsetAEMU;
	glBindBufferRange_wrapper_proc_t glBindBufferRange;
	glBindBufferBase_wrapper_proc_t glBindBufferBase;
	glCopyBufferSubData_wrapper_proc_t glCopyBufferSubData;
	glClearBufferiv_wrapper_proc_t glClearBufferiv;
	glClearBufferuiv_wrapper_proc_t glClearBufferuiv;
	glClearBufferfv_wrapper_proc_t glClearBufferfv;
	glClearBufferfi_wrapper_proc_t glClearBufferfi;
	glGetBufferParameteri64v_wrapper_proc_t glGetBufferParameteri64v;
	glGetBufferPointerv_wrapper_proc_t glGetBufferPointerv;
	glUniformBlockBinding_wrapper_proc_t glUniformBlockBinding;
	glGetUniformBlockIndex_wrapper_proc_t glGetUniformBlockIndex;
	glGetUniformIndices_wrapper_proc_t glGetUniformIndices;
	glGetUniformIndicesAEMU_wrapper_proc_t glGetUniformIndicesAEMU;
	glGetActiveUniformBlockiv_wrapper_proc_t glGetActiveUniformBlockiv;
	glGetActiveUniformBlockName_wrapper_proc_t glGetActiveUniformBlockName;
	glUniform1ui_wrapper_proc_t glUniform1ui;
	glUniform2ui_wrapper_proc_t glUniform2ui;
	glUniform3ui_wrapper_proc_t glUniform3ui;
	glUniform4ui_wrapper_proc_t glUniform4ui;
	glUniform1uiv_wrapper_proc_t glUniform1uiv;
	glUniform2uiv_wrapper_proc_t glUniform2uiv;
	glUniform3uiv_wrapper_proc_t glUniform3uiv;
	glUniform4uiv_wrapper_proc_t glUniform4uiv;
	glUniformMatrix2x3fv_wrapper_proc_t glUniformMatrix2x3fv;
	glUniformMatrix3x2fv_wrapper_proc_t glUniformMatrix3x2fv;
	glUniformMatrix2x4fv_wrapper_proc_t glUniformMatrix2x4fv;
	glUniformMatrix4x2fv_wrapper_proc_t glUniformMatrix4x2fv;
	glUniformMatrix3x4fv_wrapper_proc_t glUniformMatrix3x4fv;
	glUniformMatrix4x3fv_wrapper_proc_t glUniformMatrix4x3fv;
	glGetUniformuiv_wrapper_proc_t glGetUniformuiv;
	glGetActiveUniformsiv_wrapper_proc_t glGetActiveUniformsiv;
	glVertexAttribI4i_wrapper_proc_t glVertexAttribI4i;
	glVertexAttribI4ui_wrapper_proc_t glVertexAttribI4ui;
	glVertexAttribI4iv_wrapper_proc_t glVertexAttribI4iv;
	glVertexAttribI4uiv_wrapper_proc_t glVertexAttribI4uiv;
	glVertexAttribIPointer_wrapper_proc_t glVertexAttribIPointer;
	glVertexAttribIPointerOffsetAEMU_wrapper_proc_t glVertexAttribIPointerOffsetAEMU;
	glVertexAttribIPointerDataAEMU_wrapper_proc_t glVertexAttribIPointerDataAEMU;
	glGetVertexAttribIiv_wrapper_proc_t glGetVertexAttribIiv;
	glGetVertexAttribIuiv_wrapper_proc_t glGetVertexAttribIuiv;
	glVertexAttribDivisor_wrapper_proc_t glVertexAttribDivisor;
	glDrawArraysInstanced_wrapper_proc_t glDrawArraysInstanced;
	glDrawElementsInstanced_wrapper_proc_t glDrawElementsInstanced;
	glDrawElementsInstancedDataAEMU_wrapper_proc_t glDrawElementsInstancedDataAEMU;
	glDrawElementsInstancedOffsetAEMU_wrapper_proc_t glDrawElementsInstancedOffsetAEMU;
	glDrawRangeElements_wrapper_proc_t glDrawRangeElements;
	glDrawRangeElementsDataAEMU_wrapper_proc_t glDrawRangeElementsDataAEMU;
	glDrawRangeElementsOffsetAEMU_wrapper_proc_t glDrawRangeElementsOffsetAEMU;
	glFenceSync_wrapper_proc_t glFenceSync;
	glClientWaitSync_wrapper_proc_t glClientWaitSync;
	glWaitSync_wrapper_proc_t glWaitSync;
	glDeleteSync_wrapper_proc_t glDeleteSync;
	glIsSync_wrapper_proc_t glIsSync;
	glGetSynciv_wrapper_proc_t glGetSynciv;
	glFenceSyncAEMU_wrapper_proc_t glFenceSyncAEMU;
	glClientWaitSyncAEMU_wrapper_proc_t glClientWaitSyncAEMU;
	glWaitSyncAEMU_wrapper_proc_t glWaitSyncAEMU;
	glDeleteSyncAEMU_wrapper_proc_t glDeleteSyncAEMU;
	glIsSyncAEMU_wrapper_proc_t glIsSyncAEMU;
	glGetSyncivAEMU_wrapper_proc_t glGetSyncivAEMU;
	glDrawBuffers_wrapper_proc_t glDrawBuffers;
	glReadBuffer_wrapper_proc_t glReadBuffer;
	glBlitFramebuffer_wrapper_proc_t glBlitFramebuffer;
	glInvalidateFramebuffer_wrapper_proc_t glInvalidateFramebuffer;
	glInvalidateSubFramebuffer_wrapper_proc_t glInvalidateSubFramebuffer;
	glFramebufferTextureLayer_wrapper_proc_t glFramebufferTextureLayer;
	glRenderbufferStorageMultisample_wrapper_proc_t glRenderbufferStorageMultisample;
	glTexStorage2D_wrapper_proc_t glTexStorage2D;
	glGetInternalformativ_wrapper_proc_t glGetInternalformativ;
	glBeginTransformFeedback_wrapper_proc_t glBeginTransformFeedback;
	glEndTransformFeedback_wrapper_proc_t glEndTransformFeedback;
	glGenTransformFeedbacks_wrapper_proc_t glGenTransformFeedbacks;
	glDeleteTransformFeedbacks_wrapper_proc_t glDeleteTransformFeedbacks;
	glBindTransformFeedback_wrapper_proc_t glBindTransformFeedback;
	glPauseTransformFeedback_wrapper_proc_t glPauseTransformFeedback;
	glResumeTransformFeedback_wrapper_proc_t glResumeTransformFeedback;
	glIsTransformFeedback_wrapper_proc_t glIsTransformFeedback;
	glTransformFeedbackVaryings_wrapper_proc_t glTransformFeedbackVaryings;
	glTransformFeedbackVaryingsAEMU_wrapper_proc_t glTransformFeedbackVaryingsAEMU;
	glGetTransformFeedbackVarying_wrapper_proc_t glGetTransformFeedbackVarying;
	glGenSamplers_wrapper_proc_t glGenSamplers;
	glDeleteSamplers_wrapper_proc_t glDeleteSamplers;
	glBindSampler_wrapper_proc_t glBindSampler;
	glSamplerParameterf_wrapper_proc_t glSamplerParameterf;
	glSamplerParameteri_wrapper_proc_t glSamplerParameteri;
	glSamplerParameterfv_wrapper_proc_t glSamplerParameterfv;
	glSamplerParameteriv_wrapper_proc_t glSamplerParameteriv;
	glGetSamplerParameterfv_wrapper_proc_t glGetSamplerParameterfv;
	glGetSamplerParameteriv_wrapper_proc_t glGetSamplerParameteriv;
	glIsSampler_wrapper_proc_t glIsSampler;
	glGenQueries_wrapper_proc_t glGenQueries;
	glDeleteQueries_wrapper_proc_t glDeleteQueries;
	glBeginQuery_wrapper_proc_t glBeginQuery;
	glEndQuery_wrapper_proc_t glEndQuery;
	glGetQueryiv_wrapper_proc_t glGetQueryiv;
	glGetQueryObjectuiv_wrapper_proc_t glGetQueryObjectuiv;
	glIsQuery_wrapper_proc_t glIsQuery;
	glProgramParameteri_wrapper_proc_t glProgramParameteri;
	glProgramBinary_wrapper_proc_t glProgramBinary;
	glGetProgramBinary_wrapper_proc_t glGetProgramBinary;
	glGetFragDataLocation_wrapper_proc_t glGetFragDataLocation;
	glGetInteger64v_wrapper_proc_t glGetInteger64v;
	glGetIntegeri_v_wrapper_proc_t glGetIntegeri_v;
	glGetInteger64i_v_wrapper_proc_t glGetInteger64i_v;
	glTexImage3D_wrapper_proc_t glTexImage3D;
	glTexImage3DOffsetAEMU_wrapper_proc_t glTexImage3DOffsetAEMU;
	glTexStorage3D_wrapper_proc_t glTexStorage3D;
	glTexSubImage3D_wrapper_proc_t glTexSubImage3D;
	glTexSubImage3DOffsetAEMU_wrapper_proc_t glTexSubImage3DOffsetAEMU;
	glCompressedTexImage3D_wrapper_proc_t glCompressedTexImage3D;
	glCompressedTexImage3DOffsetAEMU_wrapper_proc_t glCompressedTexImage3DOffsetAEMU;
	glCompressedTexSubImage3D_wrapper_proc_t glCompressedTexSubImage3D;
	glCompressedTexSubImage3DOffsetAEMU_wrapper_proc_t glCompressedTexSubImage3DOffsetAEMU;
	glCopyTexSubImage3D_wrapper_proc_t glCopyTexSubImage3D;
	glGetStringi_wrapper_proc_t glGetStringi;
	glGetBooleani_v_wrapper_proc_t glGetBooleani_v;
	glMemoryBarrier_wrapper_proc_t glMemoryBarrier;
	glMemoryBarrierByRegion_wrapper_proc_t glMemoryBarrierByRegion;
	glGenProgramPipelines_wrapper_proc_t glGenProgramPipelines;
	glDeleteProgramPipelines_wrapper_proc_t glDeleteProgramPipelines;
	glBindProgramPipeline_wrapper_proc_t glBindProgramPipeline;
	glGetProgramPipelineiv_wrapper_proc_t glGetProgramPipelineiv;
	glGetProgramPipelineInfoLog_wrapper_proc_t glGetProgramPipelineInfoLog;
	glValidateProgramPipeline_wrapper_proc_t glValidateProgramPipeline;
	glIsProgramPipeline_wrapper_proc_t glIsProgramPipeline;
	glUseProgramStages_wrapper_proc_t glUseProgramStages;
	glActiveShaderProgram_wrapper_proc_t glActiveShaderProgram;
	glCreateShaderProgramv_wrapper_proc_t glCreateShaderProgramv;
	glCreateShaderProgramvAEMU_wrapper_proc_t glCreateShaderProgramvAEMU;
	glProgramUniform1f_wrapper_proc_t glProgramUniform1f;
	glProgramUniform2f_wrapper_proc_t glProgramUniform2f;
	glProgramUniform3f_wrapper_proc_t glProgramUniform3f;
	glProgramUniform4f_wrapper_proc_t glProgramUniform4f;
	glProgramUniform1i_wrapper_proc_t glProgramUniform1i;
	glProgramUniform2i_wrapper_proc_t glProgramUniform2i;
	glProgramUniform3i_wrapper_proc_t glProgramUniform3i;
	glProgramUniform4i_wrapper_proc_t glProgramUniform4i;
	glProgramUniform1ui_wrapper_proc_t glProgramUniform1ui;
	glProgramUniform2ui_wrapper_proc_t glProgramUniform2ui;
	glProgramUniform3ui_wrapper_proc_t glProgramUniform3ui;
	glProgramUniform4ui_wrapper_proc_t glProgramUniform4ui;
	glProgramUniform1fv_wrapper_proc_t glProgramUniform1fv;
	glProgramUniform2fv_wrapper_proc_t glProgramUniform2fv;
	glProgramUniform3fv_wrapper_proc_t glProgramUniform3fv;
	glProgramUniform4fv_wrapper_proc_t glProgramUniform4fv;
	glProgramUniform1iv_wrapper_proc_t glProgramUniform1iv;
	glProgramUniform2iv_wrapper_proc_t glProgramUniform2iv;
	glProgramUniform3iv_wrapper_proc_t glProgramUniform3iv;
	glProgramUniform4iv_wrapper_proc_t glProgramUniform4iv;
	glProgramUniform1uiv_wrapper_proc_t glProgramUniform1uiv;
	glProgramUniform2uiv_wrapper_proc_t glProgramUniform2uiv;
	glProgramUniform3uiv_wrapper_proc_t glProgramUniform3uiv;
	glProgramUniform4uiv_wrapper_proc_t glProgramUniform4uiv;
	glProgramUniformMatrix2fv_wrapper_proc_t glProgramUniformMatrix2fv;
	glProgramUniformMatrix3fv_wrapper_proc_t glProgramUniformMatrix3fv;
	glProgramUniformMatrix4fv_wrapper_proc_t glProgramUniformMatrix4fv;
	glProgramUniformMatrix2x3fv_wrapper_proc_t glProgramUniformMatrix2x3fv;
	glProgramUniformMatrix3x2fv_wrapper_proc_t glProgramUniformMatrix3x2fv;
	glProgramUniformMatrix2x4fv_wrapper_proc_t glProgramUniformMatrix2x4fv;
	glProgramUniformMatrix4x2fv_wrapper_proc_t glProgramUniformMatrix4x2fv;
	glProgramUniformMatrix3x4fv_wrapper_proc_t glProgramUniformMatrix3x4fv;
	glProgramUniformMatrix4x3fv_wrapper_proc_t glProgramUniformMatrix4x3fv;
	glGetProgramInterfaceiv_wrapper_proc_t glGetProgramInterfaceiv;
	glGetProgramResourceiv_wrapper_proc_t glGetProgramResourceiv;
	glGetProgramResourceIndex_wrapper_proc_t glGetProgramResourceIndex;
	glGetProgramResourceLocation_wrapper_proc_t glGetProgramResourceLocation;
	glGetProgramResourceName_wrapper_proc_t glGetProgramResourceName;
	glBindImageTexture_wrapper_proc_t glBindImageTexture;
	glDispatchCompute_wrapper_proc_t glDispatchCompute;
	glDispatchComputeIndirect_wrapper_proc_t glDispatchComputeIndirect;
	glBindVertexBuffer_wrapper_proc_t glBindVertexBuffer;
	glVertexAttribBinding_wrapper_proc_t glVertexAttribBinding;
	glVertexAttribFormat_wrapper_proc_t glVertexAttribFormat;
	glVertexAttribIFormat_wrapper_proc_t glVertexAttribIFormat;
	glVertexBindingDivisor_wrapper_proc_t glVertexBindingDivisor;
	glDrawArraysIndirect_wrapper_proc_t glDrawArraysIndirect;
	glDrawArraysIndirectDataAEMU_wrapper_proc_t glDrawArraysIndirectDataAEMU;
	glDrawArraysIndirectOffsetAEMU_wrapper_proc_t glDrawArraysIndirectOffsetAEMU;
	glDrawElementsIndirect_wrapper_proc_t glDrawElementsIndirect;
	glDrawElementsIndirectDataAEMU_wrapper_proc_t glDrawElementsIndirectDataAEMU;
	glDrawElementsIndirectOffsetAEMU_wrapper_proc_t glDrawElementsIndirectOffsetAEMU;
	glTexStorage2DMultisample_wrapper_proc_t glTexStorage2DMultisample;
	glSampleMaski_wrapper_proc_t glSampleMaski;
	glGetMultisamplefv_wrapper_proc_t glGetMultisamplefv;
	glFramebufferParameteri_wrapper_proc_t glFramebufferParameteri;
	glGetFramebufferParameteriv_wrapper_proc_t glGetFramebufferParameteriv;
	glGetTexLevelParameterfv_wrapper_proc_t glGetTexLevelParameterfv;
	glGetTexLevelParameteriv_wrapper_proc_t glGetTexLevelParameteriv;
	virtual ~gles3_wrapper_context_t() {}

	typedef gles3_wrapper_context_t *CONTEXT_ACCESSOR_TYPE(void);
	static void setContextAccessor(CONTEXT_ACCESSOR_TYPE *f);
	int initDispatchByName( void *(*getProc)(const char *name, void *userData), void *userData);
};

#endif
