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