File indexing completed on 2025-01-18 10:04:34
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016 #ifndef OpenGl_GlFunctions_HeaderFile
0017 #define OpenGl_GlFunctions_HeaderFile
0018
0019 #include <Standard_Macro.hxx>
0020 #include <Standard_TypeDef.hxx>
0021
0022 #include <OpenGl_GlTypes.hxx>
0023
0024 #if !defined(HAVE_EGL)
0025 #if defined(__ANDROID__) || defined(__QNX__) || defined(__EMSCRIPTEN__) || defined(HAVE_GLES2) || defined(OCCT_UWP)
0026 #if !defined(__APPLE__)
0027 #define HAVE_EGL
0028 #endif
0029 #elif !defined(_WIN32) && !defined(__APPLE__) && !defined(HAVE_XLIB)
0030 #define HAVE_EGL
0031 #endif
0032 #endif
0033 struct Aspect_XDisplay;
0034
0035
0036 #ifdef GL_VERSION_1_2
0037 #undef GL_VERSION_1_2
0038 #undef GL_VERSION_1_3
0039 #undef GL_VERSION_1_4
0040 #undef GL_VERSION_1_5
0041 #undef GL_VERSION_2_0
0042 #undef GL_VERSION_2_1
0043 #undef GL_VERSION_3_0
0044 #undef GL_VERSION_3_1
0045 #undef GL_VERSION_3_2
0046 #undef GL_VERSION_3_3
0047 #undef GL_VERSION_4_0
0048 #undef GL_VERSION_4_1
0049 #undef GL_VERSION_4_2
0050 #undef GL_VERSION_4_3
0051 #undef GL_VERSION_4_4
0052 #undef GL_VERSION_4_5
0053 #endif
0054 #ifdef GL_COPY_READ_BUFFER_BINDING
0055
0056 #undef GL_DRAW_FRAMEBUFFER_BINDING
0057 #undef GL_COPY_READ_BUFFER_BINDING
0058 #undef GL_COPY_WRITE_BUFFER_BINDING
0059 #endif
0060
0061 #include <OpenGl_glext.h>
0062
0063 class OpenGl_Context;
0064
0065
0066 struct OpenGl_GlFunctions
0067 {
0068
0069
0070
0071 Standard_EXPORT static bool debugPrintError (const char* theName);
0072
0073
0074 Standard_EXPORT static void readGlVersion (Standard_Integer& theGlVerMajor,
0075 Standard_Integer& theGlVerMinor);
0076
0077
0078 Standard_EXPORT void load (OpenGl_Context& theCtx,
0079 Standard_Boolean theIsCoreProfile);
0080
0081 public:
0082
0083 typedef void (APIENTRYP glClearColor_t)(GLclampf theRed, GLclampf theGreen, GLclampf theBlue, GLclampf theAlpha);
0084 glClearColor_t glClearColor;
0085
0086 typedef void (APIENTRYP glClear_t)(GLbitfield theMask);
0087 glClear_t glClear;
0088
0089 typedef void (APIENTRYP glColorMask_t)(GLboolean theRed, GLboolean theGreen, GLboolean theBlue, GLboolean theAlpha);
0090 glColorMask_t glColorMask;
0091
0092 typedef void (APIENTRYP glBlendFunc_t)(GLenum sfactor, GLenum dfactor);
0093 glBlendFunc_t glBlendFunc;
0094
0095 typedef void (APIENTRYP glCullFace_t)(GLenum theMode);
0096 glCullFace_t glCullFace;
0097
0098 typedef void (APIENTRYP glFrontFace_t)(GLenum theMode);
0099 glFrontFace_t glFrontFace;
0100
0101 typedef void (APIENTRYP glLineWidth_t)(GLfloat theWidth);
0102 glLineWidth_t glLineWidth;
0103
0104 typedef void (APIENTRYP glPolygonOffset_t)(GLfloat theFactor, GLfloat theUnits);
0105 glPolygonOffset_t glPolygonOffset;
0106
0107 typedef void (APIENTRYP glScissor_t)(GLint theX, GLint theY, GLsizei theWidth, GLsizei theHeight);
0108 glScissor_t glScissor;
0109
0110 typedef void (APIENTRYP glEnable_t)(GLenum theCap);
0111 glEnable_t glEnable;
0112
0113 typedef void (APIENTRYP glDisable_t)(GLenum theCap);
0114 glDisable_t glDisable;
0115
0116 typedef GLboolean (APIENTRYP glIsEnabled_t)(GLenum theCap);
0117 glIsEnabled_t glIsEnabled;
0118
0119 typedef void (APIENTRYP glGetBooleanv_t)(GLenum theParamName, GLboolean* theValues);
0120 glGetBooleanv_t glGetBooleanv;
0121
0122 typedef void (APIENTRYP glGetFloatv_t)(GLenum theParamName, GLfloat* theValues);
0123 glGetFloatv_t glGetFloatv;
0124
0125 typedef void (APIENTRYP glGetIntegerv_t)(GLenum theParamName, GLint* theValues);
0126 glGetIntegerv_t glGetIntegerv;
0127
0128 typedef GLenum (APIENTRYP glGetError_t)();
0129 glGetError_t glGetError;
0130
0131 typedef const GLubyte* (APIENTRYP glGetString_t)(GLenum theName);
0132 glGetString_t glGetString;
0133
0134 typedef void (APIENTRYP glFinish_t)();
0135 glFinish_t glFinish;
0136
0137 typedef void (APIENTRYP glFlush_t)();
0138 glFlush_t glFlush;
0139
0140 typedef void (APIENTRYP glHint_t)(GLenum theTarget, GLenum theMode);
0141 glHint_t glHint;
0142
0143 typedef void (APIENTRYP glGetPointerv_t)(GLenum pname, GLvoid* *params);
0144 glGetPointerv_t glGetPointerv;
0145
0146 typedef void (APIENTRYP glReadBuffer_t)(GLenum src);
0147 glReadBuffer_t glReadBuffer;
0148
0149 typedef void (APIENTRYP glDrawBuffer_t)(GLenum mode);
0150 glDrawBuffer_t glDrawBuffer;
0151
0152 typedef void (APIENTRYP glPixelTransferi_t)(GLenum pname, GLint param);
0153 glPixelTransferi_t glPixelTransferi;
0154
0155 public:
0156
0157 typedef void (APIENTRYP glClearDepth_t)(GLclampd theDepth);
0158 glClearDepth_t glClearDepth;
0159
0160 typedef void (APIENTRYP glDepthFunc_t)(GLenum theFunc);
0161 glDepthFunc_t glDepthFunc;
0162
0163 typedef void (APIENTRYP glDepthMask_t)(GLboolean theFlag);
0164 glDepthMask_t glDepthMask;
0165
0166 typedef void (APIENTRYP glDepthRange_t)(GLclampd theNearValue, GLclampd theFarValue);
0167 glDepthRange_t glDepthRange;
0168
0169 public:
0170
0171 typedef void (APIENTRYP glViewport_t)(GLint theX, GLint theY, GLsizei theWidth, GLsizei theHeight);
0172 glViewport_t glViewport;
0173
0174 public:
0175
0176 typedef void (APIENTRYP glDrawArrays_t)(GLenum theMode, GLint theFirst, GLsizei theCount);
0177 glDrawArrays_t glDrawArrays;
0178
0179 typedef void (APIENTRYP glDrawElements_t)(GLenum theMode, GLsizei theCount, GLenum theType, const GLvoid* theIndices);
0180 glDrawElements_t glDrawElements;
0181
0182 public:
0183
0184 typedef void (APIENTRYP glPixelStorei_t)(GLenum theParamName, GLint theParam);
0185 glPixelStorei_t glPixelStorei;
0186
0187 typedef void (APIENTRYP glReadPixels_t)(GLint x, GLint y,
0188 GLsizei width, GLsizei height,
0189 GLenum format, GLenum type,
0190 GLvoid* pixels);
0191 glReadPixels_t glReadPixels;
0192
0193 public:
0194
0195 typedef void (APIENTRYP glStencilFunc_t)(GLenum func, GLint ref, GLuint mask);
0196 glStencilFunc_t glStencilFunc;
0197
0198 typedef void (APIENTRYP glStencilMask_t)(GLuint mask);
0199 glStencilMask_t glStencilMask;
0200
0201 typedef void (APIENTRYP glStencilOp_t)(GLenum fail, GLenum zfail, GLenum zpass);
0202 glStencilOp_t glStencilOp;
0203
0204 typedef void (APIENTRYP glClearStencil_t)(GLint s);
0205 glClearStencil_t glClearStencil;
0206
0207 public:
0208
0209 typedef void (APIENTRYP glTexParameterf_t)(GLenum target, GLenum pname, GLfloat param);
0210 glTexParameterf_t glTexParameterf;
0211
0212 typedef void (APIENTRYP glTexParameteri_t)(GLenum target, GLenum pname, GLint param);
0213 glTexParameteri_t glTexParameteri;
0214
0215 typedef void (APIENTRYP glTexParameterfv_t)(GLenum target, GLenum pname, const GLfloat* params);
0216 glTexParameterfv_t glTexParameterfv;
0217
0218 typedef void (APIENTRYP glTexParameteriv_t)(GLenum target, GLenum pname, const GLint* params);
0219 glTexParameteriv_t glTexParameteriv;
0220
0221 typedef void (APIENTRYP glGetTexParameterfv_t)(GLenum target, GLenum pname, GLfloat* params);
0222 glGetTexParameterfv_t glGetTexParameterfv;
0223
0224 typedef void (APIENTRYP glGetTexParameteriv_t)(GLenum target, GLenum pname, GLint* params);
0225 glGetTexParameteriv_t glGetTexParameteriv;
0226
0227 typedef void (APIENTRYP glTexImage2D_t)(GLenum target, GLint level,
0228 GLint internalFormat,
0229 GLsizei width, GLsizei height,
0230 GLint border, GLenum format, GLenum type,
0231 const GLvoid* pixels);
0232 glTexImage2D_t glTexImage2D;
0233
0234 typedef void (APIENTRYP glGenTextures_t)(GLsizei n, GLuint* textures);
0235 glGenTextures_t glGenTextures;
0236
0237 typedef void (APIENTRYP glDeleteTextures_t)(GLsizei n, const GLuint* textures);
0238 glDeleteTextures_t glDeleteTextures;
0239
0240 typedef void (APIENTRYP glBindTexture_t)(GLenum target, GLuint texture);
0241 glBindTexture_t glBindTexture;
0242
0243 typedef GLboolean (APIENTRYP glIsTexture_t)(GLuint texture);
0244 glIsTexture_t glIsTexture;
0245
0246 typedef void (APIENTRYP glTexSubImage2D_t)(GLenum target, GLint level,
0247 GLint xoffset, GLint yoffset,
0248 GLsizei width, GLsizei height,
0249 GLenum format, GLenum type,
0250 const GLvoid* pixels);
0251 glTexSubImage2D_t glTexSubImage2D;
0252
0253 typedef void (APIENTRYP glCopyTexImage2D_t)(GLenum target, GLint level,
0254 GLenum internalformat,
0255 GLint x, GLint y,
0256 GLsizei width, GLsizei height,
0257 GLint border);
0258 glCopyTexImage2D_t glCopyTexImage2D;
0259
0260 typedef void (APIENTRYP glCopyTexSubImage2D_t)(GLenum target, GLint level,
0261 GLint xoffset, GLint yoffset,
0262 GLint x, GLint y,
0263 GLsizei width, GLsizei height);
0264 glCopyTexSubImage2D_t glCopyTexSubImage2D;
0265
0266 public:
0267 typedef void (APIENTRYP glTexImage1D_t)(GLenum target, GLint level,
0268 GLint internalFormat,
0269 GLsizei width, GLint border,
0270 GLenum format, GLenum type,
0271 const GLvoid* pixels);
0272 glTexImage1D_t glTexImage1D;
0273
0274 typedef void (APIENTRYP glTexSubImage1D_t)(GLenum target, GLint level,
0275 GLint xoffset,
0276 GLsizei width, GLenum format,
0277 GLenum type, const GLvoid* pixels);
0278 glTexSubImage1D_t glTexSubImage1D;
0279
0280 typedef void (APIENTRYP glCopyTexImage1D_t)(GLenum target, GLint level,
0281 GLenum internalformat,
0282 GLint x, GLint y,
0283 GLsizei width, GLint border);
0284 glCopyTexImage1D_t glCopyTexImage1D;
0285
0286 typedef void (APIENTRYP glCopyTexSubImage1D_t)(GLenum target, GLint level,
0287 GLint xoffset, GLint x, GLint y,
0288 GLsizei width);
0289 glCopyTexSubImage1D_t glCopyTexSubImage1D;
0290
0291 typedef void (APIENTRYP glGetTexImage_t)(GLenum target, GLint level,
0292 GLenum format, GLenum type,
0293 GLvoid* pixels);
0294 glGetTexImage_t glGetTexImage;
0295
0296 typedef void (APIENTRYP glAlphaFunc_t)(GLenum theFunc, GLclampf theRef);
0297 glAlphaFunc_t glAlphaFunc;
0298
0299 typedef void (APIENTRYP glPointSize_t)(GLfloat theSize);
0300 glPointSize_t glPointSize;
0301
0302 public:
0303
0304 typedef void (APIENTRYP glTexEnvi_t)(GLenum target, GLenum pname, GLint param);
0305 glTexEnvi_t glTexEnvi;
0306
0307 typedef void (APIENTRYP glGetTexEnviv_t)(GLenum target, GLenum pname, GLint *params);
0308 glGetTexEnviv_t glGetTexEnviv;
0309
0310 typedef void (APIENTRYP glLogicOp_t)(GLenum opcode);
0311 glLogicOp_t glLogicOp;
0312
0313 public:
0314
0315 typedef void (APIENTRYP glColor4fv_t)(const GLfloat* theVec);
0316 glColor4fv_t glColor4fv;
0317
0318 public:
0319
0320 typedef void (APIENTRYP glMatrixMode_t)(GLenum theMode);
0321 glMatrixMode_t glMatrixMode;
0322
0323 typedef void (APIENTRYP glLoadIdentity_t)();
0324 glLoadIdentity_t glLoadIdentity;
0325
0326 typedef void (APIENTRYP glLoadMatrixf_t)(const GLfloat* theMatrix);
0327 glLoadMatrixf_t glLoadMatrixf;
0328
0329 public:
0330
0331 typedef void (APIENTRYP glLineStipple_t)(GLint theFactor, GLushort thePattern);
0332 glLineStipple_t glLineStipple;
0333
0334 typedef void (APIENTRYP glPolygonStipple_t)(const GLubyte* theMask);
0335 glPolygonStipple_t glPolygonStipple;
0336
0337 public:
0338
0339 typedef void (APIENTRYP glShadeModel_t)(GLenum theMode);
0340 glShadeModel_t glShadeModel;
0341
0342 typedef void (APIENTRYP glLightf_t)(GLenum theLight, GLenum pname, GLfloat param);
0343 glLightf_t glLightf;
0344
0345 typedef void (APIENTRYP glLightfv_t)(GLenum theLight, GLenum pname, const GLfloat* params);
0346 glLightfv_t glLightfv;
0347
0348 typedef void (APIENTRYP glLightModeli_t)(GLenum pname, GLint param);
0349 glLightModeli_t glLightModeli;
0350
0351 typedef void (APIENTRYP glLightModelfv_t)(GLenum pname, const GLfloat* params);
0352 glLightModelfv_t glLightModelfv;
0353
0354 typedef void (APIENTRYP glMaterialf_t)(GLenum face, GLenum pname, GLfloat param);
0355 glMaterialf_t glMaterialf;
0356
0357 typedef void (APIENTRYP glMaterialfv_t)(GLenum face, GLenum pname, const GLfloat* params);
0358 glMaterialfv_t glMaterialfv;
0359
0360 typedef void (APIENTRYP glColorMaterial_t)(GLenum face, GLenum mode);
0361 glColorMaterial_t glColorMaterial;
0362
0363 public:
0364
0365 typedef void (APIENTRYP glClipPlane_t)(GLenum thePlane, const GLdouble* theEquation);
0366 glClipPlane_t glClipPlane;
0367
0368 public:
0369
0370 typedef void (APIENTRYP glDeleteLists_t)(GLuint theList, GLsizei theRange);
0371 glDeleteLists_t glDeleteLists;
0372
0373 typedef GLuint (APIENTRYP glGenLists_t)(GLsizei theRange);
0374 glGenLists_t glGenLists;
0375
0376 typedef void (APIENTRYP glNewList_t)(GLuint theList, GLenum theMode);
0377 glNewList_t glNewList;
0378
0379 typedef void (APIENTRYP glEndList_t)();
0380 glEndList_t glEndList;
0381
0382 typedef void (APIENTRYP glCallList_t)(GLuint theList);
0383 glCallList_t glCallList;
0384
0385 typedef void (APIENTRYP glCallLists_t)(GLsizei theNb, GLenum theType, const GLvoid* theLists);
0386 glCallLists_t glCallLists;
0387
0388 typedef void (APIENTRYP glListBase_t)(GLuint theBase);
0389 glListBase_t glListBase;
0390
0391 public:
0392
0393 typedef void (APIENTRYP glRasterPos2i_t)(GLint x, GLint y);
0394 glRasterPos2i_t glRasterPos2i;
0395
0396 typedef void (APIENTRYP glRasterPos3fv_t)(const GLfloat* theVec);
0397 glRasterPos3fv_t glRasterPos3fv;
0398
0399 public:
0400
0401 typedef void (APIENTRYP glTexGeni_t)(GLenum coord, GLenum pname, GLint param);
0402 glTexGeni_t glTexGeni;
0403
0404 typedef void (APIENTRYP glTexGenfv_t)(GLenum coord, GLenum pname, const GLfloat* params);
0405 glTexGenfv_t glTexGenfv;
0406
0407 public:
0408
0409 typedef void (APIENTRYP glDrawPixels_t)(GLsizei width, GLsizei height,
0410 GLenum format, GLenum type,
0411 const GLvoid* pixels);
0412 glDrawPixels_t glDrawPixels;
0413
0414 typedef void (APIENTRYP glCopyPixels_t)(GLint x, GLint y,
0415 GLsizei width, GLsizei height,
0416 GLenum type);
0417 glCopyPixels_t glCopyPixels;
0418
0419 typedef void (APIENTRYP glBitmap_t)(GLsizei width, GLsizei height,
0420 GLfloat xorig, GLfloat yorig,
0421 GLfloat xmove, GLfloat ymove,
0422 const GLubyte* bitmap);
0423 glBitmap_t glBitmap;
0424
0425 public:
0426
0427 typedef void (APIENTRYP glIndexPointer_t)(GLenum theType, GLsizei theStride, const GLvoid* thePtr);
0428 glIndexPointer_t glIndexPointer;
0429
0430 typedef void (APIENTRYP glVertexPointer_t)(GLint theSize, GLenum theType, GLsizei theStride, const GLvoid* thePtr);
0431 glVertexPointer_t glVertexPointer;
0432
0433 typedef void (APIENTRYP glNormalPointer_t)(GLenum theType, GLsizei theStride, const GLvoid* thePtr);
0434 glNormalPointer_t glNormalPointer;
0435
0436 typedef void (APIENTRYP glColorPointer_t)(GLint theSize, GLenum theType, GLsizei theStride, const GLvoid* thePtr);
0437 glColorPointer_t glColorPointer;
0438
0439 typedef void (APIENTRYP glTexCoordPointer_t)(GLint theSize, GLenum theType, GLsizei theStride, const GLvoid* thePtr);
0440 glTexCoordPointer_t glTexCoordPointer;
0441
0442 typedef void (APIENTRYP glEnableClientState_t)(GLenum theCap);
0443 glEnableClientState_t glEnableClientState;
0444
0445 typedef void (APIENTRYP glDisableClientState_t)(GLenum theCap);
0446 glDisableClientState_t glDisableClientState;
0447
0448 typedef void (APIENTRYP glGetTexLevelParameterfv_t)(GLenum target, GLint level, GLenum pname, GLfloat *params);
0449 glGetTexLevelParameterfv_t glGetTexLevelParameterfv;
0450
0451 typedef void (APIENTRYP glGetTexLevelParameteriv_t)(GLenum target, GLint level, GLenum pname, GLint *params);
0452 glGetTexLevelParameteriv_t glGetTexLevelParameteriv;
0453
0454 typedef void (APIENTRYP glPolygonMode_t)(GLenum face, GLenum mode);
0455 glPolygonMode_t glPolygonMode;
0456
0457 public:
0458 typedef void (APIENTRYP glBlendBarrier_t) (void);
0459 glBlendBarrier_t glBlendBarrier;
0460
0461 typedef void (APIENTRYP glPrimitiveBoundingBox_t) (GLfloat minX, GLfloat minY, GLfloat minZ, GLfloat minW, GLfloat maxX, GLfloat maxY, GLfloat maxZ, GLfloat maxW);
0462 glPrimitiveBoundingBox_t glPrimitiveBoundingBox;
0463
0464 public:
0465
0466 PFNGLBLENDCOLORPROC glBlendColor;
0467 PFNGLBLENDEQUATIONPROC glBlendEquation;
0468 PFNGLDRAWRANGEELEMENTSPROC glDrawRangeElements;
0469 PFNGLTEXIMAGE3DPROC glTexImage3D;
0470 PFNGLTEXSUBIMAGE3DPROC glTexSubImage3D;
0471 PFNGLCOPYTEXSUBIMAGE3DPROC glCopyTexSubImage3D;
0472
0473 public:
0474
0475 PFNGLACTIVETEXTUREPROC glActiveTexture;
0476 PFNGLSAMPLECOVERAGEPROC glSampleCoverage;
0477 PFNGLCOMPRESSEDTEXIMAGE3DPROC glCompressedTexImage3D;
0478 PFNGLCOMPRESSEDTEXIMAGE2DPROC glCompressedTexImage2D;
0479 PFNGLCOMPRESSEDTEXIMAGE1DPROC glCompressedTexImage1D;
0480 PFNGLCOMPRESSEDTEXSUBIMAGE3DPROC glCompressedTexSubImage3D;
0481 PFNGLCOMPRESSEDTEXSUBIMAGE2DPROC glCompressedTexSubImage2D;
0482 PFNGLCOMPRESSEDTEXSUBIMAGE1DPROC glCompressedTexSubImage1D;
0483 PFNGLGETCOMPRESSEDTEXIMAGEPROC glGetCompressedTexImage;
0484
0485 public:
0486
0487 PFNGLBLENDFUNCSEPARATEPROC glBlendFuncSeparate;
0488 PFNGLMULTIDRAWARRAYSPROC glMultiDrawArrays;
0489 PFNGLMULTIDRAWELEMENTSPROC glMultiDrawElements;
0490 PFNGLPOINTPARAMETERFPROC glPointParameterf;
0491 PFNGLPOINTPARAMETERFVPROC glPointParameterfv;
0492 PFNGLPOINTPARAMETERIPROC glPointParameteri;
0493 PFNGLPOINTPARAMETERIVPROC glPointParameteriv;
0494
0495 public:
0496
0497 PFNGLGENQUERIESPROC glGenQueries;
0498 PFNGLDELETEQUERIESPROC glDeleteQueries;
0499 PFNGLISQUERYPROC glIsQuery;
0500 PFNGLBEGINQUERYPROC glBeginQuery;
0501 PFNGLENDQUERYPROC glEndQuery;
0502 PFNGLGETQUERYIVPROC glGetQueryiv;
0503 PFNGLGETQUERYOBJECTIVPROC glGetQueryObjectiv;
0504 PFNGLGETQUERYOBJECTUIVPROC glGetQueryObjectuiv;
0505 PFNGLBINDBUFFERPROC glBindBuffer;
0506 PFNGLDELETEBUFFERSPROC glDeleteBuffers;
0507 PFNGLGENBUFFERSPROC glGenBuffers;
0508 PFNGLISBUFFERPROC glIsBuffer;
0509 PFNGLBUFFERDATAPROC glBufferData;
0510 PFNGLBUFFERSUBDATAPROC glBufferSubData;
0511 PFNGLGETBUFFERSUBDATAPROC glGetBufferSubData;
0512 PFNGLMAPBUFFERPROC glMapBuffer;
0513 PFNGLUNMAPBUFFERPROC glUnmapBuffer;
0514 PFNGLGETBUFFERPARAMETERIVPROC glGetBufferParameteriv;
0515 PFNGLGETBUFFERPOINTERVPROC glGetBufferPointerv;
0516
0517 public:
0518
0519 PFNGLBLENDEQUATIONSEPARATEPROC glBlendEquationSeparate;
0520 PFNGLDRAWBUFFERSPROC glDrawBuffers;
0521 PFNGLSTENCILOPSEPARATEPROC glStencilOpSeparate;
0522 PFNGLSTENCILFUNCSEPARATEPROC glStencilFuncSeparate;
0523 PFNGLSTENCILMASKSEPARATEPROC glStencilMaskSeparate;
0524 PFNGLATTACHSHADERPROC glAttachShader;
0525 PFNGLBINDATTRIBLOCATIONPROC glBindAttribLocation;
0526 PFNGLCOMPILESHADERPROC glCompileShader;
0527 PFNGLCREATEPROGRAMPROC glCreateProgram;
0528 PFNGLCREATESHADERPROC glCreateShader;
0529 PFNGLDELETEPROGRAMPROC glDeleteProgram;
0530 PFNGLDELETESHADERPROC glDeleteShader;
0531 PFNGLDETACHSHADERPROC glDetachShader;
0532 PFNGLDISABLEVERTEXATTRIBARRAYPROC glDisableVertexAttribArray;
0533 PFNGLENABLEVERTEXATTRIBARRAYPROC glEnableVertexAttribArray;
0534 PFNGLGETACTIVEATTRIBPROC glGetActiveAttrib;
0535 PFNGLGETACTIVEUNIFORMPROC glGetActiveUniform;
0536 PFNGLGETATTACHEDSHADERSPROC glGetAttachedShaders;
0537 PFNGLGETATTRIBLOCATIONPROC glGetAttribLocation;
0538 PFNGLGETPROGRAMIVPROC glGetProgramiv;
0539 PFNGLGETPROGRAMINFOLOGPROC glGetProgramInfoLog;
0540 PFNGLGETSHADERIVPROC glGetShaderiv;
0541 PFNGLGETSHADERINFOLOGPROC glGetShaderInfoLog;
0542 PFNGLGETSHADERSOURCEPROC glGetShaderSource;
0543 PFNGLGETUNIFORMLOCATIONPROC glGetUniformLocation;
0544 PFNGLGETUNIFORMFVPROC glGetUniformfv;
0545 PFNGLGETUNIFORMIVPROC glGetUniformiv;
0546 PFNGLGETVERTEXATTRIBDVPROC glGetVertexAttribdv;
0547 PFNGLGETVERTEXATTRIBFVPROC glGetVertexAttribfv;
0548 PFNGLGETVERTEXATTRIBIVPROC glGetVertexAttribiv;
0549 PFNGLGETVERTEXATTRIBPOINTERVPROC glGetVertexAttribPointerv;
0550 PFNGLISPROGRAMPROC glIsProgram;
0551 PFNGLISSHADERPROC glIsShader;
0552 PFNGLLINKPROGRAMPROC glLinkProgram;
0553 PFNGLSHADERSOURCEPROC glShaderSource;
0554 PFNGLUSEPROGRAMPROC glUseProgram;
0555 PFNGLUNIFORM1FPROC glUniform1f;
0556 PFNGLUNIFORM2FPROC glUniform2f;
0557 PFNGLUNIFORM3FPROC glUniform3f;
0558 PFNGLUNIFORM4FPROC glUniform4f;
0559 PFNGLUNIFORM1IPROC glUniform1i;
0560 PFNGLUNIFORM2IPROC glUniform2i;
0561 PFNGLUNIFORM3IPROC glUniform3i;
0562 PFNGLUNIFORM4IPROC glUniform4i;
0563 PFNGLUNIFORM1FVPROC glUniform1fv;
0564 PFNGLUNIFORM2FVPROC glUniform2fv;
0565 PFNGLUNIFORM3FVPROC glUniform3fv;
0566 PFNGLUNIFORM4FVPROC glUniform4fv;
0567 PFNGLUNIFORM1IVPROC glUniform1iv;
0568 PFNGLUNIFORM2IVPROC glUniform2iv;
0569 PFNGLUNIFORM3IVPROC glUniform3iv;
0570 PFNGLUNIFORM4IVPROC glUniform4iv;
0571 PFNGLUNIFORMMATRIX2FVPROC glUniformMatrix2fv;
0572 PFNGLUNIFORMMATRIX3FVPROC glUniformMatrix3fv;
0573 PFNGLUNIFORMMATRIX4FVPROC glUniformMatrix4fv;
0574 PFNGLVALIDATEPROGRAMPROC glValidateProgram;
0575 PFNGLVERTEXATTRIB1DPROC glVertexAttrib1d;
0576 PFNGLVERTEXATTRIB1DVPROC glVertexAttrib1dv;
0577 PFNGLVERTEXATTRIB1FPROC glVertexAttrib1f;
0578 PFNGLVERTEXATTRIB1FVPROC glVertexAttrib1fv;
0579 PFNGLVERTEXATTRIB1SPROC glVertexAttrib1s;
0580 PFNGLVERTEXATTRIB1SVPROC glVertexAttrib1sv;
0581 PFNGLVERTEXATTRIB2DPROC glVertexAttrib2d;
0582 PFNGLVERTEXATTRIB2DVPROC glVertexAttrib2dv;
0583 PFNGLVERTEXATTRIB2FPROC glVertexAttrib2f;
0584 PFNGLVERTEXATTRIB2FVPROC glVertexAttrib2fv;
0585 PFNGLVERTEXATTRIB2SPROC glVertexAttrib2s;
0586 PFNGLVERTEXATTRIB2SVPROC glVertexAttrib2sv;
0587 PFNGLVERTEXATTRIB3DPROC glVertexAttrib3d;
0588 PFNGLVERTEXATTRIB3DVPROC glVertexAttrib3dv;
0589 PFNGLVERTEXATTRIB3FPROC glVertexAttrib3f;
0590 PFNGLVERTEXATTRIB3FVPROC glVertexAttrib3fv;
0591 PFNGLVERTEXATTRIB3SPROC glVertexAttrib3s;
0592 PFNGLVERTEXATTRIB3SVPROC glVertexAttrib3sv;
0593 PFNGLVERTEXATTRIB4NBVPROC glVertexAttrib4Nbv;
0594 PFNGLVERTEXATTRIB4NIVPROC glVertexAttrib4Niv;
0595 PFNGLVERTEXATTRIB4NSVPROC glVertexAttrib4Nsv;
0596 PFNGLVERTEXATTRIB4NUBPROC glVertexAttrib4Nub;
0597 PFNGLVERTEXATTRIB4NUBVPROC glVertexAttrib4Nubv;
0598 PFNGLVERTEXATTRIB4NUIVPROC glVertexAttrib4Nuiv;
0599 PFNGLVERTEXATTRIB4NUSVPROC glVertexAttrib4Nusv;
0600 PFNGLVERTEXATTRIB4BVPROC glVertexAttrib4bv;
0601 PFNGLVERTEXATTRIB4DPROC glVertexAttrib4d;
0602 PFNGLVERTEXATTRIB4DVPROC glVertexAttrib4dv;
0603 PFNGLVERTEXATTRIB4FPROC glVertexAttrib4f;
0604 PFNGLVERTEXATTRIB4FVPROC glVertexAttrib4fv;
0605 PFNGLVERTEXATTRIB4IVPROC glVertexAttrib4iv;
0606 PFNGLVERTEXATTRIB4SPROC glVertexAttrib4s;
0607 PFNGLVERTEXATTRIB4SVPROC glVertexAttrib4sv;
0608 PFNGLVERTEXATTRIB4UBVPROC glVertexAttrib4ubv;
0609 PFNGLVERTEXATTRIB4UIVPROC glVertexAttrib4uiv;
0610 PFNGLVERTEXATTRIB4USVPROC glVertexAttrib4usv;
0611 PFNGLVERTEXATTRIBPOINTERPROC glVertexAttribPointer;
0612
0613 public:
0614
0615 PFNGLUNIFORMMATRIX2X3FVPROC glUniformMatrix2x3fv;
0616 PFNGLUNIFORMMATRIX3X2FVPROC glUniformMatrix3x2fv;
0617 PFNGLUNIFORMMATRIX2X4FVPROC glUniformMatrix2x4fv;
0618 PFNGLUNIFORMMATRIX4X2FVPROC glUniformMatrix4x2fv;
0619 PFNGLUNIFORMMATRIX3X4FVPROC glUniformMatrix3x4fv;
0620 PFNGLUNIFORMMATRIX4X3FVPROC glUniformMatrix4x3fv;
0621
0622 public:
0623
0624 PFNGLISRENDERBUFFERPROC glIsRenderbuffer;
0625 PFNGLBINDRENDERBUFFERPROC glBindRenderbuffer;
0626 PFNGLDELETERENDERBUFFERSPROC glDeleteRenderbuffers;
0627 PFNGLGENRENDERBUFFERSPROC glGenRenderbuffers;
0628 PFNGLRENDERBUFFERSTORAGEPROC glRenderbufferStorage;
0629 PFNGLGETRENDERBUFFERPARAMETERIVPROC glGetRenderbufferParameteriv;
0630 PFNGLISFRAMEBUFFERPROC glIsFramebuffer;
0631 PFNGLBINDFRAMEBUFFERPROC glBindFramebuffer;
0632 PFNGLDELETEFRAMEBUFFERSPROC glDeleteFramebuffers;
0633 PFNGLGENFRAMEBUFFERSPROC glGenFramebuffers;
0634 PFNGLCHECKFRAMEBUFFERSTATUSPROC glCheckFramebufferStatus;
0635 PFNGLFRAMEBUFFERTEXTURE1DPROC glFramebufferTexture1D;
0636 PFNGLFRAMEBUFFERTEXTURE2DPROC glFramebufferTexture2D;
0637 PFNGLFRAMEBUFFERTEXTURE3DPROC glFramebufferTexture3D;
0638 PFNGLFRAMEBUFFERRENDERBUFFERPROC glFramebufferRenderbuffer;
0639 PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVPROC glGetFramebufferAttachmentParameteriv;
0640 PFNGLGENERATEMIPMAPPROC glGenerateMipmap;
0641 PFNGLBLITFRAMEBUFFERPROC glBlitFramebuffer;
0642 PFNGLRENDERBUFFERSTORAGEMULTISAMPLEPROC glRenderbufferStorageMultisample;
0643 PFNGLFRAMEBUFFERTEXTURELAYERPROC glFramebufferTextureLayer;
0644
0645 public:
0646
0647 PFNGLBINDVERTEXARRAYPROC glBindVertexArray;
0648 PFNGLDELETEVERTEXARRAYSPROC glDeleteVertexArrays;
0649 PFNGLGENVERTEXARRAYSPROC glGenVertexArrays;
0650 PFNGLISVERTEXARRAYPROC glIsVertexArray;
0651
0652 public:
0653
0654 PFNGLMAPBUFFERRANGEPROC glMapBufferRange;
0655 PFNGLFLUSHMAPPEDBUFFERRANGEPROC glFlushMappedBufferRange;
0656
0657 public:
0658
0659 PFNGLCOLORMASKIPROC glColorMaski;
0660 PFNGLGETBOOLEANI_VPROC glGetBooleani_v;
0661 PFNGLGETINTEGERI_VPROC glGetIntegeri_v;
0662 PFNGLENABLEIPROC glEnablei;
0663 PFNGLDISABLEIPROC glDisablei;
0664 PFNGLISENABLEDIPROC glIsEnabledi;
0665 PFNGLBEGINTRANSFORMFEEDBACKPROC glBeginTransformFeedback;
0666 PFNGLENDTRANSFORMFEEDBACKPROC glEndTransformFeedback;
0667 PFNGLBINDBUFFERRANGEPROC glBindBufferRange;
0668 PFNGLBINDBUFFERBASEPROC glBindBufferBase;
0669 PFNGLTRANSFORMFEEDBACKVARYINGSPROC glTransformFeedbackVaryings;
0670 PFNGLGETTRANSFORMFEEDBACKVARYINGPROC glGetTransformFeedbackVarying;
0671 PFNGLCLAMPCOLORPROC glClampColor;
0672 PFNGLBEGINCONDITIONALRENDERPROC glBeginConditionalRender;
0673 PFNGLENDCONDITIONALRENDERPROC glEndConditionalRender;
0674 PFNGLVERTEXATTRIBIPOINTERPROC glVertexAttribIPointer;
0675 PFNGLGETVERTEXATTRIBIIVPROC glGetVertexAttribIiv;
0676 PFNGLGETVERTEXATTRIBIUIVPROC glGetVertexAttribIuiv;
0677 PFNGLVERTEXATTRIBI1IPROC glVertexAttribI1i;
0678 PFNGLVERTEXATTRIBI2IPROC glVertexAttribI2i;
0679 PFNGLVERTEXATTRIBI3IPROC glVertexAttribI3i;
0680 PFNGLVERTEXATTRIBI4IPROC glVertexAttribI4i;
0681 PFNGLVERTEXATTRIBI1UIPROC glVertexAttribI1ui;
0682 PFNGLVERTEXATTRIBI2UIPROC glVertexAttribI2ui;
0683 PFNGLVERTEXATTRIBI3UIPROC glVertexAttribI3ui;
0684 PFNGLVERTEXATTRIBI4UIPROC glVertexAttribI4ui;
0685 PFNGLVERTEXATTRIBI1IVPROC glVertexAttribI1iv;
0686 PFNGLVERTEXATTRIBI2IVPROC glVertexAttribI2iv;
0687 PFNGLVERTEXATTRIBI3IVPROC glVertexAttribI3iv;
0688 PFNGLVERTEXATTRIBI4IVPROC glVertexAttribI4iv;
0689 PFNGLVERTEXATTRIBI1UIVPROC glVertexAttribI1uiv;
0690 PFNGLVERTEXATTRIBI2UIVPROC glVertexAttribI2uiv;
0691 PFNGLVERTEXATTRIBI3UIVPROC glVertexAttribI3uiv;
0692 PFNGLVERTEXATTRIBI4UIVPROC glVertexAttribI4uiv;
0693 PFNGLVERTEXATTRIBI4BVPROC glVertexAttribI4bv;
0694 PFNGLVERTEXATTRIBI4SVPROC glVertexAttribI4sv;
0695 PFNGLVERTEXATTRIBI4UBVPROC glVertexAttribI4ubv;
0696 PFNGLVERTEXATTRIBI4USVPROC glVertexAttribI4usv;
0697 PFNGLGETUNIFORMUIVPROC glGetUniformuiv;
0698 PFNGLBINDFRAGDATALOCATIONPROC glBindFragDataLocation;
0699 PFNGLGETFRAGDATALOCATIONPROC glGetFragDataLocation;
0700 PFNGLUNIFORM1UIPROC glUniform1ui;
0701 PFNGLUNIFORM2UIPROC glUniform2ui;
0702 PFNGLUNIFORM3UIPROC glUniform3ui;
0703 PFNGLUNIFORM4UIPROC glUniform4ui;
0704 PFNGLUNIFORM1UIVPROC glUniform1uiv;
0705 PFNGLUNIFORM2UIVPROC glUniform2uiv;
0706 PFNGLUNIFORM3UIVPROC glUniform3uiv;
0707 PFNGLUNIFORM4UIVPROC glUniform4uiv;
0708 PFNGLTEXPARAMETERIIVPROC glTexParameterIiv;
0709 PFNGLTEXPARAMETERIUIVPROC glTexParameterIuiv;
0710 PFNGLGETTEXPARAMETERIIVPROC glGetTexParameterIiv;
0711 PFNGLGETTEXPARAMETERIUIVPROC glGetTexParameterIuiv;
0712 PFNGLCLEARBUFFERIVPROC glClearBufferiv;
0713 PFNGLCLEARBUFFERUIVPROC glClearBufferuiv;
0714 PFNGLCLEARBUFFERFVPROC glClearBufferfv;
0715 PFNGLCLEARBUFFERFIPROC glClearBufferfi;
0716 PFNGLGETSTRINGIPROC glGetStringi;
0717
0718 public:
0719
0720 PFNGLGETUNIFORMINDICESPROC glGetUniformIndices;
0721 PFNGLGETACTIVEUNIFORMSIVPROC glGetActiveUniformsiv;
0722 PFNGLGETACTIVEUNIFORMNAMEPROC glGetActiveUniformName;
0723 PFNGLGETUNIFORMBLOCKINDEXPROC glGetUniformBlockIndex;
0724 PFNGLGETACTIVEUNIFORMBLOCKIVPROC glGetActiveUniformBlockiv;
0725 PFNGLGETACTIVEUNIFORMBLOCKNAMEPROC glGetActiveUniformBlockName;
0726 PFNGLUNIFORMBLOCKBINDINGPROC glUniformBlockBinding;
0727
0728 public:
0729
0730 PFNGLCOPYBUFFERSUBDATAPROC glCopyBufferSubData;
0731
0732 public:
0733
0734 PFNGLDRAWARRAYSINSTANCEDPROC glDrawArraysInstanced;
0735 PFNGLDRAWELEMENTSINSTANCEDPROC glDrawElementsInstanced;
0736 PFNGLTEXBUFFERPROC glTexBuffer;
0737 PFNGLPRIMITIVERESTARTINDEXPROC glPrimitiveRestartIndex;
0738
0739 public:
0740
0741 PFNGLDRAWELEMENTSBASEVERTEXPROC glDrawElementsBaseVertex;
0742 PFNGLDRAWRANGEELEMENTSBASEVERTEXPROC glDrawRangeElementsBaseVertex;
0743 PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXPROC glDrawElementsInstancedBaseVertex;
0744 PFNGLMULTIDRAWELEMENTSBASEVERTEXPROC glMultiDrawElementsBaseVertex;
0745
0746 public:
0747
0748 PFNGLPROVOKINGVERTEXPROC glProvokingVertex;
0749
0750 public:
0751
0752 PFNGLFENCESYNCPROC glFenceSync;
0753 PFNGLISSYNCPROC glIsSync;
0754 PFNGLDELETESYNCPROC glDeleteSync;
0755 PFNGLCLIENTWAITSYNCPROC glClientWaitSync;
0756 PFNGLWAITSYNCPROC glWaitSync;
0757 PFNGLGETINTEGER64VPROC glGetInteger64v;
0758 PFNGLGETSYNCIVPROC glGetSynciv;
0759
0760 public:
0761
0762 PFNGLTEXIMAGE2DMULTISAMPLEPROC glTexImage2DMultisample;
0763 PFNGLTEXIMAGE3DMULTISAMPLEPROC glTexImage3DMultisample;
0764 PFNGLGETMULTISAMPLEFVPROC glGetMultisamplefv;
0765 PFNGLSAMPLEMASKIPROC glSampleMaski;
0766
0767 public:
0768
0769 PFNGLGETINTEGER64I_VPROC glGetInteger64i_v;
0770 PFNGLGETBUFFERPARAMETERI64VPROC glGetBufferParameteri64v;
0771 PFNGLFRAMEBUFFERTEXTUREPROC glFramebufferTexture;
0772
0773 public:
0774
0775 PFNGLBINDFRAGDATALOCATIONINDEXEDPROC glBindFragDataLocationIndexed;
0776 PFNGLGETFRAGDATAINDEXPROC glGetFragDataIndex;
0777
0778 public:
0779
0780 PFNGLGENSAMPLERSPROC glGenSamplers;
0781 PFNGLDELETESAMPLERSPROC glDeleteSamplers;
0782 PFNGLISSAMPLERPROC glIsSampler;
0783 PFNGLBINDSAMPLERPROC glBindSampler;
0784 PFNGLSAMPLERPARAMETERIPROC glSamplerParameteri;
0785 PFNGLSAMPLERPARAMETERIVPROC glSamplerParameteriv;
0786 PFNGLSAMPLERPARAMETERFPROC glSamplerParameterf;
0787 PFNGLSAMPLERPARAMETERFVPROC glSamplerParameterfv;
0788 PFNGLSAMPLERPARAMETERIIVPROC glSamplerParameterIiv;
0789 PFNGLSAMPLERPARAMETERIUIVPROC glSamplerParameterIuiv;
0790 PFNGLGETSAMPLERPARAMETERIVPROC glGetSamplerParameteriv;
0791 PFNGLGETSAMPLERPARAMETERIIVPROC glGetSamplerParameterIiv;
0792 PFNGLGETSAMPLERPARAMETERFVPROC glGetSamplerParameterfv;
0793 PFNGLGETSAMPLERPARAMETERIUIVPROC glGetSamplerParameterIuiv;
0794
0795 public:
0796
0797 PFNGLQUERYCOUNTERPROC glQueryCounter;
0798 PFNGLGETQUERYOBJECTI64VPROC glGetQueryObjecti64v;
0799 PFNGLGETQUERYOBJECTUI64VPROC glGetQueryObjectui64v;
0800
0801 public:
0802
0803 PFNGLVERTEXATTRIBP1UIPROC glVertexAttribP1ui;
0804 PFNGLVERTEXATTRIBP1UIVPROC glVertexAttribP1uiv;
0805 PFNGLVERTEXATTRIBP2UIPROC glVertexAttribP2ui;
0806 PFNGLVERTEXATTRIBP2UIVPROC glVertexAttribP2uiv;
0807 PFNGLVERTEXATTRIBP3UIPROC glVertexAttribP3ui;
0808 PFNGLVERTEXATTRIBP3UIVPROC glVertexAttribP3uiv;
0809 PFNGLVERTEXATTRIBP4UIPROC glVertexAttribP4ui;
0810 PFNGLVERTEXATTRIBP4UIVPROC glVertexAttribP4uiv;
0811
0812 public:
0813
0814 PFNGLVERTEXATTRIBDIVISORPROC glVertexAttribDivisor;
0815
0816 public:
0817
0818 PFNGLDRAWARRAYSINDIRECTPROC glDrawArraysIndirect;
0819 PFNGLDRAWELEMENTSINDIRECTPROC glDrawElementsIndirect;
0820
0821 public:
0822
0823 PFNGLUNIFORM1DPROC glUniform1d;
0824 PFNGLUNIFORM2DPROC glUniform2d;
0825 PFNGLUNIFORM3DPROC glUniform3d;
0826 PFNGLUNIFORM4DPROC glUniform4d;
0827 PFNGLUNIFORM1DVPROC glUniform1dv;
0828 PFNGLUNIFORM2DVPROC glUniform2dv;
0829 PFNGLUNIFORM3DVPROC glUniform3dv;
0830 PFNGLUNIFORM4DVPROC glUniform4dv;
0831 PFNGLUNIFORMMATRIX2DVPROC glUniformMatrix2dv;
0832 PFNGLUNIFORMMATRIX3DVPROC glUniformMatrix3dv;
0833 PFNGLUNIFORMMATRIX4DVPROC glUniformMatrix4dv;
0834 PFNGLUNIFORMMATRIX2X3DVPROC glUniformMatrix2x3dv;
0835 PFNGLUNIFORMMATRIX2X4DVPROC glUniformMatrix2x4dv;
0836 PFNGLUNIFORMMATRIX3X2DVPROC glUniformMatrix3x2dv;
0837 PFNGLUNIFORMMATRIX3X4DVPROC glUniformMatrix3x4dv;
0838 PFNGLUNIFORMMATRIX4X2DVPROC glUniformMatrix4x2dv;
0839 PFNGLUNIFORMMATRIX4X3DVPROC glUniformMatrix4x3dv;
0840 PFNGLGETUNIFORMDVPROC glGetUniformdv;
0841
0842 public:
0843
0844 PFNGLGETSUBROUTINEUNIFORMLOCATIONPROC glGetSubroutineUniformLocation;
0845 PFNGLGETSUBROUTINEINDEXPROC glGetSubroutineIndex;
0846 PFNGLGETACTIVESUBROUTINEUNIFORMIVPROC glGetActiveSubroutineUniformiv;
0847 PFNGLGETACTIVESUBROUTINEUNIFORMNAMEPROC glGetActiveSubroutineUniformName;
0848 PFNGLGETACTIVESUBROUTINENAMEPROC glGetActiveSubroutineName;
0849 PFNGLUNIFORMSUBROUTINESUIVPROC glUniformSubroutinesuiv;
0850 PFNGLGETUNIFORMSUBROUTINEUIVPROC glGetUniformSubroutineuiv;
0851 PFNGLGETPROGRAMSTAGEIVPROC glGetProgramStageiv;
0852
0853 public:
0854
0855 PFNGLPATCHPARAMETERIPROC glPatchParameteri;
0856 PFNGLPATCHPARAMETERFVPROC glPatchParameterfv;
0857
0858 public:
0859
0860 PFNGLBINDTRANSFORMFEEDBACKPROC glBindTransformFeedback;
0861 PFNGLDELETETRANSFORMFEEDBACKSPROC glDeleteTransformFeedbacks;
0862 PFNGLGENTRANSFORMFEEDBACKSPROC glGenTransformFeedbacks;
0863 PFNGLISTRANSFORMFEEDBACKPROC glIsTransformFeedback;
0864 PFNGLPAUSETRANSFORMFEEDBACKPROC glPauseTransformFeedback;
0865 PFNGLRESUMETRANSFORMFEEDBACKPROC glResumeTransformFeedback;
0866 PFNGLDRAWTRANSFORMFEEDBACKPROC glDrawTransformFeedback;
0867
0868 public:
0869
0870 PFNGLDRAWTRANSFORMFEEDBACKSTREAMPROC glDrawTransformFeedbackStream;
0871 PFNGLBEGINQUERYINDEXEDPROC glBeginQueryIndexed;
0872 PFNGLENDQUERYINDEXEDPROC glEndQueryIndexed;
0873 PFNGLGETQUERYINDEXEDIVPROC glGetQueryIndexediv;
0874
0875 public:
0876
0877 PFNGLMINSAMPLESHADINGPROC glMinSampleShading;
0878 PFNGLBLENDEQUATIONIPROC glBlendEquationi;
0879 PFNGLBLENDEQUATIONSEPARATEIPROC glBlendEquationSeparatei;
0880 PFNGLBLENDFUNCIPROC glBlendFunci;
0881 PFNGLBLENDFUNCSEPARATEIPROC glBlendFuncSeparatei;
0882
0883 public:
0884
0885 PFNGLRELEASESHADERCOMPILERPROC glReleaseShaderCompiler;
0886 PFNGLSHADERBINARYPROC glShaderBinary;
0887 PFNGLGETSHADERPRECISIONFORMATPROC glGetShaderPrecisionFormat;
0888 PFNGLDEPTHRANGEFPROC glDepthRangef;
0889 PFNGLCLEARDEPTHFPROC glClearDepthf;
0890
0891 public:
0892
0893 PFNGLGETPROGRAMBINARYPROC glGetProgramBinary;
0894 PFNGLPROGRAMBINARYPROC glProgramBinary;
0895 PFNGLPROGRAMPARAMETERIPROC glProgramParameteri;
0896
0897 public:
0898
0899 PFNGLUSEPROGRAMSTAGESPROC glUseProgramStages;
0900 PFNGLACTIVESHADERPROGRAMPROC glActiveShaderProgram;
0901 PFNGLCREATESHADERPROGRAMVPROC glCreateShaderProgramv;
0902 PFNGLBINDPROGRAMPIPELINEPROC glBindProgramPipeline;
0903 PFNGLDELETEPROGRAMPIPELINESPROC glDeleteProgramPipelines;
0904 PFNGLGENPROGRAMPIPELINESPROC glGenProgramPipelines;
0905 PFNGLISPROGRAMPIPELINEPROC glIsProgramPipeline;
0906 PFNGLGETPROGRAMPIPELINEIVPROC glGetProgramPipelineiv;
0907 PFNGLPROGRAMUNIFORM1IPROC glProgramUniform1i;
0908 PFNGLPROGRAMUNIFORM1IVPROC glProgramUniform1iv;
0909 PFNGLPROGRAMUNIFORM1FPROC glProgramUniform1f;
0910 PFNGLPROGRAMUNIFORM1FVPROC glProgramUniform1fv;
0911 PFNGLPROGRAMUNIFORM1DPROC glProgramUniform1d;
0912 PFNGLPROGRAMUNIFORM1DVPROC glProgramUniform1dv;
0913 PFNGLPROGRAMUNIFORM1UIPROC glProgramUniform1ui;
0914 PFNGLPROGRAMUNIFORM1UIVPROC glProgramUniform1uiv;
0915 PFNGLPROGRAMUNIFORM2IPROC glProgramUniform2i;
0916 PFNGLPROGRAMUNIFORM2IVPROC glProgramUniform2iv;
0917 PFNGLPROGRAMUNIFORM2FPROC glProgramUniform2f;
0918 PFNGLPROGRAMUNIFORM2FVPROC glProgramUniform2fv;
0919 PFNGLPROGRAMUNIFORM2DPROC glProgramUniform2d;
0920 PFNGLPROGRAMUNIFORM2DVPROC glProgramUniform2dv;
0921 PFNGLPROGRAMUNIFORM2UIPROC glProgramUniform2ui;
0922 PFNGLPROGRAMUNIFORM2UIVPROC glProgramUniform2uiv;
0923 PFNGLPROGRAMUNIFORM3IPROC glProgramUniform3i;
0924 PFNGLPROGRAMUNIFORM3IVPROC glProgramUniform3iv;
0925 PFNGLPROGRAMUNIFORM3FPROC glProgramUniform3f;
0926 PFNGLPROGRAMUNIFORM3FVPROC glProgramUniform3fv;
0927 PFNGLPROGRAMUNIFORM3DPROC glProgramUniform3d;
0928 PFNGLPROGRAMUNIFORM3DVPROC glProgramUniform3dv;
0929 PFNGLPROGRAMUNIFORM3UIPROC glProgramUniform3ui;
0930 PFNGLPROGRAMUNIFORM3UIVPROC glProgramUniform3uiv;
0931 PFNGLPROGRAMUNIFORM4IPROC glProgramUniform4i;
0932 PFNGLPROGRAMUNIFORM4IVPROC glProgramUniform4iv;
0933 PFNGLPROGRAMUNIFORM4FPROC glProgramUniform4f;
0934 PFNGLPROGRAMUNIFORM4FVPROC glProgramUniform4fv;
0935 PFNGLPROGRAMUNIFORM4DPROC glProgramUniform4d;
0936 PFNGLPROGRAMUNIFORM4DVPROC glProgramUniform4dv;
0937 PFNGLPROGRAMUNIFORM4UIPROC glProgramUniform4ui;
0938 PFNGLPROGRAMUNIFORM4UIVPROC glProgramUniform4uiv;
0939 PFNGLPROGRAMUNIFORMMATRIX2FVPROC glProgramUniformMatrix2fv;
0940 PFNGLPROGRAMUNIFORMMATRIX3FVPROC glProgramUniformMatrix3fv;
0941 PFNGLPROGRAMUNIFORMMATRIX4FVPROC glProgramUniformMatrix4fv;
0942 PFNGLPROGRAMUNIFORMMATRIX2DVPROC glProgramUniformMatrix2dv;
0943 PFNGLPROGRAMUNIFORMMATRIX3DVPROC glProgramUniformMatrix3dv;
0944 PFNGLPROGRAMUNIFORMMATRIX4DVPROC glProgramUniformMatrix4dv;
0945 PFNGLPROGRAMUNIFORMMATRIX2X3FVPROC glProgramUniformMatrix2x3fv;
0946 PFNGLPROGRAMUNIFORMMATRIX3X2FVPROC glProgramUniformMatrix3x2fv;
0947 PFNGLPROGRAMUNIFORMMATRIX2X4FVPROC glProgramUniformMatrix2x4fv;
0948 PFNGLPROGRAMUNIFORMMATRIX4X2FVPROC glProgramUniformMatrix4x2fv;
0949 PFNGLPROGRAMUNIFORMMATRIX3X4FVPROC glProgramUniformMatrix3x4fv;
0950 PFNGLPROGRAMUNIFORMMATRIX4X3FVPROC glProgramUniformMatrix4x3fv;
0951 PFNGLPROGRAMUNIFORMMATRIX2X3DVPROC glProgramUniformMatrix2x3dv;
0952 PFNGLPROGRAMUNIFORMMATRIX3X2DVPROC glProgramUniformMatrix3x2dv;
0953 PFNGLPROGRAMUNIFORMMATRIX2X4DVPROC glProgramUniformMatrix2x4dv;
0954 PFNGLPROGRAMUNIFORMMATRIX4X2DVPROC glProgramUniformMatrix4x2dv;
0955 PFNGLPROGRAMUNIFORMMATRIX3X4DVPROC glProgramUniformMatrix3x4dv;
0956 PFNGLPROGRAMUNIFORMMATRIX4X3DVPROC glProgramUniformMatrix4x3dv;
0957 PFNGLVALIDATEPROGRAMPIPELINEPROC glValidateProgramPipeline;
0958 PFNGLGETPROGRAMPIPELINEINFOLOGPROC glGetProgramPipelineInfoLog;
0959
0960 public:
0961
0962 PFNGLVERTEXATTRIBL1DPROC glVertexAttribL1d;
0963 PFNGLVERTEXATTRIBL2DPROC glVertexAttribL2d;
0964 PFNGLVERTEXATTRIBL3DPROC glVertexAttribL3d;
0965 PFNGLVERTEXATTRIBL4DPROC glVertexAttribL4d;
0966 PFNGLVERTEXATTRIBL1DVPROC glVertexAttribL1dv;
0967 PFNGLVERTEXATTRIBL2DVPROC glVertexAttribL2dv;
0968 PFNGLVERTEXATTRIBL3DVPROC glVertexAttribL3dv;
0969 PFNGLVERTEXATTRIBL4DVPROC glVertexAttribL4dv;
0970 PFNGLVERTEXATTRIBLPOINTERPROC glVertexAttribLPointer;
0971 PFNGLGETVERTEXATTRIBLDVPROC glGetVertexAttribLdv;
0972
0973 public:
0974
0975 PFNGLVIEWPORTARRAYVPROC glViewportArrayv;
0976 PFNGLVIEWPORTINDEXEDFPROC glViewportIndexedf;
0977 PFNGLVIEWPORTINDEXEDFVPROC glViewportIndexedfv;
0978 PFNGLSCISSORARRAYVPROC glScissorArrayv;
0979 PFNGLSCISSORINDEXEDPROC glScissorIndexed;
0980 PFNGLSCISSORINDEXEDVPROC glScissorIndexedv;
0981 PFNGLDEPTHRANGEARRAYVPROC glDepthRangeArrayv;
0982 PFNGLDEPTHRANGEINDEXEDPROC glDepthRangeIndexed;
0983 PFNGLGETFLOATI_VPROC glGetFloati_v;
0984 PFNGLGETDOUBLEI_VPROC glGetDoublei_v;
0985
0986 public:
0987
0988
0989
0990 public:
0991
0992 PFNGLDRAWARRAYSINSTANCEDBASEINSTANCEPROC glDrawArraysInstancedBaseInstance;
0993 PFNGLDRAWELEMENTSINSTANCEDBASEINSTANCEPROC glDrawElementsInstancedBaseInstance;
0994 PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXBASEINSTANCEPROC glDrawElementsInstancedBaseVertexBaseInstance;
0995
0996 public:
0997
0998 PFNGLDRAWTRANSFORMFEEDBACKINSTANCEDPROC glDrawTransformFeedbackInstanced;
0999 PFNGLDRAWTRANSFORMFEEDBACKSTREAMINSTANCEDPROC glDrawTransformFeedbackStreamInstanced;
1000
1001 public:
1002
1003 PFNGLGETINTERNALFORMATIVPROC glGetInternalformativ;
1004
1005 public:
1006
1007 PFNGLGETACTIVEATOMICCOUNTERBUFFERIVPROC glGetActiveAtomicCounterBufferiv;
1008
1009 public:
1010
1011 PFNGLBINDIMAGETEXTUREPROC glBindImageTexture;
1012 PFNGLMEMORYBARRIERPROC glMemoryBarrier;
1013
1014 public:
1015
1016 PFNGLTEXSTORAGE1DPROC glTexStorage1D;
1017 PFNGLTEXSTORAGE2DPROC glTexStorage2D;
1018 PFNGLTEXSTORAGE3DPROC glTexStorage3D;
1019
1020 public:
1021
1022 public:
1023
1024 PFNGLCLEARBUFFERDATAPROC glClearBufferData;
1025 PFNGLCLEARBUFFERSUBDATAPROC glClearBufferSubData;
1026 PFNGLDISPATCHCOMPUTEPROC glDispatchCompute;
1027 PFNGLDISPATCHCOMPUTEINDIRECTPROC glDispatchComputeIndirect;
1028 PFNGLCOPYIMAGESUBDATAPROC glCopyImageSubData;
1029 PFNGLFRAMEBUFFERPARAMETERIPROC glFramebufferParameteri;
1030 PFNGLGETFRAMEBUFFERPARAMETERIVPROC glGetFramebufferParameteriv;
1031 PFNGLGETINTERNALFORMATI64VPROC glGetInternalformati64v;
1032 PFNGLINVALIDATETEXSUBIMAGEPROC glInvalidateTexSubImage;
1033 PFNGLINVALIDATETEXIMAGEPROC glInvalidateTexImage;
1034 PFNGLINVALIDATEBUFFERSUBDATAPROC glInvalidateBufferSubData;
1035 PFNGLINVALIDATEBUFFERDATAPROC glInvalidateBufferData;
1036 PFNGLINVALIDATEFRAMEBUFFERPROC glInvalidateFramebuffer;
1037 PFNGLINVALIDATESUBFRAMEBUFFERPROC glInvalidateSubFramebuffer;
1038 PFNGLMULTIDRAWARRAYSINDIRECTPROC glMultiDrawArraysIndirect;
1039 PFNGLMULTIDRAWELEMENTSINDIRECTPROC glMultiDrawElementsIndirect;
1040 PFNGLGETPROGRAMINTERFACEIVPROC glGetProgramInterfaceiv;
1041 PFNGLGETPROGRAMRESOURCEINDEXPROC glGetProgramResourceIndex;
1042 PFNGLGETPROGRAMRESOURCENAMEPROC glGetProgramResourceName;
1043 PFNGLGETPROGRAMRESOURCEIVPROC glGetProgramResourceiv;
1044 PFNGLGETPROGRAMRESOURCELOCATIONPROC glGetProgramResourceLocation;
1045 PFNGLGETPROGRAMRESOURCELOCATIONINDEXPROC glGetProgramResourceLocationIndex;
1046 PFNGLSHADERSTORAGEBLOCKBINDINGPROC glShaderStorageBlockBinding;
1047 PFNGLTEXBUFFERRANGEPROC glTexBufferRange;
1048 PFNGLTEXSTORAGE2DMULTISAMPLEPROC glTexStorage2DMultisample;
1049 PFNGLTEXSTORAGE3DMULTISAMPLEPROC glTexStorage3DMultisample;
1050 PFNGLTEXTUREVIEWPROC glTextureView;
1051 PFNGLBINDVERTEXBUFFERPROC glBindVertexBuffer;
1052 PFNGLVERTEXATTRIBFORMATPROC glVertexAttribFormat;
1053 PFNGLVERTEXATTRIBIFORMATPROC glVertexAttribIFormat;
1054 PFNGLVERTEXATTRIBLFORMATPROC glVertexAttribLFormat;
1055 PFNGLVERTEXATTRIBBINDINGPROC glVertexAttribBinding;
1056 PFNGLVERTEXBINDINGDIVISORPROC glVertexBindingDivisor;
1057 PFNGLDEBUGMESSAGECONTROLPROC glDebugMessageControl;
1058 PFNGLDEBUGMESSAGEINSERTPROC glDebugMessageInsert;
1059 PFNGLDEBUGMESSAGECALLBACKPROC glDebugMessageCallback;
1060 PFNGLGETDEBUGMESSAGELOGPROC glGetDebugMessageLog;
1061 PFNGLPUSHDEBUGGROUPPROC glPushDebugGroup;
1062 PFNGLPOPDEBUGGROUPPROC glPopDebugGroup;
1063 PFNGLOBJECTLABELPROC glObjectLabel;
1064 PFNGLGETOBJECTLABELPROC glGetObjectLabel;
1065 PFNGLOBJECTPTRLABELPROC glObjectPtrLabel;
1066 PFNGLGETOBJECTPTRLABELPROC glGetObjectPtrLabel;
1067
1068 public:
1069
1070 PFNGLBUFFERSTORAGEPROC glBufferStorage;
1071 PFNGLCLEARTEXIMAGEPROC glClearTexImage;
1072 PFNGLCLEARTEXSUBIMAGEPROC glClearTexSubImage;
1073 PFNGLBINDBUFFERSBASEPROC glBindBuffersBase;
1074 PFNGLBINDBUFFERSRANGEPROC glBindBuffersRange;
1075 PFNGLBINDTEXTURESPROC glBindTextures;
1076 PFNGLBINDSAMPLERSPROC glBindSamplers;
1077 PFNGLBINDIMAGETEXTURESPROC glBindImageTextures;
1078 PFNGLBINDVERTEXBUFFERSPROC glBindVertexBuffers;
1079
1080 public:
1081
1082 PFNGLCLIPCONTROLPROC glClipControl;
1083 PFNGLCREATETRANSFORMFEEDBACKSPROC glCreateTransformFeedbacks;
1084 PFNGLTRANSFORMFEEDBACKBUFFERBASEPROC glTransformFeedbackBufferBase;
1085 PFNGLTRANSFORMFEEDBACKBUFFERRANGEPROC glTransformFeedbackBufferRange;
1086 PFNGLGETTRANSFORMFEEDBACKIVPROC glGetTransformFeedbackiv;
1087 PFNGLGETTRANSFORMFEEDBACKI_VPROC glGetTransformFeedbacki_v;
1088 PFNGLGETTRANSFORMFEEDBACKI64_VPROC glGetTransformFeedbacki64_v;
1089 PFNGLCREATEBUFFERSPROC glCreateBuffers;
1090 PFNGLNAMEDBUFFERSTORAGEPROC glNamedBufferStorage;
1091 PFNGLNAMEDBUFFERDATAPROC glNamedBufferData;
1092 PFNGLNAMEDBUFFERSUBDATAPROC glNamedBufferSubData;
1093 PFNGLCOPYNAMEDBUFFERSUBDATAPROC glCopyNamedBufferSubData;
1094 PFNGLCLEARNAMEDBUFFERDATAPROC glClearNamedBufferData;
1095 PFNGLCLEARNAMEDBUFFERSUBDATAPROC glClearNamedBufferSubData;
1096 PFNGLMAPNAMEDBUFFERPROC glMapNamedBuffer;
1097 PFNGLMAPNAMEDBUFFERRANGEPROC glMapNamedBufferRange;
1098 PFNGLUNMAPNAMEDBUFFERPROC glUnmapNamedBuffer;
1099 PFNGLFLUSHMAPPEDNAMEDBUFFERRANGEPROC glFlushMappedNamedBufferRange;
1100 PFNGLGETNAMEDBUFFERPARAMETERIVPROC glGetNamedBufferParameteriv;
1101 PFNGLGETNAMEDBUFFERPARAMETERI64VPROC glGetNamedBufferParameteri64v;
1102 PFNGLGETNAMEDBUFFERPOINTERVPROC glGetNamedBufferPointerv;
1103 PFNGLGETNAMEDBUFFERSUBDATAPROC glGetNamedBufferSubData;
1104 PFNGLCREATEFRAMEBUFFERSPROC glCreateFramebuffers;
1105 PFNGLNAMEDFRAMEBUFFERRENDERBUFFERPROC glNamedFramebufferRenderbuffer;
1106 PFNGLNAMEDFRAMEBUFFERPARAMETERIPROC glNamedFramebufferParameteri;
1107 PFNGLNAMEDFRAMEBUFFERTEXTUREPROC glNamedFramebufferTexture;
1108 PFNGLNAMEDFRAMEBUFFERTEXTURELAYERPROC glNamedFramebufferTextureLayer;
1109 PFNGLNAMEDFRAMEBUFFERDRAWBUFFERPROC glNamedFramebufferDrawBuffer;
1110 PFNGLNAMEDFRAMEBUFFERDRAWBUFFERSPROC glNamedFramebufferDrawBuffers;
1111 PFNGLNAMEDFRAMEBUFFERREADBUFFERPROC glNamedFramebufferReadBuffer;
1112 PFNGLINVALIDATENAMEDFRAMEBUFFERDATAPROC glInvalidateNamedFramebufferData;
1113 PFNGLINVALIDATENAMEDFRAMEBUFFERSUBDATAPROC glInvalidateNamedFramebufferSubData;
1114 PFNGLCLEARNAMEDFRAMEBUFFERIVPROC glClearNamedFramebufferiv;
1115 PFNGLCLEARNAMEDFRAMEBUFFERUIVPROC glClearNamedFramebufferuiv;
1116 PFNGLCLEARNAMEDFRAMEBUFFERFVPROC glClearNamedFramebufferfv;
1117 PFNGLCLEARNAMEDFRAMEBUFFERFIPROC glClearNamedFramebufferfi;
1118 PFNGLBLITNAMEDFRAMEBUFFERPROC glBlitNamedFramebuffer;
1119 PFNGLCHECKNAMEDFRAMEBUFFERSTATUSPROC glCheckNamedFramebufferStatus;
1120 PFNGLGETNAMEDFRAMEBUFFERPARAMETERIVPROC glGetNamedFramebufferParameteriv;
1121 PFNGLGETNAMEDFRAMEBUFFERATTACHMENTPARAMETERIVPROC glGetNamedFramebufferAttachmentParameteriv;
1122 PFNGLCREATERENDERBUFFERSPROC glCreateRenderbuffers;
1123 PFNGLNAMEDRENDERBUFFERSTORAGEPROC glNamedRenderbufferStorage;
1124 PFNGLNAMEDRENDERBUFFERSTORAGEMULTISAMPLEPROC glNamedRenderbufferStorageMultisample;
1125 PFNGLGETNAMEDRENDERBUFFERPARAMETERIVPROC glGetNamedRenderbufferParameteriv;
1126 PFNGLCREATETEXTURESPROC glCreateTextures;
1127 PFNGLTEXTUREBUFFERPROC glTextureBuffer;
1128 PFNGLTEXTUREBUFFERRANGEPROC glTextureBufferRange;
1129 PFNGLTEXTURESTORAGE1DPROC glTextureStorage1D;
1130 PFNGLTEXTURESTORAGE2DPROC glTextureStorage2D;
1131 PFNGLTEXTURESTORAGE3DPROC glTextureStorage3D;
1132 PFNGLTEXTURESTORAGE2DMULTISAMPLEPROC glTextureStorage2DMultisample;
1133 PFNGLTEXTURESTORAGE3DMULTISAMPLEPROC glTextureStorage3DMultisample;
1134 PFNGLTEXTURESUBIMAGE1DPROC glTextureSubImage1D;
1135 PFNGLTEXTURESUBIMAGE2DPROC glTextureSubImage2D;
1136 PFNGLTEXTURESUBIMAGE3DPROC glTextureSubImage3D;
1137 PFNGLCOMPRESSEDTEXTURESUBIMAGE1DPROC glCompressedTextureSubImage1D;
1138 PFNGLCOMPRESSEDTEXTURESUBIMAGE2DPROC glCompressedTextureSubImage2D;
1139 PFNGLCOMPRESSEDTEXTURESUBIMAGE3DPROC glCompressedTextureSubImage3D;
1140 PFNGLCOPYTEXTURESUBIMAGE1DPROC glCopyTextureSubImage1D;
1141 PFNGLCOPYTEXTURESUBIMAGE2DPROC glCopyTextureSubImage2D;
1142 PFNGLCOPYTEXTURESUBIMAGE3DPROC glCopyTextureSubImage3D;
1143 PFNGLTEXTUREPARAMETERFPROC glTextureParameterf;
1144 PFNGLTEXTUREPARAMETERFVPROC glTextureParameterfv;
1145 PFNGLTEXTUREPARAMETERIPROC glTextureParameteri;
1146 PFNGLTEXTUREPARAMETERIIVPROC glTextureParameterIiv;
1147 PFNGLTEXTUREPARAMETERIUIVPROC glTextureParameterIuiv;
1148 PFNGLTEXTUREPARAMETERIVPROC glTextureParameteriv;
1149 PFNGLGENERATETEXTUREMIPMAPPROC glGenerateTextureMipmap;
1150 PFNGLBINDTEXTUREUNITPROC glBindTextureUnit;
1151 PFNGLGETTEXTUREIMAGEPROC glGetTextureImage;
1152 PFNGLGETCOMPRESSEDTEXTUREIMAGEPROC glGetCompressedTextureImage;
1153 PFNGLGETTEXTURELEVELPARAMETERFVPROC glGetTextureLevelParameterfv;
1154 PFNGLGETTEXTURELEVELPARAMETERIVPROC glGetTextureLevelParameteriv;
1155 PFNGLGETTEXTUREPARAMETERFVPROC glGetTextureParameterfv;
1156 PFNGLGETTEXTUREPARAMETERIIVPROC glGetTextureParameterIiv;
1157 PFNGLGETTEXTUREPARAMETERIUIVPROC glGetTextureParameterIuiv;
1158 PFNGLGETTEXTUREPARAMETERIVPROC glGetTextureParameteriv;
1159 PFNGLCREATEVERTEXARRAYSPROC glCreateVertexArrays;
1160 PFNGLDISABLEVERTEXARRAYATTRIBPROC glDisableVertexArrayAttrib;
1161 PFNGLENABLEVERTEXARRAYATTRIBPROC glEnableVertexArrayAttrib;
1162 PFNGLVERTEXARRAYELEMENTBUFFERPROC glVertexArrayElementBuffer;
1163 PFNGLVERTEXARRAYVERTEXBUFFERPROC glVertexArrayVertexBuffer;
1164 PFNGLVERTEXARRAYVERTEXBUFFERSPROC glVertexArrayVertexBuffers;
1165 PFNGLVERTEXARRAYATTRIBBINDINGPROC glVertexArrayAttribBinding;
1166 PFNGLVERTEXARRAYATTRIBFORMATPROC glVertexArrayAttribFormat;
1167 PFNGLVERTEXARRAYATTRIBIFORMATPROC glVertexArrayAttribIFormat;
1168 PFNGLVERTEXARRAYATTRIBLFORMATPROC glVertexArrayAttribLFormat;
1169 PFNGLVERTEXARRAYBINDINGDIVISORPROC glVertexArrayBindingDivisor;
1170 PFNGLGETVERTEXARRAYIVPROC glGetVertexArrayiv;
1171 PFNGLGETVERTEXARRAYINDEXEDIVPROC glGetVertexArrayIndexediv;
1172 PFNGLGETVERTEXARRAYINDEXED64IVPROC glGetVertexArrayIndexed64iv;
1173 PFNGLCREATESAMPLERSPROC glCreateSamplers;
1174 PFNGLCREATEPROGRAMPIPELINESPROC glCreateProgramPipelines;
1175 PFNGLCREATEQUERIESPROC glCreateQueries;
1176 PFNGLGETQUERYBUFFEROBJECTI64VPROC glGetQueryBufferObjecti64v;
1177 PFNGLGETQUERYBUFFEROBJECTIVPROC glGetQueryBufferObjectiv;
1178 PFNGLGETQUERYBUFFEROBJECTUI64VPROC glGetQueryBufferObjectui64v;
1179 PFNGLGETQUERYBUFFEROBJECTUIVPROC glGetQueryBufferObjectuiv;
1180 PFNGLMEMORYBARRIERBYREGIONPROC glMemoryBarrierByRegion;
1181 PFNGLGETTEXTURESUBIMAGEPROC glGetTextureSubImage;
1182 PFNGLGETCOMPRESSEDTEXTURESUBIMAGEPROC glGetCompressedTextureSubImage;
1183 PFNGLGETGRAPHICSRESETSTATUSPROC glGetGraphicsResetStatus;
1184 PFNGLGETNCOMPRESSEDTEXIMAGEPROC glGetnCompressedTexImage;
1185 PFNGLGETNTEXIMAGEPROC glGetnTexImage;
1186 PFNGLGETNUNIFORMDVPROC glGetnUniformdv;
1187 PFNGLGETNUNIFORMFVPROC glGetnUniformfv;
1188 PFNGLGETNUNIFORMIVPROC glGetnUniformiv;
1189 PFNGLGETNUNIFORMUIVPROC glGetnUniformuiv;
1190 PFNGLREADNPIXELSPROC glReadnPixels;
1191 PFNGLTEXTUREBARRIERPROC glTextureBarrier;
1192
1193 public:
1194
1195 PFNGLSPECIALIZESHADERPROC glSpecializeShader;
1196 PFNGLMULTIDRAWARRAYSINDIRECTCOUNTPROC glMultiDrawArraysIndirectCount;
1197 PFNGLMULTIDRAWELEMENTSINDIRECTCOUNTPROC glMultiDrawElementsIndirectCount;
1198 PFNGLPOLYGONOFFSETCLAMPPROC glPolygonOffsetClamp;
1199
1200 public:
1201
1202 PFNGLPROGRAMPARAMETERIEXTPROC glProgramParameteriEXT;
1203
1204 public:
1205
1206 PFNGLGETTEXTUREHANDLEARBPROC glGetTextureHandleARB;
1207 PFNGLGETTEXTURESAMPLERHANDLEARBPROC glGetTextureSamplerHandleARB;
1208 PFNGLMAKETEXTUREHANDLERESIDENTARBPROC glMakeTextureHandleResidentARB;
1209 PFNGLMAKETEXTUREHANDLENONRESIDENTARBPROC glMakeTextureHandleNonResidentARB;
1210 PFNGLGETIMAGEHANDLEARBPROC glGetImageHandleARB;
1211 PFNGLMAKEIMAGEHANDLERESIDENTARBPROC glMakeImageHandleResidentARB;
1212 PFNGLMAKEIMAGEHANDLENONRESIDENTARBPROC glMakeImageHandleNonResidentARB;
1213 PFNGLUNIFORMHANDLEUI64ARBPROC glUniformHandleui64ARB;
1214 PFNGLUNIFORMHANDLEUI64VARBPROC glUniformHandleui64vARB;
1215 PFNGLPROGRAMUNIFORMHANDLEUI64ARBPROC glProgramUniformHandleui64ARB;
1216 PFNGLPROGRAMUNIFORMHANDLEUI64VARBPROC glProgramUniformHandleui64vARB;
1217 PFNGLISTEXTUREHANDLERESIDENTARBPROC glIsTextureHandleResidentARB;
1218 PFNGLISIMAGEHANDLERESIDENTARBPROC glIsImageHandleResidentARB;
1219 PFNGLVERTEXATTRIBL1UI64ARBPROC glVertexAttribL1ui64ARB;
1220 PFNGLVERTEXATTRIBL1UI64VARBPROC glVertexAttribL1ui64vARB;
1221 PFNGLGETVERTEXATTRIBLUI64VARBPROC glGetVertexAttribLui64vARB;
1222
1223 #if defined(_WIN32)
1224 public:
1225
1226 typedef const char* (WINAPI *wglGetExtensionsStringARB_t)(HDC theDeviceContext);
1227 wglGetExtensionsStringARB_t wglGetExtensionsStringARB;
1228
1229 typedef BOOL (WINAPI *wglSwapIntervalEXT_t)(int theInterval);
1230 wglSwapIntervalEXT_t wglSwapIntervalEXT;
1231
1232
1233
1234 #ifndef WGL_NUMBER_PIXEL_FORMATS_ARB
1235 #define WGL_NUMBER_PIXEL_FORMATS_ARB 0x2000
1236 #define WGL_DRAW_TO_WINDOW_ARB 0x2001
1237 #define WGL_DRAW_TO_BITMAP_ARB 0x2002
1238 #define WGL_ACCELERATION_ARB 0x2003
1239 #define WGL_NEED_PALETTE_ARB 0x2004
1240 #define WGL_NEED_SYSTEM_PALETTE_ARB 0x2005
1241 #define WGL_SWAP_LAYER_BUFFERS_ARB 0x2006
1242 #define WGL_SWAP_METHOD_ARB 0x2007
1243 #define WGL_NUMBER_OVERLAYS_ARB 0x2008
1244 #define WGL_NUMBER_UNDERLAYS_ARB 0x2009
1245 #define WGL_TRANSPARENT_ARB 0x200A
1246 #define WGL_TRANSPARENT_RED_VALUE_ARB 0x2037
1247 #define WGL_TRANSPARENT_GREEN_VALUE_ARB 0x2038
1248 #define WGL_TRANSPARENT_BLUE_VALUE_ARB 0x2039
1249 #define WGL_TRANSPARENT_ALPHA_VALUE_ARB 0x203A
1250 #define WGL_TRANSPARENT_INDEX_VALUE_ARB 0x203B
1251 #define WGL_SHARE_DEPTH_ARB 0x200C
1252 #define WGL_SHARE_STENCIL_ARB 0x200D
1253 #define WGL_SHARE_ACCUM_ARB 0x200E
1254 #define WGL_SUPPORT_GDI_ARB 0x200F
1255 #define WGL_SUPPORT_OPENGL_ARB 0x2010
1256 #define WGL_DOUBLE_BUFFER_ARB 0x2011
1257 #define WGL_STEREO_ARB 0x2012
1258 #define WGL_PIXEL_TYPE_ARB 0x2013
1259 #define WGL_COLOR_BITS_ARB 0x2014
1260 #define WGL_RED_BITS_ARB 0x2015
1261 #define WGL_RED_SHIFT_ARB 0x2016
1262 #define WGL_GREEN_BITS_ARB 0x2017
1263 #define WGL_GREEN_SHIFT_ARB 0x2018
1264 #define WGL_BLUE_BITS_ARB 0x2019
1265 #define WGL_BLUE_SHIFT_ARB 0x201A
1266 #define WGL_ALPHA_BITS_ARB 0x201B
1267 #define WGL_ALPHA_SHIFT_ARB 0x201C
1268 #define WGL_ACCUM_BITS_ARB 0x201D
1269 #define WGL_ACCUM_RED_BITS_ARB 0x201E
1270 #define WGL_ACCUM_GREEN_BITS_ARB 0x201F
1271 #define WGL_ACCUM_BLUE_BITS_ARB 0x2020
1272 #define WGL_ACCUM_ALPHA_BITS_ARB 0x2021
1273 #define WGL_DEPTH_BITS_ARB 0x2022
1274 #define WGL_STENCIL_BITS_ARB 0x2023
1275 #define WGL_AUX_BUFFERS_ARB 0x2024
1276
1277 #define WGL_NO_ACCELERATION_ARB 0x2025
1278 #define WGL_GENERIC_ACCELERATION_ARB 0x2026
1279 #define WGL_FULL_ACCELERATION_ARB 0x2027
1280
1281 #define WGL_SWAP_EXCHANGE_ARB 0x2028
1282 #define WGL_SWAP_COPY_ARB 0x2029
1283 #define WGL_SWAP_UNDEFINED_ARB 0x202A
1284
1285 #define WGL_TYPE_RGBA_ARB 0x202B
1286 #define WGL_TYPE_COLORINDEX_ARB 0x202C
1287
1288 #endif
1289
1290
1291 #ifndef WGL_SAMPLE_BUFFERS_ARB
1292 #define WGL_SAMPLE_BUFFERS_ARB 0x2041
1293 #define WGL_SAMPLES_ARB 0x2042
1294 #endif
1295
1296
1297 #ifndef WGL_CONTEXT_ROBUST_ACCESS_BIT_ARB
1298 #define WGL_CONTEXT_ROBUST_ACCESS_BIT_ARB 0x00000004
1299 #define WGL_CONTEXT_RESET_NOTIFICATION_STRATEGY_ARB 0x8256
1300 #define WGL_NO_RESET_NOTIFICATION_ARB 0x8261
1301 #define WGL_LOSE_CONTEXT_ON_RESET_ARB 0x8252
1302 #endif
1303
1304 typedef BOOL (WINAPI *wglChoosePixelFormatARB_t)
1305 (HDC theDevCtx,
1306 const int* theIntAttribs,
1307 const float* theFloatAttribs,
1308 unsigned int theMaxFormats,
1309 int* theFormatsOut,
1310 unsigned int* theNumFormatsOut);
1311 wglChoosePixelFormatARB_t wglChoosePixelFormatARB;
1312
1313
1314
1315 #ifndef WGL_CONTEXT_MAJOR_VERSION_ARB
1316 #define WGL_CONTEXT_MAJOR_VERSION_ARB 0x2091
1317 #define WGL_CONTEXT_MINOR_VERSION_ARB 0x2092
1318 #define WGL_CONTEXT_LAYER_PLANE_ARB 0x2093
1319 #define WGL_CONTEXT_FLAGS_ARB 0x2094
1320 #define WGL_CONTEXT_PROFILE_MASK_ARB 0x9126
1321
1322
1323 #define WGL_CONTEXT_DEBUG_BIT_ARB 0x0001
1324 #define WGL_CONTEXT_FORWARD_COMPATIBLE_BIT_ARB 0x0002
1325
1326
1327 #define WGL_CONTEXT_CORE_PROFILE_BIT_ARB 0x00000001
1328 #define WGL_CONTEXT_COMPATIBILITY_PROFILE_BIT_ARB 0x00000002
1329 #endif
1330
1331 typedef HGLRC (WINAPI *wglCreateContextAttribsARB_t)(HDC theDevCtx,
1332 HGLRC theShareContext,
1333 const int* theAttribs);
1334 wglCreateContextAttribsARB_t wglCreateContextAttribsARB;
1335
1336
1337
1338 typedef BOOL (WINAPI *wglDXSetResourceShareHandleNV_t)(void* theObjectD3d, HANDLE theShareHandle);
1339 typedef HANDLE (WINAPI *wglDXOpenDeviceNV_t )(void* theDeviceD3d);
1340 typedef BOOL (WINAPI *wglDXCloseDeviceNV_t )(HANDLE theDeviceIOP);
1341 typedef HANDLE (WINAPI *wglDXRegisterObjectNV_t )(HANDLE theDeviceIOP,
1342 void* theObjectD3d,
1343 GLuint theName,
1344 GLenum theType,
1345 GLenum theAccess);
1346 typedef BOOL (WINAPI *wglDXUnregisterObjectNV_t)(HANDLE theDeviceIOP,
1347 HANDLE theObject);
1348 typedef BOOL (WINAPI *wglDXObjectAccessNV_t )(HANDLE theObject,
1349 GLenum theAccess);
1350 typedef BOOL (WINAPI *wglDXLockObjectsNV_t )(HANDLE theDeviceIOP,
1351 GLint theCount,
1352 HANDLE* theObjects);
1353 typedef BOOL (WINAPI *wglDXUnlockObjectsNV_t )(HANDLE theDeviceIOP,
1354 GLint theCount,
1355 HANDLE* theObjects);
1356
1357 wglDXSetResourceShareHandleNV_t wglDXSetResourceShareHandleNV;
1358 wglDXOpenDeviceNV_t wglDXOpenDeviceNV;
1359 wglDXCloseDeviceNV_t wglDXCloseDeviceNV;
1360 wglDXRegisterObjectNV_t wglDXRegisterObjectNV;
1361 wglDXUnregisterObjectNV_t wglDXUnregisterObjectNV;
1362 wglDXObjectAccessNV_t wglDXObjectAccessNV;
1363 wglDXLockObjectsNV_t wglDXLockObjectsNV;
1364 wglDXUnlockObjectsNV_t wglDXUnlockObjectsNV;
1365
1366 #ifndef WGL_ACCESS_READ_WRITE_NV
1367 #define WGL_ACCESS_READ_ONLY_NV 0x0000
1368 #define WGL_ACCESS_READ_WRITE_NV 0x0001
1369 #define WGL_ACCESS_WRITE_DISCARD_NV 0x0002
1370 #endif
1371
1372
1373
1374 #ifndef WGL_GPU_VENDOR_AMD
1375 #define WGL_GPU_VENDOR_AMD 0x1F00
1376 #define WGL_GPU_RENDERER_STRING_AMD 0x1F01
1377 #define WGL_GPU_OPENGL_VERSION_STRING_AMD 0x1F02
1378 #define WGL_GPU_FASTEST_TARGET_GPUS_AMD 0x21A2
1379 #define WGL_GPU_RAM_AMD 0x21A3
1380 #define WGL_GPU_CLOCK_AMD 0x21A4
1381 #define WGL_GPU_NUM_PIPES_AMD 0x21A5
1382 #define WGL_GPU_NUM_SIMD_AMD 0x21A6
1383 #define WGL_GPU_NUM_RB_AMD 0x21A7
1384 #define WGL_GPU_NUM_SPI_AMD 0x21A8
1385 #endif
1386
1387 typedef UINT (WINAPI *wglGetGPUIDsAMD_t )(UINT theMaxCount, UINT* theIds);
1388 typedef INT (WINAPI *wglGetGPUInfoAMD_t )(UINT theId, INT theProperty, GLenum theDataType, UINT theSize, void* theData);
1389 typedef UINT (WINAPI *wglGetContextGPUIDAMD_t )(HGLRC theHglrc);
1390 wglGetGPUIDsAMD_t wglGetGPUIDsAMD;
1391 wglGetGPUInfoAMD_t wglGetGPUInfoAMD;
1392 wglGetContextGPUIDAMD_t wglGetContextGPUIDAMD;
1393
1394 #elif defined(__APPLE__)
1395 public:
1396
1397 #else
1398 public:
1399
1400
1401
1402 typedef int (*glXSwapIntervalEXT_t)();
1403 glXSwapIntervalEXT_t glXSwapIntervalEXT;
1404
1405 typedef int (*glXSwapIntervalSGI_t)(int theInterval);
1406 glXSwapIntervalSGI_t glXSwapIntervalSGI;
1407
1408
1409 #ifndef GLX_RENDERER_VENDOR_ID_MESA
1410
1411 #define GLX_RENDERER_VENDOR_ID_MESA 0x8183
1412 #define GLX_RENDERER_DEVICE_ID_MESA 0x8184
1413 #define GLX_RENDERER_VERSION_MESA 0x8185
1414 #define GLX_RENDERER_ACCELERATED_MESA 0x8186
1415 #define GLX_RENDERER_VIDEO_MEMORY_MESA 0x8187
1416 #define GLX_RENDERER_UNIFIED_MEMORY_ARCHITECTURE_MESA 0x8188
1417 #define GLX_RENDERER_PREFERRED_PROFILE_MESA 0x8189
1418 #define GLX_RENDERER_OPENGL_CORE_PROFILE_VERSION_MESA 0x818A
1419 #define GLX_RENDERER_OPENGL_COMPATIBILITY_PROFILE_VERSION_MESA 0x818B
1420 #define GLX_RENDERER_OPENGL_ES_PROFILE_VERSION_MESA 0x818C
1421 #define GLX_RENDERER_OPENGL_ES2_PROFILE_VERSION_MESA 0x818D
1422
1423 #define GLX_RENDERER_ID_MESA 0x818E
1424 #endif
1425
1426 typedef int (*glXQueryRendererIntegerMESA_t)(Aspect_XDisplay* theDisplay, int theScreen,
1427 int theRenderer, int theAttribute,
1428 unsigned int* theValue);
1429 typedef int (*glXQueryCurrentRendererIntegerMESA_t)(int theAttribute, unsigned int* theValue);
1430 typedef const char* (*glXQueryRendererStringMESA_t)(Aspect_XDisplay* theDisplay, int theScreen,
1431 int theRenderer, int theAttribute);
1432 typedef const char* (*glXQueryCurrentRendererStringMESA_t)(int theAttribute);
1433
1434 glXQueryRendererIntegerMESA_t glXQueryRendererIntegerMESA;
1435 glXQueryCurrentRendererIntegerMESA_t glXQueryCurrentRendererIntegerMESA;
1436 glXQueryRendererStringMESA_t glXQueryRendererStringMESA;
1437 glXQueryCurrentRendererStringMESA_t glXQueryCurrentRendererStringMESA;
1438 #endif
1439
1440 };
1441
1442 #endif