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