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


static const struct _gl2_funcs_by_name {
	const char *name;
	void *proc;
} gl2_funcs_by_name[] = {
	{"glActiveTexture", (void*)glActiveTexture},
	{"glAttachShader", (void*)glAttachShader},
	{"glBindAttribLocation", (void*)glBindAttribLocation},
	{"glBindBuffer", (void*)glBindBuffer},
	{"glBindFramebuffer", (void*)glBindFramebuffer},
	{"glBindRenderbuffer", (void*)glBindRenderbuffer},
	{"glBindTexture", (void*)glBindTexture},
	{"glBlendColor", (void*)glBlendColor},
	{"glBlendEquation", (void*)glBlendEquation},
	{"glBlendEquationSeparate", (void*)glBlendEquationSeparate},
	{"glBlendFunc", (void*)glBlendFunc},
	{"glBlendFuncSeparate", (void*)glBlendFuncSeparate},
	{"glBufferData", (void*)glBufferData},
	{"glBufferSubData", (void*)glBufferSubData},
	{"glCheckFramebufferStatus", (void*)glCheckFramebufferStatus},
	{"glClear", (void*)glClear},
	{"glClearColor", (void*)glClearColor},
	{"glClearDepthf", (void*)glClearDepthf},
	{"glClearStencil", (void*)glClearStencil},
	{"glColorMask", (void*)glColorMask},
	{"glCompileShader", (void*)glCompileShader},
	{"glCompressedTexImage2D", (void*)glCompressedTexImage2D},
	{"glCompressedTexSubImage2D", (void*)glCompressedTexSubImage2D},
	{"glCopyTexImage2D", (void*)glCopyTexImage2D},
	{"glCopyTexSubImage2D", (void*)glCopyTexSubImage2D},
	{"glCreateProgram", (void*)glCreateProgram},
	{"glCreateShader", (void*)glCreateShader},
	{"glCullFace", (void*)glCullFace},
	{"glDeleteBuffers", (void*)glDeleteBuffers},
	{"glDeleteFramebuffers", (void*)glDeleteFramebuffers},
	{"glDeleteProgram", (void*)glDeleteProgram},
	{"glDeleteRenderbuffers", (void*)glDeleteRenderbuffers},
	{"glDeleteShader", (void*)glDeleteShader},
	{"glDeleteTextures", (void*)glDeleteTextures},
	{"glDepthFunc", (void*)glDepthFunc},
	{"glDepthMask", (void*)glDepthMask},
	{"glDepthRangef", (void*)glDepthRangef},
	{"glDetachShader", (void*)glDetachShader},
	{"glDisable", (void*)glDisable},
	{"glDisableVertexAttribArray", (void*)glDisableVertexAttribArray},
	{"glDrawArrays", (void*)glDrawArrays},
	{"glDrawElements", (void*)glDrawElements},
	{"glEnable", (void*)glEnable},
	{"glEnableVertexAttribArray", (void*)glEnableVertexAttribArray},
	{"glFinish", (void*)glFinish},
	{"glFlush", (void*)glFlush},
	{"glFramebufferRenderbuffer", (void*)glFramebufferRenderbuffer},
	{"glFramebufferTexture2D", (void*)glFramebufferTexture2D},
	{"glFrontFace", (void*)glFrontFace},
	{"glGenBuffers", (void*)glGenBuffers},
	{"glGenerateMipmap", (void*)glGenerateMipmap},
	{"glGenFramebuffers", (void*)glGenFramebuffers},
	{"glGenRenderbuffers", (void*)glGenRenderbuffers},
	{"glGenTextures", (void*)glGenTextures},
	{"glGetActiveAttrib", (void*)glGetActiveAttrib},
	{"glGetActiveUniform", (void*)glGetActiveUniform},
	{"glGetAttachedShaders", (void*)glGetAttachedShaders},
	{"glGetAttribLocation", (void*)glGetAttribLocation},
	{"glGetBooleanv", (void*)glGetBooleanv},
	{"glGetBufferParameteriv", (void*)glGetBufferParameteriv},
	{"glGetError", (void*)glGetError},
	{"glGetFloatv", (void*)glGetFloatv},
	{"glGetFramebufferAttachmentParameteriv", (void*)glGetFramebufferAttachmentParameteriv},
	{"glGetIntegerv", (void*)glGetIntegerv},
	{"glGetProgramiv", (void*)glGetProgramiv},
	{"glGetProgramInfoLog", (void*)glGetProgramInfoLog},
	{"glGetRenderbufferParameteriv", (void*)glGetRenderbufferParameteriv},
	{"glGetShaderiv", (void*)glGetShaderiv},
	{"glGetShaderInfoLog", (void*)glGetShaderInfoLog},
	{"glGetShaderPrecisionFormat", (void*)glGetShaderPrecisionFormat},
	{"glGetShaderSource", (void*)glGetShaderSource},
	{"glGetString", (void*)glGetString},
	{"glGetTexParameterfv", (void*)glGetTexParameterfv},
	{"glGetTexParameteriv", (void*)glGetTexParameteriv},
	{"glGetUniformfv", (void*)glGetUniformfv},
	{"glGetUniformiv", (void*)glGetUniformiv},
	{"glGetUniformLocation", (void*)glGetUniformLocation},
	{"glGetVertexAttribfv", (void*)glGetVertexAttribfv},
	{"glGetVertexAttribiv", (void*)glGetVertexAttribiv},
	{"glGetVertexAttribPointerv", (void*)glGetVertexAttribPointerv},
	{"glHint", (void*)glHint},
	{"glIsBuffer", (void*)glIsBuffer},
	{"glIsEnabled", (void*)glIsEnabled},
	{"glIsFramebuffer", (void*)glIsFramebuffer},
	{"glIsProgram", (void*)glIsProgram},
	{"glIsRenderbuffer", (void*)glIsRenderbuffer},
	{"glIsShader", (void*)glIsShader},
	{"glIsTexture", (void*)glIsTexture},
	{"glLineWidth", (void*)glLineWidth},
	{"glLinkProgram", (void*)glLinkProgram},
	{"glPixelStorei", (void*)glPixelStorei},
	{"glPolygonOffset", (void*)glPolygonOffset},
	{"glReadPixels", (void*)glReadPixels},
	{"glReleaseShaderCompiler", (void*)glReleaseShaderCompiler},
	{"glRenderbufferStorage", (void*)glRenderbufferStorage},
	{"glSampleCoverage", (void*)glSampleCoverage},
	{"glScissor", (void*)glScissor},
	{"glShaderBinary", (void*)glShaderBinary},
	{"glShaderSource", (void*)glShaderSource},
	{"glStencilFunc", (void*)glStencilFunc},
	{"glStencilFuncSeparate", (void*)glStencilFuncSeparate},
	{"glStencilMask", (void*)glStencilMask},
	{"glStencilMaskSeparate", (void*)glStencilMaskSeparate},
	{"glStencilOp", (void*)glStencilOp},
	{"glStencilOpSeparate", (void*)glStencilOpSeparate},
	{"glTexImage2D", (void*)glTexImage2D},
	{"glTexParameterf", (void*)glTexParameterf},
	{"glTexParameterfv", (void*)glTexParameterfv},
	{"glTexParameteri", (void*)glTexParameteri},
	{"glTexParameteriv", (void*)glTexParameteriv},
	{"glTexSubImage2D", (void*)glTexSubImage2D},
	{"glUniform1f", (void*)glUniform1f},
	{"glUniform1fv", (void*)glUniform1fv},
	{"glUniform1i", (void*)glUniform1i},
	{"glUniform1iv", (void*)glUniform1iv},
	{"glUniform2f", (void*)glUniform2f},
	{"glUniform2fv", (void*)glUniform2fv},
	{"glUniform2i", (void*)glUniform2i},
	{"glUniform2iv", (void*)glUniform2iv},
	{"glUniform3f", (void*)glUniform3f},
	{"glUniform3fv", (void*)glUniform3fv},
	{"glUniform3i", (void*)glUniform3i},
	{"glUniform3iv", (void*)glUniform3iv},
	{"glUniform4f", (void*)glUniform4f},
	{"glUniform4fv", (void*)glUniform4fv},
	{"glUniform4i", (void*)glUniform4i},
	{"glUniform4iv", (void*)glUniform4iv},
	{"glUniformMatrix2fv", (void*)glUniformMatrix2fv},
	{"glUniformMatrix3fv", (void*)glUniformMatrix3fv},
	{"glUniformMatrix4fv", (void*)glUniformMatrix4fv},
	{"glUseProgram", (void*)glUseProgram},
	{"glValidateProgram", (void*)glValidateProgram},
	{"glVertexAttrib1f", (void*)glVertexAttrib1f},
	{"glVertexAttrib1fv", (void*)glVertexAttrib1fv},
	{"glVertexAttrib2f", (void*)glVertexAttrib2f},
	{"glVertexAttrib2fv", (void*)glVertexAttrib2fv},
	{"glVertexAttrib3f", (void*)glVertexAttrib3f},
	{"glVertexAttrib3fv", (void*)glVertexAttrib3fv},
	{"glVertexAttrib4f", (void*)glVertexAttrib4f},
	{"glVertexAttrib4fv", (void*)glVertexAttrib4fv},
	{"glVertexAttribPointer", (void*)glVertexAttribPointer},
	{"glViewport", (void*)glViewport},
	{"glEGLImageTargetTexture2DOES", (void*)glEGLImageTargetTexture2DOES},
	{"glEGLImageTargetRenderbufferStorageOES", (void*)glEGLImageTargetRenderbufferStorageOES},
	{"glGetProgramBinaryOES", (void*)glGetProgramBinaryOES},
	{"glProgramBinaryOES", (void*)glProgramBinaryOES},
	{"glMapBufferOES", (void*)glMapBufferOES},
	{"glUnmapBufferOES", (void*)glUnmapBufferOES},
	{"glTexImage3DOES", (void*)glTexImage3DOES},
	{"glTexSubImage3DOES", (void*)glTexSubImage3DOES},
	{"glCopyTexSubImage3DOES", (void*)glCopyTexSubImage3DOES},
	{"glCompressedTexImage3DOES", (void*)glCompressedTexImage3DOES},
	{"glCompressedTexSubImage3DOES", (void*)glCompressedTexSubImage3DOES},
	{"glFramebufferTexture3DOES", (void*)glFramebufferTexture3DOES},
	{"glBindVertexArrayOES", (void*)glBindVertexArrayOES},
	{"glDeleteVertexArraysOES", (void*)glDeleteVertexArraysOES},
	{"glGenVertexArraysOES", (void*)glGenVertexArraysOES},
	{"glIsVertexArrayOES", (void*)glIsVertexArrayOES},
	{"glDiscardFramebufferEXT", (void*)glDiscardFramebufferEXT},
	{"glMultiDrawArraysEXT", (void*)glMultiDrawArraysEXT},
	{"glMultiDrawElementsEXT", (void*)glMultiDrawElementsEXT},
	{"glGetPerfMonitorGroupsAMD", (void*)glGetPerfMonitorGroupsAMD},
	{"glGetPerfMonitorCountersAMD", (void*)glGetPerfMonitorCountersAMD},
	{"glGetPerfMonitorGroupStringAMD", (void*)glGetPerfMonitorGroupStringAMD},
	{"glGetPerfMonitorCounterStringAMD", (void*)glGetPerfMonitorCounterStringAMD},
	{"glGetPerfMonitorCounterInfoAMD", (void*)glGetPerfMonitorCounterInfoAMD},
	{"glGenPerfMonitorsAMD", (void*)glGenPerfMonitorsAMD},
	{"glDeletePerfMonitorsAMD", (void*)glDeletePerfMonitorsAMD},
	{"glSelectPerfMonitorCountersAMD", (void*)glSelectPerfMonitorCountersAMD},
	{"glBeginPerfMonitorAMD", (void*)glBeginPerfMonitorAMD},
	{"glEndPerfMonitorAMD", (void*)glEndPerfMonitorAMD},
	{"glGetPerfMonitorCounterDataAMD", (void*)glGetPerfMonitorCounterDataAMD},
	{"glRenderbufferStorageMultisampleIMG", (void*)glRenderbufferStorageMultisampleIMG},
	{"glFramebufferTexture2DMultisampleIMG", (void*)glFramebufferTexture2DMultisampleIMG},
	{"glDeleteFencesNV", (void*)glDeleteFencesNV},
	{"glGenFencesNV", (void*)glGenFencesNV},
	{"glIsFenceNV", (void*)glIsFenceNV},
	{"glTestFenceNV", (void*)glTestFenceNV},
	{"glGetFenceivNV", (void*)glGetFenceivNV},
	{"glFinishFenceNV", (void*)glFinishFenceNV},
	{"glSetFenceNV", (void*)glSetFenceNV},
	{"glCoverageMaskNV", (void*)glCoverageMaskNV},
	{"glCoverageOperationNV", (void*)glCoverageOperationNV},
	{"glGetDriverControlsQCOM", (void*)glGetDriverControlsQCOM},
	{"glGetDriverControlStringQCOM", (void*)glGetDriverControlStringQCOM},
	{"glEnableDriverControlQCOM", (void*)glEnableDriverControlQCOM},
	{"glDisableDriverControlQCOM", (void*)glDisableDriverControlQCOM},
	{"glExtGetTexturesQCOM", (void*)glExtGetTexturesQCOM},
	{"glExtGetBuffersQCOM", (void*)glExtGetBuffersQCOM},
	{"glExtGetRenderbuffersQCOM", (void*)glExtGetRenderbuffersQCOM},
	{"glExtGetFramebuffersQCOM", (void*)glExtGetFramebuffersQCOM},
	{"glExtGetTexLevelParameterivQCOM", (void*)glExtGetTexLevelParameterivQCOM},
	{"glExtTexObjectStateOverrideiQCOM", (void*)glExtTexObjectStateOverrideiQCOM},
	{"glExtGetTexSubImageQCOM", (void*)glExtGetTexSubImageQCOM},
	{"glExtGetBufferPointervQCOM", (void*)glExtGetBufferPointervQCOM},
	{"glExtGetShadersQCOM", (void*)glExtGetShadersQCOM},
	{"glExtGetProgramsQCOM", (void*)glExtGetProgramsQCOM},
	{"glExtIsProgramBinaryQCOM", (void*)glExtIsProgramBinaryQCOM},
	{"glExtGetProgramBinarySourceQCOM", (void*)glExtGetProgramBinarySourceQCOM},
	{"glStartTilingQCOM", (void*)glStartTilingQCOM},
	{"glEndTilingQCOM", (void*)glEndTilingQCOM},
};
static const int gl2_num_funcs = sizeof(gl2_funcs_by_name) / sizeof(struct _gl2_funcs_by_name);


#endif
