#ifdef HAVE_OPENGL
-#include <algorithm>
-#include <string.h>
+#include <string>
#include "gl_core_3_1.hpp"
#if defined(__APPLE__)
-#include <mach-o/dyld.h>
+ #include <mach-o/dyld.h>
-static void* AppleGLGetProcAddress (const GLubyte *name)
-{
- static const struct mach_header* image = NULL;
- NSSymbol symbol;
- char* symbolName;
- if (NULL == image)
- {
- image = NSAddImage("/System/Library/Frameworks/OpenGL.framework/Versions/Current/OpenGL", NSADDIMAGE_OPTION_RETURN_ON_ERROR);
- }
- /* prepend a '_' for the Unix C symbol mangling convention */
- symbolName = malloc(strlen((const char*)name) + 2);
- strcpy(symbolName+1, (const char*)name);
- symbolName[0] = '_';
- symbol = NULL;
- /* if (NSIsSymbolNameDefined(symbolName))
- symbol = NSLookupAndBindSymbol(symbolName); */
- symbol = image ? NSLookupSymbolInImage(image, symbolName, NSLOOKUPSYMBOLINIMAGE_OPTION_BIND | NSLOOKUPSYMBOLINIMAGE_OPTION_RETURN_ON_ERROR) : NULL;
- free(symbolName);
- return symbol ? NSAddressOfSymbol(symbol) : NULL;
-}
-#endif /* __APPLE__ */
+ static void* AppleGLGetProcAddress (const GLubyte *name)
+ {
+ static const struct mach_header* image = 0;
+ if (!image)
+ image = NSAddImage("/System/Library/Frameworks/OpenGL.framework/Versions/Current/OpenGL", NSADDIMAGE_OPTION_RETURN_ON_ERROR);
+
+ // prepend a '_' for the Unix C symbol mangling convention
+ std::string symbolName = "_";
+ symbolName += std::string((const char*)name);
+
+ NSSymbol symbol = image ? NSLookupSymbolInImage(image, &symbolName[0], NSLOOKUPSYMBOLINIMAGE_OPTION_BIND | NSLOOKUPSYMBOLINIMAGE_OPTION_RETURN_ON_ERROR) : 0;
+
+ return symbol ? NSAddressOfSymbol(symbol) : 0;
+ }
+#endif // __APPLE__
#if defined(__sgi) || defined (__sun)
-#include <dlfcn.h>
-#include <stdio.h>
+ #include <dlfcn.h>
+ #include <stdio.h>
-static void* SunGetProcAddress (const GLubyte* name)
-{
- static void* h = NULL;
- static void* gpa;
-
- if (h == NULL)
- {
- if ((h = dlopen(NULL, RTLD_LAZY | RTLD_LOCAL)) == NULL) return NULL;
- gpa = dlsym(h, "glXGetProcAddress");
- }
-
- if (gpa != NULL)
- return ((void*(*)(const GLubyte*))gpa)(name);
- else
- return dlsym(h, (const char*)name);
-}
+ static void* SunGetProcAddress (const GLubyte* name)
+ {
+ typedef void* (func_t*)(const GLubyte*);
+
+ static void* h = 0;
+ static func_t gpa = 0;
+
+ if (!h)
+ {
+ h = dlopen(NULL, RTLD_LAZY | RTLD_LOCAL);
+ if (!h)
+ return 0;
+ gpa = (func_t) dlsym(h, "glXGetProcAddress");
+ }
+
+ return gpa ? gpa(name) : dlsym(h, (const char*) name);
+ }
#endif /* __sgi || __sun */
#if defined(_WIN32)
+ #ifdef _MSC_VER
+ #pragma warning(disable: 4055)
+ #pragma warning(disable: 4054)
+ #endif
-#ifdef _MSC_VER
-#pragma warning(disable: 4055)
-#pragma warning(disable: 4054)
-#endif
+ static int TestPointer(const PROC pTest)
+ {
+ if(!pTest)
+ return 0;
-static int TestPointer(const PROC pTest)
-{
- ptrdiff_t iTest;
- if(!pTest) return 0;
- iTest = (ptrdiff_t)pTest;
+ ptrdiff_t iTest = (ptrdiff_t) pTest;
- if(iTest == 1 || iTest == 2 || iTest == 3 || iTest == -1) return 0;
+ if (iTest == 1 || iTest == 2 || iTest == 3 || iTest == -1)
+ return 0;
- return 1;
-}
+ return 1;
+ }
-static PROC WinGetProcAddress(const char *name)
-{
- HMODULE glMod = NULL;
- PROC pFunc = wglGetProcAddress((LPCSTR)name);
- if(TestPointer(pFunc))
+ static PROC WinGetProcAddress(const char* name)
{
- return pFunc;
+ PROC pFunc = wglGetProcAddress((LPCSTR) name);
+ if (TestPointer(pFunc))
+ return pFunc;
+
+ HMODULE glMod = GetModuleHandleA("OpenGL32.dll");
+ return (PROC) GetProcAddress(glMod, (LPCSTR) name);
}
- glMod = GetModuleHandleA("OpenGL32.dll");
- return (PROC)GetProcAddress(glMod, (LPCSTR)name);
-}
-#define IntGetProcAddress(name) WinGetProcAddress(name)
+ #define IntGetProcAddress(name) WinGetProcAddress(name)
#else
#if defined(__APPLE__)
#define IntGetProcAddress(name) AppleGLGetProcAddress(name)
#else /* GLX */
#include <GL/glx.h>
- #define IntGetProcAddress(name) (*glXGetProcAddressARB)((const GLubyte*)name)
+ #define IntGetProcAddress(name) (*glXGetProcAddressARB)((const GLubyte*) name)
#endif
#endif
#endif
namespace gl
{
- namespace exts
- {
- }
-
- // Extension: 1.1
- typedef void (CODEGEN_FUNCPTR *PFNCULLFACEPROC)(GLenum );
- typedef void (CODEGEN_FUNCPTR *PFNFRONTFACEPROC)(GLenum );
- typedef void (CODEGEN_FUNCPTR *PFNHINTPROC)(GLenum , GLenum );
- typedef void (CODEGEN_FUNCPTR *PFNLINEWIDTHPROC)(GLfloat );
- typedef void (CODEGEN_FUNCPTR *PFNPOINTSIZEPROC)(GLfloat );
- typedef void (CODEGEN_FUNCPTR *PFNPOLYGONMODEPROC)(GLenum , GLenum );
- typedef void (CODEGEN_FUNCPTR *PFNSCISSORPROC)(GLint , GLint , GLsizei , GLsizei );
- typedef void (CODEGEN_FUNCPTR *PFNTEXPARAMETERFPROC)(GLenum , GLenum , GLfloat );
- typedef void (CODEGEN_FUNCPTR *PFNTEXPARAMETERFVPROC)(GLenum , GLenum , const GLfloat *);
- typedef void (CODEGEN_FUNCPTR *PFNTEXPARAMETERIPROC)(GLenum , GLenum , GLint );
- typedef void (CODEGEN_FUNCPTR *PFNTEXPARAMETERIVPROC)(GLenum , GLenum , const GLint *);
- typedef void (CODEGEN_FUNCPTR *PFNTEXIMAGE1DPROC)(GLenum , GLint , GLint , GLsizei , GLint , GLenum , GLenum , const GLvoid *);
- typedef void (CODEGEN_FUNCPTR *PFNTEXIMAGE2DPROC)(GLenum , GLint , GLint , GLsizei , GLsizei , GLint , GLenum , GLenum , const GLvoid *);
- typedef void (CODEGEN_FUNCPTR *PFNDRAWBUFFERPROC)(GLenum );
- typedef void (CODEGEN_FUNCPTR *PFNCLEARPROC)(GLbitfield );
- typedef void (CODEGEN_FUNCPTR *PFNCLEARCOLORPROC)(GLfloat , GLfloat , GLfloat , GLfloat );
- typedef void (CODEGEN_FUNCPTR *PFNCLEARSTENCILPROC)(GLint );
- typedef void (CODEGEN_FUNCPTR *PFNCLEARDEPTHPROC)(GLdouble );
- typedef void (CODEGEN_FUNCPTR *PFNSTENCILMASKPROC)(GLuint );
- typedef void (CODEGEN_FUNCPTR *PFNCOLORMASKPROC)(GLboolean , GLboolean , GLboolean , GLboolean );
- typedef void (CODEGEN_FUNCPTR *PFNDEPTHMASKPROC)(GLboolean );
- typedef void (CODEGEN_FUNCPTR *PFNDISABLEPROC)(GLenum );
- typedef void (CODEGEN_FUNCPTR *PFNENABLEPROC)(GLenum );
- typedef void (CODEGEN_FUNCPTR *PFNFINISHPROC)();
- typedef void (CODEGEN_FUNCPTR *PFNFLUSHPROC)();
- typedef void (CODEGEN_FUNCPTR *PFNBLENDFUNCPROC)(GLenum , GLenum );
- typedef void (CODEGEN_FUNCPTR *PFNLOGICOPPROC)(GLenum );
- typedef void (CODEGEN_FUNCPTR *PFNSTENCILFUNCPROC)(GLenum , GLint , GLuint );
- typedef void (CODEGEN_FUNCPTR *PFNSTENCILOPPROC)(GLenum , GLenum , GLenum );
- typedef void (CODEGEN_FUNCPTR *PFNDEPTHFUNCPROC)(GLenum );
- typedef void (CODEGEN_FUNCPTR *PFNPIXELSTOREFPROC)(GLenum , GLfloat );
- typedef void (CODEGEN_FUNCPTR *PFNPIXELSTOREIPROC)(GLenum , GLint );
- typedef void (CODEGEN_FUNCPTR *PFNREADBUFFERPROC)(GLenum );
- typedef void (CODEGEN_FUNCPTR *PFNREADPIXELSPROC)(GLint , GLint , GLsizei , GLsizei , GLenum , GLenum , GLvoid *);
- typedef void (CODEGEN_FUNCPTR *PFNGETBOOLEANVPROC)(GLenum , GLboolean *);
- typedef void (CODEGEN_FUNCPTR *PFNGETDOUBLEVPROC)(GLenum , GLdouble *);
- typedef GLenum (CODEGEN_FUNCPTR *PFNGETERRORPROC)();
- typedef void (CODEGEN_FUNCPTR *PFNGETFLOATVPROC)(GLenum , GLfloat *);
- typedef void (CODEGEN_FUNCPTR *PFNGETINTEGERVPROC)(GLenum , GLint *);
- typedef const GLubyte * (CODEGEN_FUNCPTR *PFNGETSTRINGPROC)(GLenum );
- typedef void (CODEGEN_FUNCPTR *PFNGETTEXIMAGEPROC)(GLenum , GLint , GLenum , GLenum , GLvoid *);
- typedef void (CODEGEN_FUNCPTR *PFNGETTEXPARAMETERFVPROC)(GLenum , GLenum , GLfloat *);
- typedef void (CODEGEN_FUNCPTR *PFNGETTEXPARAMETERIVPROC)(GLenum , GLenum , GLint *);
- typedef void (CODEGEN_FUNCPTR *PFNGETTEXLEVELPARAMETERFVPROC)(GLenum , GLint , GLenum , GLfloat *);
- typedef void (CODEGEN_FUNCPTR *PFNGETTEXLEVELPARAMETERIVPROC)(GLenum , GLint , GLenum , GLint *);
- typedef GLboolean (CODEGEN_FUNCPTR *PFNISENABLEDPROC)(GLenum );
- typedef void (CODEGEN_FUNCPTR *PFNDEPTHRANGEPROC)(GLdouble , GLdouble );
- typedef void (CODEGEN_FUNCPTR *PFNVIEWPORTPROC)(GLint , GLint , GLsizei , GLsizei );
- typedef void (CODEGEN_FUNCPTR *PFNDRAWARRAYSPROC)(GLenum , GLint , GLsizei );
- typedef void (CODEGEN_FUNCPTR *PFNDRAWELEMENTSPROC)(GLenum , GLsizei , GLenum , const GLvoid *);
- typedef void (CODEGEN_FUNCPTR *PFNGETPOINTERVPROC)(GLenum , GLvoid* *);
- typedef void (CODEGEN_FUNCPTR *PFNPOLYGONOFFSETPROC)(GLfloat , GLfloat );
- typedef void (CODEGEN_FUNCPTR *PFNCOPYTEXIMAGE1DPROC)(GLenum , GLint , GLenum , GLint , GLint , GLsizei , GLint );
- typedef void (CODEGEN_FUNCPTR *PFNCOPYTEXIMAGE2DPROC)(GLenum , GLint , GLenum , GLint , GLint , GLsizei , GLsizei , GLint );
- typedef void (CODEGEN_FUNCPTR *PFNCOPYTEXSUBIMAGE1DPROC)(GLenum , GLint , GLint , GLint , GLint , GLsizei );
- typedef void (CODEGEN_FUNCPTR *PFNCOPYTEXSUBIMAGE2DPROC)(GLenum , GLint , GLint , GLint , GLint , GLint , GLsizei , GLsizei );
- typedef void (CODEGEN_FUNCPTR *PFNTEXSUBIMAGE1DPROC)(GLenum , GLint , GLint , GLsizei , GLenum , GLenum , const GLvoid *);
- typedef void (CODEGEN_FUNCPTR *PFNTEXSUBIMAGE2DPROC)(GLenum , GLint , GLint , GLint , GLsizei , GLsizei , GLenum , GLenum , const GLvoid *);
- typedef void (CODEGEN_FUNCPTR *PFNBINDTEXTUREPROC)(GLenum , GLuint );
- typedef void (CODEGEN_FUNCPTR *PFNDELETETEXTURESPROC)(GLsizei , const GLuint *);
- typedef void (CODEGEN_FUNCPTR *PFNGENTEXTURESPROC)(GLsizei , GLuint *);
- typedef GLboolean (CODEGEN_FUNCPTR *PFNISTEXTUREPROC)(GLuint );
- typedef void (CODEGEN_FUNCPTR *PFNINDEXUBPROC)(GLubyte );
- typedef void (CODEGEN_FUNCPTR *PFNINDEXUBVPROC)(const GLubyte *);
-
- // Extension: 1.2
- typedef void (CODEGEN_FUNCPTR *PFNBLENDCOLORPROC)(GLfloat , GLfloat , GLfloat , GLfloat );
- typedef void (CODEGEN_FUNCPTR *PFNBLENDEQUATIONPROC)(GLenum );
- typedef void (CODEGEN_FUNCPTR *PFNDRAWRANGEELEMENTSPROC)(GLenum , GLuint , GLuint , GLsizei , GLenum , const GLvoid *);
- typedef void (CODEGEN_FUNCPTR *PFNTEXSUBIMAGE3DPROC)(GLenum , GLint , GLint , GLint , GLint , GLsizei , GLsizei , GLsizei , GLenum , GLenum , const GLvoid *);
- typedef void (CODEGEN_FUNCPTR *PFNCOPYTEXSUBIMAGE3DPROC)(GLenum , GLint , GLint , GLint , GLint , GLint , GLint , GLsizei , GLsizei );
-
- // Extension: 1.3
- typedef void (CODEGEN_FUNCPTR *PFNACTIVETEXTUREPROC)(GLenum );
- typedef void (CODEGEN_FUNCPTR *PFNSAMPLECOVERAGEPROC)(GLfloat , GLboolean );
- typedef void (CODEGEN_FUNCPTR *PFNCOMPRESSEDTEXIMAGE3DPROC)(GLenum , GLint , GLenum , GLsizei , GLsizei , GLsizei , GLint , GLsizei , const GLvoid *);
- typedef void (CODEGEN_FUNCPTR *PFNCOMPRESSEDTEXIMAGE2DPROC)(GLenum , GLint , GLenum , GLsizei , GLsizei , GLint , GLsizei , const GLvoid *);
- typedef void (CODEGEN_FUNCPTR *PFNCOMPRESSEDTEXIMAGE1DPROC)(GLenum , GLint , GLenum , GLsizei , GLint , GLsizei , const GLvoid *);
- typedef void (CODEGEN_FUNCPTR *PFNCOMPRESSEDTEXSUBIMAGE3DPROC)(GLenum , GLint , GLint , GLint , GLint , GLsizei , GLsizei , GLsizei , GLenum , GLsizei , const GLvoid *);
- typedef void (CODEGEN_FUNCPTR *PFNCOMPRESSEDTEXSUBIMAGE2DPROC)(GLenum , GLint , GLint , GLint , GLsizei , GLsizei , GLenum , GLsizei , const GLvoid *);
- typedef void (CODEGEN_FUNCPTR *PFNCOMPRESSEDTEXSUBIMAGE1DPROC)(GLenum , GLint , GLint , GLsizei , GLenum , GLsizei , const GLvoid *);
- typedef void (CODEGEN_FUNCPTR *PFNGETCOMPRESSEDTEXIMAGEPROC)(GLenum , GLint , GLvoid *);
-
- // Extension: 1.4
- typedef void (CODEGEN_FUNCPTR *PFNBLENDFUNCSEPARATEPROC)(GLenum , GLenum , GLenum , GLenum );
- typedef void (CODEGEN_FUNCPTR *PFNMULTIDRAWARRAYSPROC)(GLenum , const GLint *, const GLsizei *, GLsizei );
- typedef void (CODEGEN_FUNCPTR *PFNMULTIDRAWELEMENTSPROC)(GLenum , const GLsizei *, GLenum , const GLvoid* const *, GLsizei );
- typedef void (CODEGEN_FUNCPTR *PFNPOINTPARAMETERFPROC)(GLenum , GLfloat );
- typedef void (CODEGEN_FUNCPTR *PFNPOINTPARAMETERFVPROC)(GLenum , const GLfloat *);
- typedef void (CODEGEN_FUNCPTR *PFNPOINTPARAMETERIPROC)(GLenum , GLint );
- typedef void (CODEGEN_FUNCPTR *PFNPOINTPARAMETERIVPROC)(GLenum , const GLint *);
-
- // Extension: 1.5
- typedef void (CODEGEN_FUNCPTR *PFNGENQUERIESPROC)(GLsizei , GLuint *);
- typedef void (CODEGEN_FUNCPTR *PFNDELETEQUERIESPROC)(GLsizei , const GLuint *);
- typedef GLboolean (CODEGEN_FUNCPTR *PFNISQUERYPROC)(GLuint );
- typedef void (CODEGEN_FUNCPTR *PFNBEGINQUERYPROC)(GLenum , GLuint );
- typedef void (CODEGEN_FUNCPTR *PFNENDQUERYPROC)(GLenum );
- typedef void (CODEGEN_FUNCPTR *PFNGETQUERYIVPROC)(GLenum , GLenum , GLint *);
- typedef void (CODEGEN_FUNCPTR *PFNGETQUERYOBJECTIVPROC)(GLuint , GLenum , GLint *);
- typedef void (CODEGEN_FUNCPTR *PFNGETQUERYOBJECTUIVPROC)(GLuint , GLenum , GLuint *);
- typedef void (CODEGEN_FUNCPTR *PFNBINDBUFFERPROC)(GLenum , GLuint );
- typedef void (CODEGEN_FUNCPTR *PFNDELETEBUFFERSPROC)(GLsizei , const GLuint *);
- typedef void (CODEGEN_FUNCPTR *PFNGENBUFFERSPROC)(GLsizei , GLuint *);
- typedef GLboolean (CODEGEN_FUNCPTR *PFNISBUFFERPROC)(GLuint );
- typedef void (CODEGEN_FUNCPTR *PFNBUFFERDATAPROC)(GLenum , GLsizeiptr , const GLvoid *, GLenum );
- typedef void (CODEGEN_FUNCPTR *PFNBUFFERSUBDATAPROC)(GLenum , GLintptr , GLsizeiptr , const GLvoid *);
- typedef void (CODEGEN_FUNCPTR *PFNGETBUFFERSUBDATAPROC)(GLenum , GLintptr , GLsizeiptr , GLvoid *);
- typedef GLvoid* (CODEGEN_FUNCPTR *PFNMAPBUFFERPROC)(GLenum , GLenum );
- typedef GLboolean (CODEGEN_FUNCPTR *PFNUNMAPBUFFERPROC)(GLenum );
- typedef void (CODEGEN_FUNCPTR *PFNGETBUFFERPARAMETERIVPROC)(GLenum , GLenum , GLint *);
- typedef void (CODEGEN_FUNCPTR *PFNGETBUFFERPOINTERVPROC)(GLenum , GLenum , GLvoid* *);
-
- // Extension: 2.0
- typedef void (CODEGEN_FUNCPTR *PFNBLENDEQUATIONSEPARATEPROC)(GLenum , GLenum );
- typedef void (CODEGEN_FUNCPTR *PFNDRAWBUFFERSPROC)(GLsizei , const GLenum *);
- typedef void (CODEGEN_FUNCPTR *PFNSTENCILOPSEPARATEPROC)(GLenum , GLenum , GLenum , GLenum );
- typedef void (CODEGEN_FUNCPTR *PFNSTENCILFUNCSEPARATEPROC)(GLenum , GLenum , GLint , GLuint );
- typedef void (CODEGEN_FUNCPTR *PFNSTENCILMASKSEPARATEPROC)(GLenum , GLuint );
- typedef void (CODEGEN_FUNCPTR *PFNATTACHSHADERPROC)(GLuint , GLuint );
- typedef void (CODEGEN_FUNCPTR *PFNBINDATTRIBLOCATIONPROC)(GLuint , GLuint , const GLchar *);
- typedef void (CODEGEN_FUNCPTR *PFNCOMPILESHADERPROC)(GLuint );
- typedef GLuint (CODEGEN_FUNCPTR *PFNCREATEPROGRAMPROC)();
- typedef GLuint (CODEGEN_FUNCPTR *PFNCREATESHADERPROC)(GLenum );
- typedef void (CODEGEN_FUNCPTR *PFNDELETEPROGRAMPROC)(GLuint );
- typedef void (CODEGEN_FUNCPTR *PFNDELETESHADERPROC)(GLuint );
- typedef void (CODEGEN_FUNCPTR *PFNDETACHSHADERPROC)(GLuint , GLuint );
- typedef void (CODEGEN_FUNCPTR *PFNDISABLEVERTEXATTRIBARRAYPROC)(GLuint );
- typedef void (CODEGEN_FUNCPTR *PFNENABLEVERTEXATTRIBARRAYPROC)(GLuint );
- typedef void (CODEGEN_FUNCPTR *PFNGETACTIVEATTRIBPROC)(GLuint , GLuint , GLsizei , GLsizei *, GLint *, GLenum *, GLchar *);
- typedef void (CODEGEN_FUNCPTR *PFNGETACTIVEUNIFORMPROC)(GLuint , GLuint , GLsizei , GLsizei *, GLint *, GLenum *, GLchar *);
- typedef void (CODEGEN_FUNCPTR *PFNGETATTACHEDSHADERSPROC)(GLuint , GLsizei , GLsizei *, GLuint *);
- typedef GLint (CODEGEN_FUNCPTR *PFNGETATTRIBLOCATIONPROC)(GLuint , const GLchar *);
- typedef void (CODEGEN_FUNCPTR *PFNGETPROGRAMIVPROC)(GLuint , GLenum , GLint *);
- typedef void (CODEGEN_FUNCPTR *PFNGETPROGRAMINFOLOGPROC)(GLuint , GLsizei , GLsizei *, GLchar *);
- typedef void (CODEGEN_FUNCPTR *PFNGETSHADERIVPROC)(GLuint , GLenum , GLint *);
- typedef void (CODEGEN_FUNCPTR *PFNGETSHADERINFOLOGPROC)(GLuint , GLsizei , GLsizei *, GLchar *);
- typedef void (CODEGEN_FUNCPTR *PFNGETSHADERSOURCEPROC)(GLuint , GLsizei , GLsizei *, GLchar *);
- typedef GLint (CODEGEN_FUNCPTR *PFNGETUNIFORMLOCATIONPROC)(GLuint , const GLchar *);
- typedef void (CODEGEN_FUNCPTR *PFNGETUNIFORMFVPROC)(GLuint , GLint , GLfloat *);
- typedef void (CODEGEN_FUNCPTR *PFNGETUNIFORMIVPROC)(GLuint , GLint , GLint *);
- typedef void (CODEGEN_FUNCPTR *PFNGETVERTEXATTRIBDVPROC)(GLuint , GLenum , GLdouble *);
- typedef void (CODEGEN_FUNCPTR *PFNGETVERTEXATTRIBFVPROC)(GLuint , GLenum , GLfloat *);
- typedef void (CODEGEN_FUNCPTR *PFNGETVERTEXATTRIBIVPROC)(GLuint , GLenum , GLint *);
- typedef void (CODEGEN_FUNCPTR *PFNGETVERTEXATTRIBPOINTERVPROC)(GLuint , GLenum , GLvoid* *);
- typedef GLboolean (CODEGEN_FUNCPTR *PFNISPROGRAMPROC)(GLuint );
- typedef GLboolean (CODEGEN_FUNCPTR *PFNISSHADERPROC)(GLuint );
- typedef void (CODEGEN_FUNCPTR *PFNLINKPROGRAMPROC)(GLuint );
- typedef void (CODEGEN_FUNCPTR *PFNSHADERSOURCEPROC)(GLuint , GLsizei , const GLchar* const *, const GLint *);
- typedef void (CODEGEN_FUNCPTR *PFNUSEPROGRAMPROC)(GLuint );
- typedef void (CODEGEN_FUNCPTR *PFNUNIFORM1FPROC)(GLint , GLfloat );
- typedef void (CODEGEN_FUNCPTR *PFNUNIFORM2FPROC)(GLint , GLfloat , GLfloat );
- typedef void (CODEGEN_FUNCPTR *PFNUNIFORM3FPROC)(GLint , GLfloat , GLfloat , GLfloat );
- typedef void (CODEGEN_FUNCPTR *PFNUNIFORM4FPROC)(GLint , GLfloat , GLfloat , GLfloat , GLfloat );
- typedef void (CODEGEN_FUNCPTR *PFNUNIFORM1IPROC)(GLint , GLint );
- typedef void (CODEGEN_FUNCPTR *PFNUNIFORM2IPROC)(GLint , GLint , GLint );
- typedef void (CODEGEN_FUNCPTR *PFNUNIFORM3IPROC)(GLint , GLint , GLint , GLint );
- typedef void (CODEGEN_FUNCPTR *PFNUNIFORM4IPROC)(GLint , GLint , GLint , GLint , GLint );
- typedef void (CODEGEN_FUNCPTR *PFNUNIFORM1FVPROC)(GLint , GLsizei , const GLfloat *);
- typedef void (CODEGEN_FUNCPTR *PFNUNIFORM2FVPROC)(GLint , GLsizei , const GLfloat *);
- typedef void (CODEGEN_FUNCPTR *PFNUNIFORM3FVPROC)(GLint , GLsizei , const GLfloat *);
- typedef void (CODEGEN_FUNCPTR *PFNUNIFORM4FVPROC)(GLint , GLsizei , const GLfloat *);
- typedef void (CODEGEN_FUNCPTR *PFNUNIFORM1IVPROC)(GLint , GLsizei , const GLint *);
- typedef void (CODEGEN_FUNCPTR *PFNUNIFORM2IVPROC)(GLint , GLsizei , const GLint *);
- typedef void (CODEGEN_FUNCPTR *PFNUNIFORM3IVPROC)(GLint , GLsizei , const GLint *);
- typedef void (CODEGEN_FUNCPTR *PFNUNIFORM4IVPROC)(GLint , GLsizei , const GLint *);
- typedef void (CODEGEN_FUNCPTR *PFNUNIFORMMATRIX2FVPROC)(GLint , GLsizei , GLboolean , const GLfloat *);
- typedef void (CODEGEN_FUNCPTR *PFNUNIFORMMATRIX3FVPROC)(GLint , GLsizei , GLboolean , const GLfloat *);
- typedef void (CODEGEN_FUNCPTR *PFNUNIFORMMATRIX4FVPROC)(GLint , GLsizei , GLboolean , const GLfloat *);
- typedef void (CODEGEN_FUNCPTR *PFNVALIDATEPROGRAMPROC)(GLuint );
- typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBPOINTERPROC)(GLuint , GLint , GLenum , GLboolean , GLsizei , const GLvoid *);
-
- // Extension: 2.1
- typedef void (CODEGEN_FUNCPTR *PFNUNIFORMMATRIX2X3FVPROC)(GLint , GLsizei , GLboolean , const GLfloat *);
- typedef void (CODEGEN_FUNCPTR *PFNUNIFORMMATRIX3X2FVPROC)(GLint , GLsizei , GLboolean , const GLfloat *);
- typedef void (CODEGEN_FUNCPTR *PFNUNIFORMMATRIX2X4FVPROC)(GLint , GLsizei , GLboolean , const GLfloat *);
- typedef void (CODEGEN_FUNCPTR *PFNUNIFORMMATRIX4X2FVPROC)(GLint , GLsizei , GLboolean , const GLfloat *);
- typedef void (CODEGEN_FUNCPTR *PFNUNIFORMMATRIX3X4FVPROC)(GLint , GLsizei , GLboolean , const GLfloat *);
- typedef void (CODEGEN_FUNCPTR *PFNUNIFORMMATRIX4X3FVPROC)(GLint , GLsizei , GLboolean , const GLfloat *);
-
- // Extension: ARB_vertex_array_object
- typedef void (CODEGEN_FUNCPTR *PFNBINDVERTEXARRAYPROC)(GLuint );
- typedef void (CODEGEN_FUNCPTR *PFNDELETEVERTEXARRAYSPROC)(GLsizei , const GLuint *);
- typedef void (CODEGEN_FUNCPTR *PFNGENVERTEXARRAYSPROC)(GLsizei , GLuint *);
- typedef GLboolean (CODEGEN_FUNCPTR *PFNISVERTEXARRAYPROC)(GLuint );
-
- // Extension: ARB_map_buffer_range
- typedef GLvoid* (CODEGEN_FUNCPTR *PFNMAPBUFFERRANGEPROC)(GLenum , GLintptr , GLsizeiptr , GLbitfield );
- typedef void (CODEGEN_FUNCPTR *PFNFLUSHMAPPEDBUFFERRANGEPROC)(GLenum , GLintptr , GLsizeiptr );
-
- // Extension: ARB_framebuffer_object
- typedef GLboolean (CODEGEN_FUNCPTR *PFNISRENDERBUFFERPROC)(GLuint );
- typedef void (CODEGEN_FUNCPTR *PFNBINDRENDERBUFFERPROC)(GLenum , GLuint );
- typedef void (CODEGEN_FUNCPTR *PFNDELETERENDERBUFFERSPROC)(GLsizei , const GLuint *);
- typedef void (CODEGEN_FUNCPTR *PFNGENRENDERBUFFERSPROC)(GLsizei , GLuint *);
- typedef void (CODEGEN_FUNCPTR *PFNRENDERBUFFERSTORAGEPROC)(GLenum , GLenum , GLsizei , GLsizei );
- typedef void (CODEGEN_FUNCPTR *PFNGETRENDERBUFFERPARAMETERIVPROC)(GLenum , GLenum , GLint *);
- typedef GLboolean (CODEGEN_FUNCPTR *PFNISFRAMEBUFFERPROC)(GLuint );
- typedef void (CODEGEN_FUNCPTR *PFNBINDFRAMEBUFFERPROC)(GLenum , GLuint );
- typedef void (CODEGEN_FUNCPTR *PFNDELETEFRAMEBUFFERSPROC)(GLsizei , const GLuint *);
- typedef void (CODEGEN_FUNCPTR *PFNGENFRAMEBUFFERSPROC)(GLsizei , GLuint *);
- typedef GLenum (CODEGEN_FUNCPTR *PFNCHECKFRAMEBUFFERSTATUSPROC)(GLenum );
- typedef void (CODEGEN_FUNCPTR *PFNFRAMEBUFFERTEXTURE1DPROC)(GLenum , GLenum , GLenum , GLuint , GLint );
- typedef void (CODEGEN_FUNCPTR *PFNFRAMEBUFFERTEXTURE2DPROC)(GLenum , GLenum , GLenum , GLuint , GLint );
- typedef void (CODEGEN_FUNCPTR *PFNFRAMEBUFFERTEXTURE3DPROC)(GLenum , GLenum , GLenum , GLuint , GLint , GLint );
- typedef void (CODEGEN_FUNCPTR *PFNFRAMEBUFFERRENDERBUFFERPROC)(GLenum , GLenum , GLenum , GLuint );
- typedef void (CODEGEN_FUNCPTR *PFNGETFRAMEBUFFERATTACHMENTPARAMETERIVPROC)(GLenum , GLenum , GLenum , GLint *);
- typedef void (CODEGEN_FUNCPTR *PFNGENERATEMIPMAPPROC)(GLenum );
- typedef void (CODEGEN_FUNCPTR *PFNBLITFRAMEBUFFERPROC)(GLint , GLint , GLint , GLint , GLint , GLint , GLint , GLint , GLbitfield , GLenum );
- typedef void (CODEGEN_FUNCPTR *PFNRENDERBUFFERSTORAGEMULTISAMPLEPROC)(GLenum , GLsizei , GLenum , GLsizei , GLsizei );
- typedef void (CODEGEN_FUNCPTR *PFNFRAMEBUFFERTEXTURELAYERPROC)(GLenum , GLenum , GLuint , GLint , GLint );
-
- // Extension: 3.0
- typedef void (CODEGEN_FUNCPTR *PFNCOLORMASKIPROC)(GLuint , GLboolean , GLboolean , GLboolean , GLboolean );
- typedef void (CODEGEN_FUNCPTR *PFNGETBOOLEANI_VPROC)(GLenum , GLuint , GLboolean *);
- typedef void (CODEGEN_FUNCPTR *PFNGETINTEGERI_VPROC)(GLenum , GLuint , GLint *);
- typedef void (CODEGEN_FUNCPTR *PFNENABLEIPROC)(GLenum , GLuint );
- typedef void (CODEGEN_FUNCPTR *PFNDISABLEIPROC)(GLenum , GLuint );
- typedef GLboolean (CODEGEN_FUNCPTR *PFNISENABLEDIPROC)(GLenum , GLuint );
- typedef void (CODEGEN_FUNCPTR *PFNBEGINTRANSFORMFEEDBACKPROC)(GLenum );
- typedef void (CODEGEN_FUNCPTR *PFNENDTRANSFORMFEEDBACKPROC)();
- typedef void (CODEGEN_FUNCPTR *PFNBINDBUFFERRANGEPROC)(GLenum , GLuint , GLuint , GLintptr , GLsizeiptr );
- typedef void (CODEGEN_FUNCPTR *PFNBINDBUFFERBASEPROC)(GLenum , GLuint , GLuint );
- typedef void (CODEGEN_FUNCPTR *PFNTRANSFORMFEEDBACKVARYINGSPROC)(GLuint , GLsizei , const GLchar* const *, GLenum );
- typedef void (CODEGEN_FUNCPTR *PFNGETTRANSFORMFEEDBACKVARYINGPROC)(GLuint , GLuint , GLsizei , GLsizei *, GLsizei *, GLenum *, GLchar *);
- typedef void (CODEGEN_FUNCPTR *PFNCLAMPCOLORPROC)(GLenum , GLenum );
- typedef void (CODEGEN_FUNCPTR *PFNBEGINCONDITIONALRENDERPROC)(GLuint , GLenum );
- typedef void (CODEGEN_FUNCPTR *PFNENDCONDITIONALRENDERPROC)();
- typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBIPOINTERPROC)(GLuint , GLint , GLenum , GLsizei , const GLvoid *);
- typedef void (CODEGEN_FUNCPTR *PFNGETVERTEXATTRIBIIVPROC)(GLuint , GLenum , GLint *);
- typedef void (CODEGEN_FUNCPTR *PFNGETVERTEXATTRIBIUIVPROC)(GLuint , GLenum , GLuint *);
- typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBI1IPROC)(GLuint , GLint );
- typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBI2IPROC)(GLuint , GLint , GLint );
- typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBI3IPROC)(GLuint , GLint , GLint , GLint );
- typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBI4IPROC)(GLuint , GLint , GLint , GLint , GLint );
- typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBI1UIPROC)(GLuint , GLuint );
- typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBI2UIPROC)(GLuint , GLuint , GLuint );
- typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBI3UIPROC)(GLuint , GLuint , GLuint , GLuint );
- typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBI4UIPROC)(GLuint , GLuint , GLuint , GLuint , GLuint );
- typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBI1IVPROC)(GLuint , const GLint *);
- typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBI2IVPROC)(GLuint , const GLint *);
- typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBI3IVPROC)(GLuint , const GLint *);
- typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBI4IVPROC)(GLuint , const GLint *);
- typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBI1UIVPROC)(GLuint , const GLuint *);
- typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBI2UIVPROC)(GLuint , const GLuint *);
- typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBI3UIVPROC)(GLuint , const GLuint *);
- typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBI4UIVPROC)(GLuint , const GLuint *);
- typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBI4BVPROC)(GLuint , const GLbyte *);
- typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBI4SVPROC)(GLuint , const GLshort *);
- typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBI4UBVPROC)(GLuint , const GLubyte *);
- typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBI4USVPROC)(GLuint , const GLushort *);
- typedef void (CODEGEN_FUNCPTR *PFNGETUNIFORMUIVPROC)(GLuint , GLint , GLuint *);
- typedef void (CODEGEN_FUNCPTR *PFNBINDFRAGDATALOCATIONPROC)(GLuint , GLuint , const GLchar *);
- typedef GLint (CODEGEN_FUNCPTR *PFNGETFRAGDATALOCATIONPROC)(GLuint , const GLchar *);
- typedef void (CODEGEN_FUNCPTR *PFNUNIFORM1UIPROC)(GLint , GLuint );
- typedef void (CODEGEN_FUNCPTR *PFNUNIFORM2UIPROC)(GLint , GLuint , GLuint );
- typedef void (CODEGEN_FUNCPTR *PFNUNIFORM3UIPROC)(GLint , GLuint , GLuint , GLuint );
- typedef void (CODEGEN_FUNCPTR *PFNUNIFORM4UIPROC)(GLint , GLuint , GLuint , GLuint , GLuint );
- typedef void (CODEGEN_FUNCPTR *PFNUNIFORM1UIVPROC)(GLint , GLsizei , const GLuint *);
- typedef void (CODEGEN_FUNCPTR *PFNUNIFORM2UIVPROC)(GLint , GLsizei , const GLuint *);
- typedef void (CODEGEN_FUNCPTR *PFNUNIFORM3UIVPROC)(GLint , GLsizei , const GLuint *);
- typedef void (CODEGEN_FUNCPTR *PFNUNIFORM4UIVPROC)(GLint , GLsizei , const GLuint *);
- typedef void (CODEGEN_FUNCPTR *PFNTEXPARAMETERIIVPROC)(GLenum , GLenum , const GLint *);
- typedef void (CODEGEN_FUNCPTR *PFNTEXPARAMETERIUIVPROC)(GLenum , GLenum , const GLuint *);
- typedef void (CODEGEN_FUNCPTR *PFNGETTEXPARAMETERIIVPROC)(GLenum , GLenum , GLint *);
- typedef void (CODEGEN_FUNCPTR *PFNGETTEXPARAMETERIUIVPROC)(GLenum , GLenum , GLuint *);
- typedef void (CODEGEN_FUNCPTR *PFNCLEARBUFFERIVPROC)(GLenum , GLint , const GLint *);
- typedef void (CODEGEN_FUNCPTR *PFNCLEARBUFFERUIVPROC)(GLenum , GLint , const GLuint *);
- typedef void (CODEGEN_FUNCPTR *PFNCLEARBUFFERFVPROC)(GLenum , GLint , const GLfloat *);
- typedef void (CODEGEN_FUNCPTR *PFNCLEARBUFFERFIPROC)(GLenum , GLint , GLfloat , GLint );
- typedef const GLubyte * (CODEGEN_FUNCPTR *PFNGETSTRINGIPROC)(GLenum , GLuint );
-
- // Extension: ARB_uniform_buffer_object
- typedef void (CODEGEN_FUNCPTR *PFNGETUNIFORMINDICESPROC)(GLuint , GLsizei , const GLchar* const *, GLuint *);
- typedef void (CODEGEN_FUNCPTR *PFNGETACTIVEUNIFORMSIVPROC)(GLuint , GLsizei , const GLuint *, GLenum , GLint *);
- typedef void (CODEGEN_FUNCPTR *PFNGETACTIVEUNIFORMNAMEPROC)(GLuint , GLuint , GLsizei , GLsizei *, GLchar *);
- typedef GLuint (CODEGEN_FUNCPTR *PFNGETUNIFORMBLOCKINDEXPROC)(GLuint , const GLchar *);
- typedef void (CODEGEN_FUNCPTR *PFNGETACTIVEUNIFORMBLOCKIVPROC)(GLuint , GLuint , GLenum , GLint *);
- typedef void (CODEGEN_FUNCPTR *PFNGETACTIVEUNIFORMBLOCKNAMEPROC)(GLuint , GLuint , GLsizei , GLsizei *, GLchar *);
- typedef void (CODEGEN_FUNCPTR *PFNUNIFORMBLOCKBINDINGPROC)(GLuint , GLuint , GLuint );
-
- // Extension: ARB_copy_buffer
- typedef void (CODEGEN_FUNCPTR *PFNCOPYBUFFERSUBDATAPROC)(GLenum , GLenum , GLintptr , GLintptr , GLsizeiptr );
-
- // Extension: 3.1
- typedef void (CODEGEN_FUNCPTR *PFNDRAWARRAYSINSTANCEDPROC)(GLenum , GLint , GLsizei , GLsizei );
- typedef void (CODEGEN_FUNCPTR *PFNDRAWELEMENTSINSTANCEDPROC)(GLenum , GLsizei , GLenum , const GLvoid *, GLsizei );
- typedef void (CODEGEN_FUNCPTR *PFNTEXBUFFERPROC)(GLenum , GLenum , GLuint );
- typedef void (CODEGEN_FUNCPTR *PFNPRIMITIVERESTARTINDEXPROC)(GLuint );
-
- // Legacy
- typedef void (CODEGEN_FUNCPTR *PFNENABLECLIENTSTATEPROC)(GLenum cap);
- typedef void (CODEGEN_FUNCPTR *PFNDISABLECLIENTSTATEPROC)(GLenum cap);
- typedef void (CODEGEN_FUNCPTR *PFNVERTEXPOINTERPROC)(GLint size, GLenum type, GLsizei stride, const GLvoid *ptr);
- typedef void (CODEGEN_FUNCPTR *PFNNORMALPOINTERPROC)(GLenum type, GLsizei stride, const GLvoid *ptr);
- typedef void (CODEGEN_FUNCPTR *PFNCOLORPOINTERPROC)(GLint size, GLenum type, GLsizei stride, const GLvoid *ptr);
- typedef void (CODEGEN_FUNCPTR *PFNTEXCOORDPOINTERPROC)(GLint size, GLenum type, GLsizei stride, const GLvoid *ptr);
-
- typedef void (CODEGEN_FUNCPTR *PFNTEXENVIPROC)(GLenum target, GLenum pname, GLint param);
-
- typedef void (CODEGEN_FUNCPTR *PFNMATRIXMODEPROC)(GLenum modem);
- typedef void (CODEGEN_FUNCPTR *PFNLOADIDENTITYPROC)(void);
- typedef void (CODEGEN_FUNCPTR *PFNORTHOPROC)(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble near_val, GLdouble far_val);
-
- typedef void (CODEGEN_FUNCPTR *PFNCOLOR3DPROC)(GLdouble red, GLdouble green, GLdouble blue);
-
-
-
- // Extension: 1.1
- PFNCULLFACEPROC CullFace;
- PFNFRONTFACEPROC FrontFace;
- PFNHINTPROC Hint;
- PFNLINEWIDTHPROC LineWidth;
- PFNPOINTSIZEPROC PointSize;
- PFNPOLYGONMODEPROC PolygonMode;
- PFNSCISSORPROC Scissor;
- PFNTEXPARAMETERFPROC TexParameterf;
- PFNTEXPARAMETERFVPROC TexParameterfv;
- PFNTEXPARAMETERIPROC TexParameteri;
- PFNTEXPARAMETERIVPROC TexParameteriv;
- PFNTEXIMAGE1DPROC TexImage1D;
- PFNTEXIMAGE2DPROC TexImage2D;
- PFNDRAWBUFFERPROC DrawBuffer;
- PFNCLEARPROC Clear;
- PFNCLEARCOLORPROC ClearColor;
- PFNCLEARSTENCILPROC ClearStencil;
- PFNCLEARDEPTHPROC ClearDepth;
- PFNSTENCILMASKPROC StencilMask;
- PFNCOLORMASKPROC ColorMask;
- PFNDEPTHMASKPROC DepthMask;
- PFNDISABLEPROC Disable;
- PFNENABLEPROC Enable;
- PFNFINISHPROC Finish;
- PFNFLUSHPROC Flush;
- PFNBLENDFUNCPROC BlendFunc;
- PFNLOGICOPPROC LogicOp;
- PFNSTENCILFUNCPROC StencilFunc;
- PFNSTENCILOPPROC StencilOp;
- PFNDEPTHFUNCPROC DepthFunc;
- PFNPIXELSTOREFPROC PixelStoref;
- PFNPIXELSTOREIPROC PixelStorei;
- PFNREADBUFFERPROC ReadBuffer;
- PFNREADPIXELSPROC ReadPixels;
- PFNGETBOOLEANVPROC GetBooleanv;
- PFNGETDOUBLEVPROC GetDoublev;
- PFNGETERRORPROC GetError;
- PFNGETFLOATVPROC GetFloatv;
- PFNGETINTEGERVPROC GetIntegerv;
- PFNGETSTRINGPROC GetString;
- PFNGETTEXIMAGEPROC GetTexImage;
- PFNGETTEXPARAMETERFVPROC GetTexParameterfv;
- PFNGETTEXPARAMETERIVPROC GetTexParameteriv;
- PFNGETTEXLEVELPARAMETERFVPROC GetTexLevelParameterfv;
- PFNGETTEXLEVELPARAMETERIVPROC GetTexLevelParameteriv;
- PFNISENABLEDPROC IsEnabled;
- PFNDEPTHRANGEPROC DepthRange;
- PFNVIEWPORTPROC Viewport;
- PFNDRAWARRAYSPROC DrawArrays;
- PFNDRAWELEMENTSPROC DrawElements;
- PFNGETPOINTERVPROC GetPointerv;
- PFNPOLYGONOFFSETPROC PolygonOffset;
- PFNCOPYTEXIMAGE1DPROC CopyTexImage1D;
- PFNCOPYTEXIMAGE2DPROC CopyTexImage2D;
- PFNCOPYTEXSUBIMAGE1DPROC CopyTexSubImage1D;
- PFNCOPYTEXSUBIMAGE2DPROC CopyTexSubImage2D;
- PFNTEXSUBIMAGE1DPROC TexSubImage1D;
- PFNTEXSUBIMAGE2DPROC TexSubImage2D;
- PFNBINDTEXTUREPROC BindTexture;
- PFNDELETETEXTURESPROC DeleteTextures;
- PFNGENTEXTURESPROC GenTextures;
- PFNISTEXTUREPROC IsTexture;
- PFNINDEXUBPROC Indexub;
- PFNINDEXUBVPROC Indexubv;
-
- // Extension: 1.2
- PFNBLENDCOLORPROC BlendColor;
- PFNBLENDEQUATIONPROC BlendEquation;
- PFNDRAWRANGEELEMENTSPROC DrawRangeElements;
- PFNTEXSUBIMAGE3DPROC TexSubImage3D;
- PFNCOPYTEXSUBIMAGE3DPROC CopyTexSubImage3D;
-
- // Extension: 1.3
- PFNACTIVETEXTUREPROC ActiveTexture;
- PFNSAMPLECOVERAGEPROC SampleCoverage;
- PFNCOMPRESSEDTEXIMAGE3DPROC CompressedTexImage3D;
- PFNCOMPRESSEDTEXIMAGE2DPROC CompressedTexImage2D;
- PFNCOMPRESSEDTEXIMAGE1DPROC CompressedTexImage1D;
- PFNCOMPRESSEDTEXSUBIMAGE3DPROC CompressedTexSubImage3D;
- PFNCOMPRESSEDTEXSUBIMAGE2DPROC CompressedTexSubImage2D;
- PFNCOMPRESSEDTEXSUBIMAGE1DPROC CompressedTexSubImage1D;
- PFNGETCOMPRESSEDTEXIMAGEPROC GetCompressedTexImage;
-
- // Extension: 1.4
- PFNBLENDFUNCSEPARATEPROC BlendFuncSeparate;
- PFNMULTIDRAWARRAYSPROC MultiDrawArrays;
- PFNMULTIDRAWELEMENTSPROC MultiDrawElements;
- PFNPOINTPARAMETERFPROC PointParameterf;
- PFNPOINTPARAMETERFVPROC PointParameterfv;
- PFNPOINTPARAMETERIPROC PointParameteri;
- PFNPOINTPARAMETERIVPROC PointParameteriv;
-
- // Extension: 1.5
- PFNGENQUERIESPROC GenQueries;
- PFNDELETEQUERIESPROC DeleteQueries;
- PFNISQUERYPROC IsQuery;
- PFNBEGINQUERYPROC BeginQuery;
- PFNENDQUERYPROC EndQuery;
- PFNGETQUERYIVPROC GetQueryiv;
- PFNGETQUERYOBJECTIVPROC GetQueryObjectiv;
- PFNGETQUERYOBJECTUIVPROC GetQueryObjectuiv;
- PFNBINDBUFFERPROC BindBuffer;
- PFNDELETEBUFFERSPROC DeleteBuffers;
- PFNGENBUFFERSPROC GenBuffers;
- PFNISBUFFERPROC IsBuffer;
- PFNBUFFERDATAPROC BufferData;
- PFNBUFFERSUBDATAPROC BufferSubData;
- PFNGETBUFFERSUBDATAPROC GetBufferSubData;
- PFNMAPBUFFERPROC MapBuffer;
- PFNUNMAPBUFFERPROC UnmapBuffer;
- PFNGETBUFFERPARAMETERIVPROC GetBufferParameteriv;
- PFNGETBUFFERPOINTERVPROC GetBufferPointerv;
-
- // Extension: 2.0
- PFNBLENDEQUATIONSEPARATEPROC BlendEquationSeparate;
- PFNDRAWBUFFERSPROC DrawBuffers;
- PFNSTENCILOPSEPARATEPROC StencilOpSeparate;
- PFNSTENCILFUNCSEPARATEPROC StencilFuncSeparate;
- PFNSTENCILMASKSEPARATEPROC StencilMaskSeparate;
- PFNATTACHSHADERPROC AttachShader;
- PFNBINDATTRIBLOCATIONPROC BindAttribLocation;
- PFNCOMPILESHADERPROC CompileShader;
- PFNCREATEPROGRAMPROC CreateProgram;
- PFNCREATESHADERPROC CreateShader;
- PFNDELETEPROGRAMPROC DeleteProgram;
- PFNDELETESHADERPROC DeleteShader;
- PFNDETACHSHADERPROC DetachShader;
- PFNDISABLEVERTEXATTRIBARRAYPROC DisableVertexAttribArray;
- PFNENABLEVERTEXATTRIBARRAYPROC EnableVertexAttribArray;
- PFNGETACTIVEATTRIBPROC GetActiveAttrib;
- PFNGETACTIVEUNIFORMPROC GetActiveUniform;
- PFNGETATTACHEDSHADERSPROC GetAttachedShaders;
- PFNGETATTRIBLOCATIONPROC GetAttribLocation;
- PFNGETPROGRAMIVPROC GetProgramiv;
- PFNGETPROGRAMINFOLOGPROC GetProgramInfoLog;
- PFNGETSHADERIVPROC GetShaderiv;
- PFNGETSHADERINFOLOGPROC GetShaderInfoLog;
- PFNGETSHADERSOURCEPROC GetShaderSource;
- PFNGETUNIFORMLOCATIONPROC GetUniformLocation;
- PFNGETUNIFORMFVPROC GetUniformfv;
- PFNGETUNIFORMIVPROC GetUniformiv;
- PFNGETVERTEXATTRIBDVPROC GetVertexAttribdv;
- PFNGETVERTEXATTRIBFVPROC GetVertexAttribfv;
- PFNGETVERTEXATTRIBIVPROC GetVertexAttribiv;
- PFNGETVERTEXATTRIBPOINTERVPROC GetVertexAttribPointerv;
- PFNISPROGRAMPROC IsProgram;
- PFNISSHADERPROC IsShader;
- PFNLINKPROGRAMPROC LinkProgram;
- PFNSHADERSOURCEPROC ShaderSource;
- PFNUSEPROGRAMPROC UseProgram;
- PFNUNIFORM1FPROC Uniform1f;
- PFNUNIFORM2FPROC Uniform2f;
- PFNUNIFORM3FPROC Uniform3f;
- PFNUNIFORM4FPROC Uniform4f;
- PFNUNIFORM1IPROC Uniform1i;
- PFNUNIFORM2IPROC Uniform2i;
- PFNUNIFORM3IPROC Uniform3i;
- PFNUNIFORM4IPROC Uniform4i;
- PFNUNIFORM1FVPROC Uniform1fv;
- PFNUNIFORM2FVPROC Uniform2fv;
- PFNUNIFORM3FVPROC Uniform3fv;
- PFNUNIFORM4FVPROC Uniform4fv;
- PFNUNIFORM1IVPROC Uniform1iv;
- PFNUNIFORM2IVPROC Uniform2iv;
- PFNUNIFORM3IVPROC Uniform3iv;
- PFNUNIFORM4IVPROC Uniform4iv;
- PFNUNIFORMMATRIX2FVPROC UniformMatrix2fv;
- PFNUNIFORMMATRIX3FVPROC UniformMatrix3fv;
- PFNUNIFORMMATRIX4FVPROC UniformMatrix4fv;
- PFNVALIDATEPROGRAMPROC ValidateProgram;
- PFNVERTEXATTRIBPOINTERPROC VertexAttribPointer;
-
- // Extension: 2.1
- PFNUNIFORMMATRIX2X3FVPROC UniformMatrix2x3fv;
- PFNUNIFORMMATRIX3X2FVPROC UniformMatrix3x2fv;
- PFNUNIFORMMATRIX2X4FVPROC UniformMatrix2x4fv;
- PFNUNIFORMMATRIX4X2FVPROC UniformMatrix4x2fv;
- PFNUNIFORMMATRIX3X4FVPROC UniformMatrix3x4fv;
- PFNUNIFORMMATRIX4X3FVPROC UniformMatrix4x3fv;
-
- // Extension: ARB_vertex_array_object
- PFNBINDVERTEXARRAYPROC BindVertexArray;
- PFNDELETEVERTEXARRAYSPROC DeleteVertexArrays;
- PFNGENVERTEXARRAYSPROC GenVertexArrays;
- PFNISVERTEXARRAYPROC IsVertexArray;
-
- // Extension: ARB_map_buffer_range
- PFNMAPBUFFERRANGEPROC MapBufferRange;
- PFNFLUSHMAPPEDBUFFERRANGEPROC FlushMappedBufferRange;
-
- // Extension: ARB_framebuffer_object
- PFNISRENDERBUFFERPROC IsRenderbuffer;
- PFNBINDRENDERBUFFERPROC BindRenderbuffer;
- PFNDELETERENDERBUFFERSPROC DeleteRenderbuffers;
- PFNGENRENDERBUFFERSPROC GenRenderbuffers;
- PFNRENDERBUFFERSTORAGEPROC RenderbufferStorage;
- PFNGETRENDERBUFFERPARAMETERIVPROC GetRenderbufferParameteriv;
- PFNISFRAMEBUFFERPROC IsFramebuffer;
- PFNBINDFRAMEBUFFERPROC BindFramebuffer;
- PFNDELETEFRAMEBUFFERSPROC DeleteFramebuffers;
- PFNGENFRAMEBUFFERSPROC GenFramebuffers;
- PFNCHECKFRAMEBUFFERSTATUSPROC CheckFramebufferStatus;
- PFNFRAMEBUFFERTEXTURE1DPROC FramebufferTexture1D;
- PFNFRAMEBUFFERTEXTURE2DPROC FramebufferTexture2D;
- PFNFRAMEBUFFERTEXTURE3DPROC FramebufferTexture3D;
- PFNFRAMEBUFFERRENDERBUFFERPROC FramebufferRenderbuffer;
- PFNGETFRAMEBUFFERATTACHMENTPARAMETERIVPROC GetFramebufferAttachmentParameteriv;
- PFNGENERATEMIPMAPPROC GenerateMipmap;
- PFNBLITFRAMEBUFFERPROC BlitFramebuffer;
- PFNRENDERBUFFERSTORAGEMULTISAMPLEPROC RenderbufferStorageMultisample;
- PFNFRAMEBUFFERTEXTURELAYERPROC FramebufferTextureLayer;
-
- // Extension: 3.0
- PFNCOLORMASKIPROC ColorMaski;
- PFNGETBOOLEANI_VPROC GetBooleani_v;
- PFNGETINTEGERI_VPROC GetIntegeri_v;
- PFNENABLEIPROC Enablei;
- PFNDISABLEIPROC Disablei;
- PFNISENABLEDIPROC IsEnabledi;
- PFNBEGINTRANSFORMFEEDBACKPROC BeginTransformFeedback;
- PFNENDTRANSFORMFEEDBACKPROC EndTransformFeedback;
- PFNBINDBUFFERRANGEPROC BindBufferRange;
- PFNBINDBUFFERBASEPROC BindBufferBase;
- PFNTRANSFORMFEEDBACKVARYINGSPROC TransformFeedbackVaryings;
- PFNGETTRANSFORMFEEDBACKVARYINGPROC GetTransformFeedbackVarying;
- PFNCLAMPCOLORPROC ClampColor;
- PFNBEGINCONDITIONALRENDERPROC BeginConditionalRender;
- PFNENDCONDITIONALRENDERPROC EndConditionalRender;
- PFNVERTEXATTRIBIPOINTERPROC VertexAttribIPointer;
- PFNGETVERTEXATTRIBIIVPROC GetVertexAttribIiv;
- PFNGETVERTEXATTRIBIUIVPROC GetVertexAttribIuiv;
- PFNVERTEXATTRIBI1IPROC VertexAttribI1i;
- PFNVERTEXATTRIBI2IPROC VertexAttribI2i;
- PFNVERTEXATTRIBI3IPROC VertexAttribI3i;
- PFNVERTEXATTRIBI4IPROC VertexAttribI4i;
- PFNVERTEXATTRIBI1UIPROC VertexAttribI1ui;
- PFNVERTEXATTRIBI2UIPROC VertexAttribI2ui;
- PFNVERTEXATTRIBI3UIPROC VertexAttribI3ui;
- PFNVERTEXATTRIBI4UIPROC VertexAttribI4ui;
- PFNVERTEXATTRIBI1IVPROC VertexAttribI1iv;
- PFNVERTEXATTRIBI2IVPROC VertexAttribI2iv;
- PFNVERTEXATTRIBI3IVPROC VertexAttribI3iv;
- PFNVERTEXATTRIBI4IVPROC VertexAttribI4iv;
- PFNVERTEXATTRIBI1UIVPROC VertexAttribI1uiv;
- PFNVERTEXATTRIBI2UIVPROC VertexAttribI2uiv;
- PFNVERTEXATTRIBI3UIVPROC VertexAttribI3uiv;
- PFNVERTEXATTRIBI4UIVPROC VertexAttribI4uiv;
- PFNVERTEXATTRIBI4BVPROC VertexAttribI4bv;
- PFNVERTEXATTRIBI4SVPROC VertexAttribI4sv;
- PFNVERTEXATTRIBI4UBVPROC VertexAttribI4ubv;
- PFNVERTEXATTRIBI4USVPROC VertexAttribI4usv;
- PFNGETUNIFORMUIVPROC GetUniformuiv;
- PFNBINDFRAGDATALOCATIONPROC BindFragDataLocation;
- PFNGETFRAGDATALOCATIONPROC GetFragDataLocation;
- PFNUNIFORM1UIPROC Uniform1ui;
- PFNUNIFORM2UIPROC Uniform2ui;
- PFNUNIFORM3UIPROC Uniform3ui;
- PFNUNIFORM4UIPROC Uniform4ui;
- PFNUNIFORM1UIVPROC Uniform1uiv;
- PFNUNIFORM2UIVPROC Uniform2uiv;
- PFNUNIFORM3UIVPROC Uniform3uiv;
- PFNUNIFORM4UIVPROC Uniform4uiv;
- PFNTEXPARAMETERIIVPROC TexParameterIiv;
- PFNTEXPARAMETERIUIVPROC TexParameterIuiv;
- PFNGETTEXPARAMETERIIVPROC GetTexParameterIiv;
- PFNGETTEXPARAMETERIUIVPROC GetTexParameterIuiv;
- PFNCLEARBUFFERIVPROC ClearBufferiv;
- PFNCLEARBUFFERUIVPROC ClearBufferuiv;
- PFNCLEARBUFFERFVPROC ClearBufferfv;
- PFNCLEARBUFFERFIPROC ClearBufferfi;
- PFNGETSTRINGIPROC GetStringi;
-
- // Extension: ARB_uniform_buffer_object
- PFNGETUNIFORMINDICESPROC GetUniformIndices;
- PFNGETACTIVEUNIFORMSIVPROC GetActiveUniformsiv;
- PFNGETACTIVEUNIFORMNAMEPROC GetActiveUniformName;
- PFNGETUNIFORMBLOCKINDEXPROC GetUniformBlockIndex;
- PFNGETACTIVEUNIFORMBLOCKIVPROC GetActiveUniformBlockiv;
- PFNGETACTIVEUNIFORMBLOCKNAMEPROC GetActiveUniformBlockName;
- PFNUNIFORMBLOCKBINDINGPROC UniformBlockBinding;
-
- // Extension: ARB_copy_buffer
- PFNCOPYBUFFERSUBDATAPROC CopyBufferSubData;
-
- // Extension: 3.1
- PFNDRAWARRAYSINSTANCEDPROC DrawArraysInstanced;
- PFNDRAWELEMENTSINSTANCEDPROC DrawElementsInstanced;
- PFNTEXBUFFERPROC TexBuffer;
- PFNPRIMITIVERESTARTINDEXPROC PrimitiveRestartIndex;
-
- // Legacy
- PFNENABLECLIENTSTATEPROC EnableClientState;
- PFNDISABLECLIENTSTATEPROC DisableClientState;
- PFNVERTEXPOINTERPROC VertexPointer;
- PFNNORMALPOINTERPROC NormalPointer;
- PFNCOLORPOINTERPROC ColorPointer;
- PFNTEXCOORDPOINTERPROC TexCoordPointer;
-
- PFNTEXENVIPROC TexEnvi;
-
- PFNMATRIXMODEPROC MatrixMode;
- PFNLOADIDENTITYPROC LoadIdentity;
- PFNORTHOPROC Ortho;
-
- PFNCOLOR3DPROC Color3d;
-
-
- // Extension: 1.1
- static void CODEGEN_FUNCPTR Switch_CullFace(GLenum mode)
- {
- CullFace = (PFNCULLFACEPROC)IntGetProcAddress("glCullFace");
- CullFace(mode);
- }
-
- static void CODEGEN_FUNCPTR Switch_FrontFace(GLenum mode)
- {
- FrontFace = (PFNFRONTFACEPROC)IntGetProcAddress("glFrontFace");
- FrontFace(mode);
- }
-
- static void CODEGEN_FUNCPTR Switch_Hint(GLenum target, GLenum mode)
- {
- Hint = (PFNHINTPROC)IntGetProcAddress("glHint");
- Hint(target, mode);
- }
-
- static void CODEGEN_FUNCPTR Switch_LineWidth(GLfloat width)
- {
- LineWidth = (PFNLINEWIDTHPROC)IntGetProcAddress("glLineWidth");
- LineWidth(width);
- }
-
- static void CODEGEN_FUNCPTR Switch_PointSize(GLfloat size)
- {
- PointSize = (PFNPOINTSIZEPROC)IntGetProcAddress("glPointSize");
- PointSize(size);
- }
-
- static void CODEGEN_FUNCPTR Switch_PolygonMode(GLenum face, GLenum mode)
- {
- PolygonMode = (PFNPOLYGONMODEPROC)IntGetProcAddress("glPolygonMode");
- PolygonMode(face, mode);
- }
-
- static void CODEGEN_FUNCPTR Switch_Scissor(GLint x, GLint y, GLsizei width, GLsizei height)
- {
- Scissor = (PFNSCISSORPROC)IntGetProcAddress("glScissor");
- Scissor(x, y, width, height);
- }
-
- static void CODEGEN_FUNCPTR Switch_TexParameterf(GLenum target, GLenum pname, GLfloat param)
- {
- TexParameterf = (PFNTEXPARAMETERFPROC)IntGetProcAddress("glTexParameterf");
- TexParameterf(target, pname, param);
- }
-
- static void CODEGEN_FUNCPTR Switch_TexParameterfv(GLenum target, GLenum pname, const GLfloat *params)
- {
- TexParameterfv = (PFNTEXPARAMETERFVPROC)IntGetProcAddress("glTexParameterfv");
- TexParameterfv(target, pname, params);
- }
-
- static void CODEGEN_FUNCPTR Switch_TexParameteri(GLenum target, GLenum pname, GLint param)
- {
- TexParameteri = (PFNTEXPARAMETERIPROC)IntGetProcAddress("glTexParameteri");
- TexParameteri(target, pname, param);
- }
-
- static void CODEGEN_FUNCPTR Switch_TexParameteriv(GLenum target, GLenum pname, const GLint *params)
- {
- TexParameteriv = (PFNTEXPARAMETERIVPROC)IntGetProcAddress("glTexParameteriv");
- TexParameteriv(target, pname, params);
- }
-
- static void CODEGEN_FUNCPTR Switch_TexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
- {
- TexImage1D = (PFNTEXIMAGE1DPROC)IntGetProcAddress("glTexImage1D");
- TexImage1D(target, level, internalformat, width, border, format, type, pixels);
- }
-
- static void CODEGEN_FUNCPTR Switch_TexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
- {
- TexImage2D = (PFNTEXIMAGE2DPROC)IntGetProcAddress("glTexImage2D");
- TexImage2D(target, level, internalformat, width, height, border, format, type, pixels);
- }
-
- static void CODEGEN_FUNCPTR Switch_DrawBuffer(GLenum mode)
- {
- DrawBuffer = (PFNDRAWBUFFERPROC)IntGetProcAddress("glDrawBuffer");
- DrawBuffer(mode);
- }
-
- static void CODEGEN_FUNCPTR Switch_Clear(GLbitfield mask)
- {
- Clear = (PFNCLEARPROC)IntGetProcAddress("glClear");
- Clear(mask);
- }
-
- static void CODEGEN_FUNCPTR Switch_ClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
- {
- ClearColor = (PFNCLEARCOLORPROC)IntGetProcAddress("glClearColor");
- ClearColor(red, green, blue, alpha);
- }
-
- static void CODEGEN_FUNCPTR Switch_ClearStencil(GLint s)
- {
- ClearStencil = (PFNCLEARSTENCILPROC)IntGetProcAddress("glClearStencil");
- ClearStencil(s);
- }
-
- static void CODEGEN_FUNCPTR Switch_ClearDepth(GLdouble depth)
- {
- ClearDepth = (PFNCLEARDEPTHPROC)IntGetProcAddress("glClearDepth");
- ClearDepth(depth);
- }
-
- static void CODEGEN_FUNCPTR Switch_StencilMask(GLuint mask)
- {
- StencilMask = (PFNSTENCILMASKPROC)IntGetProcAddress("glStencilMask");
- StencilMask(mask);
- }
-
- static void CODEGEN_FUNCPTR Switch_ColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha)
- {
- ColorMask = (PFNCOLORMASKPROC)IntGetProcAddress("glColorMask");
- ColorMask(red, green, blue, alpha);
- }
-
- static void CODEGEN_FUNCPTR Switch_DepthMask(GLboolean flag)
- {
- DepthMask = (PFNDEPTHMASKPROC)IntGetProcAddress("glDepthMask");
- DepthMask(flag);
- }
-
- static void CODEGEN_FUNCPTR Switch_Disable(GLenum cap)
- {
- Disable = (PFNDISABLEPROC)IntGetProcAddress("glDisable");
- Disable(cap);
- }
-
- static void CODEGEN_FUNCPTR Switch_Enable(GLenum cap)
- {
- Enable = (PFNENABLEPROC)IntGetProcAddress("glEnable");
- Enable(cap);
- }
-
- static void CODEGEN_FUNCPTR Switch_Finish()
- {
- Finish = (PFNFINISHPROC)IntGetProcAddress("glFinish");
- Finish();
- }
-
- static void CODEGEN_FUNCPTR Switch_Flush()
- {
- Flush = (PFNFLUSHPROC)IntGetProcAddress("glFlush");
- Flush();
- }
-
- static void CODEGEN_FUNCPTR Switch_BlendFunc(GLenum sfactor, GLenum dfactor)
- {
- BlendFunc = (PFNBLENDFUNCPROC)IntGetProcAddress("glBlendFunc");
- BlendFunc(sfactor, dfactor);
- }
-
- static void CODEGEN_FUNCPTR Switch_LogicOp(GLenum opcode)
- {
- LogicOp = (PFNLOGICOPPROC)IntGetProcAddress("glLogicOp");
- LogicOp(opcode);
- }
-
- static void CODEGEN_FUNCPTR Switch_StencilFunc(GLenum func, GLint ref, GLuint mask)
- {
- StencilFunc = (PFNSTENCILFUNCPROC)IntGetProcAddress("glStencilFunc");
- StencilFunc(func, ref, mask);
- }
-
- static void CODEGEN_FUNCPTR Switch_StencilOp(GLenum fail, GLenum zfail, GLenum zpass)
- {
- StencilOp = (PFNSTENCILOPPROC)IntGetProcAddress("glStencilOp");
- StencilOp(fail, zfail, zpass);
- }
-
- static void CODEGEN_FUNCPTR Switch_DepthFunc(GLenum func)
- {
- DepthFunc = (PFNDEPTHFUNCPROC)IntGetProcAddress("glDepthFunc");
- DepthFunc(func);
- }
-
- static void CODEGEN_FUNCPTR Switch_PixelStoref(GLenum pname, GLfloat param)
- {
- PixelStoref = (PFNPIXELSTOREFPROC)IntGetProcAddress("glPixelStoref");
- PixelStoref(pname, param);
- }
-
- static void CODEGEN_FUNCPTR Switch_PixelStorei(GLenum pname, GLint param)
- {
- PixelStorei = (PFNPIXELSTOREIPROC)IntGetProcAddress("glPixelStorei");
- PixelStorei(pname, param);
- }
-
- static void CODEGEN_FUNCPTR Switch_ReadBuffer(GLenum mode)
- {
- ReadBuffer = (PFNREADBUFFERPROC)IntGetProcAddress("glReadBuffer");
- ReadBuffer(mode);
- }
-
- static void CODEGEN_FUNCPTR Switch_ReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels)
- {
- ReadPixels = (PFNREADPIXELSPROC)IntGetProcAddress("glReadPixels");
- ReadPixels(x, y, width, height, format, type, pixels);
- }
-
- static void CODEGEN_FUNCPTR Switch_GetBooleanv(GLenum pname, GLboolean *params)
- {
- GetBooleanv = (PFNGETBOOLEANVPROC)IntGetProcAddress("glGetBooleanv");
- GetBooleanv(pname, params);
- }
-
- static void CODEGEN_FUNCPTR Switch_GetDoublev(GLenum pname, GLdouble *params)
- {
- GetDoublev = (PFNGETDOUBLEVPROC)IntGetProcAddress("glGetDoublev");
- GetDoublev(pname, params);
- }
-
- static GLenum CODEGEN_FUNCPTR Switch_GetError()
- {
- GetError = (PFNGETERRORPROC)IntGetProcAddress("glGetError");
- return GetError();
- }
-
- static void CODEGEN_FUNCPTR Switch_GetFloatv(GLenum pname, GLfloat *params)
- {
- GetFloatv = (PFNGETFLOATVPROC)IntGetProcAddress("glGetFloatv");
- GetFloatv(pname, params);
- }
-
- static void CODEGEN_FUNCPTR Switch_GetIntegerv(GLenum pname, GLint *params)
- {
- GetIntegerv = (PFNGETINTEGERVPROC)IntGetProcAddress("glGetIntegerv");
- GetIntegerv(pname, params);
- }
-
- static const GLubyte * CODEGEN_FUNCPTR Switch_GetString(GLenum name)
- {
- GetString = (PFNGETSTRINGPROC)IntGetProcAddress("glGetString");
- return GetString(name);
- }
-
- static void CODEGEN_FUNCPTR Switch_GetTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels)
- {
- GetTexImage = (PFNGETTEXIMAGEPROC)IntGetProcAddress("glGetTexImage");
- GetTexImage(target, level, format, type, pixels);
- }
-
- static void CODEGEN_FUNCPTR Switch_GetTexParameterfv(GLenum target, GLenum pname, GLfloat *params)
- {
- GetTexParameterfv = (PFNGETTEXPARAMETERFVPROC)IntGetProcAddress("glGetTexParameterfv");
- GetTexParameterfv(target, pname, params);
- }
-
- static void CODEGEN_FUNCPTR Switch_GetTexParameteriv(GLenum target, GLenum pname, GLint *params)
- {
- GetTexParameteriv = (PFNGETTEXPARAMETERIVPROC)IntGetProcAddress("glGetTexParameteriv");
- GetTexParameteriv(target, pname, params);
- }
-
- static void CODEGEN_FUNCPTR Switch_GetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params)
- {
- GetTexLevelParameterfv = (PFNGETTEXLEVELPARAMETERFVPROC)IntGetProcAddress("glGetTexLevelParameterfv");
- GetTexLevelParameterfv(target, level, pname, params);
- }
-
- static void CODEGEN_FUNCPTR Switch_GetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params)
- {
- GetTexLevelParameteriv = (PFNGETTEXLEVELPARAMETERIVPROC)IntGetProcAddress("glGetTexLevelParameteriv");
- GetTexLevelParameteriv(target, level, pname, params);
- }
-
- static GLboolean CODEGEN_FUNCPTR Switch_IsEnabled(GLenum cap)
- {
- IsEnabled = (PFNISENABLEDPROC)IntGetProcAddress("glIsEnabled");
- return IsEnabled(cap);
- }
-
- static void CODEGEN_FUNCPTR Switch_DepthRange(GLdouble ren_near, GLdouble ren_far)
- {
- DepthRange = (PFNDEPTHRANGEPROC)IntGetProcAddress("glDepthRange");
- DepthRange(ren_near, ren_far);
- }
-
- static void CODEGEN_FUNCPTR Switch_Viewport(GLint x, GLint y, GLsizei width, GLsizei height)
- {
- Viewport = (PFNVIEWPORTPROC)IntGetProcAddress("glViewport");
- Viewport(x, y, width, height);
- }
-
- static void CODEGEN_FUNCPTR Switch_DrawArrays(GLenum mode, GLint first, GLsizei count)
- {
- DrawArrays = (PFNDRAWARRAYSPROC)IntGetProcAddress("glDrawArrays");
- DrawArrays(mode, first, count);
- }
-
- static void CODEGEN_FUNCPTR Switch_DrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices)
- {
- DrawElements = (PFNDRAWELEMENTSPROC)IntGetProcAddress("glDrawElements");
- DrawElements(mode, count, type, indices);
- }
-
- static void CODEGEN_FUNCPTR Switch_GetPointerv(GLenum pname, GLvoid* *params)
- {
- GetPointerv = (PFNGETPOINTERVPROC)IntGetProcAddress("glGetPointerv");
- GetPointerv(pname, params);
- }
-
- static void CODEGEN_FUNCPTR Switch_PolygonOffset(GLfloat factor, GLfloat units)
- {
- PolygonOffset = (PFNPOLYGONOFFSETPROC)IntGetProcAddress("glPolygonOffset");
- PolygonOffset(factor, units);
- }
-
- static void CODEGEN_FUNCPTR Switch_CopyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border)
- {
- CopyTexImage1D = (PFNCOPYTEXIMAGE1DPROC)IntGetProcAddress("glCopyTexImage1D");
- CopyTexImage1D(target, level, internalformat, x, y, width, border);
- }
-
- static void CODEGEN_FUNCPTR Switch_CopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border)
- {
- CopyTexImage2D = (PFNCOPYTEXIMAGE2DPROC)IntGetProcAddress("glCopyTexImage2D");
- CopyTexImage2D(target, level, internalformat, x, y, width, height, border);
- }
-
- static void CODEGEN_FUNCPTR Switch_CopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width)
- {
- CopyTexSubImage1D = (PFNCOPYTEXSUBIMAGE1DPROC)IntGetProcAddress("glCopyTexSubImage1D");
- CopyTexSubImage1D(target, level, xoffset, x, y, width);
- }
-
- static void CODEGEN_FUNCPTR Switch_CopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height)
- {
- CopyTexSubImage2D = (PFNCOPYTEXSUBIMAGE2DPROC)IntGetProcAddress("glCopyTexSubImage2D");
- CopyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height);
- }
-
- static void CODEGEN_FUNCPTR Switch_TexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels)
- {
- TexSubImage1D = (PFNTEXSUBIMAGE1DPROC)IntGetProcAddress("glTexSubImage1D");
- TexSubImage1D(target, level, xoffset, width, format, type, pixels);
- }
-
- static void CODEGEN_FUNCPTR Switch_TexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels)
- {
- TexSubImage2D = (PFNTEXSUBIMAGE2DPROC)IntGetProcAddress("glTexSubImage2D");
- TexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels);
- }
-
- static void CODEGEN_FUNCPTR Switch_BindTexture(GLenum target, GLuint texture)
- {
- BindTexture = (PFNBINDTEXTUREPROC)IntGetProcAddress("glBindTexture");
- BindTexture(target, texture);
- }
-
- static void CODEGEN_FUNCPTR Switch_DeleteTextures(GLsizei n, const GLuint *textures)
- {
- DeleteTextures = (PFNDELETETEXTURESPROC)IntGetProcAddress("glDeleteTextures");
- DeleteTextures(n, textures);
- }
-
- static void CODEGEN_FUNCPTR Switch_GenTextures(GLsizei n, GLuint *textures)
- {
- GenTextures = (PFNGENTEXTURESPROC)IntGetProcAddress("glGenTextures");
- GenTextures(n, textures);
- }
-
- static GLboolean CODEGEN_FUNCPTR Switch_IsTexture(GLuint texture)
- {
- IsTexture = (PFNISTEXTUREPROC)IntGetProcAddress("glIsTexture");
- return IsTexture(texture);
- }
-
- static void CODEGEN_FUNCPTR Switch_Indexub(GLubyte c)
- {
- Indexub = (PFNINDEXUBPROC)IntGetProcAddress("glIndexub");
- Indexub(c);
- }
-
- static void CODEGEN_FUNCPTR Switch_Indexubv(const GLubyte *c)
- {
- Indexubv = (PFNINDEXUBVPROC)IntGetProcAddress("glIndexubv");
- Indexubv(c);
- }
-
-
- // Extension: 1.2
- static void CODEGEN_FUNCPTR Switch_BlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
- {
- BlendColor = (PFNBLENDCOLORPROC)IntGetProcAddress("glBlendColor");
- BlendColor(red, green, blue, alpha);
- }
-
- static void CODEGEN_FUNCPTR Switch_BlendEquation(GLenum mode)
- {
- BlendEquation = (PFNBLENDEQUATIONPROC)IntGetProcAddress("glBlendEquation");
- BlendEquation(mode);
- }
-
- static void CODEGEN_FUNCPTR Switch_DrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices)
- {
- DrawRangeElements = (PFNDRAWRANGEELEMENTSPROC)IntGetProcAddress("glDrawRangeElements");
- DrawRangeElements(mode, start, end, count, type, indices);
- }
-
- static void CODEGEN_FUNCPTR Switch_TexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels)
- {
- TexSubImage3D = (PFNTEXSUBIMAGE3DPROC)IntGetProcAddress("glTexSubImage3D");
- TexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels);
- }
-
- static void CODEGEN_FUNCPTR Switch_CopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height)
- {
- CopyTexSubImage3D = (PFNCOPYTEXSUBIMAGE3DPROC)IntGetProcAddress("glCopyTexSubImage3D");
- CopyTexSubImage3D(target, level, xoffset, yoffset, zoffset, x, y, width, height);
- }
-
-
- // Extension: 1.3
- static void CODEGEN_FUNCPTR Switch_ActiveTexture(GLenum texture)
- {
- ActiveTexture = (PFNACTIVETEXTUREPROC)IntGetProcAddress("glActiveTexture");
- ActiveTexture(texture);
- }
-
- static void CODEGEN_FUNCPTR Switch_SampleCoverage(GLfloat value, GLboolean invert)
- {
- SampleCoverage = (PFNSAMPLECOVERAGEPROC)IntGetProcAddress("glSampleCoverage");
- SampleCoverage(value, invert);
- }
-
- static void CODEGEN_FUNCPTR Switch_CompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data)
- {
- CompressedTexImage3D = (PFNCOMPRESSEDTEXIMAGE3DPROC)IntGetProcAddress("glCompressedTexImage3D");
- CompressedTexImage3D(target, level, internalformat, width, height, depth, border, imageSize, data);
- }
-
- static void CODEGEN_FUNCPTR Switch_CompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data)
- {
- CompressedTexImage2D = (PFNCOMPRESSEDTEXIMAGE2DPROC)IntGetProcAddress("glCompressedTexImage2D");
- CompressedTexImage2D(target, level, internalformat, width, height, border, imageSize, data);
- }
-
- static void CODEGEN_FUNCPTR Switch_CompressedTexImage1D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data)
- {
- CompressedTexImage1D = (PFNCOMPRESSEDTEXIMAGE1DPROC)IntGetProcAddress("glCompressedTexImage1D");
- CompressedTexImage1D(target, level, internalformat, width, border, imageSize, data);
- }
-
- static void CODEGEN_FUNCPTR Switch_CompressedTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data)
- {
- CompressedTexSubImage3D = (PFNCOMPRESSEDTEXSUBIMAGE3DPROC)IntGetProcAddress("glCompressedTexSubImage3D");
- CompressedTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data);
- }
-
- static void CODEGEN_FUNCPTR Switch_CompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data)
- {
- CompressedTexSubImage2D = (PFNCOMPRESSEDTEXSUBIMAGE2DPROC)IntGetProcAddress("glCompressedTexSubImage2D");
- CompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imageSize, data);
- }
-
- static void CODEGEN_FUNCPTR Switch_CompressedTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data)
- {
- CompressedTexSubImage1D = (PFNCOMPRESSEDTEXSUBIMAGE1DPROC)IntGetProcAddress("glCompressedTexSubImage1D");
- CompressedTexSubImage1D(target, level, xoffset, width, format, imageSize, data);
- }
-
- static void CODEGEN_FUNCPTR Switch_GetCompressedTexImage(GLenum target, GLint level, GLvoid *img)
- {
- GetCompressedTexImage = (PFNGETCOMPRESSEDTEXIMAGEPROC)IntGetProcAddress("glGetCompressedTexImage");
- GetCompressedTexImage(target, level, img);
- }
-
-
- // Extension: 1.4
- static void CODEGEN_FUNCPTR Switch_BlendFuncSeparate(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha)
- {
- BlendFuncSeparate = (PFNBLENDFUNCSEPARATEPROC)IntGetProcAddress("glBlendFuncSeparate");
- BlendFuncSeparate(sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha);
- }
-
- static void CODEGEN_FUNCPTR Switch_MultiDrawArrays(GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount)
- {
- MultiDrawArrays = (PFNMULTIDRAWARRAYSPROC)IntGetProcAddress("glMultiDrawArrays");
- MultiDrawArrays(mode, first, count, drawcount);
- }
-
- static void CODEGEN_FUNCPTR Switch_MultiDrawElements(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount)
- {
- MultiDrawElements = (PFNMULTIDRAWELEMENTSPROC)IntGetProcAddress("glMultiDrawElements");
- MultiDrawElements(mode, count, type, indices, drawcount);
- }
-
- static void CODEGEN_FUNCPTR Switch_PointParameterf(GLenum pname, GLfloat param)
- {
- PointParameterf = (PFNPOINTPARAMETERFPROC)IntGetProcAddress("glPointParameterf");
- PointParameterf(pname, param);
- }
-
- static void CODEGEN_FUNCPTR Switch_PointParameterfv(GLenum pname, const GLfloat *params)
- {
- PointParameterfv = (PFNPOINTPARAMETERFVPROC)IntGetProcAddress("glPointParameterfv");
- PointParameterfv(pname, params);
- }
-
- static void CODEGEN_FUNCPTR Switch_PointParameteri(GLenum pname, GLint param)
- {
- PointParameteri = (PFNPOINTPARAMETERIPROC)IntGetProcAddress("glPointParameteri");
- PointParameteri(pname, param);
- }
-
- static void CODEGEN_FUNCPTR Switch_PointParameteriv(GLenum pname, const GLint *params)
- {
- PointParameteriv = (PFNPOINTPARAMETERIVPROC)IntGetProcAddress("glPointParameteriv");
- PointParameteriv(pname, params);
- }
-
-
- // Extension: 1.5
- static void CODEGEN_FUNCPTR Switch_GenQueries(GLsizei n, GLuint *ids)
- {
- GenQueries = (PFNGENQUERIESPROC)IntGetProcAddress("glGenQueries");
- GenQueries(n, ids);
- }
-
- static void CODEGEN_FUNCPTR Switch_DeleteQueries(GLsizei n, const GLuint *ids)
- {
- DeleteQueries = (PFNDELETEQUERIESPROC)IntGetProcAddress("glDeleteQueries");
- DeleteQueries(n, ids);
- }
-
- static GLboolean CODEGEN_FUNCPTR Switch_IsQuery(GLuint id)
- {
- IsQuery = (PFNISQUERYPROC)IntGetProcAddress("glIsQuery");
- return IsQuery(id);
- }
-
- static void CODEGEN_FUNCPTR Switch_BeginQuery(GLenum target, GLuint id)
- {
- BeginQuery = (PFNBEGINQUERYPROC)IntGetProcAddress("glBeginQuery");
- BeginQuery(target, id);
- }
-
- static void CODEGEN_FUNCPTR Switch_EndQuery(GLenum target)
- {
- EndQuery = (PFNENDQUERYPROC)IntGetProcAddress("glEndQuery");
- EndQuery(target);
- }
-
- static void CODEGEN_FUNCPTR Switch_GetQueryiv(GLenum target, GLenum pname, GLint *params)
- {
- GetQueryiv = (PFNGETQUERYIVPROC)IntGetProcAddress("glGetQueryiv");
- GetQueryiv(target, pname, params);
- }
-
- static void CODEGEN_FUNCPTR Switch_GetQueryObjectiv(GLuint id, GLenum pname, GLint *params)
- {
- GetQueryObjectiv = (PFNGETQUERYOBJECTIVPROC)IntGetProcAddress("glGetQueryObjectiv");
- GetQueryObjectiv(id, pname, params);
- }
-
- static void CODEGEN_FUNCPTR Switch_GetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params)
- {
- GetQueryObjectuiv = (PFNGETQUERYOBJECTUIVPROC)IntGetProcAddress("glGetQueryObjectuiv");
- GetQueryObjectuiv(id, pname, params);
- }
-
- static void CODEGEN_FUNCPTR Switch_BindBuffer(GLenum target, GLuint buffer)
- {
- BindBuffer = (PFNBINDBUFFERPROC)IntGetProcAddress("glBindBuffer");
- BindBuffer(target, buffer);
- }
-
- static void CODEGEN_FUNCPTR Switch_DeleteBuffers(GLsizei n, const GLuint *buffers)
- {
- DeleteBuffers = (PFNDELETEBUFFERSPROC)IntGetProcAddress("glDeleteBuffers");
- DeleteBuffers(n, buffers);
- }
-
- static void CODEGEN_FUNCPTR Switch_GenBuffers(GLsizei n, GLuint *buffers)
- {
- GenBuffers = (PFNGENBUFFERSPROC)IntGetProcAddress("glGenBuffers");
- GenBuffers(n, buffers);
- }
-
- static GLboolean CODEGEN_FUNCPTR Switch_IsBuffer(GLuint buffer)
- {
- IsBuffer = (PFNISBUFFERPROC)IntGetProcAddress("glIsBuffer");
- return IsBuffer(buffer);
- }
-
- static void CODEGEN_FUNCPTR Switch_BufferData(GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage)
- {
- BufferData = (PFNBUFFERDATAPROC)IntGetProcAddress("glBufferData");
- BufferData(target, size, data, usage);
- }
-
- static void CODEGEN_FUNCPTR Switch_BufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data)
- {
- BufferSubData = (PFNBUFFERSUBDATAPROC)IntGetProcAddress("glBufferSubData");
- BufferSubData(target, offset, size, data);
- }
-
- static void CODEGEN_FUNCPTR Switch_GetBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, GLvoid *data)
- {
- GetBufferSubData = (PFNGETBUFFERSUBDATAPROC)IntGetProcAddress("glGetBufferSubData");
- GetBufferSubData(target, offset, size, data);
- }
-
- static GLvoid* CODEGEN_FUNCPTR Switch_MapBuffer(GLenum target, GLenum access)
- {
- MapBuffer = (PFNMAPBUFFERPROC)IntGetProcAddress("glMapBuffer");
- return MapBuffer(target, access);
- }
-
- static GLboolean CODEGEN_FUNCPTR Switch_UnmapBuffer(GLenum target)
- {
- UnmapBuffer = (PFNUNMAPBUFFERPROC)IntGetProcAddress("glUnmapBuffer");
- return UnmapBuffer(target);
- }
-
- static void CODEGEN_FUNCPTR Switch_GetBufferParameteriv(GLenum target, GLenum pname, GLint *params)
- {
- GetBufferParameteriv = (PFNGETBUFFERPARAMETERIVPROC)IntGetProcAddress("glGetBufferParameteriv");
- GetBufferParameteriv(target, pname, params);
- }
-
- static void CODEGEN_FUNCPTR Switch_GetBufferPointerv(GLenum target, GLenum pname, GLvoid* *params)
- {
- GetBufferPointerv = (PFNGETBUFFERPOINTERVPROC)IntGetProcAddress("glGetBufferPointerv");
- GetBufferPointerv(target, pname, params);
- }
-
-
- // Extension: 2.0
- static void CODEGEN_FUNCPTR Switch_BlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha)
- {
- BlendEquationSeparate = (PFNBLENDEQUATIONSEPARATEPROC)IntGetProcAddress("glBlendEquationSeparate");
- BlendEquationSeparate(modeRGB, modeAlpha);
- }
-
- static void CODEGEN_FUNCPTR Switch_DrawBuffers(GLsizei n, const GLenum *bufs)
- {
- DrawBuffers = (PFNDRAWBUFFERSPROC)IntGetProcAddress("glDrawBuffers");
- DrawBuffers(n, bufs);
- }
-
- static void CODEGEN_FUNCPTR Switch_StencilOpSeparate(GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass)
- {
- StencilOpSeparate = (PFNSTENCILOPSEPARATEPROC)IntGetProcAddress("glStencilOpSeparate");
- StencilOpSeparate(face, sfail, dpfail, dppass);
- }
-
- static void CODEGEN_FUNCPTR Switch_StencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask)
- {
- StencilFuncSeparate = (PFNSTENCILFUNCSEPARATEPROC)IntGetProcAddress("glStencilFuncSeparate");
- StencilFuncSeparate(face, func, ref, mask);
- }
-
- static void CODEGEN_FUNCPTR Switch_StencilMaskSeparate(GLenum face, GLuint mask)
- {
- StencilMaskSeparate = (PFNSTENCILMASKSEPARATEPROC)IntGetProcAddress("glStencilMaskSeparate");
- StencilMaskSeparate(face, mask);
- }
-
- static void CODEGEN_FUNCPTR Switch_AttachShader(GLuint program, GLuint shader)
- {
- AttachShader = (PFNATTACHSHADERPROC)IntGetProcAddress("glAttachShader");
- AttachShader(program, shader);
- }
-
- static void CODEGEN_FUNCPTR Switch_BindAttribLocation(GLuint program, GLuint index, const GLchar *name)
- {
- BindAttribLocation = (PFNBINDATTRIBLOCATIONPROC)IntGetProcAddress("glBindAttribLocation");
- BindAttribLocation(program, index, name);
- }
-
- static void CODEGEN_FUNCPTR Switch_CompileShader(GLuint shader)
- {
- CompileShader = (PFNCOMPILESHADERPROC)IntGetProcAddress("glCompileShader");
- CompileShader(shader);
- }
-
- static GLuint CODEGEN_FUNCPTR Switch_CreateProgram()
- {
- CreateProgram = (PFNCREATEPROGRAMPROC)IntGetProcAddress("glCreateProgram");
- return CreateProgram();
- }
-
- static GLuint CODEGEN_FUNCPTR Switch_CreateShader(GLenum type)
- {
- CreateShader = (PFNCREATESHADERPROC)IntGetProcAddress("glCreateShader");
- return CreateShader(type);
- }
-
- static void CODEGEN_FUNCPTR Switch_DeleteProgram(GLuint program)
- {
- DeleteProgram = (PFNDELETEPROGRAMPROC)IntGetProcAddress("glDeleteProgram");
- DeleteProgram(program);
- }
-
- static void CODEGEN_FUNCPTR Switch_DeleteShader(GLuint shader)
- {
- DeleteShader = (PFNDELETESHADERPROC)IntGetProcAddress("glDeleteShader");
- DeleteShader(shader);
- }
-
- static void CODEGEN_FUNCPTR Switch_DetachShader(GLuint program, GLuint shader)
- {
- DetachShader = (PFNDETACHSHADERPROC)IntGetProcAddress("glDetachShader");
- DetachShader(program, shader);
- }
-
- static void CODEGEN_FUNCPTR Switch_DisableVertexAttribArray(GLuint index)
- {
- DisableVertexAttribArray = (PFNDISABLEVERTEXATTRIBARRAYPROC)IntGetProcAddress("glDisableVertexAttribArray");
- DisableVertexAttribArray(index);
- }
-
- static void CODEGEN_FUNCPTR Switch_EnableVertexAttribArray(GLuint index)
- {
- EnableVertexAttribArray = (PFNENABLEVERTEXATTRIBARRAYPROC)IntGetProcAddress("glEnableVertexAttribArray");
- EnableVertexAttribArray(index);
- }
-
- static void CODEGEN_FUNCPTR Switch_GetActiveAttrib(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name)
- {
- GetActiveAttrib = (PFNGETACTIVEATTRIBPROC)IntGetProcAddress("glGetActiveAttrib");
- GetActiveAttrib(program, index, bufSize, length, size, type, name);
- }
-
- static void CODEGEN_FUNCPTR Switch_GetActiveUniform(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name)
- {
- GetActiveUniform = (PFNGETACTIVEUNIFORMPROC)IntGetProcAddress("glGetActiveUniform");
- GetActiveUniform(program, index, bufSize, length, size, type, name);
- }
-
- static void CODEGEN_FUNCPTR Switch_GetAttachedShaders(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *obj)
- {
- GetAttachedShaders = (PFNGETATTACHEDSHADERSPROC)IntGetProcAddress("glGetAttachedShaders");
- GetAttachedShaders(program, maxCount, count, obj);
- }
-
- static GLint CODEGEN_FUNCPTR Switch_GetAttribLocation(GLuint program, const GLchar *name)
- {
- GetAttribLocation = (PFNGETATTRIBLOCATIONPROC)IntGetProcAddress("glGetAttribLocation");
- return GetAttribLocation(program, name);
- }
-
- static void CODEGEN_FUNCPTR Switch_GetProgramiv(GLuint program, GLenum pname, GLint *params)
- {
- GetProgramiv = (PFNGETPROGRAMIVPROC)IntGetProcAddress("glGetProgramiv");
- GetProgramiv(program, pname, params);
- }
-
- static void CODEGEN_FUNCPTR Switch_GetProgramInfoLog(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
- {
- GetProgramInfoLog = (PFNGETPROGRAMINFOLOGPROC)IntGetProcAddress("glGetProgramInfoLog");
- GetProgramInfoLog(program, bufSize, length, infoLog);
- }
-
- static void CODEGEN_FUNCPTR Switch_GetShaderiv(GLuint shader, GLenum pname, GLint *params)
- {
- GetShaderiv = (PFNGETSHADERIVPROC)IntGetProcAddress("glGetShaderiv");
- GetShaderiv(shader, pname, params);
- }
-
- static void CODEGEN_FUNCPTR Switch_GetShaderInfoLog(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
- {
- GetShaderInfoLog = (PFNGETSHADERINFOLOGPROC)IntGetProcAddress("glGetShaderInfoLog");
- GetShaderInfoLog(shader, bufSize, length, infoLog);
- }
-
- static void CODEGEN_FUNCPTR Switch_GetShaderSource(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source)
- {
- GetShaderSource = (PFNGETSHADERSOURCEPROC)IntGetProcAddress("glGetShaderSource");
- GetShaderSource(shader, bufSize, length, source);
- }
-
- static GLint CODEGEN_FUNCPTR Switch_GetUniformLocation(GLuint program, const GLchar *name)
- {
- GetUniformLocation = (PFNGETUNIFORMLOCATIONPROC)IntGetProcAddress("glGetUniformLocation");
- return GetUniformLocation(program, name);
- }
-
- static void CODEGEN_FUNCPTR Switch_GetUniformfv(GLuint program, GLint location, GLfloat *params)
- {
- GetUniformfv = (PFNGETUNIFORMFVPROC)IntGetProcAddress("glGetUniformfv");
- GetUniformfv(program, location, params);
- }
-
- static void CODEGEN_FUNCPTR Switch_GetUniformiv(GLuint program, GLint location, GLint *params)
- {
- GetUniformiv = (PFNGETUNIFORMIVPROC)IntGetProcAddress("glGetUniformiv");
- GetUniformiv(program, location, params);
- }
-
- static void CODEGEN_FUNCPTR Switch_GetVertexAttribdv(GLuint index, GLenum pname, GLdouble *params)
- {
- GetVertexAttribdv = (PFNGETVERTEXATTRIBDVPROC)IntGetProcAddress("glGetVertexAttribdv");
- GetVertexAttribdv(index, pname, params);
- }
-
- static void CODEGEN_FUNCPTR Switch_GetVertexAttribfv(GLuint index, GLenum pname, GLfloat *params)
- {
- GetVertexAttribfv = (PFNGETVERTEXATTRIBFVPROC)IntGetProcAddress("glGetVertexAttribfv");
- GetVertexAttribfv(index, pname, params);
- }
-
- static void CODEGEN_FUNCPTR Switch_GetVertexAttribiv(GLuint index, GLenum pname, GLint *params)
- {
- GetVertexAttribiv = (PFNGETVERTEXATTRIBIVPROC)IntGetProcAddress("glGetVertexAttribiv");
- GetVertexAttribiv(index, pname, params);
- }
-
- static void CODEGEN_FUNCPTR Switch_GetVertexAttribPointerv(GLuint index, GLenum pname, GLvoid* *pointer)
- {
- GetVertexAttribPointerv = (PFNGETVERTEXATTRIBPOINTERVPROC)IntGetProcAddress("glGetVertexAttribPointerv");
- GetVertexAttribPointerv(index, pname, pointer);
- }
-
- static GLboolean CODEGEN_FUNCPTR Switch_IsProgram(GLuint program)
- {
- IsProgram = (PFNISPROGRAMPROC)IntGetProcAddress("glIsProgram");
- return IsProgram(program);
- }
-
- static GLboolean CODEGEN_FUNCPTR Switch_IsShader(GLuint shader)
- {
- IsShader = (PFNISSHADERPROC)IntGetProcAddress("glIsShader");
- return IsShader(shader);
- }
-
- static void CODEGEN_FUNCPTR Switch_LinkProgram(GLuint program)
- {
- LinkProgram = (PFNLINKPROGRAMPROC)IntGetProcAddress("glLinkProgram");
- LinkProgram(program);
- }
-
- static void CODEGEN_FUNCPTR Switch_ShaderSource(GLuint shader, GLsizei count, const GLchar* const *string, const GLint *length)
- {
- ShaderSource = (PFNSHADERSOURCEPROC)IntGetProcAddress("glShaderSource");
- ShaderSource(shader, count, string, length);
- }
-
- static void CODEGEN_FUNCPTR Switch_UseProgram(GLuint program)
- {
- UseProgram = (PFNUSEPROGRAMPROC)IntGetProcAddress("glUseProgram");
- UseProgram(program);
- }
-
- static void CODEGEN_FUNCPTR Switch_Uniform1f(GLint location, GLfloat v0)
- {
- Uniform1f = (PFNUNIFORM1FPROC)IntGetProcAddress("glUniform1f");
- Uniform1f(location, v0);
- }
-
- static void CODEGEN_FUNCPTR Switch_Uniform2f(GLint location, GLfloat v0, GLfloat v1)
- {
- Uniform2f = (PFNUNIFORM2FPROC)IntGetProcAddress("glUniform2f");
- Uniform2f(location, v0, v1);
- }
-
- static void CODEGEN_FUNCPTR Switch_Uniform3f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2)
- {
- Uniform3f = (PFNUNIFORM3FPROC)IntGetProcAddress("glUniform3f");
- Uniform3f(location, v0, v1, v2);
- }
-
- static void CODEGEN_FUNCPTR Switch_Uniform4f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3)
- {
- Uniform4f = (PFNUNIFORM4FPROC)IntGetProcAddress("glUniform4f");
- Uniform4f(location, v0, v1, v2, v3);
- }
-
- static void CODEGEN_FUNCPTR Switch_Uniform1i(GLint location, GLint v0)
- {
- Uniform1i = (PFNUNIFORM1IPROC)IntGetProcAddress("glUniform1i");
- Uniform1i(location, v0);
- }
-
- static void CODEGEN_FUNCPTR Switch_Uniform2i(GLint location, GLint v0, GLint v1)
- {
- Uniform2i = (PFNUNIFORM2IPROC)IntGetProcAddress("glUniform2i");
- Uniform2i(location, v0, v1);
- }
-
- static void CODEGEN_FUNCPTR Switch_Uniform3i(GLint location, GLint v0, GLint v1, GLint v2)
- {
- Uniform3i = (PFNUNIFORM3IPROC)IntGetProcAddress("glUniform3i");
- Uniform3i(location, v0, v1, v2);
- }
-
- static void CODEGEN_FUNCPTR Switch_Uniform4i(GLint location, GLint v0, GLint v1, GLint v2, GLint v3)
- {
- Uniform4i = (PFNUNIFORM4IPROC)IntGetProcAddress("glUniform4i");
- Uniform4i(location, v0, v1, v2, v3);
- }
-
- static void CODEGEN_FUNCPTR Switch_Uniform1fv(GLint location, GLsizei count, const GLfloat *value)
- {
- Uniform1fv = (PFNUNIFORM1FVPROC)IntGetProcAddress("glUniform1fv");
- Uniform1fv(location, count, value);
- }
-
- static void CODEGEN_FUNCPTR Switch_Uniform2fv(GLint location, GLsizei count, const GLfloat *value)
- {
- Uniform2fv = (PFNUNIFORM2FVPROC)IntGetProcAddress("glUniform2fv");
- Uniform2fv(location, count, value);
- }
-
- static void CODEGEN_FUNCPTR Switch_Uniform3fv(GLint location, GLsizei count, const GLfloat *value)
- {
- Uniform3fv = (PFNUNIFORM3FVPROC)IntGetProcAddress("glUniform3fv");
- Uniform3fv(location, count, value);
- }
-
- static void CODEGEN_FUNCPTR Switch_Uniform4fv(GLint location, GLsizei count, const GLfloat *value)
- {
- Uniform4fv = (PFNUNIFORM4FVPROC)IntGetProcAddress("glUniform4fv");
- Uniform4fv(location, count, value);
- }
-
- static void CODEGEN_FUNCPTR Switch_Uniform1iv(GLint location, GLsizei count, const GLint *value)
- {
- Uniform1iv = (PFNUNIFORM1IVPROC)IntGetProcAddress("glUniform1iv");
- Uniform1iv(location, count, value);
- }
-
- static void CODEGEN_FUNCPTR Switch_Uniform2iv(GLint location, GLsizei count, const GLint *value)
- {
- Uniform2iv = (PFNUNIFORM2IVPROC)IntGetProcAddress("glUniform2iv");
- Uniform2iv(location, count, value);
- }
-
- static void CODEGEN_FUNCPTR Switch_Uniform3iv(GLint location, GLsizei count, const GLint *value)
- {
- Uniform3iv = (PFNUNIFORM3IVPROC)IntGetProcAddress("glUniform3iv");
- Uniform3iv(location, count, value);
- }
-
- static void CODEGEN_FUNCPTR Switch_Uniform4iv(GLint location, GLsizei count, const GLint *value)
- {
- Uniform4iv = (PFNUNIFORM4IVPROC)IntGetProcAddress("glUniform4iv");
- Uniform4iv(location, count, value);
- }
-
- static void CODEGEN_FUNCPTR Switch_UniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
- {
- UniformMatrix2fv = (PFNUNIFORMMATRIX2FVPROC)IntGetProcAddress("glUniformMatrix2fv");
- UniformMatrix2fv(location, count, transpose, value);
- }
-
- static void CODEGEN_FUNCPTR Switch_UniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
- {
- UniformMatrix3fv = (PFNUNIFORMMATRIX3FVPROC)IntGetProcAddress("glUniformMatrix3fv");
- UniformMatrix3fv(location, count, transpose, value);
- }
-
- static void CODEGEN_FUNCPTR Switch_UniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
- {
- UniformMatrix4fv = (PFNUNIFORMMATRIX4FVPROC)IntGetProcAddress("glUniformMatrix4fv");
- UniformMatrix4fv(location, count, transpose, value);
- }
-
- static void CODEGEN_FUNCPTR Switch_ValidateProgram(GLuint program)
- {
- ValidateProgram = (PFNVALIDATEPROGRAMPROC)IntGetProcAddress("glValidateProgram");
- ValidateProgram(program);
- }
-
- static void CODEGEN_FUNCPTR Switch_VertexAttribPointer(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer)
- {
- VertexAttribPointer = (PFNVERTEXATTRIBPOINTERPROC)IntGetProcAddress("glVertexAttribPointer");
- VertexAttribPointer(index, size, type, normalized, stride, pointer);
- }
-
-
- // Extension: 2.1
- static void CODEGEN_FUNCPTR Switch_UniformMatrix2x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
- {
- UniformMatrix2x3fv = (PFNUNIFORMMATRIX2X3FVPROC)IntGetProcAddress("glUniformMatrix2x3fv");
- UniformMatrix2x3fv(location, count, transpose, value);
- }
-
- static void CODEGEN_FUNCPTR Switch_UniformMatrix3x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
- {
- UniformMatrix3x2fv = (PFNUNIFORMMATRIX3X2FVPROC)IntGetProcAddress("glUniformMatrix3x2fv");
- UniformMatrix3x2fv(location, count, transpose, value);
- }
-
- static void CODEGEN_FUNCPTR Switch_UniformMatrix2x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
- {
- UniformMatrix2x4fv = (PFNUNIFORMMATRIX2X4FVPROC)IntGetProcAddress("glUniformMatrix2x4fv");
- UniformMatrix2x4fv(location, count, transpose, value);
- }
-
- static void CODEGEN_FUNCPTR Switch_UniformMatrix4x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
- {
- UniformMatrix4x2fv = (PFNUNIFORMMATRIX4X2FVPROC)IntGetProcAddress("glUniformMatrix4x2fv");
- UniformMatrix4x2fv(location, count, transpose, value);
- }
-
- static void CODEGEN_FUNCPTR Switch_UniformMatrix3x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
- {
- UniformMatrix3x4fv = (PFNUNIFORMMATRIX3X4FVPROC)IntGetProcAddress("glUniformMatrix3x4fv");
- UniformMatrix3x4fv(location, count, transpose, value);
- }
-
- static void CODEGEN_FUNCPTR Switch_UniformMatrix4x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
- {
- UniformMatrix4x3fv = (PFNUNIFORMMATRIX4X3FVPROC)IntGetProcAddress("glUniformMatrix4x3fv");
- UniformMatrix4x3fv(location, count, transpose, value);
- }
-
-
- // Extension: ARB_vertex_array_object
- static void CODEGEN_FUNCPTR Switch_BindVertexArray(GLuint ren_array)
- {
- BindVertexArray = (PFNBINDVERTEXARRAYPROC)IntGetProcAddress("glBindVertexArray");
- BindVertexArray(ren_array);
- }
-
- static void CODEGEN_FUNCPTR Switch_DeleteVertexArrays(GLsizei n, const GLuint *arrays)
- {
- DeleteVertexArrays = (PFNDELETEVERTEXARRAYSPROC)IntGetProcAddress("glDeleteVertexArrays");
- DeleteVertexArrays(n, arrays);
- }
-
- static void CODEGEN_FUNCPTR Switch_GenVertexArrays(GLsizei n, GLuint *arrays)
- {
- GenVertexArrays = (PFNGENVERTEXARRAYSPROC)IntGetProcAddress("glGenVertexArrays");
- GenVertexArrays(n, arrays);
- }
-
- static GLboolean CODEGEN_FUNCPTR Switch_IsVertexArray(GLuint ren_array)
- {
- IsVertexArray = (PFNISVERTEXARRAYPROC)IntGetProcAddress("glIsVertexArray");
- return IsVertexArray(ren_array);
- }
-
-
- // Extension: ARB_map_buffer_range
- static GLvoid* CODEGEN_FUNCPTR Switch_MapBufferRange(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access)
- {
- MapBufferRange = (PFNMAPBUFFERRANGEPROC)IntGetProcAddress("glMapBufferRange");
- return MapBufferRange(target, offset, length, access);
- }
-
- static void CODEGEN_FUNCPTR Switch_FlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length)
- {
- FlushMappedBufferRange = (PFNFLUSHMAPPEDBUFFERRANGEPROC)IntGetProcAddress("glFlushMappedBufferRange");
- FlushMappedBufferRange(target, offset, length);
- }
-
-
- // Extension: ARB_framebuffer_object
- static GLboolean CODEGEN_FUNCPTR Switch_IsRenderbuffer(GLuint renderbuffer)
- {
- IsRenderbuffer = (PFNISRENDERBUFFERPROC)IntGetProcAddress("glIsRenderbuffer");
- return IsRenderbuffer(renderbuffer);
- }
-
- static void CODEGEN_FUNCPTR Switch_BindRenderbuffer(GLenum target, GLuint renderbuffer)
- {
- BindRenderbuffer = (PFNBINDRENDERBUFFERPROC)IntGetProcAddress("glBindRenderbuffer");
- BindRenderbuffer(target, renderbuffer);
- }
-
- static void CODEGEN_FUNCPTR Switch_DeleteRenderbuffers(GLsizei n, const GLuint *renderbuffers)
- {
- DeleteRenderbuffers = (PFNDELETERENDERBUFFERSPROC)IntGetProcAddress("glDeleteRenderbuffers");
- DeleteRenderbuffers(n, renderbuffers);
- }
-
- static void CODEGEN_FUNCPTR Switch_GenRenderbuffers(GLsizei n, GLuint *renderbuffers)
- {
- GenRenderbuffers = (PFNGENRENDERBUFFERSPROC)IntGetProcAddress("glGenRenderbuffers");
- GenRenderbuffers(n, renderbuffers);
- }
-
- static void CODEGEN_FUNCPTR Switch_RenderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height)
- {
- RenderbufferStorage = (PFNRENDERBUFFERSTORAGEPROC)IntGetProcAddress("glRenderbufferStorage");
- RenderbufferStorage(target, internalformat, width, height);
- }
-
- static void CODEGEN_FUNCPTR Switch_GetRenderbufferParameteriv(GLenum target, GLenum pname, GLint *params)
- {
- GetRenderbufferParameteriv = (PFNGETRENDERBUFFERPARAMETERIVPROC)IntGetProcAddress("glGetRenderbufferParameteriv");
- GetRenderbufferParameteriv(target, pname, params);
- }
-
- static GLboolean CODEGEN_FUNCPTR Switch_IsFramebuffer(GLuint framebuffer)
- {
- IsFramebuffer = (PFNISFRAMEBUFFERPROC)IntGetProcAddress("glIsFramebuffer");
- return IsFramebuffer(framebuffer);
- }
-
- static void CODEGEN_FUNCPTR Switch_BindFramebuffer(GLenum target, GLuint framebuffer)
- {
- BindFramebuffer = (PFNBINDFRAMEBUFFERPROC)IntGetProcAddress("glBindFramebuffer");
- BindFramebuffer(target, framebuffer);
- }
-
- static void CODEGEN_FUNCPTR Switch_DeleteFramebuffers(GLsizei n, const GLuint *framebuffers)
- {
- DeleteFramebuffers = (PFNDELETEFRAMEBUFFERSPROC)IntGetProcAddress("glDeleteFramebuffers");
- DeleteFramebuffers(n, framebuffers);
- }
-
- static void CODEGEN_FUNCPTR Switch_GenFramebuffers(GLsizei n, GLuint *framebuffers)
- {
- GenFramebuffers = (PFNGENFRAMEBUFFERSPROC)IntGetProcAddress("glGenFramebuffers");
- GenFramebuffers(n, framebuffers);
- }
-
- static GLenum CODEGEN_FUNCPTR Switch_CheckFramebufferStatus(GLenum target)
- {
- CheckFramebufferStatus = (PFNCHECKFRAMEBUFFERSTATUSPROC)IntGetProcAddress("glCheckFramebufferStatus");
- return CheckFramebufferStatus(target);
- }
-
- static void CODEGEN_FUNCPTR Switch_FramebufferTexture1D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
- {
- FramebufferTexture1D = (PFNFRAMEBUFFERTEXTURE1DPROC)IntGetProcAddress("glFramebufferTexture1D");
- FramebufferTexture1D(target, attachment, textarget, texture, level);
- }
-
- static void CODEGEN_FUNCPTR Switch_FramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
- {
- FramebufferTexture2D = (PFNFRAMEBUFFERTEXTURE2DPROC)IntGetProcAddress("glFramebufferTexture2D");
- FramebufferTexture2D(target, attachment, textarget, texture, level);
- }
-
- static void CODEGEN_FUNCPTR Switch_FramebufferTexture3D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset)
- {
- FramebufferTexture3D = (PFNFRAMEBUFFERTEXTURE3DPROC)IntGetProcAddress("glFramebufferTexture3D");
- FramebufferTexture3D(target, attachment, textarget, texture, level, zoffset);
- }
-
- static void CODEGEN_FUNCPTR Switch_FramebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer)
- {
- FramebufferRenderbuffer = (PFNFRAMEBUFFERRENDERBUFFERPROC)IntGetProcAddress("glFramebufferRenderbuffer");
- FramebufferRenderbuffer(target, attachment, renderbuffertarget, renderbuffer);
- }
-
- static void CODEGEN_FUNCPTR Switch_GetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint *params)
- {
- GetFramebufferAttachmentParameteriv = (PFNGETFRAMEBUFFERATTACHMENTPARAMETERIVPROC)IntGetProcAddress("glGetFramebufferAttachmentParameteriv");
- GetFramebufferAttachmentParameteriv(target, attachment, pname, params);
- }
-
- static void CODEGEN_FUNCPTR Switch_GenerateMipmap(GLenum target)
- {
- GenerateMipmap = (PFNGENERATEMIPMAPPROC)IntGetProcAddress("glGenerateMipmap");
- GenerateMipmap(target);
- }
-
- static void CODEGEN_FUNCPTR Switch_BlitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter)
- {
- BlitFramebuffer = (PFNBLITFRAMEBUFFERPROC)IntGetProcAddress("glBlitFramebuffer");
- BlitFramebuffer(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter);
- }
-
- static void CODEGEN_FUNCPTR Switch_RenderbufferStorageMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height)
- {
- RenderbufferStorageMultisample = (PFNRENDERBUFFERSTORAGEMULTISAMPLEPROC)IntGetProcAddress("glRenderbufferStorageMultisample");
- RenderbufferStorageMultisample(target, samples, internalformat, width, height);
- }
-
- static void CODEGEN_FUNCPTR Switch_FramebufferTextureLayer(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer)
- {
- FramebufferTextureLayer = (PFNFRAMEBUFFERTEXTURELAYERPROC)IntGetProcAddress("glFramebufferTextureLayer");
- FramebufferTextureLayer(target, attachment, texture, level, layer);
- }
-
-
- // Extension: 3.0
- static void CODEGEN_FUNCPTR Switch_ColorMaski(GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a)
- {
- ColorMaski = (PFNCOLORMASKIPROC)IntGetProcAddress("glColorMaski");
- ColorMaski(index, r, g, b, a);
- }
-
- static void CODEGEN_FUNCPTR Switch_GetBooleani_v(GLenum target, GLuint index, GLboolean *data)
- {
- GetBooleani_v = (PFNGETBOOLEANI_VPROC)IntGetProcAddress("glGetBooleani_v");
- GetBooleani_v(target, index, data);
- }
-
- static void CODEGEN_FUNCPTR Switch_GetIntegeri_v(GLenum target, GLuint index, GLint *data)
- {
- GetIntegeri_v = (PFNGETINTEGERI_VPROC)IntGetProcAddress("glGetIntegeri_v");
- GetIntegeri_v(target, index, data);
- }
-
- static void CODEGEN_FUNCPTR Switch_Enablei(GLenum target, GLuint index)
- {
- Enablei = (PFNENABLEIPROC)IntGetProcAddress("glEnablei");
- Enablei(target, index);
- }
-
- static void CODEGEN_FUNCPTR Switch_Disablei(GLenum target, GLuint index)
- {
- Disablei = (PFNDISABLEIPROC)IntGetProcAddress("glDisablei");
- Disablei(target, index);
- }
-
- static GLboolean CODEGEN_FUNCPTR Switch_IsEnabledi(GLenum target, GLuint index)
- {
- IsEnabledi = (PFNISENABLEDIPROC)IntGetProcAddress("glIsEnabledi");
- return IsEnabledi(target, index);
- }
-
- static void CODEGEN_FUNCPTR Switch_BeginTransformFeedback(GLenum primitiveMode)
- {
- BeginTransformFeedback = (PFNBEGINTRANSFORMFEEDBACKPROC)IntGetProcAddress("glBeginTransformFeedback");
- BeginTransformFeedback(primitiveMode);
- }
-
- static void CODEGEN_FUNCPTR Switch_EndTransformFeedback()
- {
- EndTransformFeedback = (PFNENDTRANSFORMFEEDBACKPROC)IntGetProcAddress("glEndTransformFeedback");
- EndTransformFeedback();
- }
-
- static void CODEGEN_FUNCPTR Switch_BindBufferRange(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size)
- {
- BindBufferRange = (PFNBINDBUFFERRANGEPROC)IntGetProcAddress("glBindBufferRange");
- BindBufferRange(target, index, buffer, offset, size);
- }
-
- static void CODEGEN_FUNCPTR Switch_BindBufferBase(GLenum target, GLuint index, GLuint buffer)
- {
- BindBufferBase = (PFNBINDBUFFERBASEPROC)IntGetProcAddress("glBindBufferBase");
- BindBufferBase(target, index, buffer);
- }
-
- static void CODEGEN_FUNCPTR Switch_TransformFeedbackVaryings(GLuint program, GLsizei count, const GLchar* const *varyings, GLenum bufferMode)
- {
- TransformFeedbackVaryings = (PFNTRANSFORMFEEDBACKVARYINGSPROC)IntGetProcAddress("glTransformFeedbackVaryings");
- TransformFeedbackVaryings(program, count, varyings, bufferMode);
- }
-
- static void CODEGEN_FUNCPTR Switch_GetTransformFeedbackVarying(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name)
- {
- GetTransformFeedbackVarying = (PFNGETTRANSFORMFEEDBACKVARYINGPROC)IntGetProcAddress("glGetTransformFeedbackVarying");
- GetTransformFeedbackVarying(program, index, bufSize, length, size, type, name);
- }
-
- static void CODEGEN_FUNCPTR Switch_ClampColor(GLenum target, GLenum clamp)
- {
- ClampColor = (PFNCLAMPCOLORPROC)IntGetProcAddress("glClampColor");
- ClampColor(target, clamp);
- }
-
- static void CODEGEN_FUNCPTR Switch_BeginConditionalRender(GLuint id, GLenum mode)
- {
- BeginConditionalRender = (PFNBEGINCONDITIONALRENDERPROC)IntGetProcAddress("glBeginConditionalRender");
- BeginConditionalRender(id, mode);
- }
-
- static void CODEGEN_FUNCPTR Switch_EndConditionalRender()
- {
- EndConditionalRender = (PFNENDCONDITIONALRENDERPROC)IntGetProcAddress("glEndConditionalRender");
- EndConditionalRender();
- }
-
- static void CODEGEN_FUNCPTR Switch_VertexAttribIPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
- {
- VertexAttribIPointer = (PFNVERTEXATTRIBIPOINTERPROC)IntGetProcAddress("glVertexAttribIPointer");
- VertexAttribIPointer(index, size, type, stride, pointer);
- }
-
- static void CODEGEN_FUNCPTR Switch_GetVertexAttribIiv(GLuint index, GLenum pname, GLint *params)
- {
- GetVertexAttribIiv = (PFNGETVERTEXATTRIBIIVPROC)IntGetProcAddress("glGetVertexAttribIiv");
- GetVertexAttribIiv(index, pname, params);
- }
-
- static void CODEGEN_FUNCPTR Switch_GetVertexAttribIuiv(GLuint index, GLenum pname, GLuint *params)
- {
- GetVertexAttribIuiv = (PFNGETVERTEXATTRIBIUIVPROC)IntGetProcAddress("glGetVertexAttribIuiv");
- GetVertexAttribIuiv(index, pname, params);
- }
-
- static void CODEGEN_FUNCPTR Switch_VertexAttribI1i(GLuint index, GLint x)
- {
- VertexAttribI1i = (PFNVERTEXATTRIBI1IPROC)IntGetProcAddress("glVertexAttribI1i");
- VertexAttribI1i(index, x);
- }
-
- static void CODEGEN_FUNCPTR Switch_VertexAttribI2i(GLuint index, GLint x, GLint y)
- {
- VertexAttribI2i = (PFNVERTEXATTRIBI2IPROC)IntGetProcAddress("glVertexAttribI2i");
- VertexAttribI2i(index, x, y);
- }
-
- static void CODEGEN_FUNCPTR Switch_VertexAttribI3i(GLuint index, GLint x, GLint y, GLint z)
- {
- VertexAttribI3i = (PFNVERTEXATTRIBI3IPROC)IntGetProcAddress("glVertexAttribI3i");
- VertexAttribI3i(index, x, y, z);
- }
-
- static void CODEGEN_FUNCPTR Switch_VertexAttribI4i(GLuint index, GLint x, GLint y, GLint z, GLint w)
- {
- VertexAttribI4i = (PFNVERTEXATTRIBI4IPROC)IntGetProcAddress("glVertexAttribI4i");
- VertexAttribI4i(index, x, y, z, w);
- }
-
- static void CODEGEN_FUNCPTR Switch_VertexAttribI1ui(GLuint index, GLuint x)
- {
- VertexAttribI1ui = (PFNVERTEXATTRIBI1UIPROC)IntGetProcAddress("glVertexAttribI1ui");
- VertexAttribI1ui(index, x);
- }
-
- static void CODEGEN_FUNCPTR Switch_VertexAttribI2ui(GLuint index, GLuint x, GLuint y)
- {
- VertexAttribI2ui = (PFNVERTEXATTRIBI2UIPROC)IntGetProcAddress("glVertexAttribI2ui");
- VertexAttribI2ui(index, x, y);
- }
-
- static void CODEGEN_FUNCPTR Switch_VertexAttribI3ui(GLuint index, GLuint x, GLuint y, GLuint z)
- {
- VertexAttribI3ui = (PFNVERTEXATTRIBI3UIPROC)IntGetProcAddress("glVertexAttribI3ui");
- VertexAttribI3ui(index, x, y, z);
- }
-
- static void CODEGEN_FUNCPTR Switch_VertexAttribI4ui(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w)
- {
- VertexAttribI4ui = (PFNVERTEXATTRIBI4UIPROC)IntGetProcAddress("glVertexAttribI4ui");
- VertexAttribI4ui(index, x, y, z, w);
- }
-
- static void CODEGEN_FUNCPTR Switch_VertexAttribI1iv(GLuint index, const GLint *v)
- {
- VertexAttribI1iv = (PFNVERTEXATTRIBI1IVPROC)IntGetProcAddress("glVertexAttribI1iv");
- VertexAttribI1iv(index, v);
- }
-
- static void CODEGEN_FUNCPTR Switch_VertexAttribI2iv(GLuint index, const GLint *v)
- {
- VertexAttribI2iv = (PFNVERTEXATTRIBI2IVPROC)IntGetProcAddress("glVertexAttribI2iv");
- VertexAttribI2iv(index, v);
- }
-
- static void CODEGEN_FUNCPTR Switch_VertexAttribI3iv(GLuint index, const GLint *v)
- {
- VertexAttribI3iv = (PFNVERTEXATTRIBI3IVPROC)IntGetProcAddress("glVertexAttribI3iv");
- VertexAttribI3iv(index, v);
- }
-
- static void CODEGEN_FUNCPTR Switch_VertexAttribI4iv(GLuint index, const GLint *v)
- {
- VertexAttribI4iv = (PFNVERTEXATTRIBI4IVPROC)IntGetProcAddress("glVertexAttribI4iv");
- VertexAttribI4iv(index, v);
- }
-
- static void CODEGEN_FUNCPTR Switch_VertexAttribI1uiv(GLuint index, const GLuint *v)
- {
- VertexAttribI1uiv = (PFNVERTEXATTRIBI1UIVPROC)IntGetProcAddress("glVertexAttribI1uiv");
- VertexAttribI1uiv(index, v);
- }
-
- static void CODEGEN_FUNCPTR Switch_VertexAttribI2uiv(GLuint index, const GLuint *v)
- {
- VertexAttribI2uiv = (PFNVERTEXATTRIBI2UIVPROC)IntGetProcAddress("glVertexAttribI2uiv");
- VertexAttribI2uiv(index, v);
- }
-
- static void CODEGEN_FUNCPTR Switch_VertexAttribI3uiv(GLuint index, const GLuint *v)
- {
- VertexAttribI3uiv = (PFNVERTEXATTRIBI3UIVPROC)IntGetProcAddress("glVertexAttribI3uiv");
- VertexAttribI3uiv(index, v);
- }
-
- static void CODEGEN_FUNCPTR Switch_VertexAttribI4uiv(GLuint index, const GLuint *v)
- {
- VertexAttribI4uiv = (PFNVERTEXATTRIBI4UIVPROC)IntGetProcAddress("glVertexAttribI4uiv");
- VertexAttribI4uiv(index, v);
- }
-
- static void CODEGEN_FUNCPTR Switch_VertexAttribI4bv(GLuint index, const GLbyte *v)
- {
- VertexAttribI4bv = (PFNVERTEXATTRIBI4BVPROC)IntGetProcAddress("glVertexAttribI4bv");
- VertexAttribI4bv(index, v);
- }
-
- static void CODEGEN_FUNCPTR Switch_VertexAttribI4sv(GLuint index, const GLshort *v)
- {
- VertexAttribI4sv = (PFNVERTEXATTRIBI4SVPROC)IntGetProcAddress("glVertexAttribI4sv");
- VertexAttribI4sv(index, v);
- }
-
- static void CODEGEN_FUNCPTR Switch_VertexAttribI4ubv(GLuint index, const GLubyte *v)
- {
- VertexAttribI4ubv = (PFNVERTEXATTRIBI4UBVPROC)IntGetProcAddress("glVertexAttribI4ubv");
- VertexAttribI4ubv(index, v);
- }
-
- static void CODEGEN_FUNCPTR Switch_VertexAttribI4usv(GLuint index, const GLushort *v)
- {
- VertexAttribI4usv = (PFNVERTEXATTRIBI4USVPROC)IntGetProcAddress("glVertexAttribI4usv");
- VertexAttribI4usv(index, v);
- }
-
- static void CODEGEN_FUNCPTR Switch_GetUniformuiv(GLuint program, GLint location, GLuint *params)
- {
- GetUniformuiv = (PFNGETUNIFORMUIVPROC)IntGetProcAddress("glGetUniformuiv");
- GetUniformuiv(program, location, params);
- }
-
- static void CODEGEN_FUNCPTR Switch_BindFragDataLocation(GLuint program, GLuint color, const GLchar *name)
- {
- BindFragDataLocation = (PFNBINDFRAGDATALOCATIONPROC)IntGetProcAddress("glBindFragDataLocation");
- BindFragDataLocation(program, color, name);
- }
-
- static GLint CODEGEN_FUNCPTR Switch_GetFragDataLocation(GLuint program, const GLchar *name)
- {
- GetFragDataLocation = (PFNGETFRAGDATALOCATIONPROC)IntGetProcAddress("glGetFragDataLocation");
- return GetFragDataLocation(program, name);
- }
-
- static void CODEGEN_FUNCPTR Switch_Uniform1ui(GLint location, GLuint v0)
- {
- Uniform1ui = (PFNUNIFORM1UIPROC)IntGetProcAddress("glUniform1ui");
- Uniform1ui(location, v0);
- }
-
- static void CODEGEN_FUNCPTR Switch_Uniform2ui(GLint location, GLuint v0, GLuint v1)
- {
- Uniform2ui = (PFNUNIFORM2UIPROC)IntGetProcAddress("glUniform2ui");
- Uniform2ui(location, v0, v1);
- }
-
- static void CODEGEN_FUNCPTR Switch_Uniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2)
- {
- Uniform3ui = (PFNUNIFORM3UIPROC)IntGetProcAddress("glUniform3ui");
- Uniform3ui(location, v0, v1, v2);
- }
-
- static void CODEGEN_FUNCPTR Switch_Uniform4ui(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3)
- {
- Uniform4ui = (PFNUNIFORM4UIPROC)IntGetProcAddress("glUniform4ui");
- Uniform4ui(location, v0, v1, v2, v3);
- }
-
- static void CODEGEN_FUNCPTR Switch_Uniform1uiv(GLint location, GLsizei count, const GLuint *value)
- {
- Uniform1uiv = (PFNUNIFORM1UIVPROC)IntGetProcAddress("glUniform1uiv");
- Uniform1uiv(location, count, value);
- }
-
- static void CODEGEN_FUNCPTR Switch_Uniform2uiv(GLint location, GLsizei count, const GLuint *value)
- {
- Uniform2uiv = (PFNUNIFORM2UIVPROC)IntGetProcAddress("glUniform2uiv");
- Uniform2uiv(location, count, value);
- }
-
- static void CODEGEN_FUNCPTR Switch_Uniform3uiv(GLint location, GLsizei count, const GLuint *value)
- {
- Uniform3uiv = (PFNUNIFORM3UIVPROC)IntGetProcAddress("glUniform3uiv");
- Uniform3uiv(location, count, value);
- }
-
- static void CODEGEN_FUNCPTR Switch_Uniform4uiv(GLint location, GLsizei count, const GLuint *value)
- {
- Uniform4uiv = (PFNUNIFORM4UIVPROC)IntGetProcAddress("glUniform4uiv");
- Uniform4uiv(location, count, value);
- }
-
- static void CODEGEN_FUNCPTR Switch_TexParameterIiv(GLenum target, GLenum pname, const GLint *params)
- {
- TexParameterIiv = (PFNTEXPARAMETERIIVPROC)IntGetProcAddress("glTexParameterIiv");
- TexParameterIiv(target, pname, params);
- }
-
- static void CODEGEN_FUNCPTR Switch_TexParameterIuiv(GLenum target, GLenum pname, const GLuint *params)
- {
- TexParameterIuiv = (PFNTEXPARAMETERIUIVPROC)IntGetProcAddress("glTexParameterIuiv");
- TexParameterIuiv(target, pname, params);
- }
-
- static void CODEGEN_FUNCPTR Switch_GetTexParameterIiv(GLenum target, GLenum pname, GLint *params)
- {
- GetTexParameterIiv = (PFNGETTEXPARAMETERIIVPROC)IntGetProcAddress("glGetTexParameterIiv");
- GetTexParameterIiv(target, pname, params);
- }
-
- static void CODEGEN_FUNCPTR Switch_GetTexParameterIuiv(GLenum target, GLenum pname, GLuint *params)
- {
- GetTexParameterIuiv = (PFNGETTEXPARAMETERIUIVPROC)IntGetProcAddress("glGetTexParameterIuiv");
- GetTexParameterIuiv(target, pname, params);
- }
-
- static void CODEGEN_FUNCPTR Switch_ClearBufferiv(GLenum buffer, GLint drawbuffer, const GLint *value)
- {
- ClearBufferiv = (PFNCLEARBUFFERIVPROC)IntGetProcAddress("glClearBufferiv");
- ClearBufferiv(buffer, drawbuffer, value);
- }
-
- static void CODEGEN_FUNCPTR Switch_ClearBufferuiv(GLenum buffer, GLint drawbuffer, const GLuint *value)
- {
- ClearBufferuiv = (PFNCLEARBUFFERUIVPROC)IntGetProcAddress("glClearBufferuiv");
- ClearBufferuiv(buffer, drawbuffer, value);
- }
-
- static void CODEGEN_FUNCPTR Switch_ClearBufferfv(GLenum buffer, GLint drawbuffer, const GLfloat *value)
- {
- ClearBufferfv = (PFNCLEARBUFFERFVPROC)IntGetProcAddress("glClearBufferfv");
- ClearBufferfv(buffer, drawbuffer, value);
- }
-
- static void CODEGEN_FUNCPTR Switch_ClearBufferfi(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil)
- {
- ClearBufferfi = (PFNCLEARBUFFERFIPROC)IntGetProcAddress("glClearBufferfi");
- ClearBufferfi(buffer, drawbuffer, depth, stencil);
- }
-
- static const GLubyte * CODEGEN_FUNCPTR Switch_GetStringi(GLenum name, GLuint index)
- {
- GetStringi = (PFNGETSTRINGIPROC)IntGetProcAddress("glGetStringi");
- return GetStringi(name, index);
- }
-
-
- // Extension: ARB_uniform_buffer_object
- static void CODEGEN_FUNCPTR Switch_GetUniformIndices(GLuint program, GLsizei uniformCount, const GLchar* const *uniformNames, GLuint *uniformIndices)
- {
- GetUniformIndices = (PFNGETUNIFORMINDICESPROC)IntGetProcAddress("glGetUniformIndices");
- GetUniformIndices(program, uniformCount, uniformNames, uniformIndices);
- }
-
- static void CODEGEN_FUNCPTR Switch_GetActiveUniformsiv(GLuint program, GLsizei uniformCount, const GLuint *uniformIndices, GLenum pname, GLint *params)
- {
- GetActiveUniformsiv = (PFNGETACTIVEUNIFORMSIVPROC)IntGetProcAddress("glGetActiveUniformsiv");
- GetActiveUniformsiv(program, uniformCount, uniformIndices, pname, params);
- }
-
- static void CODEGEN_FUNCPTR Switch_GetActiveUniformName(GLuint program, GLuint uniformIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformName)
- {
- GetActiveUniformName = (PFNGETACTIVEUNIFORMNAMEPROC)IntGetProcAddress("glGetActiveUniformName");
- GetActiveUniformName(program, uniformIndex, bufSize, length, uniformName);
- }
-
- static GLuint CODEGEN_FUNCPTR Switch_GetUniformBlockIndex(GLuint program, const GLchar *uniformBlockName)
- {
- GetUniformBlockIndex = (PFNGETUNIFORMBLOCKINDEXPROC)IntGetProcAddress("glGetUniformBlockIndex");
- return GetUniformBlockIndex(program, uniformBlockName);
- }
-
- static void CODEGEN_FUNCPTR Switch_GetActiveUniformBlockiv(GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint *params)
- {
- GetActiveUniformBlockiv = (PFNGETACTIVEUNIFORMBLOCKIVPROC)IntGetProcAddress("glGetActiveUniformBlockiv");
- GetActiveUniformBlockiv(program, uniformBlockIndex, pname, params);
- }
-
- static void CODEGEN_FUNCPTR Switch_GetActiveUniformBlockName(GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformBlockName)
- {
- GetActiveUniformBlockName = (PFNGETACTIVEUNIFORMBLOCKNAMEPROC)IntGetProcAddress("glGetActiveUniformBlockName");
- GetActiveUniformBlockName(program, uniformBlockIndex, bufSize, length, uniformBlockName);
- }
-
- static void CODEGEN_FUNCPTR Switch_UniformBlockBinding(GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding)
- {
- UniformBlockBinding = (PFNUNIFORMBLOCKBINDINGPROC)IntGetProcAddress("glUniformBlockBinding");
- UniformBlockBinding(program, uniformBlockIndex, uniformBlockBinding);
- }
-
-
- // Extension: ARB_copy_buffer
- static void CODEGEN_FUNCPTR Switch_CopyBufferSubData(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size)
- {
- CopyBufferSubData = (PFNCOPYBUFFERSUBDATAPROC)IntGetProcAddress("glCopyBufferSubData");
- CopyBufferSubData(readTarget, writeTarget, readOffset, writeOffset, size);
- }
-
-
- // Extension: 3.1
- static void CODEGEN_FUNCPTR Switch_DrawArraysInstanced(GLenum mode, GLint first, GLsizei count, GLsizei instancecount)
- {
- DrawArraysInstanced = (PFNDRAWARRAYSINSTANCEDPROC)IntGetProcAddress("glDrawArraysInstanced");
- DrawArraysInstanced(mode, first, count, instancecount);
- }
-
- static void CODEGEN_FUNCPTR Switch_DrawElementsInstanced(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount)
- {
- DrawElementsInstanced = (PFNDRAWELEMENTSINSTANCEDPROC)IntGetProcAddress("glDrawElementsInstanced");
- DrawElementsInstanced(mode, count, type, indices, instancecount);
- }
-
- static void CODEGEN_FUNCPTR Switch_TexBuffer(GLenum target, GLenum internalformat, GLuint buffer)
- {
- TexBuffer = (PFNTEXBUFFERPROC)IntGetProcAddress("glTexBuffer");
- TexBuffer(target, internalformat, buffer);
- }
-
- static void CODEGEN_FUNCPTR Switch_PrimitiveRestartIndex(GLuint index)
- {
- PrimitiveRestartIndex = (PFNPRIMITIVERESTARTINDEXPROC)IntGetProcAddress("glPrimitiveRestartIndex");
- PrimitiveRestartIndex(index);
- }
-
- // Legacy
- static void CODEGEN_FUNCPTR Switch_EnableClientState(GLenum cap)
- {
- EnableClientState = (PFNENABLECLIENTSTATEPROC)IntGetProcAddress("glEnableClientState");
- EnableClientState(cap);
- }
-
- static void CODEGEN_FUNCPTR Switch_DisableClientState(GLenum cap)
- {
- DisableClientState = (PFNDISABLECLIENTSTATEPROC)IntGetProcAddress("glDisableClientState");
- DisableClientState(cap);
- }
-
- static void CODEGEN_FUNCPTR Switch_VertexPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *ptr)
- {
- VertexPointer = (PFNVERTEXPOINTERPROC)IntGetProcAddress("glVertexPointer");
- VertexPointer(size, type, stride, ptr);
- }
-
- static void CODEGEN_FUNCPTR Switch_NormalPointer(GLenum type, GLsizei stride, const GLvoid *ptr)
- {
- NormalPointer = (PFNNORMALPOINTERPROC)IntGetProcAddress("glNormalPointer");
- NormalPointer(type, stride, ptr);
- }
-
- static void CODEGEN_FUNCPTR Switch_ColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *ptr)
- {
- ColorPointer = (PFNCOLORPOINTERPROC)IntGetProcAddress("glColorPointer");
- ColorPointer(size, type, stride, ptr);
- }
-
- static void CODEGEN_FUNCPTR Switch_TexCoordPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *ptr)
- {
- TexCoordPointer = (PFNTEXCOORDPOINTERPROC)IntGetProcAddress("glTexCoordPointer");
- TexCoordPointer(size, type, stride, ptr);
- }
-
- static void CODEGEN_FUNCPTR Switch_TexEnvi(GLenum target, GLenum pname, GLint param)
- {
- TexEnvi = (PFNTEXENVIPROC)IntGetProcAddress("glTexEnvi");
- TexEnvi(target, pname, param);
- }
-
- static void CODEGEN_FUNCPTR Switch_MatrixMode(GLenum mode)
- {
- MatrixMode = (PFNMATRIXMODEPROC)IntGetProcAddress("glMatrixMode");
- MatrixMode(mode);
- }
-
- static void CODEGEN_FUNCPTR Switch_LoadIdentity(void)
- {
- LoadIdentity = (PFNLOADIDENTITYPROC)IntGetProcAddress("glLoadIdentity");
- LoadIdentity();
- }
-
- static void CODEGEN_FUNCPTR Switch_Ortho(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble near_val, GLdouble far_val)
- {
- Ortho = (PFNORTHOPROC)IntGetProcAddress("glOrtho");
- Ortho(left, right, bottom, top, near_val, far_val);
- }
-
- static void CODEGEN_FUNCPTR Switch_Color3d(GLdouble red, GLdouble green, GLdouble blue)
- {
- Color3d = (PFNCOLOR3DPROC)IntGetProcAddress("glColor3d");
- Color3d(red, green, blue);
- }
-
-
-
- namespace
- {
- struct InitializeVariables
+ //////////////////////////////////////////////
+ // Function pointer types
+
+ // Extension: 1.1
+ typedef void (CODEGEN_FUNCPTR *PFNCULLFACEPROC)(GLenum );
+ typedef void (CODEGEN_FUNCPTR *PFNFRONTFACEPROC)(GLenum );
+ typedef void (CODEGEN_FUNCPTR *PFNHINTPROC)(GLenum , GLenum );
+ typedef void (CODEGEN_FUNCPTR *PFNLINEWIDTHPROC)(GLfloat );
+ typedef void (CODEGEN_FUNCPTR *PFNPOINTSIZEPROC)(GLfloat );
+ typedef void (CODEGEN_FUNCPTR *PFNPOLYGONMODEPROC)(GLenum , GLenum );
+ typedef void (CODEGEN_FUNCPTR *PFNSCISSORPROC)(GLint , GLint , GLsizei , GLsizei );
+ typedef void (CODEGEN_FUNCPTR *PFNTEXPARAMETERFPROC)(GLenum , GLenum , GLfloat );
+ typedef void (CODEGEN_FUNCPTR *PFNTEXPARAMETERFVPROC)(GLenum , GLenum , const GLfloat *);
+ typedef void (CODEGEN_FUNCPTR *PFNTEXPARAMETERIPROC)(GLenum , GLenum , GLint );
+ typedef void (CODEGEN_FUNCPTR *PFNTEXPARAMETERIVPROC)(GLenum , GLenum , const GLint *);
+ typedef void (CODEGEN_FUNCPTR *PFNTEXIMAGE1DPROC)(GLenum , GLint , GLint , GLsizei , GLint , GLenum , GLenum , const GLvoid *);
+ typedef void (CODEGEN_FUNCPTR *PFNTEXIMAGE2DPROC)(GLenum , GLint , GLint , GLsizei , GLsizei , GLint , GLenum , GLenum , const GLvoid *);
+ typedef void (CODEGEN_FUNCPTR *PFNDRAWBUFFERPROC)(GLenum );
+ typedef void (CODEGEN_FUNCPTR *PFNCLEARPROC)(GLbitfield );
+ typedef void (CODEGEN_FUNCPTR *PFNCLEARCOLORPROC)(GLfloat , GLfloat , GLfloat , GLfloat );
+ typedef void (CODEGEN_FUNCPTR *PFNCLEARSTENCILPROC)(GLint );
+ typedef void (CODEGEN_FUNCPTR *PFNCLEARDEPTHPROC)(GLdouble );
+ typedef void (CODEGEN_FUNCPTR *PFNSTENCILMASKPROC)(GLuint );
+ typedef void (CODEGEN_FUNCPTR *PFNCOLORMASKPROC)(GLboolean , GLboolean , GLboolean , GLboolean );
+ typedef void (CODEGEN_FUNCPTR *PFNDEPTHMASKPROC)(GLboolean );
+ typedef void (CODEGEN_FUNCPTR *PFNDISABLEPROC)(GLenum );
+ typedef void (CODEGEN_FUNCPTR *PFNENABLEPROC)(GLenum );
+ typedef void (CODEGEN_FUNCPTR *PFNFINISHPROC)();
+ typedef void (CODEGEN_FUNCPTR *PFNFLUSHPROC)();
+ typedef void (CODEGEN_FUNCPTR *PFNBLENDFUNCPROC)(GLenum , GLenum );
+ typedef void (CODEGEN_FUNCPTR *PFNLOGICOPPROC)(GLenum );
+ typedef void (CODEGEN_FUNCPTR *PFNSTENCILFUNCPROC)(GLenum , GLint , GLuint );
+ typedef void (CODEGEN_FUNCPTR *PFNSTENCILOPPROC)(GLenum , GLenum , GLenum );
+ typedef void (CODEGEN_FUNCPTR *PFNDEPTHFUNCPROC)(GLenum );
+ typedef void (CODEGEN_FUNCPTR *PFNPIXELSTOREFPROC)(GLenum , GLfloat );
+ typedef void (CODEGEN_FUNCPTR *PFNPIXELSTOREIPROC)(GLenum , GLint );
+ typedef void (CODEGEN_FUNCPTR *PFNREADBUFFERPROC)(GLenum );
+ typedef void (CODEGEN_FUNCPTR *PFNREADPIXELSPROC)(GLint , GLint , GLsizei , GLsizei , GLenum , GLenum , GLvoid *);
+ typedef void (CODEGEN_FUNCPTR *PFNGETBOOLEANVPROC)(GLenum , GLboolean *);
+ typedef void (CODEGEN_FUNCPTR *PFNGETDOUBLEVPROC)(GLenum , GLdouble *);
+ typedef GLenum (CODEGEN_FUNCPTR *PFNGETERRORPROC)();
+ typedef void (CODEGEN_FUNCPTR *PFNGETFLOATVPROC)(GLenum , GLfloat *);
+ typedef void (CODEGEN_FUNCPTR *PFNGETINTEGERVPROC)(GLenum , GLint *);
+ typedef const GLubyte * (CODEGEN_FUNCPTR *PFNGETSTRINGPROC)(GLenum );
+ typedef void (CODEGEN_FUNCPTR *PFNGETTEXIMAGEPROC)(GLenum , GLint , GLenum , GLenum , GLvoid *);
+ typedef void (CODEGEN_FUNCPTR *PFNGETTEXPARAMETERFVPROC)(GLenum , GLenum , GLfloat *);
+ typedef void (CODEGEN_FUNCPTR *PFNGETTEXPARAMETERIVPROC)(GLenum , GLenum , GLint *);
+ typedef void (CODEGEN_FUNCPTR *PFNGETTEXLEVELPARAMETERFVPROC)(GLenum , GLint , GLenum , GLfloat *);
+ typedef void (CODEGEN_FUNCPTR *PFNGETTEXLEVELPARAMETERIVPROC)(GLenum , GLint , GLenum , GLint *);
+ typedef GLboolean (CODEGEN_FUNCPTR *PFNISENABLEDPROC)(GLenum );
+ typedef void (CODEGEN_FUNCPTR *PFNDEPTHRANGEPROC)(GLdouble , GLdouble );
+ typedef void (CODEGEN_FUNCPTR *PFNVIEWPORTPROC)(GLint , GLint , GLsizei , GLsizei );
+ typedef void (CODEGEN_FUNCPTR *PFNDRAWARRAYSPROC)(GLenum , GLint , GLsizei );
+ typedef void (CODEGEN_FUNCPTR *PFNDRAWELEMENTSPROC)(GLenum , GLsizei , GLenum , const GLvoid *);
+ typedef void (CODEGEN_FUNCPTR *PFNGETPOINTERVPROC)(GLenum , GLvoid* *);
+ typedef void (CODEGEN_FUNCPTR *PFNPOLYGONOFFSETPROC)(GLfloat , GLfloat );
+ typedef void (CODEGEN_FUNCPTR *PFNCOPYTEXIMAGE1DPROC)(GLenum , GLint , GLenum , GLint , GLint , GLsizei , GLint );
+ typedef void (CODEGEN_FUNCPTR *PFNCOPYTEXIMAGE2DPROC)(GLenum , GLint , GLenum , GLint , GLint , GLsizei , GLsizei , GLint );
+ typedef void (CODEGEN_FUNCPTR *PFNCOPYTEXSUBIMAGE1DPROC)(GLenum , GLint , GLint , GLint , GLint , GLsizei );
+ typedef void (CODEGEN_FUNCPTR *PFNCOPYTEXSUBIMAGE2DPROC)(GLenum , GLint , GLint , GLint , GLint , GLint , GLsizei , GLsizei );
+ typedef void (CODEGEN_FUNCPTR *PFNTEXSUBIMAGE1DPROC)(GLenum , GLint , GLint , GLsizei , GLenum , GLenum , const GLvoid *);
+ typedef void (CODEGEN_FUNCPTR *PFNTEXSUBIMAGE2DPROC)(GLenum , GLint , GLint , GLint , GLsizei , GLsizei , GLenum , GLenum , const GLvoid *);
+ typedef void (CODEGEN_FUNCPTR *PFNBINDTEXTUREPROC)(GLenum , GLuint );
+ typedef void (CODEGEN_FUNCPTR *PFNDELETETEXTURESPROC)(GLsizei , const GLuint *);
+ typedef void (CODEGEN_FUNCPTR *PFNGENTEXTURESPROC)(GLsizei , GLuint *);
+ typedef GLboolean (CODEGEN_FUNCPTR *PFNISTEXTUREPROC)(GLuint );
+ typedef void (CODEGEN_FUNCPTR *PFNINDEXUBPROC)(GLubyte );
+ typedef void (CODEGEN_FUNCPTR *PFNINDEXUBVPROC)(const GLubyte *);
+
+ // Extension: 1.2
+ typedef void (CODEGEN_FUNCPTR *PFNBLENDCOLORPROC)(GLfloat , GLfloat , GLfloat , GLfloat );
+ typedef void (CODEGEN_FUNCPTR *PFNBLENDEQUATIONPROC)(GLenum );
+ typedef void (CODEGEN_FUNCPTR *PFNDRAWRANGEELEMENTSPROC)(GLenum , GLuint , GLuint , GLsizei , GLenum , const GLvoid *);
+ typedef void (CODEGEN_FUNCPTR *PFNTEXSUBIMAGE3DPROC)(GLenum , GLint , GLint , GLint , GLint , GLsizei , GLsizei , GLsizei , GLenum , GLenum , const GLvoid *);
+ typedef void (CODEGEN_FUNCPTR *PFNCOPYTEXSUBIMAGE3DPROC)(GLenum , GLint , GLint , GLint , GLint , GLint , GLint , GLsizei , GLsizei );
+
+ // Extension: 1.3
+ typedef void (CODEGEN_FUNCPTR *PFNACTIVETEXTUREPROC)(GLenum );
+ typedef void (CODEGEN_FUNCPTR *PFNSAMPLECOVERAGEPROC)(GLfloat , GLboolean );
+ typedef void (CODEGEN_FUNCPTR *PFNCOMPRESSEDTEXIMAGE3DPROC)(GLenum , GLint , GLenum , GLsizei , GLsizei , GLsizei , GLint , GLsizei , const GLvoid *);
+ typedef void (CODEGEN_FUNCPTR *PFNCOMPRESSEDTEXIMAGE2DPROC)(GLenum , GLint , GLenum , GLsizei , GLsizei , GLint , GLsizei , const GLvoid *);
+ typedef void (CODEGEN_FUNCPTR *PFNCOMPRESSEDTEXIMAGE1DPROC)(GLenum , GLint , GLenum , GLsizei , GLint , GLsizei , const GLvoid *);
+ typedef void (CODEGEN_FUNCPTR *PFNCOMPRESSEDTEXSUBIMAGE3DPROC)(GLenum , GLint , GLint , GLint , GLint , GLsizei , GLsizei , GLsizei , GLenum , GLsizei , const GLvoid *);
+ typedef void (CODEGEN_FUNCPTR *PFNCOMPRESSEDTEXSUBIMAGE2DPROC)(GLenum , GLint , GLint , GLint , GLsizei , GLsizei , GLenum , GLsizei , const GLvoid *);
+ typedef void (CODEGEN_FUNCPTR *PFNCOMPRESSEDTEXSUBIMAGE1DPROC)(GLenum , GLint , GLint , GLsizei , GLenum , GLsizei , const GLvoid *);
+ typedef void (CODEGEN_FUNCPTR *PFNGETCOMPRESSEDTEXIMAGEPROC)(GLenum , GLint , GLvoid *);
+
+ // Extension: 1.4
+ typedef void (CODEGEN_FUNCPTR *PFNBLENDFUNCSEPARATEPROC)(GLenum , GLenum , GLenum , GLenum );
+ typedef void (CODEGEN_FUNCPTR *PFNMULTIDRAWARRAYSPROC)(GLenum , const GLint *, const GLsizei *, GLsizei );
+ typedef void (CODEGEN_FUNCPTR *PFNMULTIDRAWELEMENTSPROC)(GLenum , const GLsizei *, GLenum , const GLvoid* const *, GLsizei );
+ typedef void (CODEGEN_FUNCPTR *PFNPOINTPARAMETERFPROC)(GLenum , GLfloat );
+ typedef void (CODEGEN_FUNCPTR *PFNPOINTPARAMETERFVPROC)(GLenum , const GLfloat *);
+ typedef void (CODEGEN_FUNCPTR *PFNPOINTPARAMETERIPROC)(GLenum , GLint );
+ typedef void (CODEGEN_FUNCPTR *PFNPOINTPARAMETERIVPROC)(GLenum , const GLint *);
+
+ // Extension: 1.5
+ typedef void (CODEGEN_FUNCPTR *PFNGENQUERIESPROC)(GLsizei , GLuint *);
+ typedef void (CODEGEN_FUNCPTR *PFNDELETEQUERIESPROC)(GLsizei , const GLuint *);
+ typedef GLboolean (CODEGEN_FUNCPTR *PFNISQUERYPROC)(GLuint );
+ typedef void (CODEGEN_FUNCPTR *PFNBEGINQUERYPROC)(GLenum , GLuint );
+ typedef void (CODEGEN_FUNCPTR *PFNENDQUERYPROC)(GLenum );
+ typedef void (CODEGEN_FUNCPTR *PFNGETQUERYIVPROC)(GLenum , GLenum , GLint *);
+ typedef void (CODEGEN_FUNCPTR *PFNGETQUERYOBJECTIVPROC)(GLuint , GLenum , GLint *);
+ typedef void (CODEGEN_FUNCPTR *PFNGETQUERYOBJECTUIVPROC)(GLuint , GLenum , GLuint *);
+ typedef void (CODEGEN_FUNCPTR *PFNBINDBUFFERPROC)(GLenum , GLuint );
+ typedef void (CODEGEN_FUNCPTR *PFNDELETEBUFFERSPROC)(GLsizei , const GLuint *);
+ typedef void (CODEGEN_FUNCPTR *PFNGENBUFFERSPROC)(GLsizei , GLuint *);
+ typedef GLboolean (CODEGEN_FUNCPTR *PFNISBUFFERPROC)(GLuint );
+ typedef void (CODEGEN_FUNCPTR *PFNBUFFERDATAPROC)(GLenum , GLsizeiptr , const GLvoid *, GLenum );
+ typedef void (CODEGEN_FUNCPTR *PFNBUFFERSUBDATAPROC)(GLenum , GLintptr , GLsizeiptr , const GLvoid *);
+ typedef void (CODEGEN_FUNCPTR *PFNGETBUFFERSUBDATAPROC)(GLenum , GLintptr , GLsizeiptr , GLvoid *);
+ typedef GLvoid* (CODEGEN_FUNCPTR *PFNMAPBUFFERPROC)(GLenum , GLenum );
+ typedef GLboolean (CODEGEN_FUNCPTR *PFNUNMAPBUFFERPROC)(GLenum );
+ typedef void (CODEGEN_FUNCPTR *PFNGETBUFFERPARAMETERIVPROC)(GLenum , GLenum , GLint *);
+ typedef void (CODEGEN_FUNCPTR *PFNGETBUFFERPOINTERVPROC)(GLenum , GLenum , GLvoid* *);
+
+ // Extension: 2.0
+ typedef void (CODEGEN_FUNCPTR *PFNBLENDEQUATIONSEPARATEPROC)(GLenum , GLenum );
+ typedef void (CODEGEN_FUNCPTR *PFNDRAWBUFFERSPROC)(GLsizei , const GLenum *);
+ typedef void (CODEGEN_FUNCPTR *PFNSTENCILOPSEPARATEPROC)(GLenum , GLenum , GLenum , GLenum );
+ typedef void (CODEGEN_FUNCPTR *PFNSTENCILFUNCSEPARATEPROC)(GLenum , GLenum , GLint , GLuint );
+ typedef void (CODEGEN_FUNCPTR *PFNSTENCILMASKSEPARATEPROC)(GLenum , GLuint );
+ typedef void (CODEGEN_FUNCPTR *PFNATTACHSHADERPROC)(GLuint , GLuint );
+ typedef void (CODEGEN_FUNCPTR *PFNBINDATTRIBLOCATIONPROC)(GLuint , GLuint , const GLchar *);
+ typedef void (CODEGEN_FUNCPTR *PFNCOMPILESHADERPROC)(GLuint );
+ typedef GLuint (CODEGEN_FUNCPTR *PFNCREATEPROGRAMPROC)();
+ typedef GLuint (CODEGEN_FUNCPTR *PFNCREATESHADERPROC)(GLenum );
+ typedef void (CODEGEN_FUNCPTR *PFNDELETEPROGRAMPROC)(GLuint );
+ typedef void (CODEGEN_FUNCPTR *PFNDELETESHADERPROC)(GLuint );
+ typedef void (CODEGEN_FUNCPTR *PFNDETACHSHADERPROC)(GLuint , GLuint );
+ typedef void (CODEGEN_FUNCPTR *PFNDISABLEVERTEXATTRIBARRAYPROC)(GLuint );
+ typedef void (CODEGEN_FUNCPTR *PFNENABLEVERTEXATTRIBARRAYPROC)(GLuint );
+ typedef void (CODEGEN_FUNCPTR *PFNGETACTIVEATTRIBPROC)(GLuint , GLuint , GLsizei , GLsizei *, GLint *, GLenum *, GLchar *);
+ typedef void (CODEGEN_FUNCPTR *PFNGETACTIVEUNIFORMPROC)(GLuint , GLuint , GLsizei , GLsizei *, GLint *, GLenum *, GLchar *);
+ typedef void (CODEGEN_FUNCPTR *PFNGETATTACHEDSHADERSPROC)(GLuint , GLsizei , GLsizei *, GLuint *);
+ typedef GLint (CODEGEN_FUNCPTR *PFNGETATTRIBLOCATIONPROC)(GLuint , const GLchar *);
+ typedef void (CODEGEN_FUNCPTR *PFNGETPROGRAMIVPROC)(GLuint , GLenum , GLint *);
+ typedef void (CODEGEN_FUNCPTR *PFNGETPROGRAMINFOLOGPROC)(GLuint , GLsizei , GLsizei *, GLchar *);
+ typedef void (CODEGEN_FUNCPTR *PFNGETSHADERIVPROC)(GLuint , GLenum , GLint *);
+ typedef void (CODEGEN_FUNCPTR *PFNGETSHADERINFOLOGPROC)(GLuint , GLsizei , GLsizei *, GLchar *);
+ typedef void (CODEGEN_FUNCPTR *PFNGETSHADERSOURCEPROC)(GLuint , GLsizei , GLsizei *, GLchar *);
+ typedef GLint (CODEGEN_FUNCPTR *PFNGETUNIFORMLOCATIONPROC)(GLuint , const GLchar *);
+ typedef void (CODEGEN_FUNCPTR *PFNGETUNIFORMFVPROC)(GLuint , GLint , GLfloat *);
+ typedef void (CODEGEN_FUNCPTR *PFNGETUNIFORMIVPROC)(GLuint , GLint , GLint *);
+ typedef void (CODEGEN_FUNCPTR *PFNGETVERTEXATTRIBDVPROC)(GLuint , GLenum , GLdouble *);
+ typedef void (CODEGEN_FUNCPTR *PFNGETVERTEXATTRIBFVPROC)(GLuint , GLenum , GLfloat *);
+ typedef void (CODEGEN_FUNCPTR *PFNGETVERTEXATTRIBIVPROC)(GLuint , GLenum , GLint *);
+ typedef void (CODEGEN_FUNCPTR *PFNGETVERTEXATTRIBPOINTERVPROC)(GLuint , GLenum , GLvoid* *);
+ typedef GLboolean (CODEGEN_FUNCPTR *PFNISPROGRAMPROC)(GLuint );
+ typedef GLboolean (CODEGEN_FUNCPTR *PFNISSHADERPROC)(GLuint );
+ typedef void (CODEGEN_FUNCPTR *PFNLINKPROGRAMPROC)(GLuint );
+ typedef void (CODEGEN_FUNCPTR *PFNSHADERSOURCEPROC)(GLuint , GLsizei , const GLchar* const *, const GLint *);
+ typedef void (CODEGEN_FUNCPTR *PFNUSEPROGRAMPROC)(GLuint );
+ typedef void (CODEGEN_FUNCPTR *PFNUNIFORM1FPROC)(GLint , GLfloat );
+ typedef void (CODEGEN_FUNCPTR *PFNUNIFORM2FPROC)(GLint , GLfloat , GLfloat );
+ typedef void (CODEGEN_FUNCPTR *PFNUNIFORM3FPROC)(GLint , GLfloat , GLfloat , GLfloat );
+ typedef void (CODEGEN_FUNCPTR *PFNUNIFORM4FPROC)(GLint , GLfloat , GLfloat , GLfloat , GLfloat );
+ typedef void (CODEGEN_FUNCPTR *PFNUNIFORM1IPROC)(GLint , GLint );
+ typedef void (CODEGEN_FUNCPTR *PFNUNIFORM2IPROC)(GLint , GLint , GLint );
+ typedef void (CODEGEN_FUNCPTR *PFNUNIFORM3IPROC)(GLint , GLint , GLint , GLint );
+ typedef void (CODEGEN_FUNCPTR *PFNUNIFORM4IPROC)(GLint , GLint , GLint , GLint , GLint );
+ typedef void (CODEGEN_FUNCPTR *PFNUNIFORM1FVPROC)(GLint , GLsizei , const GLfloat *);
+ typedef void (CODEGEN_FUNCPTR *PFNUNIFORM2FVPROC)(GLint , GLsizei , const GLfloat *);
+ typedef void (CODEGEN_FUNCPTR *PFNUNIFORM3FVPROC)(GLint , GLsizei , const GLfloat *);
+ typedef void (CODEGEN_FUNCPTR *PFNUNIFORM4FVPROC)(GLint , GLsizei , const GLfloat *);
+ typedef void (CODEGEN_FUNCPTR *PFNUNIFORM1IVPROC)(GLint , GLsizei , const GLint *);
+ typedef void (CODEGEN_FUNCPTR *PFNUNIFORM2IVPROC)(GLint , GLsizei , const GLint *);
+ typedef void (CODEGEN_FUNCPTR *PFNUNIFORM3IVPROC)(GLint , GLsizei , const GLint *);
+ typedef void (CODEGEN_FUNCPTR *PFNUNIFORM4IVPROC)(GLint , GLsizei , const GLint *);
+ typedef void (CODEGEN_FUNCPTR *PFNUNIFORMMATRIX2FVPROC)(GLint , GLsizei , GLboolean , const GLfloat *);
+ typedef void (CODEGEN_FUNCPTR *PFNUNIFORMMATRIX3FVPROC)(GLint , GLsizei , GLboolean , const GLfloat *);
+ typedef void (CODEGEN_FUNCPTR *PFNUNIFORMMATRIX4FVPROC)(GLint , GLsizei , GLboolean , const GLfloat *);
+ typedef void (CODEGEN_FUNCPTR *PFNVALIDATEPROGRAMPROC)(GLuint );
+ typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBPOINTERPROC)(GLuint , GLint , GLenum , GLboolean , GLsizei , const GLvoid *);
+
+ // Extension: 2.1
+ typedef void (CODEGEN_FUNCPTR *PFNUNIFORMMATRIX2X3FVPROC)(GLint , GLsizei , GLboolean , const GLfloat *);
+ typedef void (CODEGEN_FUNCPTR *PFNUNIFORMMATRIX3X2FVPROC)(GLint , GLsizei , GLboolean , const GLfloat *);
+ typedef void (CODEGEN_FUNCPTR *PFNUNIFORMMATRIX2X4FVPROC)(GLint , GLsizei , GLboolean , const GLfloat *);
+ typedef void (CODEGEN_FUNCPTR *PFNUNIFORMMATRIX4X2FVPROC)(GLint , GLsizei , GLboolean , const GLfloat *);
+ typedef void (CODEGEN_FUNCPTR *PFNUNIFORMMATRIX3X4FVPROC)(GLint , GLsizei , GLboolean , const GLfloat *);
+ typedef void (CODEGEN_FUNCPTR *PFNUNIFORMMATRIX4X3FVPROC)(GLint , GLsizei , GLboolean , const GLfloat *);
+
+ // Extension: ARB_vertex_array_object
+ typedef void (CODEGEN_FUNCPTR *PFNBINDVERTEXARRAYPROC)(GLuint );
+ typedef void (CODEGEN_FUNCPTR *PFNDELETEVERTEXARRAYSPROC)(GLsizei , const GLuint *);
+ typedef void (CODEGEN_FUNCPTR *PFNGENVERTEXARRAYSPROC)(GLsizei , GLuint *);
+ typedef GLboolean (CODEGEN_FUNCPTR *PFNISVERTEXARRAYPROC)(GLuint );
+
+ // Extension: ARB_map_buffer_range
+ typedef GLvoid* (CODEGEN_FUNCPTR *PFNMAPBUFFERRANGEPROC)(GLenum , GLintptr , GLsizeiptr , GLbitfield );
+ typedef void (CODEGEN_FUNCPTR *PFNFLUSHMAPPEDBUFFERRANGEPROC)(GLenum , GLintptr , GLsizeiptr );
+
+ // Extension: ARB_framebuffer_object
+ typedef GLboolean (CODEGEN_FUNCPTR *PFNISRENDERBUFFERPROC)(GLuint );
+ typedef void (CODEGEN_FUNCPTR *PFNBINDRENDERBUFFERPROC)(GLenum , GLuint );
+ typedef void (CODEGEN_FUNCPTR *PFNDELETERENDERBUFFERSPROC)(GLsizei , const GLuint *);
+ typedef void (CODEGEN_FUNCPTR *PFNGENRENDERBUFFERSPROC)(GLsizei , GLuint *);
+ typedef void (CODEGEN_FUNCPTR *PFNRENDERBUFFERSTORAGEPROC)(GLenum , GLenum , GLsizei , GLsizei );
+ typedef void (CODEGEN_FUNCPTR *PFNGETRENDERBUFFERPARAMETERIVPROC)(GLenum , GLenum , GLint *);
+ typedef GLboolean (CODEGEN_FUNCPTR *PFNISFRAMEBUFFERPROC)(GLuint );
+ typedef void (CODEGEN_FUNCPTR *PFNBINDFRAMEBUFFERPROC)(GLenum , GLuint );
+ typedef void (CODEGEN_FUNCPTR *PFNDELETEFRAMEBUFFERSPROC)(GLsizei , const GLuint *);
+ typedef void (CODEGEN_FUNCPTR *PFNGENFRAMEBUFFERSPROC)(GLsizei , GLuint *);
+ typedef GLenum (CODEGEN_FUNCPTR *PFNCHECKFRAMEBUFFERSTATUSPROC)(GLenum );
+ typedef void (CODEGEN_FUNCPTR *PFNFRAMEBUFFERTEXTURE1DPROC)(GLenum , GLenum , GLenum , GLuint , GLint );
+ typedef void (CODEGEN_FUNCPTR *PFNFRAMEBUFFERTEXTURE2DPROC)(GLenum , GLenum , GLenum , GLuint , GLint );
+ typedef void (CODEGEN_FUNCPTR *PFNFRAMEBUFFERTEXTURE3DPROC)(GLenum , GLenum , GLenum , GLuint , GLint , GLint );
+ typedef void (CODEGEN_FUNCPTR *PFNFRAMEBUFFERRENDERBUFFERPROC)(GLenum , GLenum , GLenum , GLuint );
+ typedef void (CODEGEN_FUNCPTR *PFNGETFRAMEBUFFERATTACHMENTPARAMETERIVPROC)(GLenum , GLenum , GLenum , GLint *);
+ typedef void (CODEGEN_FUNCPTR *PFNGENERATEMIPMAPPROC)(GLenum );
+ typedef void (CODEGEN_FUNCPTR *PFNBLITFRAMEBUFFERPROC)(GLint , GLint , GLint , GLint , GLint , GLint , GLint , GLint , GLbitfield , GLenum );
+ typedef void (CODEGEN_FUNCPTR *PFNRENDERBUFFERSTORAGEMULTISAMPLEPROC)(GLenum , GLsizei , GLenum , GLsizei , GLsizei );
+ typedef void (CODEGEN_FUNCPTR *PFNFRAMEBUFFERTEXTURELAYERPROC)(GLenum , GLenum , GLuint , GLint , GLint );
+
+ // Extension: 3.0
+ typedef void (CODEGEN_FUNCPTR *PFNCOLORMASKIPROC)(GLuint , GLboolean , GLboolean , GLboolean , GLboolean );
+ typedef void (CODEGEN_FUNCPTR *PFNGETBOOLEANI_VPROC)(GLenum , GLuint , GLboolean *);
+ typedef void (CODEGEN_FUNCPTR *PFNGETINTEGERI_VPROC)(GLenum , GLuint , GLint *);
+ typedef void (CODEGEN_FUNCPTR *PFNENABLEIPROC)(GLenum , GLuint );
+ typedef void (CODEGEN_FUNCPTR *PFNDISABLEIPROC)(GLenum , GLuint );
+ typedef GLboolean (CODEGEN_FUNCPTR *PFNISENABLEDIPROC)(GLenum , GLuint );
+ typedef void (CODEGEN_FUNCPTR *PFNBEGINTRANSFORMFEEDBACKPROC)(GLenum );
+ typedef void (CODEGEN_FUNCPTR *PFNENDTRANSFORMFEEDBACKPROC)();
+ typedef void (CODEGEN_FUNCPTR *PFNBINDBUFFERRANGEPROC)(GLenum , GLuint , GLuint , GLintptr , GLsizeiptr );
+ typedef void (CODEGEN_FUNCPTR *PFNBINDBUFFERBASEPROC)(GLenum , GLuint , GLuint );
+ typedef void (CODEGEN_FUNCPTR *PFNTRANSFORMFEEDBACKVARYINGSPROC)(GLuint , GLsizei , const GLchar* const *, GLenum );
+ typedef void (CODEGEN_FUNCPTR *PFNGETTRANSFORMFEEDBACKVARYINGPROC)(GLuint , GLuint , GLsizei , GLsizei *, GLsizei *, GLenum *, GLchar *);
+ typedef void (CODEGEN_FUNCPTR *PFNCLAMPCOLORPROC)(GLenum , GLenum );
+ typedef void (CODEGEN_FUNCPTR *PFNBEGINCONDITIONALRENDERPROC)(GLuint , GLenum );
+ typedef void (CODEGEN_FUNCPTR *PFNENDCONDITIONALRENDERPROC)();
+ typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBIPOINTERPROC)(GLuint , GLint , GLenum , GLsizei , const GLvoid *);
+ typedef void (CODEGEN_FUNCPTR *PFNGETVERTEXATTRIBIIVPROC)(GLuint , GLenum , GLint *);
+ typedef void (CODEGEN_FUNCPTR *PFNGETVERTEXATTRIBIUIVPROC)(GLuint , GLenum , GLuint *);
+ typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBI1IPROC)(GLuint , GLint );
+ typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBI2IPROC)(GLuint , GLint , GLint );
+ typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBI3IPROC)(GLuint , GLint , GLint , GLint );
+ typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBI4IPROC)(GLuint , GLint , GLint , GLint , GLint );
+ typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBI1UIPROC)(GLuint , GLuint );
+ typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBI2UIPROC)(GLuint , GLuint , GLuint );
+ typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBI3UIPROC)(GLuint , GLuint , GLuint , GLuint );
+ typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBI4UIPROC)(GLuint , GLuint , GLuint , GLuint , GLuint );
+ typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBI1IVPROC)(GLuint , const GLint *);
+ typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBI2IVPROC)(GLuint , const GLint *);
+ typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBI3IVPROC)(GLuint , const GLint *);
+ typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBI4IVPROC)(GLuint , const GLint *);
+ typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBI1UIVPROC)(GLuint , const GLuint *);
+ typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBI2UIVPROC)(GLuint , const GLuint *);
+ typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBI3UIVPROC)(GLuint , const GLuint *);
+ typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBI4UIVPROC)(GLuint , const GLuint *);
+ typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBI4BVPROC)(GLuint , const GLbyte *);
+ typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBI4SVPROC)(GLuint , const GLshort *);
+ typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBI4UBVPROC)(GLuint , const GLubyte *);
+ typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBI4USVPROC)(GLuint , const GLushort *);
+ typedef void (CODEGEN_FUNCPTR *PFNGETUNIFORMUIVPROC)(GLuint , GLint , GLuint *);
+ typedef void (CODEGEN_FUNCPTR *PFNBINDFRAGDATALOCATIONPROC)(GLuint , GLuint , const GLchar *);
+ typedef GLint (CODEGEN_FUNCPTR *PFNGETFRAGDATALOCATIONPROC)(GLuint , const GLchar *);
+ typedef void (CODEGEN_FUNCPTR *PFNUNIFORM1UIPROC)(GLint , GLuint );
+ typedef void (CODEGEN_FUNCPTR *PFNUNIFORM2UIPROC)(GLint , GLuint , GLuint );
+ typedef void (CODEGEN_FUNCPTR *PFNUNIFORM3UIPROC)(GLint , GLuint , GLuint , GLuint );
+ typedef void (CODEGEN_FUNCPTR *PFNUNIFORM4UIPROC)(GLint , GLuint , GLuint , GLuint , GLuint );
+ typedef void (CODEGEN_FUNCPTR *PFNUNIFORM1UIVPROC)(GLint , GLsizei , const GLuint *);
+ typedef void (CODEGEN_FUNCPTR *PFNUNIFORM2UIVPROC)(GLint , GLsizei , const GLuint *);
+ typedef void (CODEGEN_FUNCPTR *PFNUNIFORM3UIVPROC)(GLint , GLsizei , const GLuint *);
+ typedef void (CODEGEN_FUNCPTR *PFNUNIFORM4UIVPROC)(GLint , GLsizei , const GLuint *);
+ typedef void (CODEGEN_FUNCPTR *PFNTEXPARAMETERIIVPROC)(GLenum , GLenum , const GLint *);
+ typedef void (CODEGEN_FUNCPTR *PFNTEXPARAMETERIUIVPROC)(GLenum , GLenum , const GLuint *);
+ typedef void (CODEGEN_FUNCPTR *PFNGETTEXPARAMETERIIVPROC)(GLenum , GLenum , GLint *);
+ typedef void (CODEGEN_FUNCPTR *PFNGETTEXPARAMETERIUIVPROC)(GLenum , GLenum , GLuint *);
+ typedef void (CODEGEN_FUNCPTR *PFNCLEARBUFFERIVPROC)(GLenum , GLint , const GLint *);
+ typedef void (CODEGEN_FUNCPTR *PFNCLEARBUFFERUIVPROC)(GLenum , GLint , const GLuint *);
+ typedef void (CODEGEN_FUNCPTR *PFNCLEARBUFFERFVPROC)(GLenum , GLint , const GLfloat *);
+ typedef void (CODEGEN_FUNCPTR *PFNCLEARBUFFERFIPROC)(GLenum , GLint , GLfloat , GLint );
+ typedef const GLubyte * (CODEGEN_FUNCPTR *PFNGETSTRINGIPROC)(GLenum , GLuint );
+
+ // Extension: ARB_uniform_buffer_object
+ typedef void (CODEGEN_FUNCPTR *PFNGETUNIFORMINDICESPROC)(GLuint , GLsizei , const GLchar* const *, GLuint *);
+ typedef void (CODEGEN_FUNCPTR *PFNGETACTIVEUNIFORMSIVPROC)(GLuint , GLsizei , const GLuint *, GLenum , GLint *);
+ typedef void (CODEGEN_FUNCPTR *PFNGETACTIVEUNIFORMNAMEPROC)(GLuint , GLuint , GLsizei , GLsizei *, GLchar *);
+ typedef GLuint (CODEGEN_FUNCPTR *PFNGETUNIFORMBLOCKINDEXPROC)(GLuint , const GLchar *);
+ typedef void (CODEGEN_FUNCPTR *PFNGETACTIVEUNIFORMBLOCKIVPROC)(GLuint , GLuint , GLenum , GLint *);
+ typedef void (CODEGEN_FUNCPTR *PFNGETACTIVEUNIFORMBLOCKNAMEPROC)(GLuint , GLuint , GLsizei , GLsizei *, GLchar *);
+ typedef void (CODEGEN_FUNCPTR *PFNUNIFORMBLOCKBINDINGPROC)(GLuint , GLuint , GLuint );
+
+ // Extension: ARB_copy_buffer
+ typedef void (CODEGEN_FUNCPTR *PFNCOPYBUFFERSUBDATAPROC)(GLenum , GLenum , GLintptr , GLintptr , GLsizeiptr );
+
+ // Extension: 3.1
+ typedef void (CODEGEN_FUNCPTR *PFNDRAWARRAYSINSTANCEDPROC)(GLenum , GLint , GLsizei , GLsizei );
+ typedef void (CODEGEN_FUNCPTR *PFNDRAWELEMENTSINSTANCEDPROC)(GLenum , GLsizei , GLenum , const GLvoid *, GLsizei );
+ typedef void (CODEGEN_FUNCPTR *PFNTEXBUFFERPROC)(GLenum , GLenum , GLuint );
+ typedef void (CODEGEN_FUNCPTR *PFNPRIMITIVERESTARTINDEXPROC)(GLuint );
+
+ // Legacy
+ typedef void (CODEGEN_FUNCPTR *PFNENABLECLIENTSTATEPROC)(GLenum );
+ typedef void (CODEGEN_FUNCPTR *PFNDISABLECLIENTSTATEPROC)(GLenum );
+ typedef void (CODEGEN_FUNCPTR *PFNVERTEXPOINTERPROC)(GLint , GLenum , GLsizei , const GLvoid *);
+ typedef void (CODEGEN_FUNCPTR *PFNNORMALPOINTERPROC)(GLenum , GLsizei , const GLvoid *);
+ typedef void (CODEGEN_FUNCPTR *PFNCOLORPOINTERPROC)(GLint , GLenum , GLsizei , const GLvoid *);
+ typedef void (CODEGEN_FUNCPTR *PFNTEXCOORDPOINTERPROC)(GLint , GLenum , GLsizei , const GLvoid *);
+ typedef void (CODEGEN_FUNCPTR *PFNTEXENVIPROC)(GLenum , GLenum , GLint );
+ typedef void (CODEGEN_FUNCPTR *PFNMATRIXMODEPROC)(GLenum );
+ typedef void (CODEGEN_FUNCPTR *PFNLOADIDENTITYPROC)(void);
+ typedef void (CODEGEN_FUNCPTR *PFNORTHOPROC)(GLdouble , GLdouble , GLdouble , GLdouble , GLdouble , GLdouble );
+ typedef void (CODEGEN_FUNCPTR *PFNCOLOR3DPROC)(GLdouble , GLdouble , GLdouble );
+
+ //////////////////////////////////////////////
+ // Function pointers
+
+ // Extension: 1.1
+ PFNCULLFACEPROC CullFace;
+ PFNFRONTFACEPROC FrontFace;
+ PFNHINTPROC Hint;
+ PFNLINEWIDTHPROC LineWidth;
+ PFNPOINTSIZEPROC PointSize;
+ PFNPOLYGONMODEPROC PolygonMode;
+ PFNSCISSORPROC Scissor;
+ PFNTEXPARAMETERFPROC TexParameterf;
+ PFNTEXPARAMETERFVPROC TexParameterfv;
+ PFNTEXPARAMETERIPROC TexParameteri;
+ PFNTEXPARAMETERIVPROC TexParameteriv;
+ PFNTEXIMAGE1DPROC TexImage1D;
+ PFNTEXIMAGE2DPROC TexImage2D;
+ PFNDRAWBUFFERPROC DrawBuffer;
+ PFNCLEARPROC Clear;
+ PFNCLEARCOLORPROC ClearColor;
+ PFNCLEARSTENCILPROC ClearStencil;
+ PFNCLEARDEPTHPROC ClearDepth;
+ PFNSTENCILMASKPROC StencilMask;
+ PFNCOLORMASKPROC ColorMask;
+ PFNDEPTHMASKPROC DepthMask;
+ PFNDISABLEPROC Disable;
+ PFNENABLEPROC Enable;
+ PFNFINISHPROC Finish;
+ PFNFLUSHPROC Flush;
+ PFNBLENDFUNCPROC BlendFunc;
+ PFNLOGICOPPROC LogicOp;
+ PFNSTENCILFUNCPROC StencilFunc;
+ PFNSTENCILOPPROC StencilOp;
+ PFNDEPTHFUNCPROC DepthFunc;
+ PFNPIXELSTOREFPROC PixelStoref;
+ PFNPIXELSTOREIPROC PixelStorei;
+ PFNREADBUFFERPROC ReadBuffer;
+ PFNREADPIXELSPROC ReadPixels;
+ PFNGETBOOLEANVPROC GetBooleanv;
+ PFNGETDOUBLEVPROC GetDoublev;
+ PFNGETERRORPROC GetError;
+ PFNGETFLOATVPROC GetFloatv;
+ PFNGETINTEGERVPROC GetIntegerv;
+ PFNGETSTRINGPROC GetString;
+ PFNGETTEXIMAGEPROC GetTexImage;
+ PFNGETTEXPARAMETERFVPROC GetTexParameterfv;
+ PFNGETTEXPARAMETERIVPROC GetTexParameteriv;
+ PFNGETTEXLEVELPARAMETERFVPROC GetTexLevelParameterfv;
+ PFNGETTEXLEVELPARAMETERIVPROC GetTexLevelParameteriv;
+ PFNISENABLEDPROC IsEnabled;
+ PFNDEPTHRANGEPROC DepthRange;
+ PFNVIEWPORTPROC Viewport;
+ PFNDRAWARRAYSPROC DrawArrays;
+ PFNDRAWELEMENTSPROC DrawElements;
+ PFNGETPOINTERVPROC GetPointerv;
+ PFNPOLYGONOFFSETPROC PolygonOffset;
+ PFNCOPYTEXIMAGE1DPROC CopyTexImage1D;
+ PFNCOPYTEXIMAGE2DPROC CopyTexImage2D;
+ PFNCOPYTEXSUBIMAGE1DPROC CopyTexSubImage1D;
+ PFNCOPYTEXSUBIMAGE2DPROC CopyTexSubImage2D;
+ PFNTEXSUBIMAGE1DPROC TexSubImage1D;
+ PFNTEXSUBIMAGE2DPROC TexSubImage2D;
+ PFNBINDTEXTUREPROC BindTexture;
+ PFNDELETETEXTURESPROC DeleteTextures;
+ PFNGENTEXTURESPROC GenTextures;
+ PFNISTEXTUREPROC IsTexture;
+ PFNINDEXUBPROC Indexub;
+ PFNINDEXUBVPROC Indexubv;
+
+ // Extension: 1.2
+ PFNBLENDCOLORPROC BlendColor;
+ PFNBLENDEQUATIONPROC BlendEquation;
+ PFNDRAWRANGEELEMENTSPROC DrawRangeElements;
+ PFNTEXSUBIMAGE3DPROC TexSubImage3D;
+ PFNCOPYTEXSUBIMAGE3DPROC CopyTexSubImage3D;
+
+ // Extension: 1.3
+ PFNACTIVETEXTUREPROC ActiveTexture;
+ PFNSAMPLECOVERAGEPROC SampleCoverage;
+ PFNCOMPRESSEDTEXIMAGE3DPROC CompressedTexImage3D;
+ PFNCOMPRESSEDTEXIMAGE2DPROC CompressedTexImage2D;
+ PFNCOMPRESSEDTEXIMAGE1DPROC CompressedTexImage1D;
+ PFNCOMPRESSEDTEXSUBIMAGE3DPROC CompressedTexSubImage3D;
+ PFNCOMPRESSEDTEXSUBIMAGE2DPROC CompressedTexSubImage2D;
+ PFNCOMPRESSEDTEXSUBIMAGE1DPROC CompressedTexSubImage1D;
+ PFNGETCOMPRESSEDTEXIMAGEPROC GetCompressedTexImage;
+
+ // Extension: 1.4
+ PFNBLENDFUNCSEPARATEPROC BlendFuncSeparate;
+ PFNMULTIDRAWARRAYSPROC MultiDrawArrays;
+ PFNMULTIDRAWELEMENTSPROC MultiDrawElements;
+ PFNPOINTPARAMETERFPROC PointParameterf;
+ PFNPOINTPARAMETERFVPROC PointParameterfv;
+ PFNPOINTPARAMETERIPROC PointParameteri;
+ PFNPOINTPARAMETERIVPROC PointParameteriv;
+
+ // Extension: 1.5
+ PFNGENQUERIESPROC GenQueries;
+ PFNDELETEQUERIESPROC DeleteQueries;
+ PFNISQUERYPROC IsQuery;
+ PFNBEGINQUERYPROC BeginQuery;
+ PFNENDQUERYPROC EndQuery;
+ PFNGETQUERYIVPROC GetQueryiv;
+ PFNGETQUERYOBJECTIVPROC GetQueryObjectiv;
+ PFNGETQUERYOBJECTUIVPROC GetQueryObjectuiv;
+ PFNBINDBUFFERPROC BindBuffer;
+ PFNDELETEBUFFERSPROC DeleteBuffers;
+ PFNGENBUFFERSPROC GenBuffers;
+ PFNISBUFFERPROC IsBuffer;
+ PFNBUFFERDATAPROC BufferData;
+ PFNBUFFERSUBDATAPROC BufferSubData;
+ PFNGETBUFFERSUBDATAPROC GetBufferSubData;
+ PFNMAPBUFFERPROC MapBuffer;
+ PFNUNMAPBUFFERPROC UnmapBuffer;
+ PFNGETBUFFERPARAMETERIVPROC GetBufferParameteriv;
+ PFNGETBUFFERPOINTERVPROC GetBufferPointerv;
+
+ // Extension: 2.0
+ PFNBLENDEQUATIONSEPARATEPROC BlendEquationSeparate;
+ PFNDRAWBUFFERSPROC DrawBuffers;
+ PFNSTENCILOPSEPARATEPROC StencilOpSeparate;
+ PFNSTENCILFUNCSEPARATEPROC StencilFuncSeparate;
+ PFNSTENCILMASKSEPARATEPROC StencilMaskSeparate;
+ PFNATTACHSHADERPROC AttachShader;
+ PFNBINDATTRIBLOCATIONPROC BindAttribLocation;
+ PFNCOMPILESHADERPROC CompileShader;
+ PFNCREATEPROGRAMPROC CreateProgram;
+ PFNCREATESHADERPROC CreateShader;
+ PFNDELETEPROGRAMPROC DeleteProgram;
+ PFNDELETESHADERPROC DeleteShader;
+ PFNDETACHSHADERPROC DetachShader;
+ PFNDISABLEVERTEXATTRIBARRAYPROC DisableVertexAttribArray;
+ PFNENABLEVERTEXATTRIBARRAYPROC EnableVertexAttribArray;
+ PFNGETACTIVEATTRIBPROC GetActiveAttrib;
+ PFNGETACTIVEUNIFORMPROC GetActiveUniform;
+ PFNGETATTACHEDSHADERSPROC GetAttachedShaders;
+ PFNGETATTRIBLOCATIONPROC GetAttribLocation;
+ PFNGETPROGRAMIVPROC GetProgramiv;
+ PFNGETPROGRAMINFOLOGPROC GetProgramInfoLog;
+ PFNGETSHADERIVPROC GetShaderiv;
+ PFNGETSHADERINFOLOGPROC GetShaderInfoLog;
+ PFNGETSHADERSOURCEPROC GetShaderSource;
+ PFNGETUNIFORMLOCATIONPROC GetUniformLocation;
+ PFNGETUNIFORMFVPROC GetUniformfv;
+ PFNGETUNIFORMIVPROC GetUniformiv;
+ PFNGETVERTEXATTRIBDVPROC GetVertexAttribdv;
+ PFNGETVERTEXATTRIBFVPROC GetVertexAttribfv;
+ PFNGETVERTEXATTRIBIVPROC GetVertexAttribiv;
+ PFNGETVERTEXATTRIBPOINTERVPROC GetVertexAttribPointerv;
+ PFNISPROGRAMPROC IsProgram;
+ PFNISSHADERPROC IsShader;
+ PFNLINKPROGRAMPROC LinkProgram;
+ PFNSHADERSOURCEPROC ShaderSource;
+ PFNUSEPROGRAMPROC UseProgram;
+ PFNUNIFORM1FPROC Uniform1f;
+ PFNUNIFORM2FPROC Uniform2f;
+ PFNUNIFORM3FPROC Uniform3f;
+ PFNUNIFORM4FPROC Uniform4f;
+ PFNUNIFORM1IPROC Uniform1i;
+ PFNUNIFORM2IPROC Uniform2i;
+ PFNUNIFORM3IPROC Uniform3i;
+ PFNUNIFORM4IPROC Uniform4i;
+ PFNUNIFORM1FVPROC Uniform1fv;
+ PFNUNIFORM2FVPROC Uniform2fv;
+ PFNUNIFORM3FVPROC Uniform3fv;
+ PFNUNIFORM4FVPROC Uniform4fv;
+ PFNUNIFORM1IVPROC Uniform1iv;
+ PFNUNIFORM2IVPROC Uniform2iv;
+ PFNUNIFORM3IVPROC Uniform3iv;
+ PFNUNIFORM4IVPROC Uniform4iv;
+ PFNUNIFORMMATRIX2FVPROC UniformMatrix2fv;
+ PFNUNIFORMMATRIX3FVPROC UniformMatrix3fv;
+ PFNUNIFORMMATRIX4FVPROC UniformMatrix4fv;
+ PFNVALIDATEPROGRAMPROC ValidateProgram;
+ PFNVERTEXATTRIBPOINTERPROC VertexAttribPointer;
+
+ // Extension: 2.1
+ PFNUNIFORMMATRIX2X3FVPROC UniformMatrix2x3fv;
+ PFNUNIFORMMATRIX3X2FVPROC UniformMatrix3x2fv;
+ PFNUNIFORMMATRIX2X4FVPROC UniformMatrix2x4fv;
+ PFNUNIFORMMATRIX4X2FVPROC UniformMatrix4x2fv;
+ PFNUNIFORMMATRIX3X4FVPROC UniformMatrix3x4fv;
+ PFNUNIFORMMATRIX4X3FVPROC UniformMatrix4x3fv;
+
+ // Extension: ARB_vertex_array_object
+ PFNBINDVERTEXARRAYPROC BindVertexArray;
+ PFNDELETEVERTEXARRAYSPROC DeleteVertexArrays;
+ PFNGENVERTEXARRAYSPROC GenVertexArrays;
+ PFNISVERTEXARRAYPROC IsVertexArray;
+
+ // Extension: ARB_map_buffer_range
+ PFNMAPBUFFERRANGEPROC MapBufferRange;
+ PFNFLUSHMAPPEDBUFFERRANGEPROC FlushMappedBufferRange;
+
+ // Extension: ARB_framebuffer_object
+ PFNISRENDERBUFFERPROC IsRenderbuffer;
+ PFNBINDRENDERBUFFERPROC BindRenderbuffer;
+ PFNDELETERENDERBUFFERSPROC DeleteRenderbuffers;
+ PFNGENRENDERBUFFERSPROC GenRenderbuffers;
+ PFNRENDERBUFFERSTORAGEPROC RenderbufferStorage;
+ PFNGETRENDERBUFFERPARAMETERIVPROC GetRenderbufferParameteriv;
+ PFNISFRAMEBUFFERPROC IsFramebuffer;
+ PFNBINDFRAMEBUFFERPROC BindFramebuffer;
+ PFNDELETEFRAMEBUFFERSPROC DeleteFramebuffers;
+ PFNGENFRAMEBUFFERSPROC GenFramebuffers;
+ PFNCHECKFRAMEBUFFERSTATUSPROC CheckFramebufferStatus;
+ PFNFRAMEBUFFERTEXTURE1DPROC FramebufferTexture1D;
+ PFNFRAMEBUFFERTEXTURE2DPROC FramebufferTexture2D;
+ PFNFRAMEBUFFERTEXTURE3DPROC FramebufferTexture3D;
+ PFNFRAMEBUFFERRENDERBUFFERPROC FramebufferRenderbuffer;
+ PFNGETFRAMEBUFFERATTACHMENTPARAMETERIVPROC GetFramebufferAttachmentParameteriv;
+ PFNGENERATEMIPMAPPROC GenerateMipmap;
+ PFNBLITFRAMEBUFFERPROC BlitFramebuffer;
+ PFNRENDERBUFFERSTORAGEMULTISAMPLEPROC RenderbufferStorageMultisample;
+ PFNFRAMEBUFFERTEXTURELAYERPROC FramebufferTextureLayer;
+
+ // Extension: 3.0
+ PFNCOLORMASKIPROC ColorMaski;
+ PFNGETBOOLEANI_VPROC GetBooleani_v;
+ PFNGETINTEGERI_VPROC GetIntegeri_v;
+ PFNENABLEIPROC Enablei;
+ PFNDISABLEIPROC Disablei;
+ PFNISENABLEDIPROC IsEnabledi;
+ PFNBEGINTRANSFORMFEEDBACKPROC BeginTransformFeedback;
+ PFNENDTRANSFORMFEEDBACKPROC EndTransformFeedback;
+ PFNBINDBUFFERRANGEPROC BindBufferRange;
+ PFNBINDBUFFERBASEPROC BindBufferBase;
+ PFNTRANSFORMFEEDBACKVARYINGSPROC TransformFeedbackVaryings;
+ PFNGETTRANSFORMFEEDBACKVARYINGPROC GetTransformFeedbackVarying;
+ PFNCLAMPCOLORPROC ClampColor;
+ PFNBEGINCONDITIONALRENDERPROC BeginConditionalRender;
+ PFNENDCONDITIONALRENDERPROC EndConditionalRender;
+ PFNVERTEXATTRIBIPOINTERPROC VertexAttribIPointer;
+ PFNGETVERTEXATTRIBIIVPROC GetVertexAttribIiv;
+ PFNGETVERTEXATTRIBIUIVPROC GetVertexAttribIuiv;
+ PFNVERTEXATTRIBI1IPROC VertexAttribI1i;
+ PFNVERTEXATTRIBI2IPROC VertexAttribI2i;
+ PFNVERTEXATTRIBI3IPROC VertexAttribI3i;
+ PFNVERTEXATTRIBI4IPROC VertexAttribI4i;
+ PFNVERTEXATTRIBI1UIPROC VertexAttribI1ui;
+ PFNVERTEXATTRIBI2UIPROC VertexAttribI2ui;
+ PFNVERTEXATTRIBI3UIPROC VertexAttribI3ui;
+ PFNVERTEXATTRIBI4UIPROC VertexAttribI4ui;
+ PFNVERTEXATTRIBI1IVPROC VertexAttribI1iv;
+ PFNVERTEXATTRIBI2IVPROC VertexAttribI2iv;
+ PFNVERTEXATTRIBI3IVPROC VertexAttribI3iv;
+ PFNVERTEXATTRIBI4IVPROC VertexAttribI4iv;
+ PFNVERTEXATTRIBI1UIVPROC VertexAttribI1uiv;
+ PFNVERTEXATTRIBI2UIVPROC VertexAttribI2uiv;
+ PFNVERTEXATTRIBI3UIVPROC VertexAttribI3uiv;
+ PFNVERTEXATTRIBI4UIVPROC VertexAttribI4uiv;
+ PFNVERTEXATTRIBI4BVPROC VertexAttribI4bv;
+ PFNVERTEXATTRIBI4SVPROC VertexAttribI4sv;
+ PFNVERTEXATTRIBI4UBVPROC VertexAttribI4ubv;
+ PFNVERTEXATTRIBI4USVPROC VertexAttribI4usv;
+ PFNGETUNIFORMUIVPROC GetUniformuiv;
+ PFNBINDFRAGDATALOCATIONPROC BindFragDataLocation;
+ PFNGETFRAGDATALOCATIONPROC GetFragDataLocation;
+ PFNUNIFORM1UIPROC Uniform1ui;
+ PFNUNIFORM2UIPROC Uniform2ui;
+ PFNUNIFORM3UIPROC Uniform3ui;
+ PFNUNIFORM4UIPROC Uniform4ui;
+ PFNUNIFORM1UIVPROC Uniform1uiv;
+ PFNUNIFORM2UIVPROC Uniform2uiv;
+ PFNUNIFORM3UIVPROC Uniform3uiv;
+ PFNUNIFORM4UIVPROC Uniform4uiv;
+ PFNTEXPARAMETERIIVPROC TexParameterIiv;
+ PFNTEXPARAMETERIUIVPROC TexParameterIuiv;
+ PFNGETTEXPARAMETERIIVPROC GetTexParameterIiv;
+ PFNGETTEXPARAMETERIUIVPROC GetTexParameterIuiv;
+ PFNCLEARBUFFERIVPROC ClearBufferiv;
+ PFNCLEARBUFFERUIVPROC ClearBufferuiv;
+ PFNCLEARBUFFERFVPROC ClearBufferfv;
+ PFNCLEARBUFFERFIPROC ClearBufferfi;
+ PFNGETSTRINGIPROC GetStringi;
+
+ // Extension: ARB_uniform_buffer_object
+ PFNGETUNIFORMINDICESPROC GetUniformIndices;
+ PFNGETACTIVEUNIFORMSIVPROC GetActiveUniformsiv;
+ PFNGETACTIVEUNIFORMNAMEPROC GetActiveUniformName;
+ PFNGETUNIFORMBLOCKINDEXPROC GetUniformBlockIndex;
+ PFNGETACTIVEUNIFORMBLOCKIVPROC GetActiveUniformBlockiv;
+ PFNGETACTIVEUNIFORMBLOCKNAMEPROC GetActiveUniformBlockName;
+ PFNUNIFORMBLOCKBINDINGPROC UniformBlockBinding;
+
+ // Extension: ARB_copy_buffer
+ PFNCOPYBUFFERSUBDATAPROC CopyBufferSubData;
+
+ // Extension: 3.1
+ PFNDRAWARRAYSINSTANCEDPROC DrawArraysInstanced;
+ PFNDRAWELEMENTSINSTANCEDPROC DrawElementsInstanced;
+ PFNTEXBUFFERPROC TexBuffer;
+ PFNPRIMITIVERESTARTINDEXPROC PrimitiveRestartIndex;
+
+ // Legacy
+ PFNENABLECLIENTSTATEPROC EnableClientState;
+ PFNDISABLECLIENTSTATEPROC DisableClientState;
+ PFNVERTEXPOINTERPROC VertexPointer;
+ PFNNORMALPOINTERPROC NormalPointer;
+ PFNCOLORPOINTERPROC ColorPointer;
+ PFNTEXCOORDPOINTERPROC TexCoordPointer;
+
+ PFNTEXENVIPROC TexEnvi;
+
+ PFNMATRIXMODEPROC MatrixMode;
+ PFNLOADIDENTITYPROC LoadIdentity;
+ PFNORTHOPROC Ortho;
+
+ PFNCOLOR3DPROC Color3d;
+
+ //////////////////////////////////////////////
+ // Switch functions
+
+ // Extension: 1.1
+
+ static void CODEGEN_FUNCPTR Switch_CullFace(GLenum mode)
{
- InitializeVariables()
- {
- // Extension: 1.1
- CullFace = Switch_CullFace;
- FrontFace = Switch_FrontFace;
- Hint = Switch_Hint;
- LineWidth = Switch_LineWidth;
- PointSize = Switch_PointSize;
- PolygonMode = Switch_PolygonMode;
- Scissor = Switch_Scissor;
- TexParameterf = Switch_TexParameterf;
- TexParameterfv = Switch_TexParameterfv;
- TexParameteri = Switch_TexParameteri;
- TexParameteriv = Switch_TexParameteriv;
- TexImage1D = Switch_TexImage1D;
- TexImage2D = Switch_TexImage2D;
- DrawBuffer = Switch_DrawBuffer;
- Clear = Switch_Clear;
- ClearColor = Switch_ClearColor;
- ClearStencil = Switch_ClearStencil;
- ClearDepth = Switch_ClearDepth;
- StencilMask = Switch_StencilMask;
- ColorMask = Switch_ColorMask;
- DepthMask = Switch_DepthMask;
- Disable = Switch_Disable;
- Enable = Switch_Enable;
- Finish = Switch_Finish;
- Flush = Switch_Flush;
- BlendFunc = Switch_BlendFunc;
- LogicOp = Switch_LogicOp;
- StencilFunc = Switch_StencilFunc;
- StencilOp = Switch_StencilOp;
- DepthFunc = Switch_DepthFunc;
- PixelStoref = Switch_PixelStoref;
- PixelStorei = Switch_PixelStorei;
- ReadBuffer = Switch_ReadBuffer;
- ReadPixels = Switch_ReadPixels;
- GetBooleanv = Switch_GetBooleanv;
- GetDoublev = Switch_GetDoublev;
- GetError = Switch_GetError;
- GetFloatv = Switch_GetFloatv;
- GetIntegerv = Switch_GetIntegerv;
- GetString = Switch_GetString;
- GetTexImage = Switch_GetTexImage;
- GetTexParameterfv = Switch_GetTexParameterfv;
- GetTexParameteriv = Switch_GetTexParameteriv;
- GetTexLevelParameterfv = Switch_GetTexLevelParameterfv;
- GetTexLevelParameteriv = Switch_GetTexLevelParameteriv;
- IsEnabled = Switch_IsEnabled;
- DepthRange = Switch_DepthRange;
- Viewport = Switch_Viewport;
- DrawArrays = Switch_DrawArrays;
- DrawElements = Switch_DrawElements;
- GetPointerv = Switch_GetPointerv;
- PolygonOffset = Switch_PolygonOffset;
- CopyTexImage1D = Switch_CopyTexImage1D;
- CopyTexImage2D = Switch_CopyTexImage2D;
- CopyTexSubImage1D = Switch_CopyTexSubImage1D;
- CopyTexSubImage2D = Switch_CopyTexSubImage2D;
- TexSubImage1D = Switch_TexSubImage1D;
- TexSubImage2D = Switch_TexSubImage2D;
- BindTexture = Switch_BindTexture;
- DeleteTextures = Switch_DeleteTextures;
- GenTextures = Switch_GenTextures;
- IsTexture = Switch_IsTexture;
- Indexub = Switch_Indexub;
- Indexubv = Switch_Indexubv;
-
- // Extension: 1.2
- BlendColor = Switch_BlendColor;
- BlendEquation = Switch_BlendEquation;
- DrawRangeElements = Switch_DrawRangeElements;
- TexSubImage3D = Switch_TexSubImage3D;
- CopyTexSubImage3D = Switch_CopyTexSubImage3D;
-
- // Extension: 1.3
- ActiveTexture = Switch_ActiveTexture;
- SampleCoverage = Switch_SampleCoverage;
- CompressedTexImage3D = Switch_CompressedTexImage3D;
- CompressedTexImage2D = Switch_CompressedTexImage2D;
- CompressedTexImage1D = Switch_CompressedTexImage1D;
- CompressedTexSubImage3D = Switch_CompressedTexSubImage3D;
- CompressedTexSubImage2D = Switch_CompressedTexSubImage2D;
- CompressedTexSubImage1D = Switch_CompressedTexSubImage1D;
- GetCompressedTexImage = Switch_GetCompressedTexImage;
-
- // Extension: 1.4
- BlendFuncSeparate = Switch_BlendFuncSeparate;
- MultiDrawArrays = Switch_MultiDrawArrays;
- MultiDrawElements = Switch_MultiDrawElements;
- PointParameterf = Switch_PointParameterf;
- PointParameterfv = Switch_PointParameterfv;
- PointParameteri = Switch_PointParameteri;
- PointParameteriv = Switch_PointParameteriv;
-
- // Extension: 1.5
- GenQueries = Switch_GenQueries;
- DeleteQueries = Switch_DeleteQueries;
- IsQuery = Switch_IsQuery;
- BeginQuery = Switch_BeginQuery;
- EndQuery = Switch_EndQuery;
- GetQueryiv = Switch_GetQueryiv;
- GetQueryObjectiv = Switch_GetQueryObjectiv;
- GetQueryObjectuiv = Switch_GetQueryObjectuiv;
- BindBuffer = Switch_BindBuffer;
- DeleteBuffers = Switch_DeleteBuffers;
- GenBuffers = Switch_GenBuffers;
- IsBuffer = Switch_IsBuffer;
- BufferData = Switch_BufferData;
- BufferSubData = Switch_BufferSubData;
- GetBufferSubData = Switch_GetBufferSubData;
- MapBuffer = Switch_MapBuffer;
- UnmapBuffer = Switch_UnmapBuffer;
- GetBufferParameteriv = Switch_GetBufferParameteriv;
- GetBufferPointerv = Switch_GetBufferPointerv;
-
- // Extension: 2.0
- BlendEquationSeparate = Switch_BlendEquationSeparate;
- DrawBuffers = Switch_DrawBuffers;
- StencilOpSeparate = Switch_StencilOpSeparate;
- StencilFuncSeparate = Switch_StencilFuncSeparate;
- StencilMaskSeparate = Switch_StencilMaskSeparate;
- AttachShader = Switch_AttachShader;
- BindAttribLocation = Switch_BindAttribLocation;
- CompileShader = Switch_CompileShader;
- CreateProgram = Switch_CreateProgram;
- CreateShader = Switch_CreateShader;
- DeleteProgram = Switch_DeleteProgram;
- DeleteShader = Switch_DeleteShader;
- DetachShader = Switch_DetachShader;
- DisableVertexAttribArray = Switch_DisableVertexAttribArray;
- EnableVertexAttribArray = Switch_EnableVertexAttribArray;
- GetActiveAttrib = Switch_GetActiveAttrib;
- GetActiveUniform = Switch_GetActiveUniform;
- GetAttachedShaders = Switch_GetAttachedShaders;
- GetAttribLocation = Switch_GetAttribLocation;
- GetProgramiv = Switch_GetProgramiv;
- GetProgramInfoLog = Switch_GetProgramInfoLog;
- GetShaderiv = Switch_GetShaderiv;
- GetShaderInfoLog = Switch_GetShaderInfoLog;
- GetShaderSource = Switch_GetShaderSource;
- GetUniformLocation = Switch_GetUniformLocation;
- GetUniformfv = Switch_GetUniformfv;
- GetUniformiv = Switch_GetUniformiv;
- GetVertexAttribdv = Switch_GetVertexAttribdv;
- GetVertexAttribfv = Switch_GetVertexAttribfv;
- GetVertexAttribiv = Switch_GetVertexAttribiv;
- GetVertexAttribPointerv = Switch_GetVertexAttribPointerv;
- IsProgram = Switch_IsProgram;
- IsShader = Switch_IsShader;
- LinkProgram = Switch_LinkProgram;
- ShaderSource = Switch_ShaderSource;
- UseProgram = Switch_UseProgram;
- Uniform1f = Switch_Uniform1f;
- Uniform2f = Switch_Uniform2f;
- Uniform3f = Switch_Uniform3f;
- Uniform4f = Switch_Uniform4f;
- Uniform1i = Switch_Uniform1i;
- Uniform2i = Switch_Uniform2i;
- Uniform3i = Switch_Uniform3i;
- Uniform4i = Switch_Uniform4i;
- Uniform1fv = Switch_Uniform1fv;
- Uniform2fv = Switch_Uniform2fv;
- Uniform3fv = Switch_Uniform3fv;
- Uniform4fv = Switch_Uniform4fv;
- Uniform1iv = Switch_Uniform1iv;
- Uniform2iv = Switch_Uniform2iv;
- Uniform3iv = Switch_Uniform3iv;
- Uniform4iv = Switch_Uniform4iv;
- UniformMatrix2fv = Switch_UniformMatrix2fv;
- UniformMatrix3fv = Switch_UniformMatrix3fv;
- UniformMatrix4fv = Switch_UniformMatrix4fv;
- ValidateProgram = Switch_ValidateProgram;
- VertexAttribPointer = Switch_VertexAttribPointer;
-
- // Extension: 2.1
- UniformMatrix2x3fv = Switch_UniformMatrix2x3fv;
- UniformMatrix3x2fv = Switch_UniformMatrix3x2fv;
- UniformMatrix2x4fv = Switch_UniformMatrix2x4fv;
- UniformMatrix4x2fv = Switch_UniformMatrix4x2fv;
- UniformMatrix3x4fv = Switch_UniformMatrix3x4fv;
- UniformMatrix4x3fv = Switch_UniformMatrix4x3fv;
-
- // Extension: ARB_vertex_array_object
- BindVertexArray = Switch_BindVertexArray;
- DeleteVertexArrays = Switch_DeleteVertexArrays;
- GenVertexArrays = Switch_GenVertexArrays;
- IsVertexArray = Switch_IsVertexArray;
-
- // Extension: ARB_map_buffer_range
- MapBufferRange = Switch_MapBufferRange;
- FlushMappedBufferRange = Switch_FlushMappedBufferRange;
-
- // Extension: ARB_framebuffer_object
- IsRenderbuffer = Switch_IsRenderbuffer;
- BindRenderbuffer = Switch_BindRenderbuffer;
- DeleteRenderbuffers = Switch_DeleteRenderbuffers;
- GenRenderbuffers = Switch_GenRenderbuffers;
- RenderbufferStorage = Switch_RenderbufferStorage;
- GetRenderbufferParameteriv = Switch_GetRenderbufferParameteriv;
- IsFramebuffer = Switch_IsFramebuffer;
- BindFramebuffer = Switch_BindFramebuffer;
- DeleteFramebuffers = Switch_DeleteFramebuffers;
- GenFramebuffers = Switch_GenFramebuffers;
- CheckFramebufferStatus = Switch_CheckFramebufferStatus;
- FramebufferTexture1D = Switch_FramebufferTexture1D;
- FramebufferTexture2D = Switch_FramebufferTexture2D;
- FramebufferTexture3D = Switch_FramebufferTexture3D;
- FramebufferRenderbuffer = Switch_FramebufferRenderbuffer;
- GetFramebufferAttachmentParameteriv = Switch_GetFramebufferAttachmentParameteriv;
- GenerateMipmap = Switch_GenerateMipmap;
- BlitFramebuffer = Switch_BlitFramebuffer;
- RenderbufferStorageMultisample = Switch_RenderbufferStorageMultisample;
- FramebufferTextureLayer = Switch_FramebufferTextureLayer;
-
- // Extension: 3.0
- ColorMaski = Switch_ColorMaski;
- GetBooleani_v = Switch_GetBooleani_v;
- GetIntegeri_v = Switch_GetIntegeri_v;
- Enablei = Switch_Enablei;
- Disablei = Switch_Disablei;
- IsEnabledi = Switch_IsEnabledi;
- BeginTransformFeedback = Switch_BeginTransformFeedback;
- EndTransformFeedback = Switch_EndTransformFeedback;
- BindBufferRange = Switch_BindBufferRange;
- BindBufferBase = Switch_BindBufferBase;
- TransformFeedbackVaryings = Switch_TransformFeedbackVaryings;
- GetTransformFeedbackVarying = Switch_GetTransformFeedbackVarying;
- ClampColor = Switch_ClampColor;
- BeginConditionalRender = Switch_BeginConditionalRender;
- EndConditionalRender = Switch_EndConditionalRender;
- VertexAttribIPointer = Switch_VertexAttribIPointer;
- GetVertexAttribIiv = Switch_GetVertexAttribIiv;
- GetVertexAttribIuiv = Switch_GetVertexAttribIuiv;
- VertexAttribI1i = Switch_VertexAttribI1i;
- VertexAttribI2i = Switch_VertexAttribI2i;
- VertexAttribI3i = Switch_VertexAttribI3i;
- VertexAttribI4i = Switch_VertexAttribI4i;
- VertexAttribI1ui = Switch_VertexAttribI1ui;
- VertexAttribI2ui = Switch_VertexAttribI2ui;
- VertexAttribI3ui = Switch_VertexAttribI3ui;
- VertexAttribI4ui = Switch_VertexAttribI4ui;
- VertexAttribI1iv = Switch_VertexAttribI1iv;
- VertexAttribI2iv = Switch_VertexAttribI2iv;
- VertexAttribI3iv = Switch_VertexAttribI3iv;
- VertexAttribI4iv = Switch_VertexAttribI4iv;
- VertexAttribI1uiv = Switch_VertexAttribI1uiv;
- VertexAttribI2uiv = Switch_VertexAttribI2uiv;
- VertexAttribI3uiv = Switch_VertexAttribI3uiv;
- VertexAttribI4uiv = Switch_VertexAttribI4uiv;
- VertexAttribI4bv = Switch_VertexAttribI4bv;
- VertexAttribI4sv = Switch_VertexAttribI4sv;
- VertexAttribI4ubv = Switch_VertexAttribI4ubv;
- VertexAttribI4usv = Switch_VertexAttribI4usv;
- GetUniformuiv = Switch_GetUniformuiv;
- BindFragDataLocation = Switch_BindFragDataLocation;
- GetFragDataLocation = Switch_GetFragDataLocation;
- Uniform1ui = Switch_Uniform1ui;
- Uniform2ui = Switch_Uniform2ui;
- Uniform3ui = Switch_Uniform3ui;
- Uniform4ui = Switch_Uniform4ui;
- Uniform1uiv = Switch_Uniform1uiv;
- Uniform2uiv = Switch_Uniform2uiv;
- Uniform3uiv = Switch_Uniform3uiv;
- Uniform4uiv = Switch_Uniform4uiv;
- TexParameterIiv = Switch_TexParameterIiv;
- TexParameterIuiv = Switch_TexParameterIuiv;
- GetTexParameterIiv = Switch_GetTexParameterIiv;
- GetTexParameterIuiv = Switch_GetTexParameterIuiv;
- ClearBufferiv = Switch_ClearBufferiv;
- ClearBufferuiv = Switch_ClearBufferuiv;
- ClearBufferfv = Switch_ClearBufferfv;
- ClearBufferfi = Switch_ClearBufferfi;
- GetStringi = Switch_GetStringi;
-
- // Extension: ARB_uniform_buffer_object
- GetUniformIndices = Switch_GetUniformIndices;
- GetActiveUniformsiv = Switch_GetActiveUniformsiv;
- GetActiveUniformName = Switch_GetActiveUniformName;
- GetUniformBlockIndex = Switch_GetUniformBlockIndex;
- GetActiveUniformBlockiv = Switch_GetActiveUniformBlockiv;
- GetActiveUniformBlockName = Switch_GetActiveUniformBlockName;
- UniformBlockBinding = Switch_UniformBlockBinding;
-
- // Extension: ARB_copy_buffer
- CopyBufferSubData = Switch_CopyBufferSubData;
-
- // Extension: 3.1
- DrawArraysInstanced = Switch_DrawArraysInstanced;
- DrawElementsInstanced = Switch_DrawElementsInstanced;
- TexBuffer = Switch_TexBuffer;
- PrimitiveRestartIndex = Switch_PrimitiveRestartIndex;
-
- // Legacy
- EnableClientState = Switch_EnableClientState;
- DisableClientState = Switch_DisableClientState;
- VertexPointer = Switch_VertexPointer;
- NormalPointer = Switch_NormalPointer;
- ColorPointer = Switch_ColorPointer;
- TexCoordPointer = Switch_TexCoordPointer;
-
- TexEnvi = Switch_TexEnvi;
-
- MatrixMode = Switch_MatrixMode;
- LoadIdentity = Switch_LoadIdentity;
- Ortho = Switch_Ortho;
-
- Color3d = Switch_Color3d;
-
- }
- };
+ CullFace = (PFNCULLFACEPROC)IntGetProcAddress("glCullFace");
+ CullFace(mode);
+ }
- InitializeVariables g_initVariables;
- }
-
- namespace sys
- {
- namespace
- {
- void ClearExtensionVariables()
- {
- }
-
- struct MapEntry
- {
- const char *extName;
- bool *extVariable;
- };
-
- struct MapCompare
- {
- MapCompare(const char *test_) : test(test_) {}
- bool operator()(const MapEntry &other) { return strcmp(test, other.extName) == 0; }
- const char *test;
- };
-
- struct ClearEntry
- {
- void operator()(MapEntry &entry) { *(entry.extVariable) = false;}
- };
-
- MapEntry g_mappingTable[1] =
- {
- };
-
- void LoadExtByName(const char *extensionName)
- {
- MapEntry *tableEnd = &g_mappingTable[0];
- MapEntry *entry = std::find_if(&g_mappingTable[0], tableEnd, MapCompare(extensionName));
-
- if(entry != tableEnd)
- *(entry->extVariable) = true;
- }
-
- void ProcExtsFromExtList()
- {
- GLint iLoop;
- GLint iNumExtensions = 0;
- GetIntegerv(NUM_EXTENSIONS, &iNumExtensions);
-
- for(iLoop = 0; iLoop < iNumExtensions; iLoop++)
- {
- const char *strExtensionName = (const char *)GetStringi(EXTENSIONS, iLoop);
- LoadExtByName(strExtensionName);
- }
- }
+ static void CODEGEN_FUNCPTR Switch_FrontFace(GLenum mode)
+ {
+ FrontFace = (PFNFRONTFACEPROC)IntGetProcAddress("glFrontFace");
+ FrontFace(mode);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_Hint(GLenum target, GLenum mode)
+ {
+ Hint = (PFNHINTPROC)IntGetProcAddress("glHint");
+ Hint(target, mode);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_LineWidth(GLfloat width)
+ {
+ LineWidth = (PFNLINEWIDTHPROC)IntGetProcAddress("glLineWidth");
+ LineWidth(width);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_PointSize(GLfloat size)
+ {
+ PointSize = (PFNPOINTSIZEPROC)IntGetProcAddress("glPointSize");
+ PointSize(size);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_PolygonMode(GLenum face, GLenum mode)
+ {
+ PolygonMode = (PFNPOLYGONMODEPROC)IntGetProcAddress("glPolygonMode");
+ PolygonMode(face, mode);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_Scissor(GLint x, GLint y, GLsizei width, GLsizei height)
+ {
+ Scissor = (PFNSCISSORPROC)IntGetProcAddress("glScissor");
+ Scissor(x, y, width, height);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_TexParameterf(GLenum target, GLenum pname, GLfloat param)
+ {
+ TexParameterf = (PFNTEXPARAMETERFPROC)IntGetProcAddress("glTexParameterf");
+ TexParameterf(target, pname, param);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_TexParameterfv(GLenum target, GLenum pname, const GLfloat *params)
+ {
+ TexParameterfv = (PFNTEXPARAMETERFVPROC)IntGetProcAddress("glTexParameterfv");
+ TexParameterfv(target, pname, params);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_TexParameteri(GLenum target, GLenum pname, GLint param)
+ {
+ TexParameteri = (PFNTEXPARAMETERIPROC)IntGetProcAddress("glTexParameteri");
+ TexParameteri(target, pname, param);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_TexParameteriv(GLenum target, GLenum pname, const GLint *params)
+ {
+ TexParameteriv = (PFNTEXPARAMETERIVPROC)IntGetProcAddress("glTexParameteriv");
+ TexParameteriv(target, pname, params);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_TexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+ {
+ TexImage1D = (PFNTEXIMAGE1DPROC)IntGetProcAddress("glTexImage1D");
+ TexImage1D(target, level, internalformat, width, border, format, type, pixels);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_TexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+ {
+ TexImage2D = (PFNTEXIMAGE2DPROC)IntGetProcAddress("glTexImage2D");
+ TexImage2D(target, level, internalformat, width, height, border, format, type, pixels);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_DrawBuffer(GLenum mode)
+ {
+ DrawBuffer = (PFNDRAWBUFFERPROC)IntGetProcAddress("glDrawBuffer");
+ DrawBuffer(mode);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_Clear(GLbitfield mask)
+ {
+ Clear = (PFNCLEARPROC)IntGetProcAddress("glClear");
+ Clear(mask);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_ClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+ {
+ ClearColor = (PFNCLEARCOLORPROC)IntGetProcAddress("glClearColor");
+ ClearColor(red, green, blue, alpha);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_ClearStencil(GLint s)
+ {
+ ClearStencil = (PFNCLEARSTENCILPROC)IntGetProcAddress("glClearStencil");
+ ClearStencil(s);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_ClearDepth(GLdouble depth)
+ {
+ ClearDepth = (PFNCLEARDEPTHPROC)IntGetProcAddress("glClearDepth");
+ ClearDepth(depth);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_StencilMask(GLuint mask)
+ {
+ StencilMask = (PFNSTENCILMASKPROC)IntGetProcAddress("glStencilMask");
+ StencilMask(mask);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_ColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha)
+ {
+ ColorMask = (PFNCOLORMASKPROC)IntGetProcAddress("glColorMask");
+ ColorMask(red, green, blue, alpha);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_DepthMask(GLboolean flag)
+ {
+ DepthMask = (PFNDEPTHMASKPROC)IntGetProcAddress("glDepthMask");
+ DepthMask(flag);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_Disable(GLenum cap)
+ {
+ Disable = (PFNDISABLEPROC)IntGetProcAddress("glDisable");
+ Disable(cap);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_Enable(GLenum cap)
+ {
+ Enable = (PFNENABLEPROC)IntGetProcAddress("glEnable");
+ Enable(cap);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_Finish()
+ {
+ Finish = (PFNFINISHPROC)IntGetProcAddress("glFinish");
+ Finish();
+ }
+
+ static void CODEGEN_FUNCPTR Switch_Flush()
+ {
+ Flush = (PFNFLUSHPROC)IntGetProcAddress("glFlush");
+ Flush();
+ }
+
+ static void CODEGEN_FUNCPTR Switch_BlendFunc(GLenum sfactor, GLenum dfactor)
+ {
+ BlendFunc = (PFNBLENDFUNCPROC)IntGetProcAddress("glBlendFunc");
+ BlendFunc(sfactor, dfactor);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_LogicOp(GLenum opcode)
+ {
+ LogicOp = (PFNLOGICOPPROC)IntGetProcAddress("glLogicOp");
+ LogicOp(opcode);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_StencilFunc(GLenum func, GLint ref, GLuint mask)
+ {
+ StencilFunc = (PFNSTENCILFUNCPROC)IntGetProcAddress("glStencilFunc");
+ StencilFunc(func, ref, mask);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_StencilOp(GLenum fail, GLenum zfail, GLenum zpass)
+ {
+ StencilOp = (PFNSTENCILOPPROC)IntGetProcAddress("glStencilOp");
+ StencilOp(fail, zfail, zpass);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_DepthFunc(GLenum func)
+ {
+ DepthFunc = (PFNDEPTHFUNCPROC)IntGetProcAddress("glDepthFunc");
+ DepthFunc(func);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_PixelStoref(GLenum pname, GLfloat param)
+ {
+ PixelStoref = (PFNPIXELSTOREFPROC)IntGetProcAddress("glPixelStoref");
+ PixelStoref(pname, param);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_PixelStorei(GLenum pname, GLint param)
+ {
+ PixelStorei = (PFNPIXELSTOREIPROC)IntGetProcAddress("glPixelStorei");
+ PixelStorei(pname, param);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_ReadBuffer(GLenum mode)
+ {
+ ReadBuffer = (PFNREADBUFFERPROC)IntGetProcAddress("glReadBuffer");
+ ReadBuffer(mode);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_ReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels)
+ {
+ ReadPixels = (PFNREADPIXELSPROC)IntGetProcAddress("glReadPixels");
+ ReadPixels(x, y, width, height, format, type, pixels);
}
- void CheckExtensions()
+
+ static void CODEGEN_FUNCPTR Switch_GetBooleanv(GLenum pname, GLboolean *params)
+ {
+ GetBooleanv = (PFNGETBOOLEANVPROC)IntGetProcAddress("glGetBooleanv");
+ GetBooleanv(pname, params);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_GetDoublev(GLenum pname, GLdouble *params)
+ {
+ GetDoublev = (PFNGETDOUBLEVPROC)IntGetProcAddress("glGetDoublev");
+ GetDoublev(pname, params);
+ }
+
+ static GLenum CODEGEN_FUNCPTR Switch_GetError()
+ {
+ GetError = (PFNGETERRORPROC)IntGetProcAddress("glGetError");
+ return GetError();
+ }
+
+ static void CODEGEN_FUNCPTR Switch_GetFloatv(GLenum pname, GLfloat *params)
+ {
+ GetFloatv = (PFNGETFLOATVPROC)IntGetProcAddress("glGetFloatv");
+ GetFloatv(pname, params);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_GetIntegerv(GLenum pname, GLint *params)
+ {
+ GetIntegerv = (PFNGETINTEGERVPROC)IntGetProcAddress("glGetIntegerv");
+ GetIntegerv(pname, params);
+ }
+
+ static const GLubyte * CODEGEN_FUNCPTR Switch_GetString(GLenum name)
+ {
+ GetString = (PFNGETSTRINGPROC)IntGetProcAddress("glGetString");
+ return GetString(name);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_GetTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels)
+ {
+ GetTexImage = (PFNGETTEXIMAGEPROC)IntGetProcAddress("glGetTexImage");
+ GetTexImage(target, level, format, type, pixels);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_GetTexParameterfv(GLenum target, GLenum pname, GLfloat *params)
+ {
+ GetTexParameterfv = (PFNGETTEXPARAMETERFVPROC)IntGetProcAddress("glGetTexParameterfv");
+ GetTexParameterfv(target, pname, params);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_GetTexParameteriv(GLenum target, GLenum pname, GLint *params)
+ {
+ GetTexParameteriv = (PFNGETTEXPARAMETERIVPROC)IntGetProcAddress("glGetTexParameteriv");
+ GetTexParameteriv(target, pname, params);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_GetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params)
+ {
+ GetTexLevelParameterfv = (PFNGETTEXLEVELPARAMETERFVPROC)IntGetProcAddress("glGetTexLevelParameterfv");
+ GetTexLevelParameterfv(target, level, pname, params);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_GetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params)
+ {
+ GetTexLevelParameteriv = (PFNGETTEXLEVELPARAMETERIVPROC)IntGetProcAddress("glGetTexLevelParameteriv");
+ GetTexLevelParameteriv(target, level, pname, params);
+ }
+
+ static GLboolean CODEGEN_FUNCPTR Switch_IsEnabled(GLenum cap)
+ {
+ IsEnabled = (PFNISENABLEDPROC)IntGetProcAddress("glIsEnabled");
+ return IsEnabled(cap);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_DepthRange(GLdouble ren_near, GLdouble ren_far)
+ {
+ DepthRange = (PFNDEPTHRANGEPROC)IntGetProcAddress("glDepthRange");
+ DepthRange(ren_near, ren_far);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_Viewport(GLint x, GLint y, GLsizei width, GLsizei height)
+ {
+ Viewport = (PFNVIEWPORTPROC)IntGetProcAddress("glViewport");
+ Viewport(x, y, width, height);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_DrawArrays(GLenum mode, GLint first, GLsizei count)
+ {
+ DrawArrays = (PFNDRAWARRAYSPROC)IntGetProcAddress("glDrawArrays");
+ DrawArrays(mode, first, count);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_DrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices)
+ {
+ DrawElements = (PFNDRAWELEMENTSPROC)IntGetProcAddress("glDrawElements");
+ DrawElements(mode, count, type, indices);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_GetPointerv(GLenum pname, GLvoid* *params)
+ {
+ GetPointerv = (PFNGETPOINTERVPROC)IntGetProcAddress("glGetPointerv");
+ GetPointerv(pname, params);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_PolygonOffset(GLfloat factor, GLfloat units)
+ {
+ PolygonOffset = (PFNPOLYGONOFFSETPROC)IntGetProcAddress("glPolygonOffset");
+ PolygonOffset(factor, units);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_CopyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border)
+ {
+ CopyTexImage1D = (PFNCOPYTEXIMAGE1DPROC)IntGetProcAddress("glCopyTexImage1D");
+ CopyTexImage1D(target, level, internalformat, x, y, width, border);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_CopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border)
+ {
+ CopyTexImage2D = (PFNCOPYTEXIMAGE2DPROC)IntGetProcAddress("glCopyTexImage2D");
+ CopyTexImage2D(target, level, internalformat, x, y, width, height, border);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_CopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width)
+ {
+ CopyTexSubImage1D = (PFNCOPYTEXSUBIMAGE1DPROC)IntGetProcAddress("glCopyTexSubImage1D");
+ CopyTexSubImage1D(target, level, xoffset, x, y, width);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_CopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height)
{
- ClearExtensionVariables();
- std::for_each(&g_mappingTable[0], &g_mappingTable[0], ClearEntry());
+ CopyTexSubImage2D = (PFNCOPYTEXSUBIMAGE2DPROC)IntGetProcAddress("glCopyTexSubImage2D");
+ CopyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_TexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels)
+ {
+ TexSubImage1D = (PFNTEXSUBIMAGE1DPROC)IntGetProcAddress("glTexSubImage1D");
+ TexSubImage1D(target, level, xoffset, width, format, type, pixels);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_TexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels)
+ {
+ TexSubImage2D = (PFNTEXSUBIMAGE2DPROC)IntGetProcAddress("glTexSubImage2D");
+ TexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_BindTexture(GLenum target, GLuint texture)
+ {
+ BindTexture = (PFNBINDTEXTUREPROC)IntGetProcAddress("glBindTexture");
+ BindTexture(target, texture);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_DeleteTextures(GLsizei n, const GLuint *textures)
+ {
+ DeleteTextures = (PFNDELETETEXTURESPROC)IntGetProcAddress("glDeleteTextures");
+ DeleteTextures(n, textures);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_GenTextures(GLsizei n, GLuint *textures)
+ {
+ GenTextures = (PFNGENTEXTURESPROC)IntGetProcAddress("glGenTextures");
+ GenTextures(n, textures);
+ }
+
+ static GLboolean CODEGEN_FUNCPTR Switch_IsTexture(GLuint texture)
+ {
+ IsTexture = (PFNISTEXTUREPROC)IntGetProcAddress("glIsTexture");
+ return IsTexture(texture);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_Indexub(GLubyte c)
+ {
+ Indexub = (PFNINDEXUBPROC)IntGetProcAddress("glIndexub");
+ Indexub(c);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_Indexubv(const GLubyte *c)
+ {
+ Indexubv = (PFNINDEXUBVPROC)IntGetProcAddress("glIndexubv");
+ Indexubv(c);
+ }
+
+ // Extension: 1.2
+
+ static void CODEGEN_FUNCPTR Switch_BlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+ {
+ BlendColor = (PFNBLENDCOLORPROC)IntGetProcAddress("glBlendColor");
+ BlendColor(red, green, blue, alpha);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_BlendEquation(GLenum mode)
+ {
+ BlendEquation = (PFNBLENDEQUATIONPROC)IntGetProcAddress("glBlendEquation");
+ BlendEquation(mode);
+ }
- ProcExtsFromExtList();
+ static void CODEGEN_FUNCPTR Switch_DrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices)
+ {
+ DrawRangeElements = (PFNDRAWRANGEELEMENTSPROC)IntGetProcAddress("glDrawRangeElements");
+ DrawRangeElements(mode, start, end, count, type, indices);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_TexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels)
+ {
+ TexSubImage3D = (PFNTEXSUBIMAGE3DPROC)IntGetProcAddress("glTexSubImage3D");
+ TexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_CopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height)
+ {
+ CopyTexSubImage3D = (PFNCOPYTEXSUBIMAGE3DPROC)IntGetProcAddress("glCopyTexSubImage3D");
+ CopyTexSubImage3D(target, level, xoffset, yoffset, zoffset, x, y, width, height);
+ }
+
+ // Extension: 1.3
+
+ static void CODEGEN_FUNCPTR Switch_ActiveTexture(GLenum texture)
+ {
+ ActiveTexture = (PFNACTIVETEXTUREPROC)IntGetProcAddress("glActiveTexture");
+ ActiveTexture(texture);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_SampleCoverage(GLfloat value, GLboolean invert)
+ {
+ SampleCoverage = (PFNSAMPLECOVERAGEPROC)IntGetProcAddress("glSampleCoverage");
+ SampleCoverage(value, invert);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_CompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data)
+ {
+ CompressedTexImage3D = (PFNCOMPRESSEDTEXIMAGE3DPROC)IntGetProcAddress("glCompressedTexImage3D");
+ CompressedTexImage3D(target, level, internalformat, width, height, depth, border, imageSize, data);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_CompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data)
+ {
+ CompressedTexImage2D = (PFNCOMPRESSEDTEXIMAGE2DPROC)IntGetProcAddress("glCompressedTexImage2D");
+ CompressedTexImage2D(target, level, internalformat, width, height, border, imageSize, data);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_CompressedTexImage1D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data)
+ {
+ CompressedTexImage1D = (PFNCOMPRESSEDTEXIMAGE1DPROC)IntGetProcAddress("glCompressedTexImage1D");
+ CompressedTexImage1D(target, level, internalformat, width, border, imageSize, data);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_CompressedTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data)
+ {
+ CompressedTexSubImage3D = (PFNCOMPRESSEDTEXSUBIMAGE3DPROC)IntGetProcAddress("glCompressedTexSubImage3D");
+ CompressedTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_CompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data)
+ {
+ CompressedTexSubImage2D = (PFNCOMPRESSEDTEXSUBIMAGE2DPROC)IntGetProcAddress("glCompressedTexSubImage2D");
+ CompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imageSize, data);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_CompressedTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data)
+ {
+ CompressedTexSubImage1D = (PFNCOMPRESSEDTEXSUBIMAGE1DPROC)IntGetProcAddress("glCompressedTexSubImage1D");
+ CompressedTexSubImage1D(target, level, xoffset, width, format, imageSize, data);
}
- }
+ static void CODEGEN_FUNCPTR Switch_GetCompressedTexImage(GLenum target, GLint level, GLvoid *img)
+ {
+ GetCompressedTexImage = (PFNGETCOMPRESSEDTEXIMAGEPROC)IntGetProcAddress("glGetCompressedTexImage");
+ GetCompressedTexImage(target, level, img);
+ }
+
+ // Extension: 1.4
+
+ static void CODEGEN_FUNCPTR Switch_BlendFuncSeparate(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha)
+ {
+ BlendFuncSeparate = (PFNBLENDFUNCSEPARATEPROC)IntGetProcAddress("glBlendFuncSeparate");
+ BlendFuncSeparate(sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_MultiDrawArrays(GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount)
+ {
+ MultiDrawArrays = (PFNMULTIDRAWARRAYSPROC)IntGetProcAddress("glMultiDrawArrays");
+ MultiDrawArrays(mode, first, count, drawcount);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_MultiDrawElements(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount)
+ {
+ MultiDrawElements = (PFNMULTIDRAWELEMENTSPROC)IntGetProcAddress("glMultiDrawElements");
+ MultiDrawElements(mode, count, type, indices, drawcount);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_PointParameterf(GLenum pname, GLfloat param)
+ {
+ PointParameterf = (PFNPOINTPARAMETERFPROC)IntGetProcAddress("glPointParameterf");
+ PointParameterf(pname, param);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_PointParameterfv(GLenum pname, const GLfloat *params)
+ {
+ PointParameterfv = (PFNPOINTPARAMETERFVPROC)IntGetProcAddress("glPointParameterfv");
+ PointParameterfv(pname, params);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_PointParameteri(GLenum pname, GLint param)
+ {
+ PointParameteri = (PFNPOINTPARAMETERIPROC)IntGetProcAddress("glPointParameteri");
+ PointParameteri(pname, param);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_PointParameteriv(GLenum pname, const GLint *params)
+ {
+ PointParameteriv = (PFNPOINTPARAMETERIVPROC)IntGetProcAddress("glPointParameteriv");
+ PointParameteriv(pname, params);
+ }
+
+ // Extension: 1.5
+
+ static void CODEGEN_FUNCPTR Switch_GenQueries(GLsizei n, GLuint *ids)
+ {
+ GenQueries = (PFNGENQUERIESPROC)IntGetProcAddress("glGenQueries");
+ GenQueries(n, ids);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_DeleteQueries(GLsizei n, const GLuint *ids)
+ {
+ DeleteQueries = (PFNDELETEQUERIESPROC)IntGetProcAddress("glDeleteQueries");
+ DeleteQueries(n, ids);
+ }
+
+ static GLboolean CODEGEN_FUNCPTR Switch_IsQuery(GLuint id)
+ {
+ IsQuery = (PFNISQUERYPROC)IntGetProcAddress("glIsQuery");
+ return IsQuery(id);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_BeginQuery(GLenum target, GLuint id)
+ {
+ BeginQuery = (PFNBEGINQUERYPROC)IntGetProcAddress("glBeginQuery");
+ BeginQuery(target, id);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_EndQuery(GLenum target)
+ {
+ EndQuery = (PFNENDQUERYPROC)IntGetProcAddress("glEndQuery");
+ EndQuery(target);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_GetQueryiv(GLenum target, GLenum pname, GLint *params)
+ {
+ GetQueryiv = (PFNGETQUERYIVPROC)IntGetProcAddress("glGetQueryiv");
+ GetQueryiv(target, pname, params);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_GetQueryObjectiv(GLuint id, GLenum pname, GLint *params)
+ {
+ GetQueryObjectiv = (PFNGETQUERYOBJECTIVPROC)IntGetProcAddress("glGetQueryObjectiv");
+ GetQueryObjectiv(id, pname, params);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_GetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params)
+ {
+ GetQueryObjectuiv = (PFNGETQUERYOBJECTUIVPROC)IntGetProcAddress("glGetQueryObjectuiv");
+ GetQueryObjectuiv(id, pname, params);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_BindBuffer(GLenum target, GLuint buffer)
+ {
+ BindBuffer = (PFNBINDBUFFERPROC)IntGetProcAddress("glBindBuffer");
+ BindBuffer(target, buffer);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_DeleteBuffers(GLsizei n, const GLuint *buffers)
+ {
+ DeleteBuffers = (PFNDELETEBUFFERSPROC)IntGetProcAddress("glDeleteBuffers");
+ DeleteBuffers(n, buffers);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_GenBuffers(GLsizei n, GLuint *buffers)
+ {
+ GenBuffers = (PFNGENBUFFERSPROC)IntGetProcAddress("glGenBuffers");
+ GenBuffers(n, buffers);
+ }
+
+ static GLboolean CODEGEN_FUNCPTR Switch_IsBuffer(GLuint buffer)
+ {
+ IsBuffer = (PFNISBUFFERPROC)IntGetProcAddress("glIsBuffer");
+ return IsBuffer(buffer);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_BufferData(GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage)
+ {
+ BufferData = (PFNBUFFERDATAPROC)IntGetProcAddress("glBufferData");
+ BufferData(target, size, data, usage);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_BufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data)
+ {
+ BufferSubData = (PFNBUFFERSUBDATAPROC)IntGetProcAddress("glBufferSubData");
+ BufferSubData(target, offset, size, data);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_GetBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, GLvoid *data)
+ {
+ GetBufferSubData = (PFNGETBUFFERSUBDATAPROC)IntGetProcAddress("glGetBufferSubData");
+ GetBufferSubData(target, offset, size, data);
+ }
+
+ static GLvoid* CODEGEN_FUNCPTR Switch_MapBuffer(GLenum target, GLenum access)
+ {
+ MapBuffer = (PFNMAPBUFFERPROC)IntGetProcAddress("glMapBuffer");
+ return MapBuffer(target, access);
+ }
+
+ static GLboolean CODEGEN_FUNCPTR Switch_UnmapBuffer(GLenum target)
+ {
+ UnmapBuffer = (PFNUNMAPBUFFERPROC)IntGetProcAddress("glUnmapBuffer");
+ return UnmapBuffer(target);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_GetBufferParameteriv(GLenum target, GLenum pname, GLint *params)
+ {
+ GetBufferParameteriv = (PFNGETBUFFERPARAMETERIVPROC)IntGetProcAddress("glGetBufferParameteriv");
+ GetBufferParameteriv(target, pname, params);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_GetBufferPointerv(GLenum target, GLenum pname, GLvoid* *params)
+ {
+ GetBufferPointerv = (PFNGETBUFFERPOINTERVPROC)IntGetProcAddress("glGetBufferPointerv");
+ GetBufferPointerv(target, pname, params);
+ }
+
+ // Extension: 2.0
+
+ static void CODEGEN_FUNCPTR Switch_BlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha)
+ {
+ BlendEquationSeparate = (PFNBLENDEQUATIONSEPARATEPROC)IntGetProcAddress("glBlendEquationSeparate");
+ BlendEquationSeparate(modeRGB, modeAlpha);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_DrawBuffers(GLsizei n, const GLenum *bufs)
+ {
+ DrawBuffers = (PFNDRAWBUFFERSPROC)IntGetProcAddress("glDrawBuffers");
+ DrawBuffers(n, bufs);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_StencilOpSeparate(GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass)
+ {
+ StencilOpSeparate = (PFNSTENCILOPSEPARATEPROC)IntGetProcAddress("glStencilOpSeparate");
+ StencilOpSeparate(face, sfail, dpfail, dppass);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_StencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask)
+ {
+ StencilFuncSeparate = (PFNSTENCILFUNCSEPARATEPROC)IntGetProcAddress("glStencilFuncSeparate");
+ StencilFuncSeparate(face, func, ref, mask);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_StencilMaskSeparate(GLenum face, GLuint mask)
+ {
+ StencilMaskSeparate = (PFNSTENCILMASKSEPARATEPROC)IntGetProcAddress("glStencilMaskSeparate");
+ StencilMaskSeparate(face, mask);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_AttachShader(GLuint program, GLuint shader)
+ {
+ AttachShader = (PFNATTACHSHADERPROC)IntGetProcAddress("glAttachShader");
+ AttachShader(program, shader);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_BindAttribLocation(GLuint program, GLuint index, const GLchar *name)
+ {
+ BindAttribLocation = (PFNBINDATTRIBLOCATIONPROC)IntGetProcAddress("glBindAttribLocation");
+ BindAttribLocation(program, index, name);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_CompileShader(GLuint shader)
+ {
+ CompileShader = (PFNCOMPILESHADERPROC)IntGetProcAddress("glCompileShader");
+ CompileShader(shader);
+ }
+
+ static GLuint CODEGEN_FUNCPTR Switch_CreateProgram()
+ {
+ CreateProgram = (PFNCREATEPROGRAMPROC)IntGetProcAddress("glCreateProgram");
+ return CreateProgram();
+ }
+
+ static GLuint CODEGEN_FUNCPTR Switch_CreateShader(GLenum type)
+ {
+ CreateShader = (PFNCREATESHADERPROC)IntGetProcAddress("glCreateShader");
+ return CreateShader(type);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_DeleteProgram(GLuint program)
+ {
+ DeleteProgram = (PFNDELETEPROGRAMPROC)IntGetProcAddress("glDeleteProgram");
+ DeleteProgram(program);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_DeleteShader(GLuint shader)
+ {
+ DeleteShader = (PFNDELETESHADERPROC)IntGetProcAddress("glDeleteShader");
+ DeleteShader(shader);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_DetachShader(GLuint program, GLuint shader)
+ {
+ DetachShader = (PFNDETACHSHADERPROC)IntGetProcAddress("glDetachShader");
+ DetachShader(program, shader);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_DisableVertexAttribArray(GLuint index)
+ {
+ DisableVertexAttribArray = (PFNDISABLEVERTEXATTRIBARRAYPROC)IntGetProcAddress("glDisableVertexAttribArray");
+ DisableVertexAttribArray(index);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_EnableVertexAttribArray(GLuint index)
+ {
+ EnableVertexAttribArray = (PFNENABLEVERTEXATTRIBARRAYPROC)IntGetProcAddress("glEnableVertexAttribArray");
+ EnableVertexAttribArray(index);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_GetActiveAttrib(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name)
+ {
+ GetActiveAttrib = (PFNGETACTIVEATTRIBPROC)IntGetProcAddress("glGetActiveAttrib");
+ GetActiveAttrib(program, index, bufSize, length, size, type, name);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_GetActiveUniform(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name)
+ {
+ GetActiveUniform = (PFNGETACTIVEUNIFORMPROC)IntGetProcAddress("glGetActiveUniform");
+ GetActiveUniform(program, index, bufSize, length, size, type, name);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_GetAttachedShaders(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *obj)
+ {
+ GetAttachedShaders = (PFNGETATTACHEDSHADERSPROC)IntGetProcAddress("glGetAttachedShaders");
+ GetAttachedShaders(program, maxCount, count, obj);
+ }
+
+ static GLint CODEGEN_FUNCPTR Switch_GetAttribLocation(GLuint program, const GLchar *name)
+ {
+ GetAttribLocation = (PFNGETATTRIBLOCATIONPROC)IntGetProcAddress("glGetAttribLocation");
+ return GetAttribLocation(program, name);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_GetProgramiv(GLuint program, GLenum pname, GLint *params)
+ {
+ GetProgramiv = (PFNGETPROGRAMIVPROC)IntGetProcAddress("glGetProgramiv");
+ GetProgramiv(program, pname, params);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_GetProgramInfoLog(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
+ {
+ GetProgramInfoLog = (PFNGETPROGRAMINFOLOGPROC)IntGetProcAddress("glGetProgramInfoLog");
+ GetProgramInfoLog(program, bufSize, length, infoLog);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_GetShaderiv(GLuint shader, GLenum pname, GLint *params)
+ {
+ GetShaderiv = (PFNGETSHADERIVPROC)IntGetProcAddress("glGetShaderiv");
+ GetShaderiv(shader, pname, params);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_GetShaderInfoLog(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
+ {
+ GetShaderInfoLog = (PFNGETSHADERINFOLOGPROC)IntGetProcAddress("glGetShaderInfoLog");
+ GetShaderInfoLog(shader, bufSize, length, infoLog);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_GetShaderSource(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source)
+ {
+ GetShaderSource = (PFNGETSHADERSOURCEPROC)IntGetProcAddress("glGetShaderSource");
+ GetShaderSource(shader, bufSize, length, source);
+ }
+
+ static GLint CODEGEN_FUNCPTR Switch_GetUniformLocation(GLuint program, const GLchar *name)
+ {
+ GetUniformLocation = (PFNGETUNIFORMLOCATIONPROC)IntGetProcAddress("glGetUniformLocation");
+ return GetUniformLocation(program, name);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_GetUniformfv(GLuint program, GLint location, GLfloat *params)
+ {
+ GetUniformfv = (PFNGETUNIFORMFVPROC)IntGetProcAddress("glGetUniformfv");
+ GetUniformfv(program, location, params);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_GetUniformiv(GLuint program, GLint location, GLint *params)
+ {
+ GetUniformiv = (PFNGETUNIFORMIVPROC)IntGetProcAddress("glGetUniformiv");
+ GetUniformiv(program, location, params);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_GetVertexAttribdv(GLuint index, GLenum pname, GLdouble *params)
+ {
+ GetVertexAttribdv = (PFNGETVERTEXATTRIBDVPROC)IntGetProcAddress("glGetVertexAttribdv");
+ GetVertexAttribdv(index, pname, params);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_GetVertexAttribfv(GLuint index, GLenum pname, GLfloat *params)
+ {
+ GetVertexAttribfv = (PFNGETVERTEXATTRIBFVPROC)IntGetProcAddress("glGetVertexAttribfv");
+ GetVertexAttribfv(index, pname, params);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_GetVertexAttribiv(GLuint index, GLenum pname, GLint *params)
+ {
+ GetVertexAttribiv = (PFNGETVERTEXATTRIBIVPROC)IntGetProcAddress("glGetVertexAttribiv");
+ GetVertexAttribiv(index, pname, params);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_GetVertexAttribPointerv(GLuint index, GLenum pname, GLvoid* *pointer)
+ {
+ GetVertexAttribPointerv = (PFNGETVERTEXATTRIBPOINTERVPROC)IntGetProcAddress("glGetVertexAttribPointerv");
+ GetVertexAttribPointerv(index, pname, pointer);
+ }
+
+ static GLboolean CODEGEN_FUNCPTR Switch_IsProgram(GLuint program)
+ {
+ IsProgram = (PFNISPROGRAMPROC)IntGetProcAddress("glIsProgram");
+ return IsProgram(program);
+ }
+
+ static GLboolean CODEGEN_FUNCPTR Switch_IsShader(GLuint shader)
+ {
+ IsShader = (PFNISSHADERPROC)IntGetProcAddress("glIsShader");
+ return IsShader(shader);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_LinkProgram(GLuint program)
+ {
+ LinkProgram = (PFNLINKPROGRAMPROC)IntGetProcAddress("glLinkProgram");
+ LinkProgram(program);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_ShaderSource(GLuint shader, GLsizei count, const GLchar* const *string, const GLint *length)
+ {
+ ShaderSource = (PFNSHADERSOURCEPROC)IntGetProcAddress("glShaderSource");
+ ShaderSource(shader, count, string, length);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_UseProgram(GLuint program)
+ {
+ UseProgram = (PFNUSEPROGRAMPROC)IntGetProcAddress("glUseProgram");
+ UseProgram(program);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_Uniform1f(GLint location, GLfloat v0)
+ {
+ Uniform1f = (PFNUNIFORM1FPROC)IntGetProcAddress("glUniform1f");
+ Uniform1f(location, v0);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_Uniform2f(GLint location, GLfloat v0, GLfloat v1)
+ {
+ Uniform2f = (PFNUNIFORM2FPROC)IntGetProcAddress("glUniform2f");
+ Uniform2f(location, v0, v1);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_Uniform3f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2)
+ {
+ Uniform3f = (PFNUNIFORM3FPROC)IntGetProcAddress("glUniform3f");
+ Uniform3f(location, v0, v1, v2);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_Uniform4f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3)
+ {
+ Uniform4f = (PFNUNIFORM4FPROC)IntGetProcAddress("glUniform4f");
+ Uniform4f(location, v0, v1, v2, v3);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_Uniform1i(GLint location, GLint v0)
+ {
+ Uniform1i = (PFNUNIFORM1IPROC)IntGetProcAddress("glUniform1i");
+ Uniform1i(location, v0);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_Uniform2i(GLint location, GLint v0, GLint v1)
+ {
+ Uniform2i = (PFNUNIFORM2IPROC)IntGetProcAddress("glUniform2i");
+ Uniform2i(location, v0, v1);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_Uniform3i(GLint location, GLint v0, GLint v1, GLint v2)
+ {
+ Uniform3i = (PFNUNIFORM3IPROC)IntGetProcAddress("glUniform3i");
+ Uniform3i(location, v0, v1, v2);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_Uniform4i(GLint location, GLint v0, GLint v1, GLint v2, GLint v3)
+ {
+ Uniform4i = (PFNUNIFORM4IPROC)IntGetProcAddress("glUniform4i");
+ Uniform4i(location, v0, v1, v2, v3);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_Uniform1fv(GLint location, GLsizei count, const GLfloat *value)
+ {
+ Uniform1fv = (PFNUNIFORM1FVPROC)IntGetProcAddress("glUniform1fv");
+ Uniform1fv(location, count, value);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_Uniform2fv(GLint location, GLsizei count, const GLfloat *value)
+ {
+ Uniform2fv = (PFNUNIFORM2FVPROC)IntGetProcAddress("glUniform2fv");
+ Uniform2fv(location, count, value);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_Uniform3fv(GLint location, GLsizei count, const GLfloat *value)
+ {
+ Uniform3fv = (PFNUNIFORM3FVPROC)IntGetProcAddress("glUniform3fv");
+ Uniform3fv(location, count, value);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_Uniform4fv(GLint location, GLsizei count, const GLfloat *value)
+ {
+ Uniform4fv = (PFNUNIFORM4FVPROC)IntGetProcAddress("glUniform4fv");
+ Uniform4fv(location, count, value);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_Uniform1iv(GLint location, GLsizei count, const GLint *value)
+ {
+ Uniform1iv = (PFNUNIFORM1IVPROC)IntGetProcAddress("glUniform1iv");
+ Uniform1iv(location, count, value);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_Uniform2iv(GLint location, GLsizei count, const GLint *value)
+ {
+ Uniform2iv = (PFNUNIFORM2IVPROC)IntGetProcAddress("glUniform2iv");
+ Uniform2iv(location, count, value);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_Uniform3iv(GLint location, GLsizei count, const GLint *value)
+ {
+ Uniform3iv = (PFNUNIFORM3IVPROC)IntGetProcAddress("glUniform3iv");
+ Uniform3iv(location, count, value);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_Uniform4iv(GLint location, GLsizei count, const GLint *value)
+ {
+ Uniform4iv = (PFNUNIFORM4IVPROC)IntGetProcAddress("glUniform4iv");
+ Uniform4iv(location, count, value);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_UniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+ {
+ UniformMatrix2fv = (PFNUNIFORMMATRIX2FVPROC)IntGetProcAddress("glUniformMatrix2fv");
+ UniformMatrix2fv(location, count, transpose, value);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_UniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+ {
+ UniformMatrix3fv = (PFNUNIFORMMATRIX3FVPROC)IntGetProcAddress("glUniformMatrix3fv");
+ UniformMatrix3fv(location, count, transpose, value);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_UniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+ {
+ UniformMatrix4fv = (PFNUNIFORMMATRIX4FVPROC)IntGetProcAddress("glUniformMatrix4fv");
+ UniformMatrix4fv(location, count, transpose, value);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_ValidateProgram(GLuint program)
+ {
+ ValidateProgram = (PFNVALIDATEPROGRAMPROC)IntGetProcAddress("glValidateProgram");
+ ValidateProgram(program);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_VertexAttribPointer(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer)
+ {
+ VertexAttribPointer = (PFNVERTEXATTRIBPOINTERPROC)IntGetProcAddress("glVertexAttribPointer");
+ VertexAttribPointer(index, size, type, normalized, stride, pointer);
+ }
+
+ // Extension: 2.1
+
+ static void CODEGEN_FUNCPTR Switch_UniformMatrix2x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+ {
+ UniformMatrix2x3fv = (PFNUNIFORMMATRIX2X3FVPROC)IntGetProcAddress("glUniformMatrix2x3fv");
+ UniformMatrix2x3fv(location, count, transpose, value);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_UniformMatrix3x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+ {
+ UniformMatrix3x2fv = (PFNUNIFORMMATRIX3X2FVPROC)IntGetProcAddress("glUniformMatrix3x2fv");
+ UniformMatrix3x2fv(location, count, transpose, value);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_UniformMatrix2x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+ {
+ UniformMatrix2x4fv = (PFNUNIFORMMATRIX2X4FVPROC)IntGetProcAddress("glUniformMatrix2x4fv");
+ UniformMatrix2x4fv(location, count, transpose, value);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_UniformMatrix4x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+ {
+ UniformMatrix4x2fv = (PFNUNIFORMMATRIX4X2FVPROC)IntGetProcAddress("glUniformMatrix4x2fv");
+ UniformMatrix4x2fv(location, count, transpose, value);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_UniformMatrix3x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+ {
+ UniformMatrix3x4fv = (PFNUNIFORMMATRIX3X4FVPROC)IntGetProcAddress("glUniformMatrix3x4fv");
+ UniformMatrix3x4fv(location, count, transpose, value);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_UniformMatrix4x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+ {
+ UniformMatrix4x3fv = (PFNUNIFORMMATRIX4X3FVPROC)IntGetProcAddress("glUniformMatrix4x3fv");
+ UniformMatrix4x3fv(location, count, transpose, value);
+ }
+
+ // Extension: ARB_vertex_array_object
+
+ static void CODEGEN_FUNCPTR Switch_BindVertexArray(GLuint ren_array)
+ {
+ BindVertexArray = (PFNBINDVERTEXARRAYPROC)IntGetProcAddress("glBindVertexArray");
+ BindVertexArray(ren_array);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_DeleteVertexArrays(GLsizei n, const GLuint *arrays)
+ {
+ DeleteVertexArrays = (PFNDELETEVERTEXARRAYSPROC)IntGetProcAddress("glDeleteVertexArrays");
+ DeleteVertexArrays(n, arrays);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_GenVertexArrays(GLsizei n, GLuint *arrays)
+ {
+ GenVertexArrays = (PFNGENVERTEXARRAYSPROC)IntGetProcAddress("glGenVertexArrays");
+ GenVertexArrays(n, arrays);
+ }
+
+ static GLboolean CODEGEN_FUNCPTR Switch_IsVertexArray(GLuint ren_array)
+ {
+ IsVertexArray = (PFNISVERTEXARRAYPROC)IntGetProcAddress("glIsVertexArray");
+ return IsVertexArray(ren_array);
+ }
+
+ // Extension: ARB_map_buffer_range
+
+ static GLvoid* CODEGEN_FUNCPTR Switch_MapBufferRange(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access)
+ {
+ MapBufferRange = (PFNMAPBUFFERRANGEPROC)IntGetProcAddress("glMapBufferRange");
+ return MapBufferRange(target, offset, length, access);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_FlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length)
+ {
+ FlushMappedBufferRange = (PFNFLUSHMAPPEDBUFFERRANGEPROC)IntGetProcAddress("glFlushMappedBufferRange");
+ FlushMappedBufferRange(target, offset, length);
+ }
+
+ // Extension: ARB_framebuffer_object
+
+ static GLboolean CODEGEN_FUNCPTR Switch_IsRenderbuffer(GLuint renderbuffer)
+ {
+ IsRenderbuffer = (PFNISRENDERBUFFERPROC)IntGetProcAddress("glIsRenderbuffer");
+ return IsRenderbuffer(renderbuffer);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_BindRenderbuffer(GLenum target, GLuint renderbuffer)
+ {
+ BindRenderbuffer = (PFNBINDRENDERBUFFERPROC)IntGetProcAddress("glBindRenderbuffer");
+ BindRenderbuffer(target, renderbuffer);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_DeleteRenderbuffers(GLsizei n, const GLuint *renderbuffers)
+ {
+ DeleteRenderbuffers = (PFNDELETERENDERBUFFERSPROC)IntGetProcAddress("glDeleteRenderbuffers");
+ DeleteRenderbuffers(n, renderbuffers);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_GenRenderbuffers(GLsizei n, GLuint *renderbuffers)
+ {
+ GenRenderbuffers = (PFNGENRENDERBUFFERSPROC)IntGetProcAddress("glGenRenderbuffers");
+ GenRenderbuffers(n, renderbuffers);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_RenderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height)
+ {
+ RenderbufferStorage = (PFNRENDERBUFFERSTORAGEPROC)IntGetProcAddress("glRenderbufferStorage");
+ RenderbufferStorage(target, internalformat, width, height);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_GetRenderbufferParameteriv(GLenum target, GLenum pname, GLint *params)
+ {
+ GetRenderbufferParameteriv = (PFNGETRENDERBUFFERPARAMETERIVPROC)IntGetProcAddress("glGetRenderbufferParameteriv");
+ GetRenderbufferParameteriv(target, pname, params);
+ }
+
+ static GLboolean CODEGEN_FUNCPTR Switch_IsFramebuffer(GLuint framebuffer)
+ {
+ IsFramebuffer = (PFNISFRAMEBUFFERPROC)IntGetProcAddress("glIsFramebuffer");
+ return IsFramebuffer(framebuffer);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_BindFramebuffer(GLenum target, GLuint framebuffer)
+ {
+ BindFramebuffer = (PFNBINDFRAMEBUFFERPROC)IntGetProcAddress("glBindFramebuffer");
+ BindFramebuffer(target, framebuffer);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_DeleteFramebuffers(GLsizei n, const GLuint *framebuffers)
+ {
+ DeleteFramebuffers = (PFNDELETEFRAMEBUFFERSPROC)IntGetProcAddress("glDeleteFramebuffers");
+ DeleteFramebuffers(n, framebuffers);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_GenFramebuffers(GLsizei n, GLuint *framebuffers)
+ {
+ GenFramebuffers = (PFNGENFRAMEBUFFERSPROC)IntGetProcAddress("glGenFramebuffers");
+ GenFramebuffers(n, framebuffers);
+ }
+
+ static GLenum CODEGEN_FUNCPTR Switch_CheckFramebufferStatus(GLenum target)
+ {
+ CheckFramebufferStatus = (PFNCHECKFRAMEBUFFERSTATUSPROC)IntGetProcAddress("glCheckFramebufferStatus");
+ return CheckFramebufferStatus(target);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_FramebufferTexture1D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
+ {
+ FramebufferTexture1D = (PFNFRAMEBUFFERTEXTURE1DPROC)IntGetProcAddress("glFramebufferTexture1D");
+ FramebufferTexture1D(target, attachment, textarget, texture, level);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_FramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
+ {
+ FramebufferTexture2D = (PFNFRAMEBUFFERTEXTURE2DPROC)IntGetProcAddress("glFramebufferTexture2D");
+ FramebufferTexture2D(target, attachment, textarget, texture, level);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_FramebufferTexture3D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset)
+ {
+ FramebufferTexture3D = (PFNFRAMEBUFFERTEXTURE3DPROC)IntGetProcAddress("glFramebufferTexture3D");
+ FramebufferTexture3D(target, attachment, textarget, texture, level, zoffset);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_FramebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer)
+ {
+ FramebufferRenderbuffer = (PFNFRAMEBUFFERRENDERBUFFERPROC)IntGetProcAddress("glFramebufferRenderbuffer");
+ FramebufferRenderbuffer(target, attachment, renderbuffertarget, renderbuffer);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_GetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint *params)
+ {
+ GetFramebufferAttachmentParameteriv = (PFNGETFRAMEBUFFERATTACHMENTPARAMETERIVPROC)IntGetProcAddress("glGetFramebufferAttachmentParameteriv");
+ GetFramebufferAttachmentParameteriv(target, attachment, pname, params);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_GenerateMipmap(GLenum target)
+ {
+ GenerateMipmap = (PFNGENERATEMIPMAPPROC)IntGetProcAddress("glGenerateMipmap");
+ GenerateMipmap(target);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_BlitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter)
+ {
+ BlitFramebuffer = (PFNBLITFRAMEBUFFERPROC)IntGetProcAddress("glBlitFramebuffer");
+ BlitFramebuffer(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_RenderbufferStorageMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height)
+ {
+ RenderbufferStorageMultisample = (PFNRENDERBUFFERSTORAGEMULTISAMPLEPROC)IntGetProcAddress("glRenderbufferStorageMultisample");
+ RenderbufferStorageMultisample(target, samples, internalformat, width, height);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_FramebufferTextureLayer(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer)
+ {
+ FramebufferTextureLayer = (PFNFRAMEBUFFERTEXTURELAYERPROC)IntGetProcAddress("glFramebufferTextureLayer");
+ FramebufferTextureLayer(target, attachment, texture, level, layer);
+ }
+
+ // Extension: 3.0
+
+ static void CODEGEN_FUNCPTR Switch_ColorMaski(GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a)
+ {
+ ColorMaski = (PFNCOLORMASKIPROC)IntGetProcAddress("glColorMaski");
+ ColorMaski(index, r, g, b, a);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_GetBooleani_v(GLenum target, GLuint index, GLboolean *data)
+ {
+ GetBooleani_v = (PFNGETBOOLEANI_VPROC)IntGetProcAddress("glGetBooleani_v");
+ GetBooleani_v(target, index, data);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_GetIntegeri_v(GLenum target, GLuint index, GLint *data)
+ {
+ GetIntegeri_v = (PFNGETINTEGERI_VPROC)IntGetProcAddress("glGetIntegeri_v");
+ GetIntegeri_v(target, index, data);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_Enablei(GLenum target, GLuint index)
+ {
+ Enablei = (PFNENABLEIPROC)IntGetProcAddress("glEnablei");
+ Enablei(target, index);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_Disablei(GLenum target, GLuint index)
+ {
+ Disablei = (PFNDISABLEIPROC)IntGetProcAddress("glDisablei");
+ Disablei(target, index);
+ }
+
+ static GLboolean CODEGEN_FUNCPTR Switch_IsEnabledi(GLenum target, GLuint index)
+ {
+ IsEnabledi = (PFNISENABLEDIPROC)IntGetProcAddress("glIsEnabledi");
+ return IsEnabledi(target, index);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_BeginTransformFeedback(GLenum primitiveMode)
+ {
+ BeginTransformFeedback = (PFNBEGINTRANSFORMFEEDBACKPROC)IntGetProcAddress("glBeginTransformFeedback");
+ BeginTransformFeedback(primitiveMode);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_EndTransformFeedback()
+ {
+ EndTransformFeedback = (PFNENDTRANSFORMFEEDBACKPROC)IntGetProcAddress("glEndTransformFeedback");
+ EndTransformFeedback();
+ }
+
+ static void CODEGEN_FUNCPTR Switch_BindBufferRange(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size)
+ {
+ BindBufferRange = (PFNBINDBUFFERRANGEPROC)IntGetProcAddress("glBindBufferRange");
+ BindBufferRange(target, index, buffer, offset, size);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_BindBufferBase(GLenum target, GLuint index, GLuint buffer)
+ {
+ BindBufferBase = (PFNBINDBUFFERBASEPROC)IntGetProcAddress("glBindBufferBase");
+ BindBufferBase(target, index, buffer);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_TransformFeedbackVaryings(GLuint program, GLsizei count, const GLchar* const *varyings, GLenum bufferMode)
+ {
+ TransformFeedbackVaryings = (PFNTRANSFORMFEEDBACKVARYINGSPROC)IntGetProcAddress("glTransformFeedbackVaryings");
+ TransformFeedbackVaryings(program, count, varyings, bufferMode);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_GetTransformFeedbackVarying(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name)
+ {
+ GetTransformFeedbackVarying = (PFNGETTRANSFORMFEEDBACKVARYINGPROC)IntGetProcAddress("glGetTransformFeedbackVarying");
+ GetTransformFeedbackVarying(program, index, bufSize, length, size, type, name);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_ClampColor(GLenum target, GLenum clamp)
+ {
+ ClampColor = (PFNCLAMPCOLORPROC)IntGetProcAddress("glClampColor");
+ ClampColor(target, clamp);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_BeginConditionalRender(GLuint id, GLenum mode)
+ {
+ BeginConditionalRender = (PFNBEGINCONDITIONALRENDERPROC)IntGetProcAddress("glBeginConditionalRender");
+ BeginConditionalRender(id, mode);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_EndConditionalRender()
+ {
+ EndConditionalRender = (PFNENDCONDITIONALRENDERPROC)IntGetProcAddress("glEndConditionalRender");
+ EndConditionalRender();
+ }
+
+ static void CODEGEN_FUNCPTR Switch_VertexAttribIPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+ {
+ VertexAttribIPointer = (PFNVERTEXATTRIBIPOINTERPROC)IntGetProcAddress("glVertexAttribIPointer");
+ VertexAttribIPointer(index, size, type, stride, pointer);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_GetVertexAttribIiv(GLuint index, GLenum pname, GLint *params)
+ {
+ GetVertexAttribIiv = (PFNGETVERTEXATTRIBIIVPROC)IntGetProcAddress("glGetVertexAttribIiv");
+ GetVertexAttribIiv(index, pname, params);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_GetVertexAttribIuiv(GLuint index, GLenum pname, GLuint *params)
+ {
+ GetVertexAttribIuiv = (PFNGETVERTEXATTRIBIUIVPROC)IntGetProcAddress("glGetVertexAttribIuiv");
+ GetVertexAttribIuiv(index, pname, params);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_VertexAttribI1i(GLuint index, GLint x)
+ {
+ VertexAttribI1i = (PFNVERTEXATTRIBI1IPROC)IntGetProcAddress("glVertexAttribI1i");
+ VertexAttribI1i(index, x);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_VertexAttribI2i(GLuint index, GLint x, GLint y)
+ {
+ VertexAttribI2i = (PFNVERTEXATTRIBI2IPROC)IntGetProcAddress("glVertexAttribI2i");
+ VertexAttribI2i(index, x, y);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_VertexAttribI3i(GLuint index, GLint x, GLint y, GLint z)
+ {
+ VertexAttribI3i = (PFNVERTEXATTRIBI3IPROC)IntGetProcAddress("glVertexAttribI3i");
+ VertexAttribI3i(index, x, y, z);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_VertexAttribI4i(GLuint index, GLint x, GLint y, GLint z, GLint w)
+ {
+ VertexAttribI4i = (PFNVERTEXATTRIBI4IPROC)IntGetProcAddress("glVertexAttribI4i");
+ VertexAttribI4i(index, x, y, z, w);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_VertexAttribI1ui(GLuint index, GLuint x)
+ {
+ VertexAttribI1ui = (PFNVERTEXATTRIBI1UIPROC)IntGetProcAddress("glVertexAttribI1ui");
+ VertexAttribI1ui(index, x);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_VertexAttribI2ui(GLuint index, GLuint x, GLuint y)
+ {
+ VertexAttribI2ui = (PFNVERTEXATTRIBI2UIPROC)IntGetProcAddress("glVertexAttribI2ui");
+ VertexAttribI2ui(index, x, y);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_VertexAttribI3ui(GLuint index, GLuint x, GLuint y, GLuint z)
+ {
+ VertexAttribI3ui = (PFNVERTEXATTRIBI3UIPROC)IntGetProcAddress("glVertexAttribI3ui");
+ VertexAttribI3ui(index, x, y, z);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_VertexAttribI4ui(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w)
+ {
+ VertexAttribI4ui = (PFNVERTEXATTRIBI4UIPROC)IntGetProcAddress("glVertexAttribI4ui");
+ VertexAttribI4ui(index, x, y, z, w);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_VertexAttribI1iv(GLuint index, const GLint *v)
+ {
+ VertexAttribI1iv = (PFNVERTEXATTRIBI1IVPROC)IntGetProcAddress("glVertexAttribI1iv");
+ VertexAttribI1iv(index, v);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_VertexAttribI2iv(GLuint index, const GLint *v)
+ {
+ VertexAttribI2iv = (PFNVERTEXATTRIBI2IVPROC)IntGetProcAddress("glVertexAttribI2iv");
+ VertexAttribI2iv(index, v);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_VertexAttribI3iv(GLuint index, const GLint *v)
+ {
+ VertexAttribI3iv = (PFNVERTEXATTRIBI3IVPROC)IntGetProcAddress("glVertexAttribI3iv");
+ VertexAttribI3iv(index, v);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_VertexAttribI4iv(GLuint index, const GLint *v)
+ {
+ VertexAttribI4iv = (PFNVERTEXATTRIBI4IVPROC)IntGetProcAddress("glVertexAttribI4iv");
+ VertexAttribI4iv(index, v);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_VertexAttribI1uiv(GLuint index, const GLuint *v)
+ {
+ VertexAttribI1uiv = (PFNVERTEXATTRIBI1UIVPROC)IntGetProcAddress("glVertexAttribI1uiv");
+ VertexAttribI1uiv(index, v);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_VertexAttribI2uiv(GLuint index, const GLuint *v)
+ {
+ VertexAttribI2uiv = (PFNVERTEXATTRIBI2UIVPROC)IntGetProcAddress("glVertexAttribI2uiv");
+ VertexAttribI2uiv(index, v);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_VertexAttribI3uiv(GLuint index, const GLuint *v)
+ {
+ VertexAttribI3uiv = (PFNVERTEXATTRIBI3UIVPROC)IntGetProcAddress("glVertexAttribI3uiv");
+ VertexAttribI3uiv(index, v);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_VertexAttribI4uiv(GLuint index, const GLuint *v)
+ {
+ VertexAttribI4uiv = (PFNVERTEXATTRIBI4UIVPROC)IntGetProcAddress("glVertexAttribI4uiv");
+ VertexAttribI4uiv(index, v);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_VertexAttribI4bv(GLuint index, const GLbyte *v)
+ {
+ VertexAttribI4bv = (PFNVERTEXATTRIBI4BVPROC)IntGetProcAddress("glVertexAttribI4bv");
+ VertexAttribI4bv(index, v);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_VertexAttribI4sv(GLuint index, const GLshort *v)
+ {
+ VertexAttribI4sv = (PFNVERTEXATTRIBI4SVPROC)IntGetProcAddress("glVertexAttribI4sv");
+ VertexAttribI4sv(index, v);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_VertexAttribI4ubv(GLuint index, const GLubyte *v)
+ {
+ VertexAttribI4ubv = (PFNVERTEXATTRIBI4UBVPROC)IntGetProcAddress("glVertexAttribI4ubv");
+ VertexAttribI4ubv(index, v);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_VertexAttribI4usv(GLuint index, const GLushort *v)
+ {
+ VertexAttribI4usv = (PFNVERTEXATTRIBI4USVPROC)IntGetProcAddress("glVertexAttribI4usv");
+ VertexAttribI4usv(index, v);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_GetUniformuiv(GLuint program, GLint location, GLuint *params)
+ {
+ GetUniformuiv = (PFNGETUNIFORMUIVPROC)IntGetProcAddress("glGetUniformuiv");
+ GetUniformuiv(program, location, params);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_BindFragDataLocation(GLuint program, GLuint color, const GLchar *name)
+ {
+ BindFragDataLocation = (PFNBINDFRAGDATALOCATIONPROC)IntGetProcAddress("glBindFragDataLocation");
+ BindFragDataLocation(program, color, name);
+ }
+
+ static GLint CODEGEN_FUNCPTR Switch_GetFragDataLocation(GLuint program, const GLchar *name)
+ {
+ GetFragDataLocation = (PFNGETFRAGDATALOCATIONPROC)IntGetProcAddress("glGetFragDataLocation");
+ return GetFragDataLocation(program, name);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_Uniform1ui(GLint location, GLuint v0)
+ {
+ Uniform1ui = (PFNUNIFORM1UIPROC)IntGetProcAddress("glUniform1ui");
+ Uniform1ui(location, v0);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_Uniform2ui(GLint location, GLuint v0, GLuint v1)
+ {
+ Uniform2ui = (PFNUNIFORM2UIPROC)IntGetProcAddress("glUniform2ui");
+ Uniform2ui(location, v0, v1);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_Uniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2)
+ {
+ Uniform3ui = (PFNUNIFORM3UIPROC)IntGetProcAddress("glUniform3ui");
+ Uniform3ui(location, v0, v1, v2);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_Uniform4ui(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3)
+ {
+ Uniform4ui = (PFNUNIFORM4UIPROC)IntGetProcAddress("glUniform4ui");
+ Uniform4ui(location, v0, v1, v2, v3);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_Uniform1uiv(GLint location, GLsizei count, const GLuint *value)
+ {
+ Uniform1uiv = (PFNUNIFORM1UIVPROC)IntGetProcAddress("glUniform1uiv");
+ Uniform1uiv(location, count, value);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_Uniform2uiv(GLint location, GLsizei count, const GLuint *value)
+ {
+ Uniform2uiv = (PFNUNIFORM2UIVPROC)IntGetProcAddress("glUniform2uiv");
+ Uniform2uiv(location, count, value);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_Uniform3uiv(GLint location, GLsizei count, const GLuint *value)
+ {
+ Uniform3uiv = (PFNUNIFORM3UIVPROC)IntGetProcAddress("glUniform3uiv");
+ Uniform3uiv(location, count, value);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_Uniform4uiv(GLint location, GLsizei count, const GLuint *value)
+ {
+ Uniform4uiv = (PFNUNIFORM4UIVPROC)IntGetProcAddress("glUniform4uiv");
+ Uniform4uiv(location, count, value);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_TexParameterIiv(GLenum target, GLenum pname, const GLint *params)
+ {
+ TexParameterIiv = (PFNTEXPARAMETERIIVPROC)IntGetProcAddress("glTexParameterIiv");
+ TexParameterIiv(target, pname, params);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_TexParameterIuiv(GLenum target, GLenum pname, const GLuint *params)
+ {
+ TexParameterIuiv = (PFNTEXPARAMETERIUIVPROC)IntGetProcAddress("glTexParameterIuiv");
+ TexParameterIuiv(target, pname, params);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_GetTexParameterIiv(GLenum target, GLenum pname, GLint *params)
+ {
+ GetTexParameterIiv = (PFNGETTEXPARAMETERIIVPROC)IntGetProcAddress("glGetTexParameterIiv");
+ GetTexParameterIiv(target, pname, params);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_GetTexParameterIuiv(GLenum target, GLenum pname, GLuint *params)
+ {
+ GetTexParameterIuiv = (PFNGETTEXPARAMETERIUIVPROC)IntGetProcAddress("glGetTexParameterIuiv");
+ GetTexParameterIuiv(target, pname, params);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_ClearBufferiv(GLenum buffer, GLint drawbuffer, const GLint *value)
+ {
+ ClearBufferiv = (PFNCLEARBUFFERIVPROC)IntGetProcAddress("glClearBufferiv");
+ ClearBufferiv(buffer, drawbuffer, value);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_ClearBufferuiv(GLenum buffer, GLint drawbuffer, const GLuint *value)
+ {
+ ClearBufferuiv = (PFNCLEARBUFFERUIVPROC)IntGetProcAddress("glClearBufferuiv");
+ ClearBufferuiv(buffer, drawbuffer, value);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_ClearBufferfv(GLenum buffer, GLint drawbuffer, const GLfloat *value)
+ {
+ ClearBufferfv = (PFNCLEARBUFFERFVPROC)IntGetProcAddress("glClearBufferfv");
+ ClearBufferfv(buffer, drawbuffer, value);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_ClearBufferfi(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil)
+ {
+ ClearBufferfi = (PFNCLEARBUFFERFIPROC)IntGetProcAddress("glClearBufferfi");
+ ClearBufferfi(buffer, drawbuffer, depth, stencil);
+ }
+
+ static const GLubyte * CODEGEN_FUNCPTR Switch_GetStringi(GLenum name, GLuint index)
+ {
+ GetStringi = (PFNGETSTRINGIPROC)IntGetProcAddress("glGetStringi");
+ return GetStringi(name, index);
+ }
+
+ // Extension: ARB_uniform_buffer_object
+
+ static void CODEGEN_FUNCPTR Switch_GetUniformIndices(GLuint program, GLsizei uniformCount, const GLchar* const *uniformNames, GLuint *uniformIndices)
+ {
+ GetUniformIndices = (PFNGETUNIFORMINDICESPROC)IntGetProcAddress("glGetUniformIndices");
+ GetUniformIndices(program, uniformCount, uniformNames, uniformIndices);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_GetActiveUniformsiv(GLuint program, GLsizei uniformCount, const GLuint *uniformIndices, GLenum pname, GLint *params)
+ {
+ GetActiveUniformsiv = (PFNGETACTIVEUNIFORMSIVPROC)IntGetProcAddress("glGetActiveUniformsiv");
+ GetActiveUniformsiv(program, uniformCount, uniformIndices, pname, params);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_GetActiveUniformName(GLuint program, GLuint uniformIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformName)
+ {
+ GetActiveUniformName = (PFNGETACTIVEUNIFORMNAMEPROC)IntGetProcAddress("glGetActiveUniformName");
+ GetActiveUniformName(program, uniformIndex, bufSize, length, uniformName);
+ }
+
+ static GLuint CODEGEN_FUNCPTR Switch_GetUniformBlockIndex(GLuint program, const GLchar *uniformBlockName)
+ {
+ GetUniformBlockIndex = (PFNGETUNIFORMBLOCKINDEXPROC)IntGetProcAddress("glGetUniformBlockIndex");
+ return GetUniformBlockIndex(program, uniformBlockName);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_GetActiveUniformBlockiv(GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint *params)
+ {
+ GetActiveUniformBlockiv = (PFNGETACTIVEUNIFORMBLOCKIVPROC)IntGetProcAddress("glGetActiveUniformBlockiv");
+ GetActiveUniformBlockiv(program, uniformBlockIndex, pname, params);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_GetActiveUniformBlockName(GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformBlockName)
+ {
+ GetActiveUniformBlockName = (PFNGETACTIVEUNIFORMBLOCKNAMEPROC)IntGetProcAddress("glGetActiveUniformBlockName");
+ GetActiveUniformBlockName(program, uniformBlockIndex, bufSize, length, uniformBlockName);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_UniformBlockBinding(GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding)
+ {
+ UniformBlockBinding = (PFNUNIFORMBLOCKBINDINGPROC)IntGetProcAddress("glUniformBlockBinding");
+ UniformBlockBinding(program, uniformBlockIndex, uniformBlockBinding);
+ }
+
+ // Extension: ARB_copy_buffer
+
+ static void CODEGEN_FUNCPTR Switch_CopyBufferSubData(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size)
+ {
+ CopyBufferSubData = (PFNCOPYBUFFERSUBDATAPROC)IntGetProcAddress("glCopyBufferSubData");
+ CopyBufferSubData(readTarget, writeTarget, readOffset, writeOffset, size);
+ }
+
+ // Extension: 3.1
+
+ static void CODEGEN_FUNCPTR Switch_DrawArraysInstanced(GLenum mode, GLint first, GLsizei count, GLsizei instancecount)
+ {
+ DrawArraysInstanced = (PFNDRAWARRAYSINSTANCEDPROC)IntGetProcAddress("glDrawArraysInstanced");
+ DrawArraysInstanced(mode, first, count, instancecount);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_DrawElementsInstanced(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount)
+ {
+ DrawElementsInstanced = (PFNDRAWELEMENTSINSTANCEDPROC)IntGetProcAddress("glDrawElementsInstanced");
+ DrawElementsInstanced(mode, count, type, indices, instancecount);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_TexBuffer(GLenum target, GLenum internalformat, GLuint buffer)
+ {
+ TexBuffer = (PFNTEXBUFFERPROC)IntGetProcAddress("glTexBuffer");
+ TexBuffer(target, internalformat, buffer);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_PrimitiveRestartIndex(GLuint index)
+ {
+ PrimitiveRestartIndex = (PFNPRIMITIVERESTARTINDEXPROC)IntGetProcAddress("glPrimitiveRestartIndex");
+ PrimitiveRestartIndex(index);
+ }
+
+ // Legacy
+
+ static void CODEGEN_FUNCPTR Switch_EnableClientState(GLenum cap)
+ {
+ EnableClientState = (PFNENABLECLIENTSTATEPROC)IntGetProcAddress("glEnableClientState");
+ EnableClientState(cap);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_DisableClientState(GLenum cap)
+ {
+ DisableClientState = (PFNDISABLECLIENTSTATEPROC)IntGetProcAddress("glDisableClientState");
+ DisableClientState(cap);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_VertexPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *ptr)
+ {
+ VertexPointer = (PFNVERTEXPOINTERPROC)IntGetProcAddress("glVertexPointer");
+ VertexPointer(size, type, stride, ptr);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_NormalPointer(GLenum type, GLsizei stride, const GLvoid *ptr)
+ {
+ NormalPointer = (PFNNORMALPOINTERPROC)IntGetProcAddress("glNormalPointer");
+ NormalPointer(type, stride, ptr);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_ColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *ptr)
+ {
+ ColorPointer = (PFNCOLORPOINTERPROC)IntGetProcAddress("glColorPointer");
+ ColorPointer(size, type, stride, ptr);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_TexCoordPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *ptr)
+ {
+ TexCoordPointer = (PFNTEXCOORDPOINTERPROC)IntGetProcAddress("glTexCoordPointer");
+ TexCoordPointer(size, type, stride, ptr);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_TexEnvi(GLenum target, GLenum pname, GLint param)
+ {
+ TexEnvi = (PFNTEXENVIPROC)IntGetProcAddress("glTexEnvi");
+ TexEnvi(target, pname, param);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_MatrixMode(GLenum mode)
+ {
+ MatrixMode = (PFNMATRIXMODEPROC)IntGetProcAddress("glMatrixMode");
+ MatrixMode(mode);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_LoadIdentity(void)
+ {
+ LoadIdentity = (PFNLOADIDENTITYPROC)IntGetProcAddress("glLoadIdentity");
+ LoadIdentity();
+ }
+
+ static void CODEGEN_FUNCPTR Switch_Ortho(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble near_val, GLdouble far_val)
+ {
+ Ortho = (PFNORTHOPROC)IntGetProcAddress("glOrtho");
+ Ortho(left, right, bottom, top, near_val, far_val);
+ }
+
+ static void CODEGEN_FUNCPTR Switch_Color3d(GLdouble red, GLdouble green, GLdouble blue)
+ {
+ Color3d = (PFNCOLOR3DPROC)IntGetProcAddress("glColor3d");
+ Color3d(red, green, blue);
+ }
+
+ struct InitializeVariables
+ {
+ InitializeVariables()
+ {
+ // Extension: 1.1
+ CullFace = Switch_CullFace;
+ FrontFace = Switch_FrontFace;
+ Hint = Switch_Hint;
+ LineWidth = Switch_LineWidth;
+ PointSize = Switch_PointSize;
+ PolygonMode = Switch_PolygonMode;
+ Scissor = Switch_Scissor;
+ TexParameterf = Switch_TexParameterf;
+ TexParameterfv = Switch_TexParameterfv;
+ TexParameteri = Switch_TexParameteri;
+ TexParameteriv = Switch_TexParameteriv;
+ TexImage1D = Switch_TexImage1D;
+ TexImage2D = Switch_TexImage2D;
+ DrawBuffer = Switch_DrawBuffer;
+ Clear = Switch_Clear;
+ ClearColor = Switch_ClearColor;
+ ClearStencil = Switch_ClearStencil;
+ ClearDepth = Switch_ClearDepth;
+ StencilMask = Switch_StencilMask;
+ ColorMask = Switch_ColorMask;
+ DepthMask = Switch_DepthMask;
+ Disable = Switch_Disable;
+ Enable = Switch_Enable;
+ Finish = Switch_Finish;
+ Flush = Switch_Flush;
+ BlendFunc = Switch_BlendFunc;
+ LogicOp = Switch_LogicOp;
+ StencilFunc = Switch_StencilFunc;
+ StencilOp = Switch_StencilOp;
+ DepthFunc = Switch_DepthFunc;
+ PixelStoref = Switch_PixelStoref;
+ PixelStorei = Switch_PixelStorei;
+ ReadBuffer = Switch_ReadBuffer;
+ ReadPixels = Switch_ReadPixels;
+ GetBooleanv = Switch_GetBooleanv;
+ GetDoublev = Switch_GetDoublev;
+ GetError = Switch_GetError;
+ GetFloatv = Switch_GetFloatv;
+ GetIntegerv = Switch_GetIntegerv;
+ GetString = Switch_GetString;
+ GetTexImage = Switch_GetTexImage;
+ GetTexParameterfv = Switch_GetTexParameterfv;
+ GetTexParameteriv = Switch_GetTexParameteriv;
+ GetTexLevelParameterfv = Switch_GetTexLevelParameterfv;
+ GetTexLevelParameteriv = Switch_GetTexLevelParameteriv;
+ IsEnabled = Switch_IsEnabled;
+ DepthRange = Switch_DepthRange;
+ Viewport = Switch_Viewport;
+ DrawArrays = Switch_DrawArrays;
+ DrawElements = Switch_DrawElements;
+ GetPointerv = Switch_GetPointerv;
+ PolygonOffset = Switch_PolygonOffset;
+ CopyTexImage1D = Switch_CopyTexImage1D;
+ CopyTexImage2D = Switch_CopyTexImage2D;
+ CopyTexSubImage1D = Switch_CopyTexSubImage1D;
+ CopyTexSubImage2D = Switch_CopyTexSubImage2D;
+ TexSubImage1D = Switch_TexSubImage1D;
+ TexSubImage2D = Switch_TexSubImage2D;
+ BindTexture = Switch_BindTexture;
+ DeleteTextures = Switch_DeleteTextures;
+ GenTextures = Switch_GenTextures;
+ IsTexture = Switch_IsTexture;
+ Indexub = Switch_Indexub;
+ Indexubv = Switch_Indexubv;
+
+ // Extension: 1.2
+ BlendColor = Switch_BlendColor;
+ BlendEquation = Switch_BlendEquation;
+ DrawRangeElements = Switch_DrawRangeElements;
+ TexSubImage3D = Switch_TexSubImage3D;
+ CopyTexSubImage3D = Switch_CopyTexSubImage3D;
+
+ // Extension: 1.3
+ ActiveTexture = Switch_ActiveTexture;
+ SampleCoverage = Switch_SampleCoverage;
+ CompressedTexImage3D = Switch_CompressedTexImage3D;
+ CompressedTexImage2D = Switch_CompressedTexImage2D;
+ CompressedTexImage1D = Switch_CompressedTexImage1D;
+ CompressedTexSubImage3D = Switch_CompressedTexSubImage3D;
+ CompressedTexSubImage2D = Switch_CompressedTexSubImage2D;
+ CompressedTexSubImage1D = Switch_CompressedTexSubImage1D;
+ GetCompressedTexImage = Switch_GetCompressedTexImage;
+
+ // Extension: 1.4
+ BlendFuncSeparate = Switch_BlendFuncSeparate;
+ MultiDrawArrays = Switch_MultiDrawArrays;
+ MultiDrawElements = Switch_MultiDrawElements;
+ PointParameterf = Switch_PointParameterf;
+ PointParameterfv = Switch_PointParameterfv;
+ PointParameteri = Switch_PointParameteri;
+ PointParameteriv = Switch_PointParameteriv;
+
+ // Extension: 1.5
+ GenQueries = Switch_GenQueries;
+ DeleteQueries = Switch_DeleteQueries;
+ IsQuery = Switch_IsQuery;
+ BeginQuery = Switch_BeginQuery;
+ EndQuery = Switch_EndQuery;
+ GetQueryiv = Switch_GetQueryiv;
+ GetQueryObjectiv = Switch_GetQueryObjectiv;
+ GetQueryObjectuiv = Switch_GetQueryObjectuiv;
+ BindBuffer = Switch_BindBuffer;
+ DeleteBuffers = Switch_DeleteBuffers;
+ GenBuffers = Switch_GenBuffers;
+ IsBuffer = Switch_IsBuffer;
+ BufferData = Switch_BufferData;
+ BufferSubData = Switch_BufferSubData;
+ GetBufferSubData = Switch_GetBufferSubData;
+ MapBuffer = Switch_MapBuffer;
+ UnmapBuffer = Switch_UnmapBuffer;
+ GetBufferParameteriv = Switch_GetBufferParameteriv;
+ GetBufferPointerv = Switch_GetBufferPointerv;
+
+ // Extension: 2.0
+ BlendEquationSeparate = Switch_BlendEquationSeparate;
+ DrawBuffers = Switch_DrawBuffers;
+ StencilOpSeparate = Switch_StencilOpSeparate;
+ StencilFuncSeparate = Switch_StencilFuncSeparate;
+ StencilMaskSeparate = Switch_StencilMaskSeparate;
+ AttachShader = Switch_AttachShader;
+ BindAttribLocation = Switch_BindAttribLocation;
+ CompileShader = Switch_CompileShader;
+ CreateProgram = Switch_CreateProgram;
+ CreateShader = Switch_CreateShader;
+ DeleteProgram = Switch_DeleteProgram;
+ DeleteShader = Switch_DeleteShader;
+ DetachShader = Switch_DetachShader;
+ DisableVertexAttribArray = Switch_DisableVertexAttribArray;
+ EnableVertexAttribArray = Switch_EnableVertexAttribArray;
+ GetActiveAttrib = Switch_GetActiveAttrib;
+ GetActiveUniform = Switch_GetActiveUniform;
+ GetAttachedShaders = Switch_GetAttachedShaders;
+ GetAttribLocation = Switch_GetAttribLocation;
+ GetProgramiv = Switch_GetProgramiv;
+ GetProgramInfoLog = Switch_GetProgramInfoLog;
+ GetShaderiv = Switch_GetShaderiv;
+ GetShaderInfoLog = Switch_GetShaderInfoLog;
+ GetShaderSource = Switch_GetShaderSource;
+ GetUniformLocation = Switch_GetUniformLocation;
+ GetUniformfv = Switch_GetUniformfv;
+ GetUniformiv = Switch_GetUniformiv;
+ GetVertexAttribdv = Switch_GetVertexAttribdv;
+ GetVertexAttribfv = Switch_GetVertexAttribfv;
+ GetVertexAttribiv = Switch_GetVertexAttribiv;
+ GetVertexAttribPointerv = Switch_GetVertexAttribPointerv;
+ IsProgram = Switch_IsProgram;
+ IsShader = Switch_IsShader;
+ LinkProgram = Switch_LinkProgram;
+ ShaderSource = Switch_ShaderSource;
+ UseProgram = Switch_UseProgram;
+ Uniform1f = Switch_Uniform1f;
+ Uniform2f = Switch_Uniform2f;
+ Uniform3f = Switch_Uniform3f;
+ Uniform4f = Switch_Uniform4f;
+ Uniform1i = Switch_Uniform1i;
+ Uniform2i = Switch_Uniform2i;
+ Uniform3i = Switch_Uniform3i;
+ Uniform4i = Switch_Uniform4i;
+ Uniform1fv = Switch_Uniform1fv;
+ Uniform2fv = Switch_Uniform2fv;
+ Uniform3fv = Switch_Uniform3fv;
+ Uniform4fv = Switch_Uniform4fv;
+ Uniform1iv = Switch_Uniform1iv;
+ Uniform2iv = Switch_Uniform2iv;
+ Uniform3iv = Switch_Uniform3iv;
+ Uniform4iv = Switch_Uniform4iv;
+ UniformMatrix2fv = Switch_UniformMatrix2fv;
+ UniformMatrix3fv = Switch_UniformMatrix3fv;
+ UniformMatrix4fv = Switch_UniformMatrix4fv;
+ ValidateProgram = Switch_ValidateProgram;
+ VertexAttribPointer = Switch_VertexAttribPointer;
+
+ // Extension: 2.1
+ UniformMatrix2x3fv = Switch_UniformMatrix2x3fv;
+ UniformMatrix3x2fv = Switch_UniformMatrix3x2fv;
+ UniformMatrix2x4fv = Switch_UniformMatrix2x4fv;
+ UniformMatrix4x2fv = Switch_UniformMatrix4x2fv;
+ UniformMatrix3x4fv = Switch_UniformMatrix3x4fv;
+ UniformMatrix4x3fv = Switch_UniformMatrix4x3fv;
+
+ // Extension: ARB_vertex_array_object
+ BindVertexArray = Switch_BindVertexArray;
+ DeleteVertexArrays = Switch_DeleteVertexArrays;
+ GenVertexArrays = Switch_GenVertexArrays;
+ IsVertexArray = Switch_IsVertexArray;
+
+ // Extension: ARB_map_buffer_range
+ MapBufferRange = Switch_MapBufferRange;
+ FlushMappedBufferRange = Switch_FlushMappedBufferRange;
+
+ // Extension: ARB_framebuffer_object
+ IsRenderbuffer = Switch_IsRenderbuffer;
+ BindRenderbuffer = Switch_BindRenderbuffer;
+ DeleteRenderbuffers = Switch_DeleteRenderbuffers;
+ GenRenderbuffers = Switch_GenRenderbuffers;
+ RenderbufferStorage = Switch_RenderbufferStorage;
+ GetRenderbufferParameteriv = Switch_GetRenderbufferParameteriv;
+ IsFramebuffer = Switch_IsFramebuffer;
+ BindFramebuffer = Switch_BindFramebuffer;
+ DeleteFramebuffers = Switch_DeleteFramebuffers;
+ GenFramebuffers = Switch_GenFramebuffers;
+ CheckFramebufferStatus = Switch_CheckFramebufferStatus;
+ FramebufferTexture1D = Switch_FramebufferTexture1D;
+ FramebufferTexture2D = Switch_FramebufferTexture2D;
+ FramebufferTexture3D = Switch_FramebufferTexture3D;
+ FramebufferRenderbuffer = Switch_FramebufferRenderbuffer;
+ GetFramebufferAttachmentParameteriv = Switch_GetFramebufferAttachmentParameteriv;
+ GenerateMipmap = Switch_GenerateMipmap;
+ BlitFramebuffer = Switch_BlitFramebuffer;
+ RenderbufferStorageMultisample = Switch_RenderbufferStorageMultisample;
+ FramebufferTextureLayer = Switch_FramebufferTextureLayer;
+
+ // Extension: 3.0
+ ColorMaski = Switch_ColorMaski;
+ GetBooleani_v = Switch_GetBooleani_v;
+ GetIntegeri_v = Switch_GetIntegeri_v;
+ Enablei = Switch_Enablei;
+ Disablei = Switch_Disablei;
+ IsEnabledi = Switch_IsEnabledi;
+ BeginTransformFeedback = Switch_BeginTransformFeedback;
+ EndTransformFeedback = Switch_EndTransformFeedback;
+ BindBufferRange = Switch_BindBufferRange;
+ BindBufferBase = Switch_BindBufferBase;
+ TransformFeedbackVaryings = Switch_TransformFeedbackVaryings;
+ GetTransformFeedbackVarying = Switch_GetTransformFeedbackVarying;
+ ClampColor = Switch_ClampColor;
+ BeginConditionalRender = Switch_BeginConditionalRender;
+ EndConditionalRender = Switch_EndConditionalRender;
+ VertexAttribIPointer = Switch_VertexAttribIPointer;
+ GetVertexAttribIiv = Switch_GetVertexAttribIiv;
+ GetVertexAttribIuiv = Switch_GetVertexAttribIuiv;
+ VertexAttribI1i = Switch_VertexAttribI1i;
+ VertexAttribI2i = Switch_VertexAttribI2i;
+ VertexAttribI3i = Switch_VertexAttribI3i;
+ VertexAttribI4i = Switch_VertexAttribI4i;
+ VertexAttribI1ui = Switch_VertexAttribI1ui;
+ VertexAttribI2ui = Switch_VertexAttribI2ui;
+ VertexAttribI3ui = Switch_VertexAttribI3ui;
+ VertexAttribI4ui = Switch_VertexAttribI4ui;
+ VertexAttribI1iv = Switch_VertexAttribI1iv;
+ VertexAttribI2iv = Switch_VertexAttribI2iv;
+ VertexAttribI3iv = Switch_VertexAttribI3iv;
+ VertexAttribI4iv = Switch_VertexAttribI4iv;
+ VertexAttribI1uiv = Switch_VertexAttribI1uiv;
+ VertexAttribI2uiv = Switch_VertexAttribI2uiv;
+ VertexAttribI3uiv = Switch_VertexAttribI3uiv;
+ VertexAttribI4uiv = Switch_VertexAttribI4uiv;
+ VertexAttribI4bv = Switch_VertexAttribI4bv;
+ VertexAttribI4sv = Switch_VertexAttribI4sv;
+ VertexAttribI4ubv = Switch_VertexAttribI4ubv;
+ VertexAttribI4usv = Switch_VertexAttribI4usv;
+ GetUniformuiv = Switch_GetUniformuiv;
+ BindFragDataLocation = Switch_BindFragDataLocation;
+ GetFragDataLocation = Switch_GetFragDataLocation;
+ Uniform1ui = Switch_Uniform1ui;
+ Uniform2ui = Switch_Uniform2ui;
+ Uniform3ui = Switch_Uniform3ui;
+ Uniform4ui = Switch_Uniform4ui;
+ Uniform1uiv = Switch_Uniform1uiv;
+ Uniform2uiv = Switch_Uniform2uiv;
+ Uniform3uiv = Switch_Uniform3uiv;
+ Uniform4uiv = Switch_Uniform4uiv;
+ TexParameterIiv = Switch_TexParameterIiv;
+ TexParameterIuiv = Switch_TexParameterIuiv;
+ GetTexParameterIiv = Switch_GetTexParameterIiv;
+ GetTexParameterIuiv = Switch_GetTexParameterIuiv;
+ ClearBufferiv = Switch_ClearBufferiv;
+ ClearBufferuiv = Switch_ClearBufferuiv;
+ ClearBufferfv = Switch_ClearBufferfv;
+ ClearBufferfi = Switch_ClearBufferfi;
+ GetStringi = Switch_GetStringi;
+
+ // Extension: ARB_uniform_buffer_object
+ GetUniformIndices = Switch_GetUniformIndices;
+ GetActiveUniformsiv = Switch_GetActiveUniformsiv;
+ GetActiveUniformName = Switch_GetActiveUniformName;
+ GetUniformBlockIndex = Switch_GetUniformBlockIndex;
+ GetActiveUniformBlockiv = Switch_GetActiveUniformBlockiv;
+ GetActiveUniformBlockName = Switch_GetActiveUniformBlockName;
+ UniformBlockBinding = Switch_UniformBlockBinding;
+
+ // Extension: ARB_copy_buffer
+ CopyBufferSubData = Switch_CopyBufferSubData;
+
+ // Extension: 3.1
+ DrawArraysInstanced = Switch_DrawArraysInstanced;
+ DrawElementsInstanced = Switch_DrawElementsInstanced;
+ TexBuffer = Switch_TexBuffer;
+ PrimitiveRestartIndex = Switch_PrimitiveRestartIndex;
+
+ // Legacy
+ EnableClientState = Switch_EnableClientState;
+ DisableClientState = Switch_DisableClientState;
+ VertexPointer = Switch_VertexPointer;
+ NormalPointer = Switch_NormalPointer;
+ ColorPointer = Switch_ColorPointer;
+ TexCoordPointer = Switch_TexCoordPointer;
+ TexEnvi = Switch_TexEnvi;
+ MatrixMode = Switch_MatrixMode;
+ LoadIdentity = Switch_LoadIdentity;
+ Ortho = Switch_Ortho;
+ Color3d = Switch_Color3d;
+ }
+ };
+
+ InitializeVariables g_initVariables;
}
#endif
#else
#define APIENTRY
#endif
-#endif /*APIENTRY*/
+#endif // APIENTRY
#ifndef CODEGEN_FUNCPTR
#define CODEGEN_REMOVE_FUNCPTR
#else
#define CODEGEN_FUNCPTR
#endif
-#endif /*CODEGEN_FUNCPTR*/
-
-#ifndef GLAPI
- #define GLAPI extern
-#endif
-
+#endif // CODEGEN_FUNCPTR
#ifndef GL_LOAD_GEN_BASIC_OPENGL_TYPEDEFS
#define GL_LOAD_GEN_BASIC_OPENGL_TYPEDEFS
-
- typedef unsigned int GLenum;
- typedef unsigned char GLboolean;
- typedef unsigned int GLbitfield;
- typedef signed char GLbyte;
- typedef short GLshort;
- typedef int GLint;
- typedef int GLsizei;
- typedef unsigned char GLubyte;
- typedef unsigned short GLushort;
- typedef unsigned int GLuint;
- typedef float GLfloat;
- typedef float GLclampf;
- typedef double GLdouble;
- typedef double GLclampd;
- #define GLvoid void
-
-#endif /*GL_LOAD_GEN_BASIC_OPENGL_TYPEDEFS*/
+ typedef unsigned int GLenum;
+ typedef unsigned char GLboolean;
+ typedef unsigned int GLbitfield;
+ typedef signed char GLbyte;
+ typedef short GLshort;
+ typedef int GLint;
+ typedef int GLsizei;
+ typedef unsigned char GLubyte;
+ typedef unsigned short GLushort;
+ typedef unsigned int GLuint;
+ typedef float GLfloat;
+ typedef float GLclampf;
+ typedef double GLdouble;
+ typedef double GLclampd;
+ #define GLvoid void
+#endif // GL_LOAD_GEN_BASIC_OPENGL_TYPEDEFS
#include <stddef.h>
+
#ifndef GL_VERSION_2_0
- /* GL type for program/shader text */
- typedef char GLchar;
+ // GL type for program/shader text
+ typedef char GLchar;
#endif
+
#ifndef GL_VERSION_1_5
- /* GL types for handling large vertex buffer objects */
- typedef ptrdiff_t GLintptr;
- typedef ptrdiff_t GLsizeiptr;
+ // GL types for handling large vertex buffer objects
+ typedef ptrdiff_t GLintptr;
+ typedef ptrdiff_t GLsizeiptr;
#endif
+
#ifndef GL_ARB_vertex_buffer_object
- /* GL types for handling large vertex buffer objects */
- typedef ptrdiff_t GLintptrARB;
- typedef ptrdiff_t GLsizeiptrARB;
+ // GL types for handling large vertex buffer objects
+ typedef ptrdiff_t GLintptrARB;
+ typedef ptrdiff_t GLsizeiptrARB;
#endif
+
#ifndef GL_ARB_shader_objects
- /* GL types for program/shader text and shader object handles */
- typedef char GLcharARB;
- typedef unsigned int GLhandleARB;
+ // GL types for program/shader text and shader object handles
+ typedef char GLcharARB;
+ typedef unsigned int GLhandleARB;
#endif
-/* GL type for "half" precision (s10e5) float data in host memory */
+
+// GL type for "half" precision (s10e5) float data in host memory
#ifndef GL_ARB_half_float_pixel
- typedef unsigned short GLhalfARB;
+ typedef unsigned short GLhalfARB;
#endif
#ifndef GL_NV_half_float
- typedef unsigned short GLhalfNV;
+ typedef unsigned short GLhalfNV;
#endif
+
#ifndef GLEXT_64_TYPES_DEFINED
- /* This code block is duplicated in glxext.h, so must be protected */
- #define GLEXT_64_TYPES_DEFINED
- /* Define int32_t, int64_t, and uint64_t types for UST/MSC */
- /* (as used in the GL_EXT_timer_query extension). */
- #if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
- #include <inttypes.h>
- #elif defined(__sun__) || defined(__digital__)
- #include <inttypes.h>
- #if defined(__STDC__)
- #if defined(__arch64__) || defined(_LP64)
- typedef long int int64_t;
- typedef unsigned long int uint64_t;
- #else
+ // This code block is duplicated in glxext.h, so must be protected
+ #define GLEXT_64_TYPES_DEFINED
+
+ // Define int32_t, int64_t, and uint64_t types for UST/MSC
+ // (as used in the GL_EXT_timer_query extension)
+ #if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
+ #include <inttypes.h>
+ #elif defined(__sun__) || defined(__digital__)
+ #include <inttypes.h>
+ #if defined(__STDC__)
+ #if defined(__arch64__) || defined(_LP64)
+ typedef long int int64_t;
+ typedef unsigned long int uint64_t;
+ #else
+ typedef long long int int64_t;
+ typedef unsigned long long int uint64_t;
+ #endif // __arch64__
+ #endif // __STDC__
+ #elif defined( __VMS ) || defined(__sgi)
+ #include <inttypes.h>
+ #elif defined(__SCO__) || defined(__USLC__)
+ #include <stdint.h>
+ #elif defined(__UNIXOS2__) || defined(__SOL64__)
+ typedef long int int32_t;
typedef long long int int64_t;
typedef unsigned long long int uint64_t;
- #endif /* __arch64__ */
- #endif /* __STDC__ */
- #elif defined( __VMS ) || defined(__sgi)
- #include <inttypes.h>
- #elif defined(__SCO__) || defined(__USLC__)
- #include <stdint.h>
- #elif defined(__UNIXOS2__) || defined(__SOL64__)
- typedef long int int32_t;
- typedef long long int int64_t;
- typedef unsigned long long int uint64_t;
- #elif defined(_WIN32) && defined(__GNUC__)
- #include <stdint.h>
- #elif defined(_WIN32)
- typedef __int32 int32_t;
- typedef __int64 int64_t;
- typedef unsigned __int64 uint64_t;
+ #elif defined(_WIN32) && defined(__GNUC__)
+ #include <stdint.h>
+ #elif defined(_WIN32)
+ typedef __int32 int32_t;
+ typedef __int64 int64_t;
+ typedef unsigned __int64 uint64_t;
#else
- /* Fallback if nothing above works */
- #include <inttypes.h>
- #endif
+ // Fallback if nothing above works
+ #include <inttypes.h>
+ #endif
#endif
+
#ifndef GL_EXT_timer_query
- typedef int64_t GLint64EXT;
- typedef uint64_t GLuint64EXT;
+ typedef int64_t GLint64EXT;
+ typedef uint64_t GLuint64EXT;
#endif
+
#ifndef GL_ARB_sync
- typedef int64_t GLint64;
- typedef uint64_t GLuint64;
- typedef struct __GLsync *GLsync;
+ typedef int64_t GLint64;
+ typedef uint64_t GLuint64;
+ typedef struct __GLsync *GLsync;
#endif
+
#ifndef GL_ARB_cl_event
- /* These incomplete types let us declare types compatible with OpenCL's cl_context and cl_event */
- struct _cl_context;
- struct _cl_event;
+ // These incomplete types let us declare types compatible with OpenCL's cl_context and cl_event
+ struct _cl_context;
+ struct _cl_event;
#endif
+
#ifndef GL_ARB_debug_output
- typedef void (APIENTRY *GLDEBUGPROCARB)(GLenum source,GLenum type,GLuint id,GLenum severity,GLsizei length,const GLchar *message,GLvoid *userParam);
+ typedef void (APIENTRY *GLDEBUGPROCARB)(GLenum source,GLenum type,GLuint id,GLenum severity,GLsizei length,const GLchar *message,GLvoid *userParam);
#endif
+
#ifndef GL_AMD_debug_output
- typedef void (APIENTRY *GLDEBUGPROCAMD)(GLuint id,GLenum category,GLenum severity,GLsizei length,const GLchar *message,GLvoid *userParam);
+ typedef void (APIENTRY *GLDEBUGPROCAMD)(GLuint id,GLenum category,GLenum severity,GLsizei length,const GLchar *message,GLvoid *userParam);
#endif
+
#ifndef GL_KHR_debug
- typedef void (APIENTRY *GLDEBUGPROC)(GLenum source,GLenum type,GLuint id,GLenum severity,GLsizei length,const GLchar *message,GLvoid *userParam);
+ typedef void (APIENTRY *GLDEBUGPROC)(GLenum source,GLenum type,GLuint id,GLenum severity,GLsizei length,const GLchar *message,GLvoid *userParam);
#endif
+
#ifndef GL_NV_vdpau_interop
- typedef GLintptr GLvdpauSurfaceNV;
+ typedef GLintptr GLvdpauSurfaceNV;
#endif
namespace gl
{
- /////////////////////////
- // Extension Variables
- namespace exts
- {
- }
-
- enum
- {
- // Version: 1.1
- DEPTH_BUFFER_BIT = 0x00000100,
- STENCIL_BUFFER_BIT = 0x00000400,
- COLOR_BUFFER_BIT = 0x00004000,
- FALSE_ = 0,
- TRUE_ = 1,
- POINTS = 0x0000,
- LINES = 0x0001,
- LINE_LOOP = 0x0002,
- LINE_STRIP = 0x0003,
- TRIANGLES = 0x0004,
- TRIANGLE_STRIP = 0x0005,
- TRIANGLE_FAN = 0x0006,
- QUADS = 0x0007,
- NEVER = 0x0200,
- LESS = 0x0201,
- EQUAL = 0x0202,
- LEQUAL = 0x0203,
- GREATER = 0x0204,
- NOTEQUAL = 0x0205,
- GEQUAL = 0x0206,
- ALWAYS = 0x0207,
- ZERO = 0,
- ONE = 1,
- SRC_COLOR = 0x0300,
- ONE_MINUS_SRC_COLOR = 0x0301,
- SRC_ALPHA = 0x0302,
- ONE_MINUS_SRC_ALPHA = 0x0303,
- DST_ALPHA = 0x0304,
- ONE_MINUS_DST_ALPHA = 0x0305,
- DST_COLOR = 0x0306,
- ONE_MINUS_DST_COLOR = 0x0307,
- SRC_ALPHA_SATURATE = 0x0308,
- NONE = 0,
- FRONT_LEFT = 0x0400,
- FRONT_RIGHT = 0x0401,
- BACK_LEFT = 0x0402,
- BACK_RIGHT = 0x0403,
- FRONT = 0x0404,
- BACK = 0x0405,
- LEFT = 0x0406,
- RIGHT = 0x0407,
- FRONT_AND_BACK = 0x0408,
- NO_ERROR_ = 0,
- INVALID_ENUM = 0x0500,
- INVALID_VALUE = 0x0501,
- INVALID_OPERATION = 0x0502,
- OUT_OF_MEMORY = 0x0505,
- CW = 0x0900,
- CCW = 0x0901,
- POINT_SIZE = 0x0B11,
- POINT_SIZE_RANGE = 0x0B12,
- POINT_SIZE_GRANULARITY = 0x0B13,
- LINE_SMOOTH = 0x0B20,
- LINE_WIDTH = 0x0B21,
- LINE_WIDTH_RANGE = 0x0B22,
- LINE_WIDTH_GRANULARITY = 0x0B23,
- POLYGON_MODE = 0x0B40,
- POLYGON_SMOOTH = 0x0B41,
- CULL_FACE = 0x0B44,
- CULL_FACE_MODE = 0x0B45,
- FRONT_FACE = 0x0B46,
- DEPTH_RANGE = 0x0B70,
- DEPTH_TEST = 0x0B71,
- DEPTH_WRITEMASK = 0x0B72,
- DEPTH_CLEAR_VALUE = 0x0B73,
- DEPTH_FUNC = 0x0B74,
- STENCIL_TEST = 0x0B90,
- STENCIL_CLEAR_VALUE = 0x0B91,
- STENCIL_FUNC = 0x0B92,
- STENCIL_VALUE_MASK = 0x0B93,
- STENCIL_FAIL = 0x0B94,
- STENCIL_PASS_DEPTH_FAIL = 0x0B95,
- STENCIL_PASS_DEPTH_PASS = 0x0B96,
- STENCIL_REF = 0x0B97,
- STENCIL_WRITEMASK = 0x0B98,
- VIEWPORT = 0x0BA2,
- DITHER = 0x0BD0,
- BLEND_DST = 0x0BE0,
- BLEND_SRC = 0x0BE1,
- BLEND = 0x0BE2,
- LOGIC_OP_MODE = 0x0BF0,
- COLOR_LOGIC_OP = 0x0BF2,
- DRAW_BUFFER = 0x0C01,
- READ_BUFFER = 0x0C02,
- SCISSOR_BOX = 0x0C10,
- SCISSOR_TEST = 0x0C11,
- COLOR_CLEAR_VALUE = 0x0C22,
- COLOR_WRITEMASK = 0x0C23,
- DOUBLEBUFFER = 0x0C32,
- STEREO = 0x0C33,
- LINE_SMOOTH_HINT = 0x0C52,
- POLYGON_SMOOTH_HINT = 0x0C53,
- UNPACK_SWAP_BYTES = 0x0CF0,
- UNPACK_LSB_FIRST = 0x0CF1,
- UNPACK_ROW_LENGTH = 0x0CF2,
- UNPACK_SKIP_ROWS = 0x0CF3,
- UNPACK_SKIP_PIXELS = 0x0CF4,
- UNPACK_ALIGNMENT = 0x0CF5,
- PACK_SWAP_BYTES = 0x0D00,
- PACK_LSB_FIRST = 0x0D01,
- PACK_ROW_LENGTH = 0x0D02,
- PACK_SKIP_ROWS = 0x0D03,
- PACK_SKIP_PIXELS = 0x0D04,
- PACK_ALIGNMENT = 0x0D05,
- MAX_TEXTURE_SIZE = 0x0D33,
- MAX_VIEWPORT_DIMS = 0x0D3A,
- SUBPIXEL_BITS = 0x0D50,
- TEXTURE_1D = 0x0DE0,
- TEXTURE_2D = 0x0DE1,
- POLYGON_OFFSET_UNITS = 0x2A00,
- POLYGON_OFFSET_POINT = 0x2A01,
- POLYGON_OFFSET_LINE = 0x2A02,
- POLYGON_OFFSET_FILL = 0x8037,
- POLYGON_OFFSET_FACTOR = 0x8038,
- TEXTURE_BINDING_1D = 0x8068,
- TEXTURE_BINDING_2D = 0x8069,
- TEXTURE_WIDTH = 0x1000,
- TEXTURE_HEIGHT = 0x1001,
- TEXTURE_INTERNAL_FORMAT = 0x1003,
- TEXTURE_BORDER_COLOR = 0x1004,
- TEXTURE_RED_SIZE = 0x805C,
- TEXTURE_GREEN_SIZE = 0x805D,
- TEXTURE_BLUE_SIZE = 0x805E,
- TEXTURE_ALPHA_SIZE = 0x805F,
- DONT_CARE = 0x1100,
- FASTEST = 0x1101,
- NICEST = 0x1102,
- BYTE = 0x1400,
- UNSIGNED_BYTE = 0x1401,
- SHORT = 0x1402,
- UNSIGNED_SHORT = 0x1403,
- INT = 0x1404,
- UNSIGNED_INT = 0x1405,
- FLOAT = 0x1406,
- DOUBLE = 0x140A,
- CLEAR = 0x1500,
- AND = 0x1501,
- AND_REVERSE = 0x1502,
- COPY = 0x1503,
- AND_INVERTED = 0x1504,
- NOOP = 0x1505,
- XOR = 0x1506,
- OR = 0x1507,
- NOR = 0x1508,
- EQUIV = 0x1509,
- INVERT = 0x150A,
- OR_REVERSE = 0x150B,
- COPY_INVERTED = 0x150C,
- OR_INVERTED = 0x150D,
- NAND = 0x150E,
- SET = 0x150F,
- TEXTURE = 0x1702,
- COLOR = 0x1800,
- DEPTH = 0x1801,
- STENCIL = 0x1802,
- STENCIL_INDEX = 0x1901,
- DEPTH_COMPONENT = 0x1902,
- RED = 0x1903,
- GREEN = 0x1904,
- BLUE = 0x1905,
- ALPHA = 0x1906,
- RGB = 0x1907,
- RGBA = 0x1908,
- POINT = 0x1B00,
- LINE = 0x1B01,
- FILL = 0x1B02,
- KEEP = 0x1E00,
- REPLACE = 0x1E01,
- INCR = 0x1E02,
- DECR = 0x1E03,
- VENDOR = 0x1F00,
- RENDERER = 0x1F01,
- VERSION_ = 0x1F02,
- EXTENSIONS = 0x1F03,
- NEAREST = 0x2600,
- LINEAR = 0x2601,
- NEAREST_MIPMAP_NEAREST = 0x2700,
- LINEAR_MIPMAP_NEAREST = 0x2701,
- NEAREST_MIPMAP_LINEAR = 0x2702,
- LINEAR_MIPMAP_LINEAR = 0x2703,
- TEXTURE_MAG_FILTER = 0x2800,
- TEXTURE_MIN_FILTER = 0x2801,
- TEXTURE_WRAP_S = 0x2802,
- TEXTURE_WRAP_T = 0x2803,
- PROXY_TEXTURE_1D = 0x8063,
- PROXY_TEXTURE_2D = 0x8064,
- REPEAT = 0x2901,
- R3_G3_B2 = 0x2A10,
- RGB4 = 0x804F,
- RGB5 = 0x8050,
- RGB8 = 0x8051,
- RGB10 = 0x8052,
- RGB12 = 0x8053,
- RGB16 = 0x8054,
- RGBA2 = 0x8055,
- RGBA4 = 0x8056,
- RGB5_A1 = 0x8057,
- RGBA8 = 0x8058,
- RGB10_A2 = 0x8059,
- RGBA12 = 0x805A,
- RGBA16 = 0x805B,
-
- // Core Extension: ARB_imaging
- CONSTANT_COLOR = 0x8001,
- ONE_MINUS_CONSTANT_COLOR = 0x8002,
- CONSTANT_ALPHA = 0x8003,
- ONE_MINUS_CONSTANT_ALPHA = 0x8004,
- BLEND_COLOR = 0x8005,
- FUNC_ADD = 0x8006,
- MIN = 0x8007,
- MAX = 0x8008,
- BLEND_EQUATION = 0x8009,
- FUNC_SUBTRACT = 0x800A,
- FUNC_REVERSE_SUBTRACT = 0x800B,
- CONVOLUTION_1D = 0x8010,
- CONVOLUTION_2D = 0x8011,
- SEPARABLE_2D = 0x8012,
- CONVOLUTION_BORDER_MODE = 0x8013,
- CONVOLUTION_FILTER_SCALE = 0x8014,
- CONVOLUTION_FILTER_BIAS = 0x8015,
- REDUCE = 0x8016,
- CONVOLUTION_FORMAT = 0x8017,
- CONVOLUTION_WIDTH = 0x8018,
- CONVOLUTION_HEIGHT = 0x8019,
- MAX_CONVOLUTION_WIDTH = 0x801A,
- MAX_CONVOLUTION_HEIGHT = 0x801B,
- POST_CONVOLUTION_RED_SCALE = 0x801C,
- POST_CONVOLUTION_GREEN_SCALE = 0x801D,
- POST_CONVOLUTION_BLUE_SCALE = 0x801E,
- POST_CONVOLUTION_ALPHA_SCALE = 0x801F,
- POST_CONVOLUTION_RED_BIAS = 0x8020,
- POST_CONVOLUTION_GREEN_BIAS = 0x8021,
- POST_CONVOLUTION_BLUE_BIAS = 0x8022,
- POST_CONVOLUTION_ALPHA_BIAS = 0x8023,
- HISTOGRAM = 0x8024,
- PROXY_HISTOGRAM = 0x8025,
- HISTOGRAM_WIDTH = 0x8026,
- HISTOGRAM_FORMAT = 0x8027,
- HISTOGRAM_RED_SIZE = 0x8028,
- HISTOGRAM_GREEN_SIZE = 0x8029,
- HISTOGRAM_BLUE_SIZE = 0x802A,
- HISTOGRAM_ALPHA_SIZE = 0x802B,
- HISTOGRAM_LUMINANCE_SIZE = 0x802C,
- HISTOGRAM_SINK = 0x802D,
- MINMAX = 0x802E,
- MINMAX_FORMAT = 0x802F,
- MINMAX_SINK = 0x8030,
- TABLE_TOO_LARGE = 0x8031,
- COLOR_MATRIX = 0x80B1,
- COLOR_MATRIX_STACK_DEPTH = 0x80B2,
- MAX_COLOR_MATRIX_STACK_DEPTH = 0x80B3,
- POST_COLOR_MATRIX_RED_SCALE = 0x80B4,
- POST_COLOR_MATRIX_GREEN_SCALE = 0x80B5,
- POST_COLOR_MATRIX_BLUE_SCALE = 0x80B6,
- POST_COLOR_MATRIX_ALPHA_SCALE = 0x80B7,
- POST_COLOR_MATRIX_RED_BIAS = 0x80B8,
- POST_COLOR_MATRIX_GREEN_BIAS = 0x80B9,
- POST_COLOR_MATRIX_BLUE_BIAS = 0x80BA,
- POST_COLOR_MATRIX_ALPHA_BIAS = 0x80BB,
- COLOR_TABLE = 0x80D0,
- POST_CONVOLUTION_COLOR_TABLE = 0x80D1,
- POST_COLOR_MATRIX_COLOR_TABLE = 0x80D2,
- PROXY_COLOR_TABLE = 0x80D3,
- PROXY_POST_CONVOLUTION_COLOR_TABLE = 0x80D4,
- PROXY_POST_COLOR_MATRIX_COLOR_TABLE = 0x80D5,
- COLOR_TABLE_SCALE = 0x80D6,
- COLOR_TABLE_BIAS = 0x80D7,
- COLOR_TABLE_FORMAT = 0x80D8,
- COLOR_TABLE_WIDTH = 0x80D9,
- COLOR_TABLE_RED_SIZE = 0x80DA,
- COLOR_TABLE_GREEN_SIZE = 0x80DB,
- COLOR_TABLE_BLUE_SIZE = 0x80DC,
- COLOR_TABLE_ALPHA_SIZE = 0x80DD,
- COLOR_TABLE_LUMINANCE_SIZE = 0x80DE,
- COLOR_TABLE_INTENSITY_SIZE = 0x80DF,
- CONSTANT_BORDER = 0x8151,
- REPLICATE_BORDER = 0x8153,
- CONVOLUTION_BORDER_COLOR = 0x8154,
+ enum
+ {
+ // Version: 1.1
+ DEPTH_BUFFER_BIT = 0x00000100,
+ STENCIL_BUFFER_BIT = 0x00000400,
+ COLOR_BUFFER_BIT = 0x00004000,
+ FALSE_ = 0,
+ TRUE_ = 1,
+ POINTS = 0x0000,
+ LINES = 0x0001,
+ LINE_LOOP = 0x0002,
+ LINE_STRIP = 0x0003,
+ TRIANGLES = 0x0004,
+ TRIANGLE_STRIP = 0x0005,
+ TRIANGLE_FAN = 0x0006,
+ QUADS = 0x0007,
+ NEVER = 0x0200,
+ LESS = 0x0201,
+ EQUAL = 0x0202,
+ LEQUAL = 0x0203,
+ GREATER = 0x0204,
+ NOTEQUAL = 0x0205,
+ GEQUAL = 0x0206,
+ ALWAYS = 0x0207,
+ ZERO = 0,
+ ONE = 1,
+ SRC_COLOR = 0x0300,
+ ONE_MINUS_SRC_COLOR = 0x0301,
+ SRC_ALPHA = 0x0302,
+ ONE_MINUS_SRC_ALPHA = 0x0303,
+ DST_ALPHA = 0x0304,
+ ONE_MINUS_DST_ALPHA = 0x0305,
+ DST_COLOR = 0x0306,
+ ONE_MINUS_DST_COLOR = 0x0307,
+ SRC_ALPHA_SATURATE = 0x0308,
+ NONE = 0,
+ FRONT_LEFT = 0x0400,
+ FRONT_RIGHT = 0x0401,
+ BACK_LEFT = 0x0402,
+ BACK_RIGHT = 0x0403,
+ FRONT = 0x0404,
+ BACK = 0x0405,
+ LEFT = 0x0406,
+ RIGHT = 0x0407,
+ FRONT_AND_BACK = 0x0408,
+ NO_ERROR_ = 0,
+ INVALID_ENUM = 0x0500,
+ INVALID_VALUE = 0x0501,
+ INVALID_OPERATION = 0x0502,
+ OUT_OF_MEMORY = 0x0505,
+ CW = 0x0900,
+ CCW = 0x0901,
+ POINT_SIZE = 0x0B11,
+ POINT_SIZE_RANGE = 0x0B12,
+ POINT_SIZE_GRANULARITY = 0x0B13,
+ LINE_SMOOTH = 0x0B20,
+ LINE_WIDTH = 0x0B21,
+ LINE_WIDTH_RANGE = 0x0B22,
+ LINE_WIDTH_GRANULARITY = 0x0B23,
+ POLYGON_MODE = 0x0B40,
+ POLYGON_SMOOTH = 0x0B41,
+ CULL_FACE = 0x0B44,
+ CULL_FACE_MODE = 0x0B45,
+ FRONT_FACE = 0x0B46,
+ DEPTH_RANGE = 0x0B70,
+ DEPTH_TEST = 0x0B71,
+ DEPTH_WRITEMASK = 0x0B72,
+ DEPTH_CLEAR_VALUE = 0x0B73,
+ DEPTH_FUNC = 0x0B74,
+ STENCIL_TEST = 0x0B90,
+ STENCIL_CLEAR_VALUE = 0x0B91,
+ STENCIL_FUNC = 0x0B92,
+ STENCIL_VALUE_MASK = 0x0B93,
+ STENCIL_FAIL = 0x0B94,
+ STENCIL_PASS_DEPTH_FAIL = 0x0B95,
+ STENCIL_PASS_DEPTH_PASS = 0x0B96,
+ STENCIL_REF = 0x0B97,
+ STENCIL_WRITEMASK = 0x0B98,
+ VIEWPORT = 0x0BA2,
+ DITHER = 0x0BD0,
+ BLEND_DST = 0x0BE0,
+ BLEND_SRC = 0x0BE1,
+ BLEND = 0x0BE2,
+ LOGIC_OP_MODE = 0x0BF0,
+ COLOR_LOGIC_OP = 0x0BF2,
+ DRAW_BUFFER = 0x0C01,
+ READ_BUFFER = 0x0C02,
+ SCISSOR_BOX = 0x0C10,
+ SCISSOR_TEST = 0x0C11,
+ COLOR_CLEAR_VALUE = 0x0C22,
+ COLOR_WRITEMASK = 0x0C23,
+ DOUBLEBUFFER = 0x0C32,
+ STEREO = 0x0C33,
+ LINE_SMOOTH_HINT = 0x0C52,
+ POLYGON_SMOOTH_HINT = 0x0C53,
+ UNPACK_SWAP_BYTES = 0x0CF0,
+ UNPACK_LSB_FIRST = 0x0CF1,
+ UNPACK_ROW_LENGTH = 0x0CF2,
+ UNPACK_SKIP_ROWS = 0x0CF3,
+ UNPACK_SKIP_PIXELS = 0x0CF4,
+ UNPACK_ALIGNMENT = 0x0CF5,
+ PACK_SWAP_BYTES = 0x0D00,
+ PACK_LSB_FIRST = 0x0D01,
+ PACK_ROW_LENGTH = 0x0D02,
+ PACK_SKIP_ROWS = 0x0D03,
+ PACK_SKIP_PIXELS = 0x0D04,
+ PACK_ALIGNMENT = 0x0D05,
+ MAX_TEXTURE_SIZE = 0x0D33,
+ MAX_VIEWPORT_DIMS = 0x0D3A,
+ SUBPIXEL_BITS = 0x0D50,
+ TEXTURE_1D = 0x0DE0,
+ TEXTURE_2D = 0x0DE1,
+ POLYGON_OFFSET_UNITS = 0x2A00,
+ POLYGON_OFFSET_POINT = 0x2A01,
+ POLYGON_OFFSET_LINE = 0x2A02,
+ POLYGON_OFFSET_FILL = 0x8037,
+ POLYGON_OFFSET_FACTOR = 0x8038,
+ TEXTURE_BINDING_1D = 0x8068,
+ TEXTURE_BINDING_2D = 0x8069,
+ TEXTURE_WIDTH = 0x1000,
+ TEXTURE_HEIGHT = 0x1001,
+ TEXTURE_INTERNAL_FORMAT = 0x1003,
+ TEXTURE_BORDER_COLOR = 0x1004,
+ TEXTURE_RED_SIZE = 0x805C,
+ TEXTURE_GREEN_SIZE = 0x805D,
+ TEXTURE_BLUE_SIZE = 0x805E,
+ TEXTURE_ALPHA_SIZE = 0x805F,
+ DONT_CARE = 0x1100,
+ FASTEST = 0x1101,
+ NICEST = 0x1102,
+ BYTE = 0x1400,
+ UNSIGNED_BYTE = 0x1401,
+ SHORT = 0x1402,
+ UNSIGNED_SHORT = 0x1403,
+ INT = 0x1404,
+ UNSIGNED_INT = 0x1405,
+ FLOAT = 0x1406,
+ DOUBLE = 0x140A,
+ CLEAR = 0x1500,
+ AND = 0x1501,
+ AND_REVERSE = 0x1502,
+ COPY = 0x1503,
+ AND_INVERTED = 0x1504,
+ NOOP = 0x1505,
+ XOR = 0x1506,
+ OR = 0x1507,
+ NOR = 0x1508,
+ EQUIV = 0x1509,
+ INVERT = 0x150A,
+ OR_REVERSE = 0x150B,
+ COPY_INVERTED = 0x150C,
+ OR_INVERTED = 0x150D,
+ NAND = 0x150E,
+ SET = 0x150F,
+ TEXTURE = 0x1702,
+ COLOR = 0x1800,
+ DEPTH = 0x1801,
+ STENCIL = 0x1802,
+ STENCIL_INDEX = 0x1901,
+ DEPTH_COMPONENT = 0x1902,
+ RED = 0x1903,
+ GREEN = 0x1904,
+ BLUE = 0x1905,
+ ALPHA = 0x1906,
+ RGB = 0x1907,
+ RGBA = 0x1908,
+ POINT = 0x1B00,
+ LINE = 0x1B01,
+ FILL = 0x1B02,
+ KEEP = 0x1E00,
+ REPLACE = 0x1E01,
+ INCR = 0x1E02,
+ DECR = 0x1E03,
+ VENDOR = 0x1F00,
+ RENDERER = 0x1F01,
+ VERSION_ = 0x1F02,
+ EXTENSIONS = 0x1F03,
+ NEAREST = 0x2600,
+ LINEAR = 0x2601,
+ NEAREST_MIPMAP_NEAREST = 0x2700,
+ LINEAR_MIPMAP_NEAREST = 0x2701,
+ NEAREST_MIPMAP_LINEAR = 0x2702,
+ LINEAR_MIPMAP_LINEAR = 0x2703,
+ TEXTURE_MAG_FILTER = 0x2800,
+ TEXTURE_MIN_FILTER = 0x2801,
+ TEXTURE_WRAP_S = 0x2802,
+ TEXTURE_WRAP_T = 0x2803,
+ PROXY_TEXTURE_1D = 0x8063,
+ PROXY_TEXTURE_2D = 0x8064,
+ REPEAT = 0x2901,
+ R3_G3_B2 = 0x2A10,
+ RGB4 = 0x804F,
+ RGB5 = 0x8050,
+ RGB8 = 0x8051,
+ RGB10 = 0x8052,
+ RGB12 = 0x8053,
+ RGB16 = 0x8054,
+ RGBA2 = 0x8055,
+ RGBA4 = 0x8056,
+ RGB5_A1 = 0x8057,
+ RGBA8 = 0x8058,
+ RGB10_A2 = 0x8059,
+ RGBA12 = 0x805A,
+ RGBA16 = 0x805B,
- // Version: 1.2
- UNSIGNED_BYTE_3_3_2 = 0x8032,
- UNSIGNED_SHORT_4_4_4_4 = 0x8033,
- UNSIGNED_SHORT_5_5_5_1 = 0x8034,
- UNSIGNED_INT_8_8_8_8 = 0x8035,
- UNSIGNED_INT_10_10_10_2 = 0x8036,
- TEXTURE_BINDING_3D = 0x806A,
- PACK_SKIP_IMAGES = 0x806B,
- PACK_IMAGE_HEIGHT = 0x806C,
- UNPACK_SKIP_IMAGES = 0x806D,
- UNPACK_IMAGE_HEIGHT = 0x806E,
- TEXTURE_3D = 0x806F,
- PROXY_TEXTURE_3D = 0x8070,
- TEXTURE_DEPTH = 0x8071,
- TEXTURE_WRAP_R = 0x8072,
- MAX_3D_TEXTURE_SIZE = 0x8073,
- UNSIGNED_BYTE_2_3_3_REV = 0x8362,
- UNSIGNED_SHORT_5_6_5 = 0x8363,
- UNSIGNED_SHORT_5_6_5_REV = 0x8364,
- UNSIGNED_SHORT_4_4_4_4_REV = 0x8365,
- UNSIGNED_SHORT_1_5_5_5_REV = 0x8366,
- UNSIGNED_INT_8_8_8_8_REV = 0x8367,
- UNSIGNED_INT_2_10_10_10_REV = 0x8368,
- BGR = 0x80E0,
- BGRA = 0x80E1,
- MAX_ELEMENTS_VERTICES = 0x80E8,
- MAX_ELEMENTS_INDICES = 0x80E9,
- CLAMP_TO_EDGE = 0x812F,
- TEXTURE_MIN_LOD = 0x813A,
- TEXTURE_MAX_LOD = 0x813B,
- TEXTURE_BASE_LEVEL = 0x813C,
- TEXTURE_MAX_LEVEL = 0x813D,
- SMOOTH_POINT_SIZE_RANGE = 0x0B12,
- SMOOTH_POINT_SIZE_GRANULARITY = 0x0B13,
- SMOOTH_LINE_WIDTH_RANGE = 0x0B22,
- SMOOTH_LINE_WIDTH_GRANULARITY = 0x0B23,
- ALIASED_LINE_WIDTH_RANGE = 0x846E,
+ // Core Extension: ARB_imaging
+ CONSTANT_COLOR = 0x8001,
+ ONE_MINUS_CONSTANT_COLOR = 0x8002,
+ CONSTANT_ALPHA = 0x8003,
+ ONE_MINUS_CONSTANT_ALPHA = 0x8004,
+ BLEND_COLOR = 0x8005,
+ FUNC_ADD = 0x8006,
+ MIN = 0x8007,
+ MAX = 0x8008,
+ BLEND_EQUATION = 0x8009,
+ FUNC_SUBTRACT = 0x800A,
+ FUNC_REVERSE_SUBTRACT = 0x800B,
+ CONVOLUTION_1D = 0x8010,
+ CONVOLUTION_2D = 0x8011,
+ SEPARABLE_2D = 0x8012,
+ CONVOLUTION_BORDER_MODE = 0x8013,
+ CONVOLUTION_FILTER_SCALE = 0x8014,
+ CONVOLUTION_FILTER_BIAS = 0x8015,
+ REDUCE = 0x8016,
+ CONVOLUTION_FORMAT = 0x8017,
+ CONVOLUTION_WIDTH = 0x8018,
+ CONVOLUTION_HEIGHT = 0x8019,
+ MAX_CONVOLUTION_WIDTH = 0x801A,
+ MAX_CONVOLUTION_HEIGHT = 0x801B,
+ POST_CONVOLUTION_RED_SCALE = 0x801C,
+ POST_CONVOLUTION_GREEN_SCALE = 0x801D,
+ POST_CONVOLUTION_BLUE_SCALE = 0x801E,
+ POST_CONVOLUTION_ALPHA_SCALE = 0x801F,
+ POST_CONVOLUTION_RED_BIAS = 0x8020,
+ POST_CONVOLUTION_GREEN_BIAS = 0x8021,
+ POST_CONVOLUTION_BLUE_BIAS = 0x8022,
+ POST_CONVOLUTION_ALPHA_BIAS = 0x8023,
+ HISTOGRAM = 0x8024,
+ PROXY_HISTOGRAM = 0x8025,
+ HISTOGRAM_WIDTH = 0x8026,
+ HISTOGRAM_FORMAT = 0x8027,
+ HISTOGRAM_RED_SIZE = 0x8028,
+ HISTOGRAM_GREEN_SIZE = 0x8029,
+ HISTOGRAM_BLUE_SIZE = 0x802A,
+ HISTOGRAM_ALPHA_SIZE = 0x802B,
+ HISTOGRAM_LUMINANCE_SIZE = 0x802C,
+ HISTOGRAM_SINK = 0x802D,
+ MINMAX = 0x802E,
+ MINMAX_FORMAT = 0x802F,
+ MINMAX_SINK = 0x8030,
+ TABLE_TOO_LARGE = 0x8031,
+ COLOR_MATRIX = 0x80B1,
+ COLOR_MATRIX_STACK_DEPTH = 0x80B2,
+ MAX_COLOR_MATRIX_STACK_DEPTH = 0x80B3,
+ POST_COLOR_MATRIX_RED_SCALE = 0x80B4,
+ POST_COLOR_MATRIX_GREEN_SCALE = 0x80B5,
+ POST_COLOR_MATRIX_BLUE_SCALE = 0x80B6,
+ POST_COLOR_MATRIX_ALPHA_SCALE = 0x80B7,
+ POST_COLOR_MATRIX_RED_BIAS = 0x80B8,
+ POST_COLOR_MATRIX_GREEN_BIAS = 0x80B9,
+ POST_COLOR_MATRIX_BLUE_BIAS = 0x80BA,
+ POST_COLOR_MATRIX_ALPHA_BIAS = 0x80BB,
+ COLOR_TABLE = 0x80D0,
+ POST_CONVOLUTION_COLOR_TABLE = 0x80D1,
+ POST_COLOR_MATRIX_COLOR_TABLE = 0x80D2,
+ PROXY_COLOR_TABLE = 0x80D3,
+ PROXY_POST_CONVOLUTION_COLOR_TABLE = 0x80D4,
+ PROXY_POST_COLOR_MATRIX_COLOR_TABLE = 0x80D5,
+ COLOR_TABLE_SCALE = 0x80D6,
+ COLOR_TABLE_BIAS = 0x80D7,
+ COLOR_TABLE_FORMAT = 0x80D8,
+ COLOR_TABLE_WIDTH = 0x80D9,
+ COLOR_TABLE_RED_SIZE = 0x80DA,
+ COLOR_TABLE_GREEN_SIZE = 0x80DB,
+ COLOR_TABLE_BLUE_SIZE = 0x80DC,
+ COLOR_TABLE_ALPHA_SIZE = 0x80DD,
+ COLOR_TABLE_LUMINANCE_SIZE = 0x80DE,
+ COLOR_TABLE_INTENSITY_SIZE = 0x80DF,
+ CONSTANT_BORDER = 0x8151,
+ REPLICATE_BORDER = 0x8153,
+ CONVOLUTION_BORDER_COLOR = 0x8154,
- // Version: 1.3
- TEXTURE0 = 0x84C0,
- TEXTURE1 = 0x84C1,
- TEXTURE2 = 0x84C2,
- TEXTURE3 = 0x84C3,
- TEXTURE4 = 0x84C4,
- TEXTURE5 = 0x84C5,
- TEXTURE6 = 0x84C6,
- TEXTURE7 = 0x84C7,
- TEXTURE8 = 0x84C8,
- TEXTURE9 = 0x84C9,
- TEXTURE10 = 0x84CA,
- TEXTURE11 = 0x84CB,
- TEXTURE12 = 0x84CC,
- TEXTURE13 = 0x84CD,
- TEXTURE14 = 0x84CE,
- TEXTURE15 = 0x84CF,
- TEXTURE16 = 0x84D0,
- TEXTURE17 = 0x84D1,
- TEXTURE18 = 0x84D2,
- TEXTURE19 = 0x84D3,
- TEXTURE20 = 0x84D4,
- TEXTURE21 = 0x84D5,
- TEXTURE22 = 0x84D6,
- TEXTURE23 = 0x84D7,
- TEXTURE24 = 0x84D8,
- TEXTURE25 = 0x84D9,
- TEXTURE26 = 0x84DA,
- TEXTURE27 = 0x84DB,
- TEXTURE28 = 0x84DC,
- TEXTURE29 = 0x84DD,
- TEXTURE30 = 0x84DE,
- TEXTURE31 = 0x84DF,
- ACTIVE_TEXTURE = 0x84E0,
- MULTISAMPLE = 0x809D,
- SAMPLE_ALPHA_TO_COVERAGE = 0x809E,
- SAMPLE_ALPHA_TO_ONE = 0x809F,
- SAMPLE_COVERAGE = 0x80A0,
- SAMPLE_BUFFERS = 0x80A8,
- SAMPLES = 0x80A9,
- SAMPLE_COVERAGE_VALUE = 0x80AA,
- SAMPLE_COVERAGE_INVERT = 0x80AB,
- TEXTURE_CUBE_MAP = 0x8513,
- TEXTURE_BINDING_CUBE_MAP = 0x8514,
- TEXTURE_CUBE_MAP_POSITIVE_X = 0x8515,
- TEXTURE_CUBE_MAP_NEGATIVE_X = 0x8516,
- TEXTURE_CUBE_MAP_POSITIVE_Y = 0x8517,
- TEXTURE_CUBE_MAP_NEGATIVE_Y = 0x8518,
- TEXTURE_CUBE_MAP_POSITIVE_Z = 0x8519,
- TEXTURE_CUBE_MAP_NEGATIVE_Z = 0x851A,
- PROXY_TEXTURE_CUBE_MAP = 0x851B,
- MAX_CUBE_MAP_TEXTURE_SIZE = 0x851C,
- COMPRESSED_RGB = 0x84ED,
- COMPRESSED_RGBA = 0x84EE,
- TEXTURE_COMPRESSION_HINT = 0x84EF,
- TEXTURE_COMPRESSED_IMAGE_SIZE = 0x86A0,
- TEXTURE_COMPRESSED = 0x86A1,
- NUM_COMPRESSED_TEXTURE_FORMATS = 0x86A2,
- COMPRESSED_TEXTURE_FORMATS = 0x86A3,
- CLAMP_TO_BORDER = 0x812D,
+ // Version: 1.2
+ UNSIGNED_BYTE_3_3_2 = 0x8032,
+ UNSIGNED_SHORT_4_4_4_4 = 0x8033,
+ UNSIGNED_SHORT_5_5_5_1 = 0x8034,
+ UNSIGNED_INT_8_8_8_8 = 0x8035,
+ UNSIGNED_INT_10_10_10_2 = 0x8036,
+ TEXTURE_BINDING_3D = 0x806A,
+ PACK_SKIP_IMAGES = 0x806B,
+ PACK_IMAGE_HEIGHT = 0x806C,
+ UNPACK_SKIP_IMAGES = 0x806D,
+ UNPACK_IMAGE_HEIGHT = 0x806E,
+ TEXTURE_3D = 0x806F,
+ PROXY_TEXTURE_3D = 0x8070,
+ TEXTURE_DEPTH = 0x8071,
+ TEXTURE_WRAP_R = 0x8072,
+ MAX_3D_TEXTURE_SIZE = 0x8073,
+ UNSIGNED_BYTE_2_3_3_REV = 0x8362,
+ UNSIGNED_SHORT_5_6_5 = 0x8363,
+ UNSIGNED_SHORT_5_6_5_REV = 0x8364,
+ UNSIGNED_SHORT_4_4_4_4_REV = 0x8365,
+ UNSIGNED_SHORT_1_5_5_5_REV = 0x8366,
+ UNSIGNED_INT_8_8_8_8_REV = 0x8367,
+ UNSIGNED_INT_2_10_10_10_REV = 0x8368,
+ BGR = 0x80E0,
+ BGRA = 0x80E1,
+ MAX_ELEMENTS_VERTICES = 0x80E8,
+ MAX_ELEMENTS_INDICES = 0x80E9,
+ CLAMP_TO_EDGE = 0x812F,
+ TEXTURE_MIN_LOD = 0x813A,
+ TEXTURE_MAX_LOD = 0x813B,
+ TEXTURE_BASE_LEVEL = 0x813C,
+ TEXTURE_MAX_LEVEL = 0x813D,
+ SMOOTH_POINT_SIZE_RANGE = 0x0B12,
+ SMOOTH_POINT_SIZE_GRANULARITY = 0x0B13,
+ SMOOTH_LINE_WIDTH_RANGE = 0x0B22,
+ SMOOTH_LINE_WIDTH_GRANULARITY = 0x0B23,
+ ALIASED_LINE_WIDTH_RANGE = 0x846E,
- // Version: 1.4
- BLEND_DST_RGB = 0x80C8,
- BLEND_SRC_RGB = 0x80C9,
- BLEND_DST_ALPHA = 0x80CA,
- BLEND_SRC_ALPHA = 0x80CB,
- POINT_FADE_THRESHOLD_SIZE = 0x8128,
- DEPTH_COMPONENT16 = 0x81A5,
- DEPTH_COMPONENT24 = 0x81A6,
- DEPTH_COMPONENT32 = 0x81A7,
- MIRRORED_REPEAT = 0x8370,
- MAX_TEXTURE_LOD_BIAS = 0x84FD,
- TEXTURE_LOD_BIAS = 0x8501,
- INCR_WRAP = 0x8507,
- DECR_WRAP = 0x8508,
- TEXTURE_DEPTH_SIZE = 0x884A,
- TEXTURE_COMPARE_MODE = 0x884C,
- TEXTURE_COMPARE_FUNC = 0x884D,
+ // Version: 1.3
+ TEXTURE0 = 0x84C0,
+ TEXTURE1 = 0x84C1,
+ TEXTURE2 = 0x84C2,
+ TEXTURE3 = 0x84C3,
+ TEXTURE4 = 0x84C4,
+ TEXTURE5 = 0x84C5,
+ TEXTURE6 = 0x84C6,
+ TEXTURE7 = 0x84C7,
+ TEXTURE8 = 0x84C8,
+ TEXTURE9 = 0x84C9,
+ TEXTURE10 = 0x84CA,
+ TEXTURE11 = 0x84CB,
+ TEXTURE12 = 0x84CC,
+ TEXTURE13 = 0x84CD,
+ TEXTURE14 = 0x84CE,
+ TEXTURE15 = 0x84CF,
+ TEXTURE16 = 0x84D0,
+ TEXTURE17 = 0x84D1,
+ TEXTURE18 = 0x84D2,
+ TEXTURE19 = 0x84D3,
+ TEXTURE20 = 0x84D4,
+ TEXTURE21 = 0x84D5,
+ TEXTURE22 = 0x84D6,
+ TEXTURE23 = 0x84D7,
+ TEXTURE24 = 0x84D8,
+ TEXTURE25 = 0x84D9,
+ TEXTURE26 = 0x84DA,
+ TEXTURE27 = 0x84DB,
+ TEXTURE28 = 0x84DC,
+ TEXTURE29 = 0x84DD,
+ TEXTURE30 = 0x84DE,
+ TEXTURE31 = 0x84DF,
+ ACTIVE_TEXTURE = 0x84E0,
+ MULTISAMPLE = 0x809D,
+ SAMPLE_ALPHA_TO_COVERAGE = 0x809E,
+ SAMPLE_ALPHA_TO_ONE = 0x809F,
+ SAMPLE_COVERAGE = 0x80A0,
+ SAMPLE_BUFFERS = 0x80A8,
+ SAMPLES = 0x80A9,
+ SAMPLE_COVERAGE_VALUE = 0x80AA,
+ SAMPLE_COVERAGE_INVERT = 0x80AB,
+ TEXTURE_CUBE_MAP = 0x8513,
+ TEXTURE_BINDING_CUBE_MAP = 0x8514,
+ TEXTURE_CUBE_MAP_POSITIVE_X = 0x8515,
+ TEXTURE_CUBE_MAP_NEGATIVE_X = 0x8516,
+ TEXTURE_CUBE_MAP_POSITIVE_Y = 0x8517,
+ TEXTURE_CUBE_MAP_NEGATIVE_Y = 0x8518,
+ TEXTURE_CUBE_MAP_POSITIVE_Z = 0x8519,
+ TEXTURE_CUBE_MAP_NEGATIVE_Z = 0x851A,
+ PROXY_TEXTURE_CUBE_MAP = 0x851B,
+ MAX_CUBE_MAP_TEXTURE_SIZE = 0x851C,
+ COMPRESSED_RGB = 0x84ED,
+ COMPRESSED_RGBA = 0x84EE,
+ TEXTURE_COMPRESSION_HINT = 0x84EF,
+ TEXTURE_COMPRESSED_IMAGE_SIZE = 0x86A0,
+ TEXTURE_COMPRESSED = 0x86A1,
+ NUM_COMPRESSED_TEXTURE_FORMATS = 0x86A2,
+ COMPRESSED_TEXTURE_FORMATS = 0x86A3,
+ CLAMP_TO_BORDER = 0x812D,
- // Version: 1.5
- BUFFER_SIZE = 0x8764,
- BUFFER_USAGE = 0x8765,
- QUERY_COUNTER_BITS = 0x8864,
- CURRENT_QUERY = 0x8865,
- QUERY_RESULT = 0x8866,
- QUERY_RESULT_AVAILABLE = 0x8867,
- ARRAY_BUFFER = 0x8892,
- ELEMENT_ARRAY_BUFFER = 0x8893,
- ARRAY_BUFFER_BINDING = 0x8894,
- ELEMENT_ARRAY_BUFFER_BINDING = 0x8895,
- VERTEX_ATTRIB_ARRAY_BUFFER_BINDING = 0x889F,
- READ_ONLY = 0x88B8,
- WRITE_ONLY = 0x88B9,
- READ_WRITE = 0x88BA,
- BUFFER_ACCESS = 0x88BB,
- BUFFER_MAPPED = 0x88BC,
- BUFFER_MAP_POINTER = 0x88BD,
- STREAM_DRAW = 0x88E0,
- STREAM_READ = 0x88E1,
- STREAM_COPY = 0x88E2,
- STATIC_DRAW = 0x88E4,
- STATIC_READ = 0x88E5,
- STATIC_COPY = 0x88E6,
- DYNAMIC_DRAW = 0x88E8,
- DYNAMIC_READ = 0x88E9,
- DYNAMIC_COPY = 0x88EA,
- SAMPLES_PASSED = 0x8914,
- SRC1_ALPHA = 0x8589,
+ // Version: 1.4
+ BLEND_DST_RGB = 0x80C8,
+ BLEND_SRC_RGB = 0x80C9,
+ BLEND_DST_ALPHA = 0x80CA,
+ BLEND_SRC_ALPHA = 0x80CB,
+ POINT_FADE_THRESHOLD_SIZE = 0x8128,
+ DEPTH_COMPONENT16 = 0x81A5,
+ DEPTH_COMPONENT24 = 0x81A6,
+ DEPTH_COMPONENT32 = 0x81A7,
+ MIRRORED_REPEAT = 0x8370,
+ MAX_TEXTURE_LOD_BIAS = 0x84FD,
+ TEXTURE_LOD_BIAS = 0x8501,
+ INCR_WRAP = 0x8507,
+ DECR_WRAP = 0x8508,
+ TEXTURE_DEPTH_SIZE = 0x884A,
+ TEXTURE_COMPARE_MODE = 0x884C,
+ TEXTURE_COMPARE_FUNC = 0x884D,
- // Version: 2.0
- BLEND_EQUATION_RGB = 0x8009,
- VERTEX_ATTRIB_ARRAY_ENABLED = 0x8622,
- VERTEX_ATTRIB_ARRAY_SIZE = 0x8623,
- VERTEX_ATTRIB_ARRAY_STRIDE = 0x8624,
- VERTEX_ATTRIB_ARRAY_TYPE = 0x8625,
- CURRENT_VERTEX_ATTRIB = 0x8626,
- VERTEX_PROGRAM_POINT_SIZE = 0x8642,
- VERTEX_ATTRIB_ARRAY_POINTER = 0x8645,
- STENCIL_BACK_FUNC = 0x8800,
- STENCIL_BACK_FAIL = 0x8801,
- STENCIL_BACK_PASS_DEPTH_FAIL = 0x8802,
- STENCIL_BACK_PASS_DEPTH_PASS = 0x8803,
- MAX_DRAW_BUFFERS = 0x8824,
- DRAW_BUFFER0 = 0x8825,
- DRAW_BUFFER1 = 0x8826,
- DRAW_BUFFER2 = 0x8827,
- DRAW_BUFFER3 = 0x8828,
- DRAW_BUFFER4 = 0x8829,
- DRAW_BUFFER5 = 0x882A,
- DRAW_BUFFER6 = 0x882B,
- DRAW_BUFFER7 = 0x882C,
- DRAW_BUFFER8 = 0x882D,
- DRAW_BUFFER9 = 0x882E,
- DRAW_BUFFER10 = 0x882F,
- DRAW_BUFFER11 = 0x8830,
- DRAW_BUFFER12 = 0x8831,
- DRAW_BUFFER13 = 0x8832,
- DRAW_BUFFER14 = 0x8833,
- DRAW_BUFFER15 = 0x8834,
- BLEND_EQUATION_ALPHA = 0x883D,
- MAX_VERTEX_ATTRIBS = 0x8869,
- VERTEX_ATTRIB_ARRAY_NORMALIZED = 0x886A,
- MAX_TEXTURE_IMAGE_UNITS = 0x8872,
- FRAGMENT_SHADER = 0x8B30,
- VERTEX_SHADER = 0x8B31,
- MAX_FRAGMENT_UNIFORM_COMPONENTS = 0x8B49,
- MAX_VERTEX_UNIFORM_COMPONENTS = 0x8B4A,
- MAX_VARYING_FLOATS = 0x8B4B,
- MAX_VERTEX_TEXTURE_IMAGE_UNITS = 0x8B4C,
- MAX_COMBINED_TEXTURE_IMAGE_UNITS = 0x8B4D,
- SHADER_TYPE = 0x8B4F,
- FLOAT_VEC2 = 0x8B50,
- FLOAT_VEC3 = 0x8B51,
- FLOAT_VEC4 = 0x8B52,
- INT_VEC2 = 0x8B53,
- INT_VEC3 = 0x8B54,
- INT_VEC4 = 0x8B55,
- BOOL = 0x8B56,
- BOOL_VEC2 = 0x8B57,
- BOOL_VEC3 = 0x8B58,
- BOOL_VEC4 = 0x8B59,
- FLOAT_MAT2 = 0x8B5A,
- FLOAT_MAT3 = 0x8B5B,
- FLOAT_MAT4 = 0x8B5C,
- SAMPLER_1D = 0x8B5D,
- SAMPLER_2D = 0x8B5E,
- SAMPLER_3D = 0x8B5F,
- SAMPLER_CUBE = 0x8B60,
- SAMPLER_1D_SHADOW = 0x8B61,
- SAMPLER_2D_SHADOW = 0x8B62,
- DELETE_STATUS = 0x8B80,
- COMPILE_STATUS = 0x8B81,
- LINK_STATUS = 0x8B82,
- VALIDATE_STATUS = 0x8B83,
- INFO_LOG_LENGTH = 0x8B84,
- ATTACHED_SHADERS = 0x8B85,
- ACTIVE_UNIFORMS = 0x8B86,
- ACTIVE_UNIFORM_MAX_LENGTH = 0x8B87,
- SHADER_SOURCE_LENGTH = 0x8B88,
- ACTIVE_ATTRIBUTES = 0x8B89,
- ACTIVE_ATTRIBUTE_MAX_LENGTH = 0x8B8A,
- FRAGMENT_SHADER_DERIVATIVE_HINT = 0x8B8B,
- SHADING_LANGUAGE_VERSION = 0x8B8C,
- CURRENT_PROGRAM = 0x8B8D,
- POINT_SPRITE_COORD_ORIGIN = 0x8CA0,
- LOWER_LEFT = 0x8CA1,
- UPPER_LEFT = 0x8CA2,
- STENCIL_BACK_REF = 0x8CA3,
- STENCIL_BACK_VALUE_MASK = 0x8CA4,
- STENCIL_BACK_WRITEMASK = 0x8CA5,
+ // Version: 1.5
+ BUFFER_SIZE = 0x8764,
+ BUFFER_USAGE = 0x8765,
+ QUERY_COUNTER_BITS = 0x8864,
+ CURRENT_QUERY = 0x8865,
+ QUERY_RESULT = 0x8866,
+ QUERY_RESULT_AVAILABLE = 0x8867,
+ ARRAY_BUFFER = 0x8892,
+ ELEMENT_ARRAY_BUFFER = 0x8893,
+ ARRAY_BUFFER_BINDING = 0x8894,
+ ELEMENT_ARRAY_BUFFER_BINDING = 0x8895,
+ VERTEX_ATTRIB_ARRAY_BUFFER_BINDING = 0x889F,
+ READ_ONLY = 0x88B8,
+ WRITE_ONLY = 0x88B9,
+ READ_WRITE = 0x88BA,
+ BUFFER_ACCESS = 0x88BB,
+ BUFFER_MAPPED = 0x88BC,
+ BUFFER_MAP_POINTER = 0x88BD,
+ STREAM_DRAW = 0x88E0,
+ STREAM_READ = 0x88E1,
+ STREAM_COPY = 0x88E2,
+ STATIC_DRAW = 0x88E4,
+ STATIC_READ = 0x88E5,
+ STATIC_COPY = 0x88E6,
+ DYNAMIC_DRAW = 0x88E8,
+ DYNAMIC_READ = 0x88E9,
+ DYNAMIC_COPY = 0x88EA,
+ SAMPLES_PASSED = 0x8914,
+ SRC1_ALPHA = 0x8589,
- // Version: 2.1
- PIXEL_PACK_BUFFER = 0x88EB,
- PIXEL_UNPACK_BUFFER = 0x88EC,
- PIXEL_PACK_BUFFER_BINDING = 0x88ED,
- PIXEL_UNPACK_BUFFER_BINDING = 0x88EF,
- FLOAT_MAT2x3 = 0x8B65,
- FLOAT_MAT2x4 = 0x8B66,
- FLOAT_MAT3x2 = 0x8B67,
- FLOAT_MAT3x4 = 0x8B68,
- FLOAT_MAT4x2 = 0x8B69,
- FLOAT_MAT4x3 = 0x8B6A,
- SRGB = 0x8C40,
- SRGB8 = 0x8C41,
- SRGB_ALPHA = 0x8C42,
- SRGB8_ALPHA8 = 0x8C43,
- COMPRESSED_SRGB = 0x8C48,
- COMPRESSED_SRGB_ALPHA = 0x8C49,
+ // Version: 2.0
+ BLEND_EQUATION_RGB = 0x8009,
+ VERTEX_ATTRIB_ARRAY_ENABLED = 0x8622,
+ VERTEX_ATTRIB_ARRAY_SIZE = 0x8623,
+ VERTEX_ATTRIB_ARRAY_STRIDE = 0x8624,
+ VERTEX_ATTRIB_ARRAY_TYPE = 0x8625,
+ CURRENT_VERTEX_ATTRIB = 0x8626,
+ VERTEX_PROGRAM_POINT_SIZE = 0x8642,
+ VERTEX_ATTRIB_ARRAY_POINTER = 0x8645,
+ STENCIL_BACK_FUNC = 0x8800,
+ STENCIL_BACK_FAIL = 0x8801,
+ STENCIL_BACK_PASS_DEPTH_FAIL = 0x8802,
+ STENCIL_BACK_PASS_DEPTH_PASS = 0x8803,
+ MAX_DRAW_BUFFERS = 0x8824,
+ DRAW_BUFFER0 = 0x8825,
+ DRAW_BUFFER1 = 0x8826,
+ DRAW_BUFFER2 = 0x8827,
+ DRAW_BUFFER3 = 0x8828,
+ DRAW_BUFFER4 = 0x8829,
+ DRAW_BUFFER5 = 0x882A,
+ DRAW_BUFFER6 = 0x882B,
+ DRAW_BUFFER7 = 0x882C,
+ DRAW_BUFFER8 = 0x882D,
+ DRAW_BUFFER9 = 0x882E,
+ DRAW_BUFFER10 = 0x882F,
+ DRAW_BUFFER11 = 0x8830,
+ DRAW_BUFFER12 = 0x8831,
+ DRAW_BUFFER13 = 0x8832,
+ DRAW_BUFFER14 = 0x8833,
+ DRAW_BUFFER15 = 0x8834,
+ BLEND_EQUATION_ALPHA = 0x883D,
+ MAX_VERTEX_ATTRIBS = 0x8869,
+ VERTEX_ATTRIB_ARRAY_NORMALIZED = 0x886A,
+ MAX_TEXTURE_IMAGE_UNITS = 0x8872,
+ FRAGMENT_SHADER = 0x8B30,
+ VERTEX_SHADER = 0x8B31,
+ MAX_FRAGMENT_UNIFORM_COMPONENTS = 0x8B49,
+ MAX_VERTEX_UNIFORM_COMPONENTS = 0x8B4A,
+ MAX_VARYING_FLOATS = 0x8B4B,
+ MAX_VERTEX_TEXTURE_IMAGE_UNITS = 0x8B4C,
+ MAX_COMBINED_TEXTURE_IMAGE_UNITS = 0x8B4D,
+ SHADER_TYPE = 0x8B4F,
+ FLOAT_VEC2 = 0x8B50,
+ FLOAT_VEC3 = 0x8B51,
+ FLOAT_VEC4 = 0x8B52,
+ INT_VEC2 = 0x8B53,
+ INT_VEC3 = 0x8B54,
+ INT_VEC4 = 0x8B55,
+ BOOL = 0x8B56,
+ BOOL_VEC2 = 0x8B57,
+ BOOL_VEC3 = 0x8B58,
+ BOOL_VEC4 = 0x8B59,
+ FLOAT_MAT2 = 0x8B5A,
+ FLOAT_MAT3 = 0x8B5B,
+ FLOAT_MAT4 = 0x8B5C,
+ SAMPLER_1D = 0x8B5D,
+ SAMPLER_2D = 0x8B5E,
+ SAMPLER_3D = 0x8B5F,
+ SAMPLER_CUBE = 0x8B60,
+ SAMPLER_1D_SHADOW = 0x8B61,
+ SAMPLER_2D_SHADOW = 0x8B62,
+ DELETE_STATUS = 0x8B80,
+ COMPILE_STATUS = 0x8B81,
+ LINK_STATUS = 0x8B82,
+ VALIDATE_STATUS = 0x8B83,
+ INFO_LOG_LENGTH = 0x8B84,
+ ATTACHED_SHADERS = 0x8B85,
+ ACTIVE_UNIFORMS = 0x8B86,
+ ACTIVE_UNIFORM_MAX_LENGTH = 0x8B87,
+ SHADER_SOURCE_LENGTH = 0x8B88,
+ ACTIVE_ATTRIBUTES = 0x8B89,
+ ACTIVE_ATTRIBUTE_MAX_LENGTH = 0x8B8A,
+ FRAGMENT_SHADER_DERIVATIVE_HINT = 0x8B8B,
+ SHADING_LANGUAGE_VERSION = 0x8B8C,
+ CURRENT_PROGRAM = 0x8B8D,
+ POINT_SPRITE_COORD_ORIGIN = 0x8CA0,
+ LOWER_LEFT = 0x8CA1,
+ UPPER_LEFT = 0x8CA2,
+ STENCIL_BACK_REF = 0x8CA3,
+ STENCIL_BACK_VALUE_MASK = 0x8CA4,
+ STENCIL_BACK_WRITEMASK = 0x8CA5,
- // Core Extension: ARB_vertex_array_object
- VERTEX_ARRAY_BINDING = 0x85B5,
+ // Version: 2.1
+ PIXEL_PACK_BUFFER = 0x88EB,
+ PIXEL_UNPACK_BUFFER = 0x88EC,
+ PIXEL_PACK_BUFFER_BINDING = 0x88ED,
+ PIXEL_UNPACK_BUFFER_BINDING = 0x88EF,
+ FLOAT_MAT2x3 = 0x8B65,
+ FLOAT_MAT2x4 = 0x8B66,
+ FLOAT_MAT3x2 = 0x8B67,
+ FLOAT_MAT3x4 = 0x8B68,
+ FLOAT_MAT4x2 = 0x8B69,
+ FLOAT_MAT4x3 = 0x8B6A,
+ SRGB = 0x8C40,
+ SRGB8 = 0x8C41,
+ SRGB_ALPHA = 0x8C42,
+ SRGB8_ALPHA8 = 0x8C43,
+ COMPRESSED_SRGB = 0x8C48,
+ COMPRESSED_SRGB_ALPHA = 0x8C49,
- // Core Extension: ARB_texture_rg
- RG = 0x8227,
- RG_INTEGER = 0x8228,
- R8 = 0x8229,
- R16 = 0x822A,
- RG8 = 0x822B,
- RG16 = 0x822C,
- R16F = 0x822D,
- R32F = 0x822E,
- RG16F = 0x822F,
- RG32F = 0x8230,
- R8I = 0x8231,
- R8UI = 0x8232,
- R16I = 0x8233,
- R16UI = 0x8234,
- R32I = 0x8235,
- R32UI = 0x8236,
- RG8I = 0x8237,
- RG8UI = 0x8238,
- RG16I = 0x8239,
- RG16UI = 0x823A,
- RG32I = 0x823B,
- RG32UI = 0x823C,
+ // Core Extension: ARB_vertex_array_object
+ VERTEX_ARRAY_BINDING = 0x85B5,
- // Core Extension: ARB_texture_compression_rgtc
- COMPRESSED_RED_RGTC1 = 0x8DBB,
- COMPRESSED_SIGNED_RED_RGTC1 = 0x8DBC,
- COMPRESSED_RG_RGTC2 = 0x8DBD,
- COMPRESSED_SIGNED_RG_RGTC2 = 0x8DBE,
+ // Core Extension: ARB_texture_rg
+ RG = 0x8227,
+ RG_INTEGER = 0x8228,
+ R8 = 0x8229,
+ R16 = 0x822A,
+ RG8 = 0x822B,
+ RG16 = 0x822C,
+ R16F = 0x822D,
+ R32F = 0x822E,
+ RG16F = 0x822F,
+ RG32F = 0x8230,
+ R8I = 0x8231,
+ R8UI = 0x8232,
+ R16I = 0x8233,
+ R16UI = 0x8234,
+ R32I = 0x8235,
+ R32UI = 0x8236,
+ RG8I = 0x8237,
+ RG8UI = 0x8238,
+ RG16I = 0x8239,
+ RG16UI = 0x823A,
+ RG32I = 0x823B,
+ RG32UI = 0x823C,
- // Core Extension: ARB_map_buffer_range
- MAP_READ_BIT = 0x0001,
- MAP_WRITE_BIT = 0x0002,
- MAP_INVALIDATE_RANGE_BIT = 0x0004,
- MAP_INVALIDATE_BUFFER_BIT = 0x0008,
- MAP_FLUSH_EXPLICIT_BIT = 0x0010,
- MAP_UNSYNCHRONIZED_BIT = 0x0020,
+ // Core Extension: ARB_texture_compression_rgtc
+ COMPRESSED_RED_RGTC1 = 0x8DBB,
+ COMPRESSED_SIGNED_RED_RGTC1 = 0x8DBC,
+ COMPRESSED_RG_RGTC2 = 0x8DBD,
+ COMPRESSED_SIGNED_RG_RGTC2 = 0x8DBE,
- // Core Extension: ARB_half_float_vertex
- HALF_FLOAT = 0x140B,
+ // Core Extension: ARB_map_buffer_range
+ MAP_READ_BIT = 0x0001,
+ MAP_WRITE_BIT = 0x0002,
+ MAP_INVALIDATE_RANGE_BIT = 0x0004,
+ MAP_INVALIDATE_BUFFER_BIT = 0x0008,
+ MAP_FLUSH_EXPLICIT_BIT = 0x0010,
+ MAP_UNSYNCHRONIZED_BIT = 0x0020,
- // Core Extension: ARB_framebuffer_sRGB
- FRAMEBUFFER_SRGB = 0x8DB9,
+ // Core Extension: ARB_half_float_vertex
+ HALF_FLOAT = 0x140B,
- // Core Extension: ARB_framebuffer_object
- INVALID_FRAMEBUFFER_OPERATION = 0x0506,
- FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING = 0x8210,
- FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE = 0x8211,
- FRAMEBUFFER_ATTACHMENT_RED_SIZE = 0x8212,
- FRAMEBUFFER_ATTACHMENT_GREEN_SIZE = 0x8213,
- FRAMEBUFFER_ATTACHMENT_BLUE_SIZE = 0x8214,
- FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE = 0x8215,
- FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE = 0x8216,
- FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE = 0x8217,
- FRAMEBUFFER_DEFAULT = 0x8218,
- FRAMEBUFFER_UNDEFINED = 0x8219,
- DEPTH_STENCIL_ATTACHMENT = 0x821A,
- INDEX = 0x8222,
- MAX_RENDERBUFFER_SIZE = 0x84E8,
- DEPTH_STENCIL = 0x84F9,
- UNSIGNED_INT_24_8 = 0x84FA,
- DEPTH24_STENCIL8 = 0x88F0,
- TEXTURE_STENCIL_SIZE = 0x88F1,
- TEXTURE_RED_TYPE = 0x8C10,
- TEXTURE_GREEN_TYPE = 0x8C11,
- TEXTURE_BLUE_TYPE = 0x8C12,
- TEXTURE_ALPHA_TYPE = 0x8C13,
- TEXTURE_DEPTH_TYPE = 0x8C16,
- UNSIGNED_NORMALIZED = 0x8C17,
- FRAMEBUFFER_BINDING = 0x8CA6,
- DRAW_FRAMEBUFFER_BINDING = 0x8CA6,
- RENDERBUFFER_BINDING = 0x8CA7,
- READ_FRAMEBUFFER = 0x8CA8,
- DRAW_FRAMEBUFFER = 0x8CA9,
- READ_FRAMEBUFFER_BINDING = 0x8CAA,
- RENDERBUFFER_SAMPLES = 0x8CAB,
- FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE = 0x8CD0,
- FRAMEBUFFER_ATTACHMENT_OBJECT_NAME = 0x8CD1,
- FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL = 0x8CD2,
- FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE = 0x8CD3,
- FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER = 0x8CD4,
- FRAMEBUFFER_COMPLETE = 0x8CD5,
- FRAMEBUFFER_INCOMPLETE_ATTACHMENT = 0x8CD6,
- FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT = 0x8CD7,
- FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER = 0x8CDB,
- FRAMEBUFFER_INCOMPLETE_READ_BUFFER = 0x8CDC,
- FRAMEBUFFER_UNSUPPORTED = 0x8CDD,
- MAX_COLOR_ATTACHMENTS = 0x8CDF,
- COLOR_ATTACHMENT0 = 0x8CE0,
- COLOR_ATTACHMENT1 = 0x8CE1,
- COLOR_ATTACHMENT2 = 0x8CE2,
- COLOR_ATTACHMENT3 = 0x8CE3,
- COLOR_ATTACHMENT4 = 0x8CE4,
- COLOR_ATTACHMENT5 = 0x8CE5,
- COLOR_ATTACHMENT6 = 0x8CE6,
- COLOR_ATTACHMENT7 = 0x8CE7,
- COLOR_ATTACHMENT8 = 0x8CE8,
- COLOR_ATTACHMENT9 = 0x8CE9,
- COLOR_ATTACHMENT10 = 0x8CEA,
- COLOR_ATTACHMENT11 = 0x8CEB,
- COLOR_ATTACHMENT12 = 0x8CEC,
- COLOR_ATTACHMENT13 = 0x8CED,
- COLOR_ATTACHMENT14 = 0x8CEE,
- COLOR_ATTACHMENT15 = 0x8CEF,
- DEPTH_ATTACHMENT = 0x8D00,
- STENCIL_ATTACHMENT = 0x8D20,
- FRAMEBUFFER = 0x8D40,
- RENDERBUFFER = 0x8D41,
- RENDERBUFFER_WIDTH = 0x8D42,
- RENDERBUFFER_HEIGHT = 0x8D43,
- RENDERBUFFER_INTERNAL_FORMAT = 0x8D44,
- STENCIL_INDEX1 = 0x8D46,
- STENCIL_INDEX4 = 0x8D47,
- STENCIL_INDEX8 = 0x8D48,
- STENCIL_INDEX16 = 0x8D49,
- RENDERBUFFER_RED_SIZE = 0x8D50,
- RENDERBUFFER_GREEN_SIZE = 0x8D51,
- RENDERBUFFER_BLUE_SIZE = 0x8D52,
- RENDERBUFFER_ALPHA_SIZE = 0x8D53,
- RENDERBUFFER_DEPTH_SIZE = 0x8D54,
- RENDERBUFFER_STENCIL_SIZE = 0x8D55,
- FRAMEBUFFER_INCOMPLETE_MULTISAMPLE = 0x8D56,
- MAX_SAMPLES = 0x8D57,
- TEXTURE_LUMINANCE_TYPE = 0x8C14,
- TEXTURE_INTENSITY_TYPE = 0x8C15,
+ // Core Extension: ARB_framebuffer_sRGB
+ FRAMEBUFFER_SRGB = 0x8DB9,
- // Core Extension: ARB_depth_buffer_float
- DEPTH_COMPONENT32F = 0x8CAC,
- DEPTH32F_STENCIL8 = 0x8CAD,
- FLOAT_32_UNSIGNED_INT_24_8_REV = 0x8DAD,
+ // Core Extension: ARB_framebuffer_object
+ INVALID_FRAMEBUFFER_OPERATION = 0x0506,
+ FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING = 0x8210,
+ FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE = 0x8211,
+ FRAMEBUFFER_ATTACHMENT_RED_SIZE = 0x8212,
+ FRAMEBUFFER_ATTACHMENT_GREEN_SIZE = 0x8213,
+ FRAMEBUFFER_ATTACHMENT_BLUE_SIZE = 0x8214,
+ FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE = 0x8215,
+ FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE = 0x8216,
+ FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE = 0x8217,
+ FRAMEBUFFER_DEFAULT = 0x8218,
+ FRAMEBUFFER_UNDEFINED = 0x8219,
+ DEPTH_STENCIL_ATTACHMENT = 0x821A,
+ INDEX = 0x8222,
+ MAX_RENDERBUFFER_SIZE = 0x84E8,
+ DEPTH_STENCIL = 0x84F9,
+ UNSIGNED_INT_24_8 = 0x84FA,
+ DEPTH24_STENCIL8 = 0x88F0,
+ TEXTURE_STENCIL_SIZE = 0x88F1,
+ TEXTURE_RED_TYPE = 0x8C10,
+ TEXTURE_GREEN_TYPE = 0x8C11,
+ TEXTURE_BLUE_TYPE = 0x8C12,
+ TEXTURE_ALPHA_TYPE = 0x8C13,
+ TEXTURE_DEPTH_TYPE = 0x8C16,
+ UNSIGNED_NORMALIZED = 0x8C17,
+ FRAMEBUFFER_BINDING = 0x8CA6,
+ DRAW_FRAMEBUFFER_BINDING = 0x8CA6,
+ RENDERBUFFER_BINDING = 0x8CA7,
+ READ_FRAMEBUFFER = 0x8CA8,
+ DRAW_FRAMEBUFFER = 0x8CA9,
+ READ_FRAMEBUFFER_BINDING = 0x8CAA,
+ RENDERBUFFER_SAMPLES = 0x8CAB,
+ FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE = 0x8CD0,
+ FRAMEBUFFER_ATTACHMENT_OBJECT_NAME = 0x8CD1,
+ FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL = 0x8CD2,
+ FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE = 0x8CD3,
+ FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER = 0x8CD4,
+ FRAMEBUFFER_COMPLETE = 0x8CD5,
+ FRAMEBUFFER_INCOMPLETE_ATTACHMENT = 0x8CD6,
+ FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT = 0x8CD7,
+ FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER = 0x8CDB,
+ FRAMEBUFFER_INCOMPLETE_READ_BUFFER = 0x8CDC,
+ FRAMEBUFFER_UNSUPPORTED = 0x8CDD,
+ MAX_COLOR_ATTACHMENTS = 0x8CDF,
+ COLOR_ATTACHMENT0 = 0x8CE0,
+ COLOR_ATTACHMENT1 = 0x8CE1,
+ COLOR_ATTACHMENT2 = 0x8CE2,
+ COLOR_ATTACHMENT3 = 0x8CE3,
+ COLOR_ATTACHMENT4 = 0x8CE4,
+ COLOR_ATTACHMENT5 = 0x8CE5,
+ COLOR_ATTACHMENT6 = 0x8CE6,
+ COLOR_ATTACHMENT7 = 0x8CE7,
+ COLOR_ATTACHMENT8 = 0x8CE8,
+ COLOR_ATTACHMENT9 = 0x8CE9,
+ COLOR_ATTACHMENT10 = 0x8CEA,
+ COLOR_ATTACHMENT11 = 0x8CEB,
+ COLOR_ATTACHMENT12 = 0x8CEC,
+ COLOR_ATTACHMENT13 = 0x8CED,
+ COLOR_ATTACHMENT14 = 0x8CEE,
+ COLOR_ATTACHMENT15 = 0x8CEF,
+ DEPTH_ATTACHMENT = 0x8D00,
+ STENCIL_ATTACHMENT = 0x8D20,
+ FRAMEBUFFER = 0x8D40,
+ RENDERBUFFER = 0x8D41,
+ RENDERBUFFER_WIDTH = 0x8D42,
+ RENDERBUFFER_HEIGHT = 0x8D43,
+ RENDERBUFFER_INTERNAL_FORMAT = 0x8D44,
+ STENCIL_INDEX1 = 0x8D46,
+ STENCIL_INDEX4 = 0x8D47,
+ STENCIL_INDEX8 = 0x8D48,
+ STENCIL_INDEX16 = 0x8D49,
+ RENDERBUFFER_RED_SIZE = 0x8D50,
+ RENDERBUFFER_GREEN_SIZE = 0x8D51,
+ RENDERBUFFER_BLUE_SIZE = 0x8D52,
+ RENDERBUFFER_ALPHA_SIZE = 0x8D53,
+ RENDERBUFFER_DEPTH_SIZE = 0x8D54,
+ RENDERBUFFER_STENCIL_SIZE = 0x8D55,
+ FRAMEBUFFER_INCOMPLETE_MULTISAMPLE = 0x8D56,
+ MAX_SAMPLES = 0x8D57,
+ TEXTURE_LUMINANCE_TYPE = 0x8C14,
+ TEXTURE_INTENSITY_TYPE = 0x8C15,
- // Version: 3.0
- COMPARE_REF_TO_TEXTURE = 0x884E,
- CLIP_DISTANCE0 = 0x3000,
- CLIP_DISTANCE1 = 0x3001,
- CLIP_DISTANCE2 = 0x3002,
- CLIP_DISTANCE3 = 0x3003,
- CLIP_DISTANCE4 = 0x3004,
- CLIP_DISTANCE5 = 0x3005,
- CLIP_DISTANCE6 = 0x3006,
- CLIP_DISTANCE7 = 0x3007,
- MAX_CLIP_DISTANCES = 0x0D32,
- MAJOR_VERSION = 0x821B,
- MINOR_VERSION = 0x821C,
- NUM_EXTENSIONS = 0x821D,
- CONTEXT_FLAGS = 0x821E,
- COMPRESSED_RED = 0x8225,
- COMPRESSED_RG = 0x8226,
- CONTEXT_FLAG_FORWARD_COMPATIBLE_BIT = 0x0001,
- RGBA32F = 0x8814,
- RGB32F = 0x8815,
- RGBA16F = 0x881A,
- RGB16F = 0x881B,
- VERTEX_ATTRIB_ARRAY_INTEGER = 0x88FD,
- MAX_ARRAY_TEXTURE_LAYERS = 0x88FF,
- MIN_PROGRAM_TEXEL_OFFSET = 0x8904,
- MAX_PROGRAM_TEXEL_OFFSET = 0x8905,
- CLAMP_READ_COLOR = 0x891C,
- FIXED_ONLY = 0x891D,
- TEXTURE_1D_ARRAY = 0x8C18,
- PROXY_TEXTURE_1D_ARRAY = 0x8C19,
- TEXTURE_2D_ARRAY = 0x8C1A,
- PROXY_TEXTURE_2D_ARRAY = 0x8C1B,
- TEXTURE_BINDING_1D_ARRAY = 0x8C1C,
- TEXTURE_BINDING_2D_ARRAY = 0x8C1D,
- R11F_G11F_B10F = 0x8C3A,
- UNSIGNED_INT_10F_11F_11F_REV = 0x8C3B,
- RGB9_E5 = 0x8C3D,
- UNSIGNED_INT_5_9_9_9_REV = 0x8C3E,
- TEXTURE_SHARED_SIZE = 0x8C3F,
- TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH = 0x8C76,
- TRANSFORM_FEEDBACK_BUFFER_MODE = 0x8C7F,
- MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS = 0x8C80,
- TRANSFORM_FEEDBACK_VARYINGS = 0x8C83,
- TRANSFORM_FEEDBACK_BUFFER_START = 0x8C84,
- TRANSFORM_FEEDBACK_BUFFER_SIZE = 0x8C85,
- PRIMITIVES_GENERATED = 0x8C87,
- TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN = 0x8C88,
- RASTERIZER_DISCARD = 0x8C89,
- MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS = 0x8C8A,
- MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS = 0x8C8B,
- INTERLEAVED_ATTRIBS = 0x8C8C,
- SEPARATE_ATTRIBS = 0x8C8D,
- TRANSFORM_FEEDBACK_BUFFER = 0x8C8E,
- TRANSFORM_FEEDBACK_BUFFER_BINDING = 0x8C8F,
- RGBA32UI = 0x8D70,
- RGB32UI = 0x8D71,
- RGBA16UI = 0x8D76,
- RGB16UI = 0x8D77,
- RGBA8UI = 0x8D7C,
- RGB8UI = 0x8D7D,
- RGBA32I = 0x8D82,
- RGB32I = 0x8D83,
- RGBA16I = 0x8D88,
- RGB16I = 0x8D89,
- RGBA8I = 0x8D8E,
- RGB8I = 0x8D8F,
- RED_INTEGER = 0x8D94,
- GREEN_INTEGER = 0x8D95,
- BLUE_INTEGER = 0x8D96,
- RGB_INTEGER = 0x8D98,
- RGBA_INTEGER = 0x8D99,
- BGR_INTEGER = 0x8D9A,
- BGRA_INTEGER = 0x8D9B,
- SAMPLER_1D_ARRAY = 0x8DC0,
- SAMPLER_2D_ARRAY = 0x8DC1,
- SAMPLER_1D_ARRAY_SHADOW = 0x8DC3,
- SAMPLER_2D_ARRAY_SHADOW = 0x8DC4,
- SAMPLER_CUBE_SHADOW = 0x8DC5,
- UNSIGNED_INT_VEC2 = 0x8DC6,
- UNSIGNED_INT_VEC3 = 0x8DC7,
- UNSIGNED_INT_VEC4 = 0x8DC8,
- INT_SAMPLER_1D = 0x8DC9,
- INT_SAMPLER_2D = 0x8DCA,
- INT_SAMPLER_3D = 0x8DCB,
- INT_SAMPLER_CUBE = 0x8DCC,
- INT_SAMPLER_1D_ARRAY = 0x8DCE,
- INT_SAMPLER_2D_ARRAY = 0x8DCF,
- UNSIGNED_INT_SAMPLER_1D = 0x8DD1,
- UNSIGNED_INT_SAMPLER_2D = 0x8DD2,
- UNSIGNED_INT_SAMPLER_3D = 0x8DD3,
- UNSIGNED_INT_SAMPLER_CUBE = 0x8DD4,
- UNSIGNED_INT_SAMPLER_1D_ARRAY = 0x8DD6,
- UNSIGNED_INT_SAMPLER_2D_ARRAY = 0x8DD7,
- QUERY_WAIT = 0x8E13,
- QUERY_NO_WAIT = 0x8E14,
- QUERY_BY_REGION_WAIT = 0x8E15,
- QUERY_BY_REGION_NO_WAIT = 0x8E16,
- BUFFER_ACCESS_FLAGS = 0x911F,
- BUFFER_MAP_LENGTH = 0x9120,
- BUFFER_MAP_OFFSET = 0x9121,
+ // Core Extension: ARB_depth_buffer_float
+ DEPTH_COMPONENT32F = 0x8CAC,
+ DEPTH32F_STENCIL8 = 0x8CAD,
+ FLOAT_32_UNSIGNED_INT_24_8_REV = 0x8DAD,
- // Core Extension: ARB_uniform_buffer_object
- UNIFORM_BUFFER = 0x8A11,
- UNIFORM_BUFFER_BINDING = 0x8A28,
- UNIFORM_BUFFER_START = 0x8A29,
- UNIFORM_BUFFER_SIZE = 0x8A2A,
- MAX_VERTEX_UNIFORM_BLOCKS = 0x8A2B,
- MAX_FRAGMENT_UNIFORM_BLOCKS = 0x8A2D,
- MAX_COMBINED_UNIFORM_BLOCKS = 0x8A2E,
- MAX_UNIFORM_BUFFER_BINDINGS = 0x8A2F,
- MAX_UNIFORM_BLOCK_SIZE = 0x8A30,
- MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS = 0x8A31,
- MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS = 0x8A33,
- UNIFORM_BUFFER_OFFSET_ALIGNMENT = 0x8A34,
- ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH = 0x8A35,
- ACTIVE_UNIFORM_BLOCKS = 0x8A36,
- UNIFORM_TYPE = 0x8A37,
- UNIFORM_SIZE = 0x8A38,
- UNIFORM_NAME_LENGTH = 0x8A39,
- UNIFORM_BLOCK_INDEX = 0x8A3A,
- UNIFORM_OFFSET = 0x8A3B,
- UNIFORM_ARRAY_STRIDE = 0x8A3C,
- UNIFORM_MATRIX_STRIDE = 0x8A3D,
- UNIFORM_IS_ROW_MAJOR = 0x8A3E,
- UNIFORM_BLOCK_BINDING = 0x8A3F,
- UNIFORM_BLOCK_DATA_SIZE = 0x8A40,
- UNIFORM_BLOCK_NAME_LENGTH = 0x8A41,
- UNIFORM_BLOCK_ACTIVE_UNIFORMS = 0x8A42,
- UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES = 0x8A43,
- UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER = 0x8A44,
- UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER = 0x8A46,
- INVALID_INDEX = 0xFFFFFFFF,
- MAX_GEOMETRY_UNIFORM_BLOCKS = 0x8A2C,
- MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS = 0x8A32,
- UNIFORM_BLOCK_REFERENCED_BY_GEOMETRY_SHADER = 0x8A45,
+ // Version: 3.0
+ COMPARE_REF_TO_TEXTURE = 0x884E,
+ CLIP_DISTANCE0 = 0x3000,
+ CLIP_DISTANCE1 = 0x3001,
+ CLIP_DISTANCE2 = 0x3002,
+ CLIP_DISTANCE3 = 0x3003,
+ CLIP_DISTANCE4 = 0x3004,
+ CLIP_DISTANCE5 = 0x3005,
+ CLIP_DISTANCE6 = 0x3006,
+ CLIP_DISTANCE7 = 0x3007,
+ MAX_CLIP_DISTANCES = 0x0D32,
+ MAJOR_VERSION = 0x821B,
+ MINOR_VERSION = 0x821C,
+ NUM_EXTENSIONS = 0x821D,
+ CONTEXT_FLAGS = 0x821E,
+ COMPRESSED_RED = 0x8225,
+ COMPRESSED_RG = 0x8226,
+ CONTEXT_FLAG_FORWARD_COMPATIBLE_BIT = 0x0001,
+ RGBA32F = 0x8814,
+ RGB32F = 0x8815,
+ RGBA16F = 0x881A,
+ RGB16F = 0x881B,
+ VERTEX_ATTRIB_ARRAY_INTEGER = 0x88FD,
+ MAX_ARRAY_TEXTURE_LAYERS = 0x88FF,
+ MIN_PROGRAM_TEXEL_OFFSET = 0x8904,
+ MAX_PROGRAM_TEXEL_OFFSET = 0x8905,
+ CLAMP_READ_COLOR = 0x891C,
+ FIXED_ONLY = 0x891D,
+ TEXTURE_1D_ARRAY = 0x8C18,
+ PROXY_TEXTURE_1D_ARRAY = 0x8C19,
+ TEXTURE_2D_ARRAY = 0x8C1A,
+ PROXY_TEXTURE_2D_ARRAY = 0x8C1B,
+ TEXTURE_BINDING_1D_ARRAY = 0x8C1C,
+ TEXTURE_BINDING_2D_ARRAY = 0x8C1D,
+ R11F_G11F_B10F = 0x8C3A,
+ UNSIGNED_INT_10F_11F_11F_REV = 0x8C3B,
+ RGB9_E5 = 0x8C3D,
+ UNSIGNED_INT_5_9_9_9_REV = 0x8C3E,
+ TEXTURE_SHARED_SIZE = 0x8C3F,
+ TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH = 0x8C76,
+ TRANSFORM_FEEDBACK_BUFFER_MODE = 0x8C7F,
+ MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS = 0x8C80,
+ TRANSFORM_FEEDBACK_VARYINGS = 0x8C83,
+ TRANSFORM_FEEDBACK_BUFFER_START = 0x8C84,
+ TRANSFORM_FEEDBACK_BUFFER_SIZE = 0x8C85,
+ PRIMITIVES_GENERATED = 0x8C87,
+ TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN = 0x8C88,
+ RASTERIZER_DISCARD = 0x8C89,
+ MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS = 0x8C8A,
+ MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS = 0x8C8B,
+ INTERLEAVED_ATTRIBS = 0x8C8C,
+ SEPARATE_ATTRIBS = 0x8C8D,
+ TRANSFORM_FEEDBACK_BUFFER = 0x8C8E,
+ TRANSFORM_FEEDBACK_BUFFER_BINDING = 0x8C8F,
+ RGBA32UI = 0x8D70,
+ RGB32UI = 0x8D71,
+ RGBA16UI = 0x8D76,
+ RGB16UI = 0x8D77,
+ RGBA8UI = 0x8D7C,
+ RGB8UI = 0x8D7D,
+ RGBA32I = 0x8D82,
+ RGB32I = 0x8D83,
+ RGBA16I = 0x8D88,
+ RGB16I = 0x8D89,
+ RGBA8I = 0x8D8E,
+ RGB8I = 0x8D8F,
+ RED_INTEGER = 0x8D94,
+ GREEN_INTEGER = 0x8D95,
+ BLUE_INTEGER = 0x8D96,
+ RGB_INTEGER = 0x8D98,
+ RGBA_INTEGER = 0x8D99,
+ BGR_INTEGER = 0x8D9A,
+ BGRA_INTEGER = 0x8D9B,
+ SAMPLER_1D_ARRAY = 0x8DC0,
+ SAMPLER_2D_ARRAY = 0x8DC1,
+ SAMPLER_1D_ARRAY_SHADOW = 0x8DC3,
+ SAMPLER_2D_ARRAY_SHADOW = 0x8DC4,
+ SAMPLER_CUBE_SHADOW = 0x8DC5,
+ UNSIGNED_INT_VEC2 = 0x8DC6,
+ UNSIGNED_INT_VEC3 = 0x8DC7,
+ UNSIGNED_INT_VEC4 = 0x8DC8,
+ INT_SAMPLER_1D = 0x8DC9,
+ INT_SAMPLER_2D = 0x8DCA,
+ INT_SAMPLER_3D = 0x8DCB,
+ INT_SAMPLER_CUBE = 0x8DCC,
+ INT_SAMPLER_1D_ARRAY = 0x8DCE,
+ INT_SAMPLER_2D_ARRAY = 0x8DCF,
+ UNSIGNED_INT_SAMPLER_1D = 0x8DD1,
+ UNSIGNED_INT_SAMPLER_2D = 0x8DD2,
+ UNSIGNED_INT_SAMPLER_3D = 0x8DD3,
+ UNSIGNED_INT_SAMPLER_CUBE = 0x8DD4,
+ UNSIGNED_INT_SAMPLER_1D_ARRAY = 0x8DD6,
+ UNSIGNED_INT_SAMPLER_2D_ARRAY = 0x8DD7,
+ QUERY_WAIT = 0x8E13,
+ QUERY_NO_WAIT = 0x8E14,
+ QUERY_BY_REGION_WAIT = 0x8E15,
+ QUERY_BY_REGION_NO_WAIT = 0x8E16,
+ BUFFER_ACCESS_FLAGS = 0x911F,
+ BUFFER_MAP_LENGTH = 0x9120,
+ BUFFER_MAP_OFFSET = 0x9121,
- // Core Extension: ARB_copy_buffer
- COPY_READ_BUFFER = 0x8F36,
- COPY_WRITE_BUFFER = 0x8F37,
- COPY_READ_BUFFER_BINDING = 0x8F36,
- COPY_WRITE_BUFFER_BINDING = 0x8F37,
+ // Core Extension: ARB_uniform_buffer_object
+ UNIFORM_BUFFER = 0x8A11,
+ UNIFORM_BUFFER_BINDING = 0x8A28,
+ UNIFORM_BUFFER_START = 0x8A29,
+ UNIFORM_BUFFER_SIZE = 0x8A2A,
+ MAX_VERTEX_UNIFORM_BLOCKS = 0x8A2B,
+ MAX_FRAGMENT_UNIFORM_BLOCKS = 0x8A2D,
+ MAX_COMBINED_UNIFORM_BLOCKS = 0x8A2E,
+ MAX_UNIFORM_BUFFER_BINDINGS = 0x8A2F,
+ MAX_UNIFORM_BLOCK_SIZE = 0x8A30,
+ MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS = 0x8A31,
+ MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS = 0x8A33,
+ UNIFORM_BUFFER_OFFSET_ALIGNMENT = 0x8A34,
+ ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH = 0x8A35,
+ ACTIVE_UNIFORM_BLOCKS = 0x8A36,
+ UNIFORM_TYPE = 0x8A37,
+ UNIFORM_SIZE = 0x8A38,
+ UNIFORM_NAME_LENGTH = 0x8A39,
+ UNIFORM_BLOCK_INDEX = 0x8A3A,
+ UNIFORM_OFFSET = 0x8A3B,
+ UNIFORM_ARRAY_STRIDE = 0x8A3C,
+ UNIFORM_MATRIX_STRIDE = 0x8A3D,
+ UNIFORM_IS_ROW_MAJOR = 0x8A3E,
+ UNIFORM_BLOCK_BINDING = 0x8A3F,
+ UNIFORM_BLOCK_DATA_SIZE = 0x8A40,
+ UNIFORM_BLOCK_NAME_LENGTH = 0x8A41,
+ UNIFORM_BLOCK_ACTIVE_UNIFORMS = 0x8A42,
+ UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES = 0x8A43,
+ UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER = 0x8A44,
+ UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER = 0x8A46,
+ INVALID_INDEX = 0xFFFFFFFF,
+ MAX_GEOMETRY_UNIFORM_BLOCKS = 0x8A2C,
+ MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS = 0x8A32,
+ UNIFORM_BLOCK_REFERENCED_BY_GEOMETRY_SHADER = 0x8A45,
- // Version: 3.1
- SAMPLER_2D_RECT = 0x8B63,
- SAMPLER_2D_RECT_SHADOW = 0x8B64,
- SAMPLER_BUFFER = 0x8DC2,
- INT_SAMPLER_2D_RECT = 0x8DCD,
- INT_SAMPLER_BUFFER = 0x8DD0,
- UNSIGNED_INT_SAMPLER_2D_RECT = 0x8DD5,
- UNSIGNED_INT_SAMPLER_BUFFER = 0x8DD8,
- TEXTURE_BUFFER = 0x8C2A,
- MAX_TEXTURE_BUFFER_SIZE = 0x8C2B,
- TEXTURE_BINDING_BUFFER = 0x8C2C,
- TEXTURE_BUFFER_DATA_STORE_BINDING = 0x8C2D,
- TEXTURE_RECTANGLE = 0x84F5,
- TEXTURE_BINDING_RECTANGLE = 0x84F6,
- PROXY_TEXTURE_RECTANGLE = 0x84F7,
- MAX_RECTANGLE_TEXTURE_SIZE = 0x84F8,
- RED_SNORM = 0x8F90,
- RG_SNORM = 0x8F91,
- RGB_SNORM = 0x8F92,
- RGBA_SNORM = 0x8F93,
- R8_SNORM = 0x8F94,
- RG8_SNORM = 0x8F95,
- RGB8_SNORM = 0x8F96,
- RGBA8_SNORM = 0x8F97,
- R16_SNORM = 0x8F98,
- RG16_SNORM = 0x8F99,
- RGB16_SNORM = 0x8F9A,
- RGBA16_SNORM = 0x8F9B,
- SIGNED_NORMALIZED = 0x8F9C,
- PRIMITIVE_RESTART = 0x8F9D,
- PRIMITIVE_RESTART_INDEX = 0x8F9E,
+ // Core Extension: ARB_copy_buffer
+ COPY_READ_BUFFER = 0x8F36,
+ COPY_WRITE_BUFFER = 0x8F37,
+ COPY_READ_BUFFER_BINDING = 0x8F36,
+ COPY_WRITE_BUFFER_BINDING = 0x8F37,
- };
+ // Version: 3.1
+ SAMPLER_2D_RECT = 0x8B63,
+ SAMPLER_2D_RECT_SHADOW = 0x8B64,
+ SAMPLER_BUFFER = 0x8DC2,
+ INT_SAMPLER_2D_RECT = 0x8DCD,
+ INT_SAMPLER_BUFFER = 0x8DD0,
+ UNSIGNED_INT_SAMPLER_2D_RECT = 0x8DD5,
+ UNSIGNED_INT_SAMPLER_BUFFER = 0x8DD8,
+ TEXTURE_BUFFER = 0x8C2A,
+ MAX_TEXTURE_BUFFER_SIZE = 0x8C2B,
+ TEXTURE_BINDING_BUFFER = 0x8C2C,
+ TEXTURE_BUFFER_DATA_STORE_BINDING = 0x8C2D,
+ TEXTURE_RECTANGLE = 0x84F5,
+ TEXTURE_BINDING_RECTANGLE = 0x84F6,
+ PROXY_TEXTURE_RECTANGLE = 0x84F7,
+ MAX_RECTANGLE_TEXTURE_SIZE = 0x84F8,
+ RED_SNORM = 0x8F90,
+ RG_SNORM = 0x8F91,
+ RGB_SNORM = 0x8F92,
+ RGBA_SNORM = 0x8F93,
+ R8_SNORM = 0x8F94,
+ RG8_SNORM = 0x8F95,
+ RGB8_SNORM = 0x8F96,
+ RGBA8_SNORM = 0x8F97,
+ R16_SNORM = 0x8F98,
+ RG16_SNORM = 0x8F99,
+ RGB16_SNORM = 0x8F9A,
+ RGBA16_SNORM = 0x8F9B,
+ SIGNED_NORMALIZED = 0x8F9C,
+ PRIMITIVE_RESTART = 0x8F9D,
+ PRIMITIVE_RESTART_INDEX = 0x8F9E,
- // Extension: 1.1
- extern void (CODEGEN_FUNCPTR *CullFace)(GLenum mode);
- extern void (CODEGEN_FUNCPTR *FrontFace)(GLenum mode);
- extern void (CODEGEN_FUNCPTR *Hint)(GLenum target, GLenum mode);
- extern void (CODEGEN_FUNCPTR *LineWidth)(GLfloat width);
- extern void (CODEGEN_FUNCPTR *PointSize)(GLfloat size);
- extern void (CODEGEN_FUNCPTR *PolygonMode)(GLenum face, GLenum mode);
- extern void (CODEGEN_FUNCPTR *Scissor)(GLint x, GLint y, GLsizei width, GLsizei height);
- extern void (CODEGEN_FUNCPTR *TexParameterf)(GLenum target, GLenum pname, GLfloat param);
- extern void (CODEGEN_FUNCPTR *TexParameterfv)(GLenum target, GLenum pname, const GLfloat *params);
- extern void (CODEGEN_FUNCPTR *TexParameteri)(GLenum target, GLenum pname, GLint param);
- extern void (CODEGEN_FUNCPTR *TexParameteriv)(GLenum target, GLenum pname, const GLint *params);
- extern void (CODEGEN_FUNCPTR *TexImage1D)(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
- extern void (CODEGEN_FUNCPTR *TexImage2D)(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
- extern void (CODEGEN_FUNCPTR *DrawBuffer)(GLenum mode);
- extern void (CODEGEN_FUNCPTR *Clear)(GLbitfield mask);
- extern void (CODEGEN_FUNCPTR *ClearColor)(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
- extern void (CODEGEN_FUNCPTR *ClearStencil)(GLint s);
- extern void (CODEGEN_FUNCPTR *ClearDepth)(GLdouble depth);
- extern void (CODEGEN_FUNCPTR *StencilMask)(GLuint mask);
- extern void (CODEGEN_FUNCPTR *ColorMask)(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
- extern void (CODEGEN_FUNCPTR *DepthMask)(GLboolean flag);
- extern void (CODEGEN_FUNCPTR *Disable)(GLenum cap);
- extern void (CODEGEN_FUNCPTR *Enable)(GLenum cap);
- extern void (CODEGEN_FUNCPTR *Finish)();
- extern void (CODEGEN_FUNCPTR *Flush)();
- extern void (CODEGEN_FUNCPTR *BlendFunc)(GLenum sfactor, GLenum dfactor);
- extern void (CODEGEN_FUNCPTR *LogicOp)(GLenum opcode);
- extern void (CODEGEN_FUNCPTR *StencilFunc)(GLenum func, GLint ref, GLuint mask);
- extern void (CODEGEN_FUNCPTR *StencilOp)(GLenum fail, GLenum zfail, GLenum zpass);
- extern void (CODEGEN_FUNCPTR *DepthFunc)(GLenum func);
- extern void (CODEGEN_FUNCPTR *PixelStoref)(GLenum pname, GLfloat param);
- extern void (CODEGEN_FUNCPTR *PixelStorei)(GLenum pname, GLint param);
- extern void (CODEGEN_FUNCPTR *ReadBuffer)(GLenum mode);
- extern void (CODEGEN_FUNCPTR *ReadPixels)(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels);
- extern void (CODEGEN_FUNCPTR *GetBooleanv)(GLenum pname, GLboolean *params);
- extern void (CODEGEN_FUNCPTR *GetDoublev)(GLenum pname, GLdouble *params);
- extern GLenum (CODEGEN_FUNCPTR *GetError)();
- extern void (CODEGEN_FUNCPTR *GetFloatv)(GLenum pname, GLfloat *params);
- extern void (CODEGEN_FUNCPTR *GetIntegerv)(GLenum pname, GLint *params);
- extern const GLubyte * (CODEGEN_FUNCPTR *GetString)(GLenum name);
- extern void (CODEGEN_FUNCPTR *GetTexImage)(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels);
- extern void (CODEGEN_FUNCPTR *GetTexParameterfv)(GLenum target, GLenum pname, GLfloat *params);
- extern void (CODEGEN_FUNCPTR *GetTexParameteriv)(GLenum target, GLenum pname, GLint *params);
- extern void (CODEGEN_FUNCPTR *GetTexLevelParameterfv)(GLenum target, GLint level, GLenum pname, GLfloat *params);
- extern void (CODEGEN_FUNCPTR *GetTexLevelParameteriv)(GLenum target, GLint level, GLenum pname, GLint *params);
- extern GLboolean (CODEGEN_FUNCPTR *IsEnabled)(GLenum cap);
- extern void (CODEGEN_FUNCPTR *DepthRange)(GLdouble ren_near, GLdouble ren_far);
- extern void (CODEGEN_FUNCPTR *Viewport)(GLint x, GLint y, GLsizei width, GLsizei height);
- extern void (CODEGEN_FUNCPTR *DrawArrays)(GLenum mode, GLint first, GLsizei count);
- extern void (CODEGEN_FUNCPTR *DrawElements)(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices);
- extern void (CODEGEN_FUNCPTR *GetPointerv)(GLenum pname, GLvoid* *params);
- extern void (CODEGEN_FUNCPTR *PolygonOffset)(GLfloat factor, GLfloat units);
- extern void (CODEGEN_FUNCPTR *CopyTexImage1D)(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border);
- extern void (CODEGEN_FUNCPTR *CopyTexImage2D)(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
- extern void (CODEGEN_FUNCPTR *CopyTexSubImage1D)(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
- extern void (CODEGEN_FUNCPTR *CopyTexSubImage2D)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
- extern void (CODEGEN_FUNCPTR *TexSubImage1D)(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels);
- extern void (CODEGEN_FUNCPTR *TexSubImage2D)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
- extern void (CODEGEN_FUNCPTR *BindTexture)(GLenum target, GLuint texture);
- extern void (CODEGEN_FUNCPTR *DeleteTextures)(GLsizei n, const GLuint *textures);
- extern void (CODEGEN_FUNCPTR *GenTextures)(GLsizei n, GLuint *textures);
- extern GLboolean (CODEGEN_FUNCPTR *IsTexture)(GLuint texture);
- extern void (CODEGEN_FUNCPTR *Indexub)(GLubyte c);
- extern void (CODEGEN_FUNCPTR *Indexubv)(const GLubyte *c);
+ // Legacy
+ VERTEX_ARRAY = 0x8074,
+ NORMAL_ARRAY = 0x8075,
+ COLOR_ARRAY = 0x8076,
+ TEXTURE_COORD_ARRAY = 0x8078,
+ TEXTURE_ENV = 0x2300,
+ TEXTURE_ENV_MODE = 0x2200,
+ MODELVIEW = 0x1700,
+ PROJECTION = 0x1701,
+ LIGHTING = 0x0B50
+ };
- // Extension: 1.2
- extern void (CODEGEN_FUNCPTR *BlendColor)(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
- extern void (CODEGEN_FUNCPTR *BlendEquation)(GLenum mode);
- extern void (CODEGEN_FUNCPTR *DrawRangeElements)(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices);
- extern void (CODEGEN_FUNCPTR *TexSubImage3D)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels);
- extern void (CODEGEN_FUNCPTR *CopyTexSubImage3D)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+ // Extension: 1.1
+ extern void (CODEGEN_FUNCPTR *CullFace)(GLenum mode);
+ extern void (CODEGEN_FUNCPTR *FrontFace)(GLenum mode);
+ extern void (CODEGEN_FUNCPTR *Hint)(GLenum target, GLenum mode);
+ extern void (CODEGEN_FUNCPTR *LineWidth)(GLfloat width);
+ extern void (CODEGEN_FUNCPTR *PointSize)(GLfloat size);
+ extern void (CODEGEN_FUNCPTR *PolygonMode)(GLenum face, GLenum mode);
+ extern void (CODEGEN_FUNCPTR *Scissor)(GLint x, GLint y, GLsizei width, GLsizei height);
+ extern void (CODEGEN_FUNCPTR *TexParameterf)(GLenum target, GLenum pname, GLfloat param);
+ extern void (CODEGEN_FUNCPTR *TexParameterfv)(GLenum target, GLenum pname, const GLfloat *params);
+ extern void (CODEGEN_FUNCPTR *TexParameteri)(GLenum target, GLenum pname, GLint param);
+ extern void (CODEGEN_FUNCPTR *TexParameteriv)(GLenum target, GLenum pname, const GLint *params);
+ extern void (CODEGEN_FUNCPTR *TexImage1D)(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+ extern void (CODEGEN_FUNCPTR *TexImage2D)(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+ extern void (CODEGEN_FUNCPTR *DrawBuffer)(GLenum mode);
+ extern void (CODEGEN_FUNCPTR *Clear)(GLbitfield mask);
+ extern void (CODEGEN_FUNCPTR *ClearColor)(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+ extern void (CODEGEN_FUNCPTR *ClearStencil)(GLint s);
+ extern void (CODEGEN_FUNCPTR *ClearDepth)(GLdouble depth);
+ extern void (CODEGEN_FUNCPTR *StencilMask)(GLuint mask);
+ extern void (CODEGEN_FUNCPTR *ColorMask)(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
+ extern void (CODEGEN_FUNCPTR *DepthMask)(GLboolean flag);
+ extern void (CODEGEN_FUNCPTR *Disable)(GLenum cap);
+ extern void (CODEGEN_FUNCPTR *Enable)(GLenum cap);
+ extern void (CODEGEN_FUNCPTR *Finish)();
+ extern void (CODEGEN_FUNCPTR *Flush)();
+ extern void (CODEGEN_FUNCPTR *BlendFunc)(GLenum sfactor, GLenum dfactor);
+ extern void (CODEGEN_FUNCPTR *LogicOp)(GLenum opcode);
+ extern void (CODEGEN_FUNCPTR *StencilFunc)(GLenum func, GLint ref, GLuint mask);
+ extern void (CODEGEN_FUNCPTR *StencilOp)(GLenum fail, GLenum zfail, GLenum zpass);
+ extern void (CODEGEN_FUNCPTR *DepthFunc)(GLenum func);
+ extern void (CODEGEN_FUNCPTR *PixelStoref)(GLenum pname, GLfloat param);
+ extern void (CODEGEN_FUNCPTR *PixelStorei)(GLenum pname, GLint param);
+ extern void (CODEGEN_FUNCPTR *ReadBuffer)(GLenum mode);
+ extern void (CODEGEN_FUNCPTR *ReadPixels)(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels);
+ extern void (CODEGEN_FUNCPTR *GetBooleanv)(GLenum pname, GLboolean *params);
+ extern void (CODEGEN_FUNCPTR *GetDoublev)(GLenum pname, GLdouble *params);
+ extern GLenum (CODEGEN_FUNCPTR *GetError)();
+ extern void (CODEGEN_FUNCPTR *GetFloatv)(GLenum pname, GLfloat *params);
+ extern void (CODEGEN_FUNCPTR *GetIntegerv)(GLenum pname, GLint *params);
+ extern const GLubyte * (CODEGEN_FUNCPTR *GetString)(GLenum name);
+ extern void (CODEGEN_FUNCPTR *GetTexImage)(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels);
+ extern void (CODEGEN_FUNCPTR *GetTexParameterfv)(GLenum target, GLenum pname, GLfloat *params);
+ extern void (CODEGEN_FUNCPTR *GetTexParameteriv)(GLenum target, GLenum pname, GLint *params);
+ extern void (CODEGEN_FUNCPTR *GetTexLevelParameterfv)(GLenum target, GLint level, GLenum pname, GLfloat *params);
+ extern void (CODEGEN_FUNCPTR *GetTexLevelParameteriv)(GLenum target, GLint level, GLenum pname, GLint *params);
+ extern GLboolean (CODEGEN_FUNCPTR *IsEnabled)(GLenum cap);
+ extern void (CODEGEN_FUNCPTR *DepthRange)(GLdouble ren_near, GLdouble ren_far);
+ extern void (CODEGEN_FUNCPTR *Viewport)(GLint x, GLint y, GLsizei width, GLsizei height);
+ extern void (CODEGEN_FUNCPTR *DrawArrays)(GLenum mode, GLint first, GLsizei count);
+ extern void (CODEGEN_FUNCPTR *DrawElements)(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices);
+ extern void (CODEGEN_FUNCPTR *GetPointerv)(GLenum pname, GLvoid* *params);
+ extern void (CODEGEN_FUNCPTR *PolygonOffset)(GLfloat factor, GLfloat units);
+ extern void (CODEGEN_FUNCPTR *CopyTexImage1D)(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border);
+ extern void (CODEGEN_FUNCPTR *CopyTexImage2D)(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
+ extern void (CODEGEN_FUNCPTR *CopyTexSubImage1D)(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
+ extern void (CODEGEN_FUNCPTR *CopyTexSubImage2D)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+ extern void (CODEGEN_FUNCPTR *TexSubImage1D)(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels);
+ extern void (CODEGEN_FUNCPTR *TexSubImage2D)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
+ extern void (CODEGEN_FUNCPTR *BindTexture)(GLenum target, GLuint texture);
+ extern void (CODEGEN_FUNCPTR *DeleteTextures)(GLsizei n, const GLuint *textures);
+ extern void (CODEGEN_FUNCPTR *GenTextures)(GLsizei n, GLuint *textures);
+ extern GLboolean (CODEGEN_FUNCPTR *IsTexture)(GLuint texture);
+ extern void (CODEGEN_FUNCPTR *Indexub)(GLubyte c);
+ extern void (CODEGEN_FUNCPTR *Indexubv)(const GLubyte *c);
- // Extension: 1.3
- extern void (CODEGEN_FUNCPTR *ActiveTexture)(GLenum texture);
- extern void (CODEGEN_FUNCPTR *SampleCoverage)(GLfloat value, GLboolean invert);
- extern void (CODEGEN_FUNCPTR *CompressedTexImage3D)(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data);
- extern void (CODEGEN_FUNCPTR *CompressedTexImage2D)(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data);
- extern void (CODEGEN_FUNCPTR *CompressedTexImage1D)(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data);
- extern void (CODEGEN_FUNCPTR *CompressedTexSubImage3D)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data);
- extern void (CODEGEN_FUNCPTR *CompressedTexSubImage2D)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data);
- extern void (CODEGEN_FUNCPTR *CompressedTexSubImage1D)(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data);
- extern void (CODEGEN_FUNCPTR *GetCompressedTexImage)(GLenum target, GLint level, GLvoid *img);
+ // Extension: 1.2
+ extern void (CODEGEN_FUNCPTR *BlendColor)(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+ extern void (CODEGEN_FUNCPTR *BlendEquation)(GLenum mode);
+ extern void (CODEGEN_FUNCPTR *DrawRangeElements)(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices);
+ extern void (CODEGEN_FUNCPTR *TexSubImage3D)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels);
+ extern void (CODEGEN_FUNCPTR *CopyTexSubImage3D)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
- // Extension: 1.4
- extern void (CODEGEN_FUNCPTR *BlendFuncSeparate)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
- extern void (CODEGEN_FUNCPTR *MultiDrawArrays)(GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount);
- extern void (CODEGEN_FUNCPTR *MultiDrawElements)(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount);
- extern void (CODEGEN_FUNCPTR *PointParameterf)(GLenum pname, GLfloat param);
- extern void (CODEGEN_FUNCPTR *PointParameterfv)(GLenum pname, const GLfloat *params);
- extern void (CODEGEN_FUNCPTR *PointParameteri)(GLenum pname, GLint param);
- extern void (CODEGEN_FUNCPTR *PointParameteriv)(GLenum pname, const GLint *params);
+ // Extension: 1.3
+ extern void (CODEGEN_FUNCPTR *ActiveTexture)(GLenum texture);
+ extern void (CODEGEN_FUNCPTR *SampleCoverage)(GLfloat value, GLboolean invert);
+ extern void (CODEGEN_FUNCPTR *CompressedTexImage3D)(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data);
+ extern void (CODEGEN_FUNCPTR *CompressedTexImage2D)(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data);
+ extern void (CODEGEN_FUNCPTR *CompressedTexImage1D)(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data);
+ extern void (CODEGEN_FUNCPTR *CompressedTexSubImage3D)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data);
+ extern void (CODEGEN_FUNCPTR *CompressedTexSubImage2D)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data);
+ extern void (CODEGEN_FUNCPTR *CompressedTexSubImage1D)(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data);
+ extern void (CODEGEN_FUNCPTR *GetCompressedTexImage)(GLenum target, GLint level, GLvoid *img);
- // Extension: 1.5
- extern void (CODEGEN_FUNCPTR *GenQueries)(GLsizei n, GLuint *ids);
- extern void (CODEGEN_FUNCPTR *DeleteQueries)(GLsizei n, const GLuint *ids);
- extern GLboolean (CODEGEN_FUNCPTR *IsQuery)(GLuint id);
- extern void (CODEGEN_FUNCPTR *BeginQuery)(GLenum target, GLuint id);
- extern void (CODEGEN_FUNCPTR *EndQuery)(GLenum target);
- extern void (CODEGEN_FUNCPTR *GetQueryiv)(GLenum target, GLenum pname, GLint *params);
- extern void (CODEGEN_FUNCPTR *GetQueryObjectiv)(GLuint id, GLenum pname, GLint *params);
- extern void (CODEGEN_FUNCPTR *GetQueryObjectuiv)(GLuint id, GLenum pname, GLuint *params);
- extern void (CODEGEN_FUNCPTR *BindBuffer)(GLenum target, GLuint buffer);
- extern void (CODEGEN_FUNCPTR *DeleteBuffers)(GLsizei n, const GLuint *buffers);
- extern void (CODEGEN_FUNCPTR *GenBuffers)(GLsizei n, GLuint *buffers);
- extern GLboolean (CODEGEN_FUNCPTR *IsBuffer)(GLuint buffer);
- extern void (CODEGEN_FUNCPTR *BufferData)(GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage);
- extern void (CODEGEN_FUNCPTR *BufferSubData)(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data);
- extern void (CODEGEN_FUNCPTR *GetBufferSubData)(GLenum target, GLintptr offset, GLsizeiptr size, GLvoid *data);
- extern GLvoid* (CODEGEN_FUNCPTR *MapBuffer)(GLenum target, GLenum access);
- extern GLboolean (CODEGEN_FUNCPTR *UnmapBuffer)(GLenum target);
- extern void (CODEGEN_FUNCPTR *GetBufferParameteriv)(GLenum target, GLenum pname, GLint *params);
- extern void (CODEGEN_FUNCPTR *GetBufferPointerv)(GLenum target, GLenum pname, GLvoid* *params);
+ // Extension: 1.4
+ extern void (CODEGEN_FUNCPTR *BlendFuncSeparate)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
+ extern void (CODEGEN_FUNCPTR *MultiDrawArrays)(GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount);
+ extern void (CODEGEN_FUNCPTR *MultiDrawElements)(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount);
+ extern void (CODEGEN_FUNCPTR *PointParameterf)(GLenum pname, GLfloat param);
+ extern void (CODEGEN_FUNCPTR *PointParameterfv)(GLenum pname, const GLfloat *params);
+ extern void (CODEGEN_FUNCPTR *PointParameteri)(GLenum pname, GLint param);
+ extern void (CODEGEN_FUNCPTR *PointParameteriv)(GLenum pname, const GLint *params);
- // Extension: 2.0
- extern void (CODEGEN_FUNCPTR *BlendEquationSeparate)(GLenum modeRGB, GLenum modeAlpha);
- extern void (CODEGEN_FUNCPTR *DrawBuffers)(GLsizei n, const GLenum *bufs);
- extern void (CODEGEN_FUNCPTR *StencilOpSeparate)(GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass);
- extern void (CODEGEN_FUNCPTR *StencilFuncSeparate)(GLenum face, GLenum func, GLint ref, GLuint mask);
- extern void (CODEGEN_FUNCPTR *StencilMaskSeparate)(GLenum face, GLuint mask);
- extern void (CODEGEN_FUNCPTR *AttachShader)(GLuint program, GLuint shader);
- extern void (CODEGEN_FUNCPTR *BindAttribLocation)(GLuint program, GLuint index, const GLchar *name);
- extern void (CODEGEN_FUNCPTR *CompileShader)(GLuint shader);
- extern GLuint (CODEGEN_FUNCPTR *CreateProgram)();
- extern GLuint (CODEGEN_FUNCPTR *CreateShader)(GLenum type);
- extern void (CODEGEN_FUNCPTR *DeleteProgram)(GLuint program);
- extern void (CODEGEN_FUNCPTR *DeleteShader)(GLuint shader);
- extern void (CODEGEN_FUNCPTR *DetachShader)(GLuint program, GLuint shader);
- extern void (CODEGEN_FUNCPTR *DisableVertexAttribArray)(GLuint index);
- extern void (CODEGEN_FUNCPTR *EnableVertexAttribArray)(GLuint index);
- extern void (CODEGEN_FUNCPTR *GetActiveAttrib)(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
- extern void (CODEGEN_FUNCPTR *GetActiveUniform)(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
- extern void (CODEGEN_FUNCPTR *GetAttachedShaders)(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *obj);
- extern GLint (CODEGEN_FUNCPTR *GetAttribLocation)(GLuint program, const GLchar *name);
- extern void (CODEGEN_FUNCPTR *GetProgramiv)(GLuint program, GLenum pname, GLint *params);
- extern void (CODEGEN_FUNCPTR *GetProgramInfoLog)(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
- extern void (CODEGEN_FUNCPTR *GetShaderiv)(GLuint shader, GLenum pname, GLint *params);
- extern void (CODEGEN_FUNCPTR *GetShaderInfoLog)(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
- extern void (CODEGEN_FUNCPTR *GetShaderSource)(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source);
- extern GLint (CODEGEN_FUNCPTR *GetUniformLocation)(GLuint program, const GLchar *name);
- extern void (CODEGEN_FUNCPTR *GetUniformfv)(GLuint program, GLint location, GLfloat *params);
- extern void (CODEGEN_FUNCPTR *GetUniformiv)(GLuint program, GLint location, GLint *params);
- extern void (CODEGEN_FUNCPTR *GetVertexAttribdv)(GLuint index, GLenum pname, GLdouble *params);
- extern void (CODEGEN_FUNCPTR *GetVertexAttribfv)(GLuint index, GLenum pname, GLfloat *params);
- extern void (CODEGEN_FUNCPTR *GetVertexAttribiv)(GLuint index, GLenum pname, GLint *params);
- extern void (CODEGEN_FUNCPTR *GetVertexAttribPointerv)(GLuint index, GLenum pname, GLvoid* *pointer);
- extern GLboolean (CODEGEN_FUNCPTR *IsProgram)(GLuint program);
- extern GLboolean (CODEGEN_FUNCPTR *IsShader)(GLuint shader);
- extern void (CODEGEN_FUNCPTR *LinkProgram)(GLuint program);
- extern void (CODEGEN_FUNCPTR *ShaderSource)(GLuint shader, GLsizei count, const GLchar* const *string, const GLint *length);
- extern void (CODEGEN_FUNCPTR *UseProgram)(GLuint program);
- extern void (CODEGEN_FUNCPTR *Uniform1f)(GLint location, GLfloat v0);
- extern void (CODEGEN_FUNCPTR *Uniform2f)(GLint location, GLfloat v0, GLfloat v1);
- extern void (CODEGEN_FUNCPTR *Uniform3f)(GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
- extern void (CODEGEN_FUNCPTR *Uniform4f)(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
- extern void (CODEGEN_FUNCPTR *Uniform1i)(GLint location, GLint v0);
- extern void (CODEGEN_FUNCPTR *Uniform2i)(GLint location, GLint v0, GLint v1);
- extern void (CODEGEN_FUNCPTR *Uniform3i)(GLint location, GLint v0, GLint v1, GLint v2);
- extern void (CODEGEN_FUNCPTR *Uniform4i)(GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
- extern void (CODEGEN_FUNCPTR *Uniform1fv)(GLint location, GLsizei count, const GLfloat *value);
- extern void (CODEGEN_FUNCPTR *Uniform2fv)(GLint location, GLsizei count, const GLfloat *value);
- extern void (CODEGEN_FUNCPTR *Uniform3fv)(GLint location, GLsizei count, const GLfloat *value);
- extern void (CODEGEN_FUNCPTR *Uniform4fv)(GLint location, GLsizei count, const GLfloat *value);
- extern void (CODEGEN_FUNCPTR *Uniform1iv)(GLint location, GLsizei count, const GLint *value);
- extern void (CODEGEN_FUNCPTR *Uniform2iv)(GLint location, GLsizei count, const GLint *value);
- extern void (CODEGEN_FUNCPTR *Uniform3iv)(GLint location, GLsizei count, const GLint *value);
- extern void (CODEGEN_FUNCPTR *Uniform4iv)(GLint location, GLsizei count, const GLint *value);
- extern void (CODEGEN_FUNCPTR *UniformMatrix2fv)(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
- extern void (CODEGEN_FUNCPTR *UniformMatrix3fv)(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
- extern void (CODEGEN_FUNCPTR *UniformMatrix4fv)(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
- extern void (CODEGEN_FUNCPTR *ValidateProgram)(GLuint program);
- extern void (CODEGEN_FUNCPTR *VertexAttribPointer)(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer);
+ // Extension: 1.5
+ extern void (CODEGEN_FUNCPTR *GenQueries)(GLsizei n, GLuint *ids);
+ extern void (CODEGEN_FUNCPTR *DeleteQueries)(GLsizei n, const GLuint *ids);
+ extern GLboolean (CODEGEN_FUNCPTR *IsQuery)(GLuint id);
+ extern void (CODEGEN_FUNCPTR *BeginQuery)(GLenum target, GLuint id);
+ extern void (CODEGEN_FUNCPTR *EndQuery)(GLenum target);
+ extern void (CODEGEN_FUNCPTR *GetQueryiv)(GLenum target, GLenum pname, GLint *params);
+ extern void (CODEGEN_FUNCPTR *GetQueryObjectiv)(GLuint id, GLenum pname, GLint *params);
+ extern void (CODEGEN_FUNCPTR *GetQueryObjectuiv)(GLuint id, GLenum pname, GLuint *params);
+ extern void (CODEGEN_FUNCPTR *BindBuffer)(GLenum target, GLuint buffer);
+ extern void (CODEGEN_FUNCPTR *DeleteBuffers)(GLsizei n, const GLuint *buffers);
+ extern void (CODEGEN_FUNCPTR *GenBuffers)(GLsizei n, GLuint *buffers);
+ extern GLboolean (CODEGEN_FUNCPTR *IsBuffer)(GLuint buffer);
+ extern void (CODEGEN_FUNCPTR *BufferData)(GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage);
+ extern void (CODEGEN_FUNCPTR *BufferSubData)(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data);
+ extern void (CODEGEN_FUNCPTR *GetBufferSubData)(GLenum target, GLintptr offset, GLsizeiptr size, GLvoid *data);
+ extern GLvoid* (CODEGEN_FUNCPTR *MapBuffer)(GLenum target, GLenum access);
+ extern GLboolean (CODEGEN_FUNCPTR *UnmapBuffer)(GLenum target);
+ extern void (CODEGEN_FUNCPTR *GetBufferParameteriv)(GLenum target, GLenum pname, GLint *params);
+ extern void (CODEGEN_FUNCPTR *GetBufferPointerv)(GLenum target, GLenum pname, GLvoid* *params);
- // Extension: 2.1
- extern void (CODEGEN_FUNCPTR *UniformMatrix2x3fv)(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
- extern void (CODEGEN_FUNCPTR *UniformMatrix3x2fv)(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
- extern void (CODEGEN_FUNCPTR *UniformMatrix2x4fv)(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
- extern void (CODEGEN_FUNCPTR *UniformMatrix4x2fv)(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
- extern void (CODEGEN_FUNCPTR *UniformMatrix3x4fv)(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
- extern void (CODEGEN_FUNCPTR *UniformMatrix4x3fv)(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ // Extension: 2.0
+ extern void (CODEGEN_FUNCPTR *BlendEquationSeparate)(GLenum modeRGB, GLenum modeAlpha);
+ extern void (CODEGEN_FUNCPTR *DrawBuffers)(GLsizei n, const GLenum *bufs);
+ extern void (CODEGEN_FUNCPTR *StencilOpSeparate)(GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass);
+ extern void (CODEGEN_FUNCPTR *StencilFuncSeparate)(GLenum face, GLenum func, GLint ref, GLuint mask);
+ extern void (CODEGEN_FUNCPTR *StencilMaskSeparate)(GLenum face, GLuint mask);
+ extern void (CODEGEN_FUNCPTR *AttachShader)(GLuint program, GLuint shader);
+ extern void (CODEGEN_FUNCPTR *BindAttribLocation)(GLuint program, GLuint index, const GLchar *name);
+ extern void (CODEGEN_FUNCPTR *CompileShader)(GLuint shader);
+ extern GLuint (CODEGEN_FUNCPTR *CreateProgram)();
+ extern GLuint (CODEGEN_FUNCPTR *CreateShader)(GLenum type);
+ extern void (CODEGEN_FUNCPTR *DeleteProgram)(GLuint program);
+ extern void (CODEGEN_FUNCPTR *DeleteShader)(GLuint shader);
+ extern void (CODEGEN_FUNCPTR *DetachShader)(GLuint program, GLuint shader);
+ extern void (CODEGEN_FUNCPTR *DisableVertexAttribArray)(GLuint index);
+ extern void (CODEGEN_FUNCPTR *EnableVertexAttribArray)(GLuint index);
+ extern void (CODEGEN_FUNCPTR *GetActiveAttrib)(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
+ extern void (CODEGEN_FUNCPTR *GetActiveUniform)(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
+ extern void (CODEGEN_FUNCPTR *GetAttachedShaders)(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *obj);
+ extern GLint (CODEGEN_FUNCPTR *GetAttribLocation)(GLuint program, const GLchar *name);
+ extern void (CODEGEN_FUNCPTR *GetProgramiv)(GLuint program, GLenum pname, GLint *params);
+ extern void (CODEGEN_FUNCPTR *GetProgramInfoLog)(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
+ extern void (CODEGEN_FUNCPTR *GetShaderiv)(GLuint shader, GLenum pname, GLint *params);
+ extern void (CODEGEN_FUNCPTR *GetShaderInfoLog)(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
+ extern void (CODEGEN_FUNCPTR *GetShaderSource)(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source);
+ extern GLint (CODEGEN_FUNCPTR *GetUniformLocation)(GLuint program, const GLchar *name);
+ extern void (CODEGEN_FUNCPTR *GetUniformfv)(GLuint program, GLint location, GLfloat *params);
+ extern void (CODEGEN_FUNCPTR *GetUniformiv)(GLuint program, GLint location, GLint *params);
+ extern void (CODEGEN_FUNCPTR *GetVertexAttribdv)(GLuint index, GLenum pname, GLdouble *params);
+ extern void (CODEGEN_FUNCPTR *GetVertexAttribfv)(GLuint index, GLenum pname, GLfloat *params);
+ extern void (CODEGEN_FUNCPTR *GetVertexAttribiv)(GLuint index, GLenum pname, GLint *params);
+ extern void (CODEGEN_FUNCPTR *GetVertexAttribPointerv)(GLuint index, GLenum pname, GLvoid* *pointer);
+ extern GLboolean (CODEGEN_FUNCPTR *IsProgram)(GLuint program);
+ extern GLboolean (CODEGEN_FUNCPTR *IsShader)(GLuint shader);
+ extern void (CODEGEN_FUNCPTR *LinkProgram)(GLuint program);
+ extern void (CODEGEN_FUNCPTR *ShaderSource)(GLuint shader, GLsizei count, const GLchar* const *string, const GLint *length);
+ extern void (CODEGEN_FUNCPTR *UseProgram)(GLuint program);
+ extern void (CODEGEN_FUNCPTR *Uniform1f)(GLint location, GLfloat v0);
+ extern void (CODEGEN_FUNCPTR *Uniform2f)(GLint location, GLfloat v0, GLfloat v1);
+ extern void (CODEGEN_FUNCPTR *Uniform3f)(GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
+ extern void (CODEGEN_FUNCPTR *Uniform4f)(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
+ extern void (CODEGEN_FUNCPTR *Uniform1i)(GLint location, GLint v0);
+ extern void (CODEGEN_FUNCPTR *Uniform2i)(GLint location, GLint v0, GLint v1);
+ extern void (CODEGEN_FUNCPTR *Uniform3i)(GLint location, GLint v0, GLint v1, GLint v2);
+ extern void (CODEGEN_FUNCPTR *Uniform4i)(GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
+ extern void (CODEGEN_FUNCPTR *Uniform1fv)(GLint location, GLsizei count, const GLfloat *value);
+ extern void (CODEGEN_FUNCPTR *Uniform2fv)(GLint location, GLsizei count, const GLfloat *value);
+ extern void (CODEGEN_FUNCPTR *Uniform3fv)(GLint location, GLsizei count, const GLfloat *value);
+ extern void (CODEGEN_FUNCPTR *Uniform4fv)(GLint location, GLsizei count, const GLfloat *value);
+ extern void (CODEGEN_FUNCPTR *Uniform1iv)(GLint location, GLsizei count, const GLint *value);
+ extern void (CODEGEN_FUNCPTR *Uniform2iv)(GLint location, GLsizei count, const GLint *value);
+ extern void (CODEGEN_FUNCPTR *Uniform3iv)(GLint location, GLsizei count, const GLint *value);
+ extern void (CODEGEN_FUNCPTR *Uniform4iv)(GLint location, GLsizei count, const GLint *value);
+ extern void (CODEGEN_FUNCPTR *UniformMatrix2fv)(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ extern void (CODEGEN_FUNCPTR *UniformMatrix3fv)(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ extern void (CODEGEN_FUNCPTR *UniformMatrix4fv)(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ extern void (CODEGEN_FUNCPTR *ValidateProgram)(GLuint program);
+ extern void (CODEGEN_FUNCPTR *VertexAttribPointer)(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer);
- // Extension: ARB_vertex_array_object
- extern void (CODEGEN_FUNCPTR *BindVertexArray)(GLuint ren_array);
- extern void (CODEGEN_FUNCPTR *DeleteVertexArrays)(GLsizei n, const GLuint *arrays);
- extern void (CODEGEN_FUNCPTR *GenVertexArrays)(GLsizei n, GLuint *arrays);
- extern GLboolean (CODEGEN_FUNCPTR *IsVertexArray)(GLuint ren_array);
+ // Extension: 2.1
+ extern void (CODEGEN_FUNCPTR *UniformMatrix2x3fv)(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ extern void (CODEGEN_FUNCPTR *UniformMatrix3x2fv)(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ extern void (CODEGEN_FUNCPTR *UniformMatrix2x4fv)(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ extern void (CODEGEN_FUNCPTR *UniformMatrix4x2fv)(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ extern void (CODEGEN_FUNCPTR *UniformMatrix3x4fv)(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ extern void (CODEGEN_FUNCPTR *UniformMatrix4x3fv)(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
- // Extension: ARB_map_buffer_range
- extern GLvoid* (CODEGEN_FUNCPTR *MapBufferRange)(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access);
- extern void (CODEGEN_FUNCPTR *FlushMappedBufferRange)(GLenum target, GLintptr offset, GLsizeiptr length);
+ // Extension: ARB_vertex_array_object
+ extern void (CODEGEN_FUNCPTR *BindVertexArray)(GLuint ren_array);
+ extern void (CODEGEN_FUNCPTR *DeleteVertexArrays)(GLsizei n, const GLuint *arrays);
+ extern void (CODEGEN_FUNCPTR *GenVertexArrays)(GLsizei n, GLuint *arrays);
+ extern GLboolean (CODEGEN_FUNCPTR *IsVertexArray)(GLuint ren_array);
- // Extension: ARB_framebuffer_object
- extern GLboolean (CODEGEN_FUNCPTR *IsRenderbuffer)(GLuint renderbuffer);
- extern void (CODEGEN_FUNCPTR *BindRenderbuffer)(GLenum target, GLuint renderbuffer);
- extern void (CODEGEN_FUNCPTR *DeleteRenderbuffers)(GLsizei n, const GLuint *renderbuffers);
- extern void (CODEGEN_FUNCPTR *GenRenderbuffers)(GLsizei n, GLuint *renderbuffers);
- extern void (CODEGEN_FUNCPTR *RenderbufferStorage)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
- extern void (CODEGEN_FUNCPTR *GetRenderbufferParameteriv)(GLenum target, GLenum pname, GLint *params);
- extern GLboolean (CODEGEN_FUNCPTR *IsFramebuffer)(GLuint framebuffer);
- extern void (CODEGEN_FUNCPTR *BindFramebuffer)(GLenum target, GLuint framebuffer);
- extern void (CODEGEN_FUNCPTR *DeleteFramebuffers)(GLsizei n, const GLuint *framebuffers);
- extern void (CODEGEN_FUNCPTR *GenFramebuffers)(GLsizei n, GLuint *framebuffers);
- extern GLenum (CODEGEN_FUNCPTR *CheckFramebufferStatus)(GLenum target);
- extern void (CODEGEN_FUNCPTR *FramebufferTexture1D)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
- extern void (CODEGEN_FUNCPTR *FramebufferTexture2D)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
- extern void (CODEGEN_FUNCPTR *FramebufferTexture3D)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
- extern void (CODEGEN_FUNCPTR *FramebufferRenderbuffer)(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
- extern void (CODEGEN_FUNCPTR *GetFramebufferAttachmentParameteriv)(GLenum target, GLenum attachment, GLenum pname, GLint *params);
- extern void (CODEGEN_FUNCPTR *GenerateMipmap)(GLenum target);
- extern void (CODEGEN_FUNCPTR *BlitFramebuffer)(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
- extern void (CODEGEN_FUNCPTR *RenderbufferStorageMultisample)(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
- extern void (CODEGEN_FUNCPTR *FramebufferTextureLayer)(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer);
+ // Extension: ARB_map_buffer_range
+ extern GLvoid* (CODEGEN_FUNCPTR *MapBufferRange)(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access);
+ extern void (CODEGEN_FUNCPTR *FlushMappedBufferRange)(GLenum target, GLintptr offset, GLsizeiptr length);
- // Extension: 3.0
- extern void (CODEGEN_FUNCPTR *ColorMaski)(GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a);
- extern void (CODEGEN_FUNCPTR *GetBooleani_v)(GLenum target, GLuint index, GLboolean *data);
- extern void (CODEGEN_FUNCPTR *GetIntegeri_v)(GLenum target, GLuint index, GLint *data);
- extern void (CODEGEN_FUNCPTR *Enablei)(GLenum target, GLuint index);
- extern void (CODEGEN_FUNCPTR *Disablei)(GLenum target, GLuint index);
- extern GLboolean (CODEGEN_FUNCPTR *IsEnabledi)(GLenum target, GLuint index);
- extern void (CODEGEN_FUNCPTR *BeginTransformFeedback)(GLenum primitiveMode);
- extern void (CODEGEN_FUNCPTR *EndTransformFeedback)();
- extern void (CODEGEN_FUNCPTR *BindBufferRange)(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size);
- extern void (CODEGEN_FUNCPTR *BindBufferBase)(GLenum target, GLuint index, GLuint buffer);
- extern void (CODEGEN_FUNCPTR *TransformFeedbackVaryings)(GLuint program, GLsizei count, const GLchar* const *varyings, GLenum bufferMode);
- extern void (CODEGEN_FUNCPTR *GetTransformFeedbackVarying)(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name);
- extern void (CODEGEN_FUNCPTR *ClampColor)(GLenum target, GLenum clamp);
- extern void (CODEGEN_FUNCPTR *BeginConditionalRender)(GLuint id, GLenum mode);
- extern void (CODEGEN_FUNCPTR *EndConditionalRender)();
- extern void (CODEGEN_FUNCPTR *VertexAttribIPointer)(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
- extern void (CODEGEN_FUNCPTR *GetVertexAttribIiv)(GLuint index, GLenum pname, GLint *params);
- extern void (CODEGEN_FUNCPTR *GetVertexAttribIuiv)(GLuint index, GLenum pname, GLuint *params);
- extern void (CODEGEN_FUNCPTR *VertexAttribI1i)(GLuint index, GLint x);
- extern void (CODEGEN_FUNCPTR *VertexAttribI2i)(GLuint index, GLint x, GLint y);
- extern void (CODEGEN_FUNCPTR *VertexAttribI3i)(GLuint index, GLint x, GLint y, GLint z);
- extern void (CODEGEN_FUNCPTR *VertexAttribI4i)(GLuint index, GLint x, GLint y, GLint z, GLint w);
- extern void (CODEGEN_FUNCPTR *VertexAttribI1ui)(GLuint index, GLuint x);
- extern void (CODEGEN_FUNCPTR *VertexAttribI2ui)(GLuint index, GLuint x, GLuint y);
- extern void (CODEGEN_FUNCPTR *VertexAttribI3ui)(GLuint index, GLuint x, GLuint y, GLuint z);
- extern void (CODEGEN_FUNCPTR *VertexAttribI4ui)(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w);
- extern void (CODEGEN_FUNCPTR *VertexAttribI1iv)(GLuint index, const GLint *v);
- extern void (CODEGEN_FUNCPTR *VertexAttribI2iv)(GLuint index, const GLint *v);
- extern void (CODEGEN_FUNCPTR *VertexAttribI3iv)(GLuint index, const GLint *v);
- extern void (CODEGEN_FUNCPTR *VertexAttribI4iv)(GLuint index, const GLint *v);
- extern void (CODEGEN_FUNCPTR *VertexAttribI1uiv)(GLuint index, const GLuint *v);
- extern void (CODEGEN_FUNCPTR *VertexAttribI2uiv)(GLuint index, const GLuint *v);
- extern void (CODEGEN_FUNCPTR *VertexAttribI3uiv)(GLuint index, const GLuint *v);
- extern void (CODEGEN_FUNCPTR *VertexAttribI4uiv)(GLuint index, const GLuint *v);
- extern void (CODEGEN_FUNCPTR *VertexAttribI4bv)(GLuint index, const GLbyte *v);
- extern void (CODEGEN_FUNCPTR *VertexAttribI4sv)(GLuint index, const GLshort *v);
- extern void (CODEGEN_FUNCPTR *VertexAttribI4ubv)(GLuint index, const GLubyte *v);
- extern void (CODEGEN_FUNCPTR *VertexAttribI4usv)(GLuint index, const GLushort *v);
- extern void (CODEGEN_FUNCPTR *GetUniformuiv)(GLuint program, GLint location, GLuint *params);
- extern void (CODEGEN_FUNCPTR *BindFragDataLocation)(GLuint program, GLuint color, const GLchar *name);
- extern GLint (CODEGEN_FUNCPTR *GetFragDataLocation)(GLuint program, const GLchar *name);
- extern void (CODEGEN_FUNCPTR *Uniform1ui)(GLint location, GLuint v0);
- extern void (CODEGEN_FUNCPTR *Uniform2ui)(GLint location, GLuint v0, GLuint v1);
- extern void (CODEGEN_FUNCPTR *Uniform3ui)(GLint location, GLuint v0, GLuint v1, GLuint v2);
- extern void (CODEGEN_FUNCPTR *Uniform4ui)(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
- extern void (CODEGEN_FUNCPTR *Uniform1uiv)(GLint location, GLsizei count, const GLuint *value);
- extern void (CODEGEN_FUNCPTR *Uniform2uiv)(GLint location, GLsizei count, const GLuint *value);
- extern void (CODEGEN_FUNCPTR *Uniform3uiv)(GLint location, GLsizei count, const GLuint *value);
- extern void (CODEGEN_FUNCPTR *Uniform4uiv)(GLint location, GLsizei count, const GLuint *value);
- extern void (CODEGEN_FUNCPTR *TexParameterIiv)(GLenum target, GLenum pname, const GLint *params);
- extern void (CODEGEN_FUNCPTR *TexParameterIuiv)(GLenum target, GLenum pname, const GLuint *params);
- extern void (CODEGEN_FUNCPTR *GetTexParameterIiv)(GLenum target, GLenum pname, GLint *params);
- extern void (CODEGEN_FUNCPTR *GetTexParameterIuiv)(GLenum target, GLenum pname, GLuint *params);
- extern void (CODEGEN_FUNCPTR *ClearBufferiv)(GLenum buffer, GLint drawbuffer, const GLint *value);
- extern void (CODEGEN_FUNCPTR *ClearBufferuiv)(GLenum buffer, GLint drawbuffer, const GLuint *value);
- extern void (CODEGEN_FUNCPTR *ClearBufferfv)(GLenum buffer, GLint drawbuffer, const GLfloat *value);
- extern void (CODEGEN_FUNCPTR *ClearBufferfi)(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil);
- extern const GLubyte * (CODEGEN_FUNCPTR *GetStringi)(GLenum name, GLuint index);
+ // Extension: ARB_framebuffer_object
+ extern GLboolean (CODEGEN_FUNCPTR *IsRenderbuffer)(GLuint renderbuffer);
+ extern void (CODEGEN_FUNCPTR *BindRenderbuffer)(GLenum target, GLuint renderbuffer);
+ extern void (CODEGEN_FUNCPTR *DeleteRenderbuffers)(GLsizei n, const GLuint *renderbuffers);
+ extern void (CODEGEN_FUNCPTR *GenRenderbuffers)(GLsizei n, GLuint *renderbuffers);
+ extern void (CODEGEN_FUNCPTR *RenderbufferStorage)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
+ extern void (CODEGEN_FUNCPTR *GetRenderbufferParameteriv)(GLenum target, GLenum pname, GLint *params);
+ extern GLboolean (CODEGEN_FUNCPTR *IsFramebuffer)(GLuint framebuffer);
+ extern void (CODEGEN_FUNCPTR *BindFramebuffer)(GLenum target, GLuint framebuffer);
+ extern void (CODEGEN_FUNCPTR *DeleteFramebuffers)(GLsizei n, const GLuint *framebuffers);
+ extern void (CODEGEN_FUNCPTR *GenFramebuffers)(GLsizei n, GLuint *framebuffers);
+ extern GLenum (CODEGEN_FUNCPTR *CheckFramebufferStatus)(GLenum target);
+ extern void (CODEGEN_FUNCPTR *FramebufferTexture1D)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
+ extern void (CODEGEN_FUNCPTR *FramebufferTexture2D)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
+ extern void (CODEGEN_FUNCPTR *FramebufferTexture3D)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
+ extern void (CODEGEN_FUNCPTR *FramebufferRenderbuffer)(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
+ extern void (CODEGEN_FUNCPTR *GetFramebufferAttachmentParameteriv)(GLenum target, GLenum attachment, GLenum pname, GLint *params);
+ extern void (CODEGEN_FUNCPTR *GenerateMipmap)(GLenum target);
+ extern void (CODEGEN_FUNCPTR *BlitFramebuffer)(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
+ extern void (CODEGEN_FUNCPTR *RenderbufferStorageMultisample)(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
+ extern void (CODEGEN_FUNCPTR *FramebufferTextureLayer)(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer);
- // Extension: ARB_uniform_buffer_object
- extern void (CODEGEN_FUNCPTR *GetUniformIndices)(GLuint program, GLsizei uniformCount, const GLchar* const *uniformNames, GLuint *uniformIndices);
- extern void (CODEGEN_FUNCPTR *GetActiveUniformsiv)(GLuint program, GLsizei uniformCount, const GLuint *uniformIndices, GLenum pname, GLint *params);
- extern void (CODEGEN_FUNCPTR *GetActiveUniformName)(GLuint program, GLuint uniformIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformName);
- extern GLuint (CODEGEN_FUNCPTR *GetUniformBlockIndex)(GLuint program, const GLchar *uniformBlockName);
- extern void (CODEGEN_FUNCPTR *GetActiveUniformBlockiv)(GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint *params);
- extern void (CODEGEN_FUNCPTR *GetActiveUniformBlockName)(GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformBlockName);
- extern void (CODEGEN_FUNCPTR *UniformBlockBinding)(GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding);
+ // Extension: 3.0
+ extern void (CODEGEN_FUNCPTR *ColorMaski)(GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a);
+ extern void (CODEGEN_FUNCPTR *GetBooleani_v)(GLenum target, GLuint index, GLboolean *data);
+ extern void (CODEGEN_FUNCPTR *GetIntegeri_v)(GLenum target, GLuint index, GLint *data);
+ extern void (CODEGEN_FUNCPTR *Enablei)(GLenum target, GLuint index);
+ extern void (CODEGEN_FUNCPTR *Disablei)(GLenum target, GLuint index);
+ extern GLboolean (CODEGEN_FUNCPTR *IsEnabledi)(GLenum target, GLuint index);
+ extern void (CODEGEN_FUNCPTR *BeginTransformFeedback)(GLenum primitiveMode);
+ extern void (CODEGEN_FUNCPTR *EndTransformFeedback)();
+ extern void (CODEGEN_FUNCPTR *BindBufferRange)(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size);
+ extern void (CODEGEN_FUNCPTR *BindBufferBase)(GLenum target, GLuint index, GLuint buffer);
+ extern void (CODEGEN_FUNCPTR *TransformFeedbackVaryings)(GLuint program, GLsizei count, const GLchar* const *varyings, GLenum bufferMode);
+ extern void (CODEGEN_FUNCPTR *GetTransformFeedbackVarying)(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name);
+ extern void (CODEGEN_FUNCPTR *ClampColor)(GLenum target, GLenum clamp);
+ extern void (CODEGEN_FUNCPTR *BeginConditionalRender)(GLuint id, GLenum mode);
+ extern void (CODEGEN_FUNCPTR *EndConditionalRender)();
+ extern void (CODEGEN_FUNCPTR *VertexAttribIPointer)(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ extern void (CODEGEN_FUNCPTR *GetVertexAttribIiv)(GLuint index, GLenum pname, GLint *params);
+ extern void (CODEGEN_FUNCPTR *GetVertexAttribIuiv)(GLuint index, GLenum pname, GLuint *params);
+ extern void (CODEGEN_FUNCPTR *VertexAttribI1i)(GLuint index, GLint x);
+ extern void (CODEGEN_FUNCPTR *VertexAttribI2i)(GLuint index, GLint x, GLint y);
+ extern void (CODEGEN_FUNCPTR *VertexAttribI3i)(GLuint index, GLint x, GLint y, GLint z);
+ extern void (CODEGEN_FUNCPTR *VertexAttribI4i)(GLuint index, GLint x, GLint y, GLint z, GLint w);
+ extern void (CODEGEN_FUNCPTR *VertexAttribI1ui)(GLuint index, GLuint x);
+ extern void (CODEGEN_FUNCPTR *VertexAttribI2ui)(GLuint index, GLuint x, GLuint y);
+ extern void (CODEGEN_FUNCPTR *VertexAttribI3ui)(GLuint index, GLuint x, GLuint y, GLuint z);
+ extern void (CODEGEN_FUNCPTR *VertexAttribI4ui)(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w);
+ extern void (CODEGEN_FUNCPTR *VertexAttribI1iv)(GLuint index, const GLint *v);
+ extern void (CODEGEN_FUNCPTR *VertexAttribI2iv)(GLuint index, const GLint *v);
+ extern void (CODEGEN_FUNCPTR *VertexAttribI3iv)(GLuint index, const GLint *v);
+ extern void (CODEGEN_FUNCPTR *VertexAttribI4iv)(GLuint index, const GLint *v);
+ extern void (CODEGEN_FUNCPTR *VertexAttribI1uiv)(GLuint index, const GLuint *v);
+ extern void (CODEGEN_FUNCPTR *VertexAttribI2uiv)(GLuint index, const GLuint *v);
+ extern void (CODEGEN_FUNCPTR *VertexAttribI3uiv)(GLuint index, const GLuint *v);
+ extern void (CODEGEN_FUNCPTR *VertexAttribI4uiv)(GLuint index, const GLuint *v);
+ extern void (CODEGEN_FUNCPTR *VertexAttribI4bv)(GLuint index, const GLbyte *v);
+ extern void (CODEGEN_FUNCPTR *VertexAttribI4sv)(GLuint index, const GLshort *v);
+ extern void (CODEGEN_FUNCPTR *VertexAttribI4ubv)(GLuint index, const GLubyte *v);
+ extern void (CODEGEN_FUNCPTR *VertexAttribI4usv)(GLuint index, const GLushort *v);
+ extern void (CODEGEN_FUNCPTR *GetUniformuiv)(GLuint program, GLint location, GLuint *params);
+ extern void (CODEGEN_FUNCPTR *BindFragDataLocation)(GLuint program, GLuint color, const GLchar *name);
+ extern GLint (CODEGEN_FUNCPTR *GetFragDataLocation)(GLuint program, const GLchar *name);
+ extern void (CODEGEN_FUNCPTR *Uniform1ui)(GLint location, GLuint v0);
+ extern void (CODEGEN_FUNCPTR *Uniform2ui)(GLint location, GLuint v0, GLuint v1);
+ extern void (CODEGEN_FUNCPTR *Uniform3ui)(GLint location, GLuint v0, GLuint v1, GLuint v2);
+ extern void (CODEGEN_FUNCPTR *Uniform4ui)(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
+ extern void (CODEGEN_FUNCPTR *Uniform1uiv)(GLint location, GLsizei count, const GLuint *value);
+ extern void (CODEGEN_FUNCPTR *Uniform2uiv)(GLint location, GLsizei count, const GLuint *value);
+ extern void (CODEGEN_FUNCPTR *Uniform3uiv)(GLint location, GLsizei count, const GLuint *value);
+ extern void (CODEGEN_FUNCPTR *Uniform4uiv)(GLint location, GLsizei count, const GLuint *value);
+ extern void (CODEGEN_FUNCPTR *TexParameterIiv)(GLenum target, GLenum pname, const GLint *params);
+ extern void (CODEGEN_FUNCPTR *TexParameterIuiv)(GLenum target, GLenum pname, const GLuint *params);
+ extern void (CODEGEN_FUNCPTR *GetTexParameterIiv)(GLenum target, GLenum pname, GLint *params);
+ extern void (CODEGEN_FUNCPTR *GetTexParameterIuiv)(GLenum target, GLenum pname, GLuint *params);
+ extern void (CODEGEN_FUNCPTR *ClearBufferiv)(GLenum buffer, GLint drawbuffer, const GLint *value);
+ extern void (CODEGEN_FUNCPTR *ClearBufferuiv)(GLenum buffer, GLint drawbuffer, const GLuint *value);
+ extern void (CODEGEN_FUNCPTR *ClearBufferfv)(GLenum buffer, GLint drawbuffer, const GLfloat *value);
+ extern void (CODEGEN_FUNCPTR *ClearBufferfi)(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil);
+ extern const GLubyte * (CODEGEN_FUNCPTR *GetStringi)(GLenum name, GLuint index);
- // Extension: ARB_copy_buffer
- extern void (CODEGEN_FUNCPTR *CopyBufferSubData)(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size);
+ // Extension: ARB_uniform_buffer_object
+ extern void (CODEGEN_FUNCPTR *GetUniformIndices)(GLuint program, GLsizei uniformCount, const GLchar* const *uniformNames, GLuint *uniformIndices);
+ extern void (CODEGEN_FUNCPTR *GetActiveUniformsiv)(GLuint program, GLsizei uniformCount, const GLuint *uniformIndices, GLenum pname, GLint *params);
+ extern void (CODEGEN_FUNCPTR *GetActiveUniformName)(GLuint program, GLuint uniformIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformName);
+ extern GLuint (CODEGEN_FUNCPTR *GetUniformBlockIndex)(GLuint program, const GLchar *uniformBlockName);
+ extern void (CODEGEN_FUNCPTR *GetActiveUniformBlockiv)(GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint *params);
+ extern void (CODEGEN_FUNCPTR *GetActiveUniformBlockName)(GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformBlockName);
+ extern void (CODEGEN_FUNCPTR *UniformBlockBinding)(GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding);
- // Extension: 3.1
- extern void (CODEGEN_FUNCPTR *DrawArraysInstanced)(GLenum mode, GLint first, GLsizei count, GLsizei instancecount);
- extern void (CODEGEN_FUNCPTR *DrawElementsInstanced)(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount);
- extern void (CODEGEN_FUNCPTR *TexBuffer)(GLenum target, GLenum internalformat, GLuint buffer);
- extern void (CODEGEN_FUNCPTR *PrimitiveRestartIndex)(GLuint index);
+ // Extension: ARB_copy_buffer
+ extern void (CODEGEN_FUNCPTR *CopyBufferSubData)(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size);
- // Legacy
- enum
- {
- VERTEX_ARRAY = 0x8074,
- NORMAL_ARRAY = 0x8075,
- COLOR_ARRAY = 0x8076,
- TEXTURE_COORD_ARRAY = 0x8078,
+ // Extension: 3.1
+ extern void (CODEGEN_FUNCPTR *DrawArraysInstanced)(GLenum mode, GLint first, GLsizei count, GLsizei instancecount);
+ extern void (CODEGEN_FUNCPTR *DrawElementsInstanced)(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount);
+ extern void (CODEGEN_FUNCPTR *TexBuffer)(GLenum target, GLenum internalformat, GLuint buffer);
+ extern void (CODEGEN_FUNCPTR *PrimitiveRestartIndex)(GLuint index);
- TEXTURE_ENV = 0x2300,
- TEXTURE_ENV_MODE = 0x2200,
-
- MODELVIEW = 0x1700,
- PROJECTION = 0x1701,
- LIGHTING = 0x0B50
- };
-
- extern void (CODEGEN_FUNCPTR *EnableClientState)(GLenum cap);
- extern void (CODEGEN_FUNCPTR *DisableClientState)(GLenum cap);
- extern void (CODEGEN_FUNCPTR *VertexPointer)(GLint size, GLenum type, GLsizei stride, const GLvoid *ptr);
- extern void (CODEGEN_FUNCPTR *NormalPointer)(GLenum type, GLsizei stride, const GLvoid *ptr);
- extern void (CODEGEN_FUNCPTR *ColorPointer)(GLint size, GLenum type, GLsizei stride, const GLvoid *ptr);
- extern void (CODEGEN_FUNCPTR *TexCoordPointer)(GLint size, GLenum type, GLsizei stride, const GLvoid *ptr);
-
- extern void (CODEGEN_FUNCPTR *TexEnvi)(GLenum target, GLenum pname, GLint param);
-
- extern void (CODEGEN_FUNCPTR *MatrixMode)(GLenum mode);
- extern void (CODEGEN_FUNCPTR *LoadIdentity)(void);
- extern void (CODEGEN_FUNCPTR *Ortho)(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble near_val, GLdouble far_val);
-
- extern void (CODEGEN_FUNCPTR *Color3d)(GLdouble red, GLdouble green, GLdouble blue);
-
- namespace sys
- {
- void CheckExtensions();
- }
+ // Legacy
+ extern void (CODEGEN_FUNCPTR *EnableClientState)(GLenum cap);
+ extern void (CODEGEN_FUNCPTR *DisableClientState)(GLenum cap);
+ extern void (CODEGEN_FUNCPTR *VertexPointer)(GLint size, GLenum type, GLsizei stride, const GLvoid *ptr);
+ extern void (CODEGEN_FUNCPTR *NormalPointer)(GLenum type, GLsizei stride, const GLvoid *ptr);
+ extern void (CODEGEN_FUNCPTR *ColorPointer)(GLint size, GLenum type, GLsizei stride, const GLvoid *ptr);
+ extern void (CODEGEN_FUNCPTR *TexCoordPointer)(GLint size, GLenum type, GLsizei stride, const GLvoid *ptr);
+ extern void (CODEGEN_FUNCPTR *TexEnvi)(GLenum target, GLenum pname, GLint param);
+ extern void (CODEGEN_FUNCPTR *MatrixMode)(GLenum mode);
+ extern void (CODEGEN_FUNCPTR *LoadIdentity)(void);
+ extern void (CODEGEN_FUNCPTR *Ortho)(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble near_val, GLdouble far_val);
+ extern void (CODEGEN_FUNCPTR *Color3d)(GLdouble red, GLdouble green, GLdouble blue);
}
-#endif //OPENGL_NOLOAD_STYLE_HPP
+
+#endif // OPENGL_NOLOAD_STYLE_HPP